/* Hesabu Campus: one spatial presentation layer over the preserved assessment engine. */
:root{--campus-ink:#fff5e9;--campus-soft:#ead4c9;--campus-copper:#ffbd79;--campus-edge:#a87283;--campus-deep:#261427;--campus-wall:#553248;--campus-floor:#38213b}
body{background:#241726;color:var(--campus-ink);font-family:Inter,Manrope,system-ui,-apple-system,Segoe UI,sans-serif}
.campus-shell{grid-template-columns:210px minmax(0,1fr);background:radial-gradient(circle at 75% 10%,#69415266,transparent 42%),#26182b}
.campus-shell .sidebar{height:100dvh;min-height:0;position:sticky;top:0;padding:18px 13px 16px!important;gap:0!important;background:linear-gradient(180deg,#391d34,#27172d)!important;border-right:1px solid #99637b80!important;box-sizing:border-box;overflow:hidden}
.campus-shell .sidebar .brand{display:flex;align-items:center;gap:9px;width:100%;padding:8px!important;margin:0 0 17px!important;border:0!important;background:none!important;text-align:left;color:#fff8ed;font-size:25px;line-height:1;letter-spacing:-.07em}
.campus-shell .brand>span:last-child{display:block;color:#fff8ed;margin:0;font-size:25px}.campus-shell .brand small{display:block;margin-top:7px;color:#e7bbad;font:750 8px/1.1 Inter,system-ui;letter-spacing:.14em}
.campus-brand-icon{display:grid!important;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:#f6ac73;color:#30182e!important;font:800 24px Georgia!important;letter-spacing:0}
.campus-shell .workspace-label{padding:6px 11px;margin:0 0 8px;color:#dfbbaa;font-size:9px;letter-spacing:.15em}
.campus-shell .sidebar .nav{display:grid;gap:3px;overflow-y:auto;min-height:0;scrollbar-width:none}.campus-shell .sidebar .nav::-webkit-scrollbar{display:none}
.campus-shell .sidebar .nav button{display:flex;align-items:center;gap:10px;min-height:40px;padding:7px 10px!important;border:1px solid transparent;border-radius:10px;color:#e5cdd0;background:transparent;font-size:11px;font-weight:650;white-space:nowrap;box-shadow:none!important}
.campus-shell .sidebar .nav button.active{background:#f8bd86!important;color:#301d2e!important;border-color:#ffe1b8!important;box-shadow:inset 0 1px #fff7dc!important}.campus-shell .sidebar .nav button:hover:not(.active){background:#684052!important;color:#fff}
.campus-shell .sidebar .nav svg{width:17px;height:17px;flex:0 0 17px}.campus-shell .sidebar .sidefoot{margin-top:auto;padding:9px 11px 0;color:#d6b8bf;font-size:10px}.campus-shell .sidebar .sidefoot button{color:#ffd09b;padding:0}.campus-shell .sidebar .sidefoot p{line-height:1.35;margin:7px 0 0}
.campus-shell .sidebar .company-credit{max-width:70px!important;max-height:55px!important;margin:4px 0 0 10px!important;padding:0!important}.campus-shell .sidebar .company-credit img{width:62px!important;height:45px!important;object-fit:contain!important}
.campus-shell .main-shell{min-width:0;min-height:100dvh;background:radial-gradient(ellipse at 60% -20%,#7e47535e,transparent 50%),#2b1a2f}
.campus-shell .topbar{position:sticky;top:0;z-index:18;display:flex;align-items:center;gap:12px;min-height:62px;height:62px;padding:0 22px!important;background:#3e253bdc!important;backdrop-filter:blur(14px);border-bottom:1px solid #a470875c!important;box-sizing:border-box}
.campus-shell .topbar .breadcrumb{color:#dfbfc6;font-size:11px}.campus-shell .topbar .breadcrumb b{color:#fff1df;font-weight:750}.campus-shell .topbar>div{display:flex;align-items:center;gap:7px;margin-left:auto}.campus-shell .topbar button,.campus-shell .topbar select{min-height:34px;border-radius:8px;font-size:11px;background:#603d51;color:#fff3e9;border:1px solid #a5798c;padding:5px 9px;white-space:nowrap}.campus-shell .topbar .back-to-intro{font-size:10px}
.campus-jump{display:flex;align-items:center;gap:7px;flex:0 0 auto;margin-left:6px;color:#ffd6ad;font-weight:750;font-size:9px;letter-spacing:.08em;white-space:nowrap}.campus-jump select{width:180px!important;max-width:180px!important;color:#fff9ee!important;background:#55334a!important}.campus-jump option{background:#392235;color:#fff9ee}
.campus-main{max-width:1480px;margin:auto;padding:16px 22px 52px!important;box-sizing:border-box}.campus-location{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 9px;color:#f8d1b5;font-size:10px;letter-spacing:.09em;text-transform:uppercase}.campus-location button{background:none;border:none;padding:5px 0;color:#ffcc91;font-size:11px}.campus-location span{font-weight:800}
.campus-shell button:focus-visible,.campus-public-hero button:focus-visible,.campus-public-roles button:focus-visible,.campus-map summary:focus-visible{outline:3px solid #ffe2aa!important;outline-offset:3px!important}
.campus-home{height:calc(100dvh - 94px);min-height:540px;display:flex;flex-direction:column;gap:10px}.campus-home-header{display:flex;align-items:center;justify-content:space-between;gap:18px;flex:0 0 auto}.campus-home-header .eyebrow{font-size:10px}.campus-home-header h1{font-size:clamp(25px,2.6vw,38px);line-height:1.08;margin:4px 0 4px;letter-spacing:-.045em;color:#fff5eb}.campus-home-header h1 em{font-style:normal;color:#ffbe7d}.campus-home-header p{font-size:11px;line-height:1.35;color:#e9cad0;margin:0;max-width:690px}.campus-feature-action{flex:0 0 auto;min-height:39px;padding:8px 13px!important;background:#f9bd84!important;color:#351d32!important;border:1px solid #ffe1ab!important;border-radius:11px!important;font-size:11px;font-weight:800}.campus-feature-action span{margin-left:9px}
.campus-building{position:relative;isolation:isolate;flex:1;min-height:0;width:min(100%,1060px);margin:0 auto;padding:0 21px 14px;box-sizing:border-box;filter:drop-shadow(0 18px 18px #110b19a0)}
.campus-building::before{content:'';position:absolute;z-index:-1;left:2%;right:2%;bottom:3px;height:36%;background:linear-gradient(90deg,#40243b,#503047 65%,#25182e);transform:skewX(-7deg);border-radius:0 0 18px 18px;box-shadow:inset 0 0 0 1px #ae718085}
.campus-roof{height:43px;display:flex;align-items:center;justify-content:center;gap:16px;margin:0 25px;background:linear-gradient(155deg,#744858,#4b2c44);border:1px solid #ba8190;border-bottom:5px solid #f2a96d;clip-path:polygon(5% 0,95% 0,100% 100%,0 100%);box-shadow:inset 0 2px #d5a2a555}.campus-roof span{font-size:17px;font-weight:900;letter-spacing:.15em;color:#ffe3b3}.campus-roof small{font-size:8px;letter-spacing:.17em;color:#e9c7c3}
.campus-building-body{height:calc(100% - 56px);min-height:0;display:flex;flex-direction:column;gap:5px;padding:7px 17px 10px;background:linear-gradient(100deg,#644057,#533249 45%,#3e283e);border:1px solid #b27c8f;border-bottom:6px solid #a76659;border-radius:4px 4px 15px 15px;box-shadow:inset 8px 0 #f5c48514,inset -13px 0 #100d264d}
.campus-floor-label{display:flex;align-items:center;gap:9px;flex:0 0 auto;color:#ffd296;font-size:9px;font-weight:850;letter-spacing:.13em}.campus-floor-label span{color:#efd8d4;font-weight:600}.campus-door-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.campus-door{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:0;padding:7px 4px 6px!important;overflow:hidden;background:linear-gradient(145deg,#372139,#2b1d35)!important;color:#fff3e5!important;border:2px solid #ae798b!important;border-bottom:5px solid #241a30!important;border-radius:55px 55px 10px 10px!important;box-shadow:inset 0 0 0 5px #6d4557,0 2px 6px #150d1c70!important;text-align:center;transition:transform .22s,border-color .22s,filter .22s}
.campus-door::before{content:'';position:absolute;inset:4px 4px 4px;background:radial-gradient(circle at 50% 27%,#e9a47735,transparent 62%);border:1px solid #b6888c55;border-radius:50px 50px 7px 7px;pointer-events:none}.campus-door:hover{transform:translateY(-3px);border-color:#ffca91!important;filter:brightness(1.12)}.campus-door:active{transform:translateY(1px)}
.campus-door-sconce{position:absolute;right:10px;top:13px;color:#ffce94;font-size:8px}.campus-door-arch{display:grid;place-items:center;position:relative;width:clamp(30px,3.6vw,53px);height:clamp(30px,3.6vw,53px);border-radius:50%;background:radial-gradient(circle,#e7a96840,#824b5d40);border:1px solid #e0a17e65;box-shadow:0 0 20px #ffad6d25}.campus-door-glyph{font:700 clamp(19px,2.5vw,29px) Georgia;color:#ffd8a7}.campus-door-label{display:block;position:relative;max-width:100%;margin:4px 0 2px}.campus-door-label b{display:block;font-size:clamp(11px,1.3vw,16px);line-height:1.1;overflow-wrap:anywhere}.campus-door-label small{display:block;color:#edcbd0;font-size:clamp(8px,.75vw,10px);line-height:1.15;margin-top:3px}.campus-door-enter{position:relative;color:#ffc68c;font-size:9px;font-weight:850;letter-spacing:.12em}
.campus-activity-grid .campus-door{border-radius:18px 18px 9px 9px!important}.campus-activity-grid .campus-door:nth-child(2){background:linear-gradient(145deg,#73475d,#3b243d)!important}.campus-activity-grid .campus-door:nth-child(3){background:linear-gradient(145deg,#5a465d,#33243f)!important}.campus-activity-grid .campus-door:nth-child(4){background:linear-gradient(145deg,#725048,#3f2b3b)!important}
.campus-special-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;flex:0 0 43px}.campus-special-row:has(>button:only-child){grid-template-columns:1fr}.campus-special-row button{display:flex;align-items:center;gap:9px;min-width:0;padding:6px 12px!important;background:#a66b64!important;border:1px solid #e6b485!important;border-radius:9px!important;color:#fff7ee!important;text-align:left}.campus-special-row button:hover{background:#b97a68!important}.campus-special-row button>span{font-size:17px;color:#ffe2af}.campus-special-row b{font-size:11px;white-space:nowrap}.campus-special-row small{font-size:9px;color:#ffeadb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.campus-special-row i{margin-left:auto;font-style:normal}.campus-steps{display:flex;flex-direction:column;align-items:center;height:17px;gap:1px}.campus-steps i{display:block;width:55%;height:5px;background:#855566;border:1px solid #b98384;transform:perspective(100px) rotateX(30deg)}.campus-steps i:nth-child(2){width:62%}.campus-steps i:nth-child(3){width:70%}
.campus-home-footer{display:flex;align-items:center;gap:20px;flex:0 0 auto;min-height:31px;color:#ebc9c3;font-size:9px;font-weight:800;letter-spacing:.12em}.campus-home-footer>span:first-child{color:#ffcb91}.campus-home-footer>span:nth-child(2){margin-right:auto}.campus-map{position:relative;z-index:11;font-size:11px;letter-spacing:0}.campus-map summary{cursor:pointer;list-style:none;padding:8px 11px;border:1px solid #a97b8b;border-radius:9px;background:#59364d;color:#fff4e6;white-space:nowrap}.campus-map summary::-webkit-details-marker{display:none}.campus-map summary span{color:#ffcb91;margin-left:6px}.campus-map-grid{position:absolute;right:0;bottom:calc(100% + 5px);width:min(330px,85vw);max-height:58dvh;overflow:auto;display:grid;gap:3px;padding:9px;border-radius:13px;border:1px solid #bc8e9c;background:#3a233a;box-shadow:0 20px 50px #150d1dd9}.campus-map-grid button{display:flex;justify-content:space-between;padding:8px 10px;text-align:left;background:#614050;border:1px solid #956b7f;color:#fff5e9;font-size:11px}.campus-map-grid button span{color:#ffc388}
.campus-classroom{display:flex;flex-direction:column;gap:12px;min-height:calc(100dvh - 105px)}.campus-classroom-scene{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;flex:0 0 clamp(155px,26dvh,240px);overflow:hidden;border:1px solid #b5888b;border-radius:22px;background:linear-gradient(105deg,#5d394d 0 18%,#8a5e66 18% 20%,#59384a 20% 80%,#8a5e66 80% 82%,#4b3045 82%);box-shadow:inset 0 0 35px #261325a3}
.campus-classroom-scene::before{content:'';position:absolute;left:-15%;right:-15%;bottom:-50%;height:73%;background:repeating-linear-gradient(90deg,#945c61 0 2px,transparent 2px 100px),linear-gradient(#7f4e53,#3b2940);transform:perspective(350px) rotateX(55deg);border-top:7px solid #bd8979}.campus-classroom-window{position:absolute;left:4%;top:12%;width:14%;height:47%;background:linear-gradient(135deg,#dfa770,#7b6476);border:7px solid #9b6a63;box-shadow:inset 0 0 10px #fff3ba,0 5px 20px #1d1724}.campus-classroom-window span{color:#fff5ba;position:absolute;right:24%;top:17%}.campus-classroom-board{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(66%,620px);height:77%;padding:12px;background:linear-gradient(145deg,#294c49,#1b383a);border:9px solid #9c644f;border-bottom-width:13px;box-shadow:0 12px 25px #211321a0,inset 0 0 40px #09272980;text-align:center}.campus-classroom-board h1{font-size:clamp(24px,3.6vw,43px);margin:3px 0;color:#fff5de}.campus-classroom-board p{font-size:clamp(10px,1.2vw,14px);color:#d6e8dc;margin:0}.campus-board-math{position:absolute;right:4%;bottom:12%;font:italic clamp(16px,2vw,26px) Georgia;color:#e7d3aa9a}.campus-classroom-light{position:absolute;right:4%;top:15%;width:9px;height:65px;border-radius:10px;background:#f7cc88;box-shadow:0 0 35px 20px #f6bd6260}
.campus-classroom-bottom{flex:1;min-height:0;display:flex;flex-direction:column}.campus-classroom-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.campus-classroom-title h2{font-size:22px;margin:2px 0 8px}.campus-classroom-title button{padding:8px 12px;background:#f2b77b;color:#3e2335;border:1px solid #ffe0ac;font-weight:800}
.campus-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;flex:1;min-height:0}.campus-topic{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;min-height:105px;padding:15px!important;text-align:left;border:1px solid #ae7a90!important;border-bottom:4px solid #291929!important;border-radius:16px!important;color:#fff7ec!important;background:linear-gradient(135deg,#67435a,#463048)!important;box-shadow:inset 0 1px #d5aab044!important;transition:transform .18s,border-color .18s}.campus-topic:hover{transform:translateY(-3px);border-color:#ffd09e!important}.campus-topic-symbol{margin-left:auto;font:italic 28px Georgia;color:#ffd59c}.campus-topic small{font-size:9px;color:#f5bf9d;letter-spacing:.1em}.campus-topic strong{font-size:clamp(15px,1.5vw,19px);line-height:1.15}.campus-topic>span:not(.campus-topic-symbol){font-size:11px;color:#ead5d7}.campus-topic b{margin-top:auto;font-size:10px;color:#ffd09c}.campus-teacher-tools{margin-top:8px;padding:7px 10px;border:1px solid #97687f;border-radius:10px;font-size:11px}.campus-teacher-tools summary{cursor:pointer}.campus-teacher-tools>div{display:flex;gap:8px;margin-top:8px}
.campus-room-heading{position:relative;overflow:hidden;padding:22px 26px!important;border:1px solid #b68591!important;border-radius:22px!important;background:linear-gradient(100deg,#482b43ee,#4d2b43dc),url('assets/quest-world-v1.png') center 55%/cover!important;box-shadow:inset 0 1px #ffe0bf24,0 10px 25px #120d1a55!important}.campus-room-heading::after{content:'';position:absolute;right:-2%;bottom:-35%;width:35%;height:90%;border:2px solid #ffc28f25;border-radius:50%;transform:rotate(-25deg);pointer-events:none}.campus-room-heading h1{color:#fff6e8;font-size:clamp(25px,3vw,36px)!important}.campus-room-heading p{color:#f1d6d6!important}.campus-room-emblem{position:absolute;right:4%;top:50%;transform:translateY(-50%);font:italic 72px Georgia;color:#ffcc9c29;pointer-events:none}.campus-room-heading.campus-room-insights{background:linear-gradient(110deg,#332f4ee8,#503650cc),url('assets/quest-world-v1.png') center/cover!important}.campus-room-heading.campus-room-solo{background:linear-gradient(110deg,#643a4dea,#44263dcc),url('assets/quest-world-v1.png') center/cover!important}.campus-room-heading.campus-room-rooms{background:linear-gradient(110deg,#4e3859ee,#3b2c4dcc),url('assets/quest-world-v1.png') center/cover!important}.campus-room-heading.campus-room-weekly{background:linear-gradient(110deg,#745243ee,#4c2e3dcc),url('assets/quest-world-v1.png') center/cover!important}
.campus-shell .wheel-panel{border:2px solid #d39b8e!important;background:radial-gradient(circle at 50% 25%,#8e5260,#492d45 72%)!important}.campus-shell .wheel-frame{filter:drop-shadow(0 6px 20px #211424)}.campus-shell .wheel-pointer{color:#ffda9e!important}.campus-shell .wheel-steps button.selected{background:#fbc38b!important;color:#382034!important}.campus-shell .answer-verdict.is-correct{border:2px solid #80dfb3!important}.campus-shell .answer-verdict.is-incorrect{border:2px solid #ffc0b9!important}
.campus-public-hero{position:relative;display:grid;grid-template-columns:1fr .88fr;gap:35px;align-items:center;min-height:470px;padding:42px;background:radial-gradient(circle at 75% 25%,#a05a6266,transparent 40%),linear-gradient(135deg,#3a223a,#5b354a);border:1px solid #ab7789;border-radius:26px;overflow:hidden}.campus-public-hero h1{font-size:clamp(39px,5vw,70px);line-height:1.03;letter-spacing:-.055em;color:#fff4e7}.campus-public-hero h1 em{font-style:normal;color:#ffc68b}.campus-public-hero p{max-width:540px;line-height:1.6;color:#f0d4d0}.campus-public-hero>div:first-child{z-index:2}.campus-public-hero small{display:block;margin-top:22px;color:#e3bfbc}.campus-public-building{position:relative;display:flex;flex-direction:column;justify-content:center;gap:9px;padding:44px 20px 28px;background:linear-gradient(120deg,#8b5564,#5a354b);border:2px solid #dba18d;border-bottom:12px solid #9b665a;transform:perspective(900px) rotateY(-15deg) rotateX(4deg);box-shadow:28px 30px 0 #231a31,38px 44px 40px #180d1b80}.public-roof{position:absolute;top:-22px;left:-8%;right:-8%;height:33px;display:grid;place-items:center;background:#6c4055;border:2px solid #dca887;transform:skew(-12deg);color:#ffe0ad;font-weight:900;letter-spacing:.2em}.campus-public-building>div:not(.public-roof){display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.campus-public-building>div:nth-child(3){grid-template-columns:repeat(3,1fr)}.campus-public-building span{display:grid;place-items:center;height:95px;background:#39283d;border:6px solid #aa7582;border-radius:42% 42% 7px 7px;color:#ffd49b;font:italic 27px Georgia;box-shadow:inset 0 0 22px #f4ba6750}.campus-public-building>i{position:absolute;bottom:-35px;left:20%;right:20%;height:18px;background:#775064;transform:perspective(100px) rotateX(55deg)}.campus-public-cycle{padding:42px 0}.campus-public-cycle>div{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:15px}.campus-public-cycle article{padding:23px;border:1px solid #ae7e8e;border-radius:17px;background:#553448}.campus-public-cycle b,.campus-public-roles span{font-size:10px;color:#ffca94;letter-spacing:.1em}.campus-public-cycle h2{font-size:23px;margin:13px 0}.campus-public-cycle p{color:#ebd1d0;line-height:1.5}.campus-public-roles{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-bottom:36px}.campus-public-roles button{text-align:left;padding:25px;background:#654054;border:1px solid #b38092;color:#fff3e7;border-radius:18px}.campus-public-roles h2{font-size:28px}.campus-public-roles b{color:#ffd09e}
@media(max-width:1100px){.campus-shell{grid-template-columns:185px minmax(0,1fr)}.campus-shell .topbar .breadcrumb{display:none}.campus-shell .topbar{gap:7px}.campus-jump{margin-left:auto}.campus-door-label small{font-size:8px}.campus-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){
 .campus-shell{display:block}.campus-shell .sidebar{position:static;height:0;min-height:0;overflow:visible;padding:0!important;border:0!important}.campus-shell .sidebar .brand,.campus-shell .sidebar .workspace-label,.campus-shell .sidebar .sidefoot,.campus-shell .sidebar .company-credit{display:none!important}
 .campus-shell .sidebar .nav{position:fixed;left:0;right:0;bottom:0;z-index:45;display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;grid-template-rows:1fr!important;gap:1px!important;height:calc(62px + env(safe-area-inset-bottom))!important;padding:4px 3px calc(4px + env(safe-area-inset-bottom))!important;overflow:hidden!important;background:#332036!important;border-top:1px solid #a47185!important;box-sizing:border-box}
 html[data-experience=student] .campus-shell .sidebar .nav{grid-template-columns:repeat(6,minmax(0,1fr))!important}.campus-shell .sidebar .nav button{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;min-height:0!important;height:52px!important;min-width:0;padding:3px 1px!important;font-size:9px!important;line-height:1!important;border-radius:8px!important}.campus-shell .sidebar .nav svg{width:19px;height:19px;flex:0 0 19px}.campus-shell .sidebar .nav .nav-label-phone{display:block!important}.campus-shell .sidebar .nav .nav-label-full{display:none!important}
 .campus-shell .topbar{position:sticky!important;top:0;height:76px!important;min-height:76px!important;padding:5px 9px!important;display:grid!important;grid-template-columns:1fr auto;grid-template-rows:31px 31px;gap:3px 6px!important;align-content:center}.campus-shell .topbar .phone-brand-cluster{grid-column:1;grid-row:1;display:flex!important;align-items:center;gap:8px}.campus-shell .topbar .phone-brand-cluster .approved-phone-brand{font-size:21px!important}.campus-shell .topbar .phone-brand-cluster .phone-menu-trigger{min-height:30px!important;width:32px;height:30px}.campus-shell .topbar>div:not(.phone-brand-cluster){grid-column:2;grid-row:1;display:flex!important;align-items:center;gap:3px;min-width:0;margin:0!important}.campus-shell .topbar>div:not(.phone-brand-cluster)>button:not([aria-label="My rewards"]):not([onclick*="enterRole"]),.campus-shell .topbar>div:not(.phone-brand-cluster)>select{display:none!important}.campus-shell .topbar>div:not(.phone-brand-cluster)>button{height:29px!important;min-height:29px!important;padding:3px 5px!important;font-size:9px!important}.campus-jump{grid-column:1/-1;grid-row:2;display:flex;width:100%;margin:0;justify-content:space-between;font-size:9px}.campus-jump select{flex:1;width:auto!important;max-width:none!important;height:30px!important;min-height:30px!important}
 .campus-main{padding:9px 10px calc(68px + env(safe-area-inset-bottom))!important}.campus-home{height:calc(100dvh - 76px - 68px - env(safe-area-inset-bottom) - 18px);min-height:470px;gap:5px}.campus-home-header{gap:8px}.campus-home-header h1{font-size:clamp(20px,5.8vw,28px);margin:2px 0}.campus-home-header p{display:none}.campus-home-header .eyebrow{font-size:8px}.campus-feature-action{font-size:0!important;min-height:34px;padding:6px 9px!important}.campus-feature-action::first-line{font-size:0}.campus-feature-action span{font-size:19px;margin:0}
 .campus-building{padding:0 3px 5px;filter:drop-shadow(0 8px 8px #110b19a0)}.campus-roof{height:31px;margin:0 10px;gap:6px}.campus-roof span{font-size:13px}.campus-roof small{font-size:6px}.campus-building-body{height:calc(100% - 38px);padding:4px 5px 6px;gap:3px;border-bottom-width:4px}.campus-floor-label{font-size:7px;gap:5px}.campus-door-grid{gap:3px}.campus-door{padding:4px 1px!important;border-width:1px!important;border-bottom-width:3px!important;border-radius:28px 28px 6px 6px!important;box-shadow:inset 0 0 0 2px #6d4557!important}.campus-door::before{inset:2px;border-radius:25px 25px 4px 4px}.campus-door-sconce{display:none}.campus-door-arch{width:clamp(23px,7vw,35px);height:clamp(23px,7vw,35px)}.campus-door-glyph{font-size:clamp(14px,5vw,20px)}.campus-door-label{margin:3px 0}.campus-door-label b{font-size:clamp(9px,2.5vw,12px)}.campus-door-label small{display:none}.campus-door-enter{font-size:7px}.campus-activity-grid .campus-door{border-radius:9px 9px 5px 5px!important}.campus-special-row{gap:3px;flex-basis:35px}.campus-special-row button{gap:3px;padding:3px 5px!important}.campus-special-row b{font-size:8px}.campus-special-row small{display:none}.campus-special-row button>span{font-size:13px}.campus-special-row i{font-size:10px}.campus-steps{height:8px}.campus-steps i{height:2px}.campus-home-footer{min-height:26px;font-size:7px;gap:6px}.campus-home-footer>span:nth-child(2){display:none}.campus-map summary{padding:5px 7px;font-size:9px}.campus-map summary span{display:none}
 .campus-classroom{min-height:calc(100dvh - 180px);gap:8px}.campus-classroom-scene{flex-basis:clamp(115px,22dvh,180px);border-radius:14px}.campus-classroom-board{width:73%;height:76%;border-width:6px;border-bottom-width:9px}.campus-classroom-board h1{font-size:clamp(21px,6vw,29px)}.campus-classroom-board p{font-size:9px}.campus-classroom-title h2{font-size:18px}.campus-classroom-title button{font-size:9px;padding:6px}.campus-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.campus-topic{min-height:80px;padding:8px!important;gap:2px;border-radius:10px!important}.campus-topic-symbol{font-size:19px}.campus-topic small{font-size:7px}.campus-topic strong{font-size:12px}.campus-topic>span:not(.campus-topic-symbol){font-size:9px}.campus-topic b{font-size:8px}.campus-teacher-tools{margin-top:5px;padding:5px 7px}
 .campus-room-heading{padding:13px!important;min-height:0!important;margin-bottom:8px!important}.campus-room-heading h1{font-size:23px!important}.campus-room-emblem{font-size:48px}.campus-location{font-size:9px}.campus-public-hero{grid-template-columns:1fr;min-height:0;padding:24px;gap:34px}.campus-public-hero h1{font-size:38px}.campus-public-building{max-width:380px;min-height:190px;margin:auto}.campus-public-building span{height:55px;font-size:19px}.campus-public-cycle>div{grid-template-columns:1fr;gap:8px}.campus-public-cycle article{padding:14px}.campus-public-roles{gap:8px}.campus-public-roles button{padding:14px}.campus-public-roles h2{font-size:17px}
}
@media(max-width:360px){.campus-home-header h1{font-size:19px}.campus-door-label b{font-size:9px}.campus-door-enter{font-size:6px}.campus-shell .sidebar .nav button{font-size:8px!important}.campus-shell .topbar>div:not(.phone-brand-cluster)>button[onclick*="enterRole"]{font-size:8px!important}}
@media(max-height:650px){html[data-screen=sections] .campus-shell,html[data-screen=sections] .campus-shell .main-shell,html[data-screen=sections] .campus-main{height:auto!important;overflow:visible!important}.campus-home{height:auto;min-height:570px}.campus-building{height:440px;flex:0 0 auto}.campus-classroom{min-height:0}.campus-topic{min-height:100px}}
@media(prefers-reduced-motion:reduce){.campus-door,.campus-topic{transition:none!important}.campus-door:hover,.campus-topic:hover{transform:none!important}.campus-shell *{scroll-behavior:auto!important}}
@media(max-width:800px){.campus-shell .topbar>.back-to-intro,.campus-shell .topbar>.breadcrumb{display:none!important}}
@keyframes campusEnter{from{opacity:.55;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){.campus-home,.campus-classroom,.campus-room-heading{animation:campusEnter .28s ease-out both}}
/* Room facades add depth without putting game controls inside a canvas. */
.campus-room-heading::before{content:'';position:absolute;left:39%;right:-8%;bottom:-57%;height:73%;background:linear-gradient(100deg,#f7b68120,#ffd9a615 48%,#1c162800);border-top:2px solid #e4ad8745;transform:perspective(300px) rotateX(61deg);pointer-events:none}
.campus-room-heading>*{position:relative;z-index:1}
.campus-room-heading .campus-room-emblem{position:absolute;z-index:0}
@media(max-width:800px){.campus-room-heading::before{left:24%;bottom:-70%}}
html[data-experience=student] .campus-special-row{grid-template-columns:1fr}
.campus-building{transform:perspective(1300px) rotateY(var(--campus-yaw,0deg));transition:transform .32s ease-out;transform-origin:center 55%}
.campus-building:focus-visible{outline:3px solid #ffdca5;outline-offset:2px;border-radius:12px}
.campus-look-controls{display:flex;align-items:center;gap:6px;margin-left:auto;color:#ffcf99;font-size:8px;font-weight:800;white-space:nowrap}
.campus-look-controls button{display:grid;place-items:center;width:27px;height:27px;min-height:27px;padding:0!important;border:1px solid #bb8595;background:#5c394d;color:#ffe1af;border-radius:8px;font-size:15px}
.campus-look-controls button:hover{background:#865264}
@media(max-width:800px){.campus-home-footer .campus-look-controls{margin-left:auto;gap:3px}.campus-look-controls span{display:none}.campus-look-controls button{width:25px;height:25px;min-height:25px}.campus-home-footer>span:first-child{margin-right:auto}}
@media(prefers-reduced-motion:reduce){.campus-building{transition:none!important}}
