/* A quiet exhibition HUD, with the world itself as the main attraction. */
body:has(#page-wall.active){--campus-ink:#203f46;--campus-paper:#fff9eb;--campus-gold:#efd29a}
body:has(#page-wall.active) .topbar{background:#fffaf0f5;color:#29494e;border-bottom:1px solid #d7ded4;box-shadow:0 2px 12px #173a3d0d}
body:has(#page-wall.active) .brand small{color:#6d817d}body:has(#page-wall.active) .brand-year{color:#42899a}body:has(#page-wall.active) .nav{background:#e9eee6;border:0}
body:has(#page-wall.active) .nav a{color:#546e6a}body:has(#page-wall.active) .nav a.active{background:#254e53;color:#fff6df}
body:has(#page-wall.active) .connection{background:#eef4e9;color:#3d645b;border-color:#ccdcd1}
#wall .wall-head{padding:24px 28px 0;gap:20px}#wall.world-active .world-title h1{font-size:clamp(28px,3.1vw,48px);letter-spacing:-.065em;margin:8px 0}
#wall .world-title .eyebrow{font-size:9px;letter-spacing:.18em}#wall .world-title .caption{font-size:12px;color:#fff9e8}
#wall.world-active::after{background:linear-gradient(150deg,#15364585,transparent 42%),linear-gradient(0deg,#25475035,transparent 26%);opacity:1}
#wall .wall-count{min-width:144px;margin:0;padding:14px 17px;border-radius:21px;background:#fff9ebed;border:1px solid #ffffff9c;box-shadow:0 6px 24px #173c4e20;color:#294c4e;backdrop-filter:blur(14px)}
#wall .wall-count b{color:#23494a;font-weight:650}#wall .wall-count span,#wall .wall-count small,#wall .current-count{color:#64817a}
#wall .count-kicker{color:#52766b;font-size:8px;letter-spacing:.13em}#wall .count-kicker i{background:#42a780;box-shadow:0 0 0 3px #42a78020}
#wall .sound-dock button{background:#e3ecde;color:#3a645c;border-color:#bfd0bd;font-size:10px;white-space:nowrap}
#wall .sound-dock{margin-top:8px}#wall #soundPolicy{margin-top:6px;font-size:9px}#wall #wallWindow{font-size:9px;margin-top:4px}
#wall .camera-bar{left:28px;top:126px;box-shadow:0 5px 16px #153c4b25;border-color:#fff6e680;background:#244c53e8;backdrop-filter:blur(12px)}
#wall .world-picker{left:28px;top:173px;background:#fff9ebed;color:#31534e;border-color:#fffdf3;border-radius:18px;box-shadow:0 5px 20px #17323c1c}
#worldChoice button{background:#e5ecdf;color:#4b6c61;font-size:11px;padding:7px 12px;min-height:38px}
#worldChoice button[aria-pressed=true]{background:#315b5b;color:#fff2c9;box-shadow:none}
#wall .map-tools button{color:#57756c;border-color:#bacdbd}#wall .map-tools button[aria-pressed=true]{color:#2f6857;background:#e7efdd;border-color:#acc6af}
#wall .map-tools label{color:#62786d}#wall .map-tools select{background:#f4efdf;color:#486657;font-size:10px}#wall #mapChoiceHint{color:#74867a;font-size:8px;max-width:260px}
.scene-tools{position:absolute;z-index:3;right:28px;top:236px;display:grid;gap:7px}
.scene-tools button{min-height:40px;padding:7px 14px;border-radius:15px;border:1px solid #fff6e295;background:#fff9e9ef;color:#385957;box-shadow:0 3px 12px #24495316;font-size:11px;text-align:left}
.scene-tools button span{display:inline-block;width:22px;color:#a17d43;font-size:19px;vertical-align:middle;margin-right:3px}
.scene-tools button:hover{background:#fff4d3}
#wall .wall-bottom{left:28px;right:28px;bottom:22px;align-items:flex-end}
#wall .wish-metrics{background:#fff9ebed;border-color:#fff4d9;color:#405f58;max-width:410px;border-radius:18px;padding:12px 15px;box-shadow:0 4px 18px #183f4925}
#wall .metrics-title b{font-size:12px}#wall .metrics-title a{color:#8f713f;font-size:10px}#wall #topicCounts span{font-size:10px}
#wall #myWallTicket{border-color:#ccd3b8}#wall #myWallTicket span{color:#607768}
#wall #findMyWish{background:#315b5b;color:#fff1c8}
#wall .wall-controls button{border-color:#d3d7c0;background:#fff9eb;color:#3e6058;box-shadow:0 3px 12px #24495316}
#wall .join-card{background:#fff9eb}
.scene-sheet{background:#fffaf0!important;color:#294b4d!important;max-width:780px!important;width:min(780px,94vw)!important;max-height:calc(100dvh - 32px)!important;overflow:auto!important;overscroll-behavior:contain;border:1px solid #eadfc7!important;padding:30px!important;border-radius:26px!important}
.scene-sheet .eyebrow{color:#9c7e49;font-size:10px}.scene-sheet h2{font-size:27px;color:#294b4d;margin-bottom:8px}.scene-sheet>p{font-size:13px;color:#718279;margin-bottom:18px}
.scene-sheet .close{background:#e7ecdf;color:#4b6861}.scene-sheet button:focus-visible{outline-color:#437b73}
.campus-atlas{height:180px;width:100%;background:radial-gradient(ellipse,#e5efdf,#f4efdf);border:1px solid #e5decb;border-radius:20px;margin-bottom:16px}
.campus-atlas path{fill:none;stroke:#a9c2b7;stroke-width:1.5;stroke-dasharray:3 3}.campus-atlas text{fill:#59726a;font:600 8px "Malgun Gothic",sans-serif}
.campus-atlas .atlas-heart{fill:#dcb961;stroke:#fff8e6;stroke-width:3}
.district-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.district-card{display:grid;grid-template-columns:38px 1fr auto;text-align:left;gap:10px;align-items:center;padding:13px!important;background:#f2f1e4!important;border:1px solid #e2e1ce!important;color:#345c53!important;border-radius:16px!important}
.district-card i{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:var(--district);font-size:11px;font-style:normal;color:#294b4d}
.district-card b{font-size:13px}.district-card small{display:block;line-height:1.6;font-size:10px;color:#7a887b;font-weight:400;margin-top:3px}.district-card em{font-style:normal;color:#9c7b43;font-size:12px;white-space:nowrap}
.district-card:first-child{grid-column:1/-1}.district-note{font-size:10px!important;color:#89917d!important;margin:15px 0 0!important}
.friend-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.friend-card{border:1px solid #e4dfcc;border-radius:20px;padding:12px 8px 10px;background:#f4f0e2;text-align:center}
.friend-portrait{height:102px;display:grid;place-items:center;border-radius:15px;background:radial-gradient(ellipse at 50% 75%,var(--friend),transparent 69%)}
.rehearsal-home-link{position:fixed;top:max(8px,env(safe-area-inset-top));right:12px;z-index:95;background:#173943;color:white;padding:8px 12px;border-radius:20px;font:600 13px "Campus Sans",sans-serif;text-decoration:none}
body.cinema .rehearsal-home-link{left:max(12px,env(safe-area-inset-left));right:auto}
.science-friends{margin:20px 0}.science-friends h3{color:#274b50;font-size:17px;margin:0 0 10px}
.friend-portrait svg,.friend-portrait img,.friend-portrait .cast-portrait{width:88px;height:96px;object-fit:contain}.friend-card strong{display:block;font-size:12px;margin-top:4px}
.friend-card small{font-size:9px;color:#809078;display:block;margin:4px 0}.friend-card p{font-size:10px;line-height:1.6;min-height:32px;margin:7px 0 10px;color:#73816e}
.friend-card button{font-size:10px;padding:7px 9px;min-height:34px;border-radius:12px;background:#355d58;color:#fff2d6}.friend-card button:disabled{background:#d8dfce;color:#7c8d7c;opacity:1}
.scene-sheet .tour-note{background:#e7eddf;color:#607765;padding:10px 14px;border-radius:13px;font-size:11px;margin-top:15px}
body.cinema .topbar,body.cinema .demo-strip{display:none!important}body.cinema #wall .wall-head,body.cinema #wall .camera-bar,body.cinema #wall .world-picker,body.cinema #wall .wall-bottom{display:none!important}
body.cinema #wall{height:100dvh!important;min-height:100dvh!important}body.cinema .scene-tools{top:18px!important;right:18px!important}
body.cinema .scene-tools button:not(#cinemaSwitch){display:none}body.cinema #cinemaSwitch{opacity:.55}body.cinema #cinemaSwitch:hover,body.cinema #cinemaSwitch:focus{opacity:1}
@media(min-width:1500px){#wall .camera-bar{top:145px}#wall .world-picker{top:192px}#wall .scene-tools{top:244px}}
@media(max-width:700px){
 #wall .wall-head{padding:16px 13px 0;gap:7px}#wall.world-active .world-title h1{font-size:27px;max-width:245px;margin:7px 0;line-height:1.13}#wall .world-title .eyebrow{font-size:6px;letter-spacing:.07em}#wall .world-title .caption{font-size:9px;max-width:215px}
 #wall .wall-count{min-width:87px;max-width:87px;padding:9px 8px;border-radius:15px}#wall .wall-count b{font-size:30px}#wall .count-kicker{font-size:6px}#wall .wall-count span{font-size:8px}#wall .current-count{font-size:8px}
 #wall #soundPolicy,#wall #wallWindow{display:none}#wall .sound-dock button{font-size:8px;padding:3px 5px}#wall .sound-dock input{max-width:52px}
 #wall .camera-bar{left:13px;top:109px;gap:0}#wall .camera-bar button{min-height:29px;padding:5px 7px;font-size:10px}
 #wall .world-picker{left:13px;top:151px;padding:6px;max-width:235px}#worldChoice button{font-size:10px;padding:6px 8px;min-height:34px}
 #wall .map-tools{gap:4px}#wall .map-tools button{font-size:8px;padding:4px 5px}#wall .map-tools select{max-width:100px;font-size:9px}#wall #mapChoiceHint{font-size:7px;max-width:219px}
 .scene-tools{right:12px;top:151px;gap:5px}.scene-tools button{min-height:32px;padding:5px 7px;font-size:8px;border-radius:11px}.scene-tools button span{font-size:13px;width:14px;margin-right:0}
 #wall .wall-bottom{left:12px;right:12px;bottom:12px;gap:7px}#wall .wish-metrics{padding:8px 10px;width:100%;max-width:none;border-radius:14px}#wall .metrics-title b{font-size:10px}#wall #topicCounts{gap:3px 8px}#wall #topicCounts span{font-size:8px}#wall .metrics-title{gap:7px}
 #wall .wall-controls .secondary{font-size:9px;padding:6px 10px;white-space:nowrap}#wall .join-card{max-width:150px}#wall .join-copy strong{font-size:10px}
 .scene-sheet{padding:23px 16px!important;border-radius:21px!important}.scene-sheet h2{font-size:23px}.scene-sheet>p{font-size:11px}.campus-atlas{height:130px}.district-grid{grid-template-columns:1fr}.district-card:first-child{grid-column:auto}.district-card{padding:10px!important}.friend-grid{grid-template-columns:1fr 1fr;gap:8px}.friend-portrait{height:88px}.friend-portrait svg,.friend-portrait img,.friend-portrait .cast-portrait{height:82px;width:76px}.friend-card p{min-height:30px}.scene-sheet .tour-note{font-size:10px}
}
@media(max-height:540px) and (orientation:landscape){
 #wall .wall-head{padding:9px 15px 0}#wall.world-active .world-title h1{font-size:25px;margin:4px 0}#wall .world-title .eyebrow{font-size:6px}#wall .world-title .caption{display:none}
 #wall .wall-count{padding:7px 10px;min-width:125px}#wall .wall-count b{font-size:26px}#wall .sound-dock,#wall .current-count,#wall #soundPolicy,#wall #wallWindow{display:none}
 #wall .camera-bar{top:66px;left:15px}#wall .world-picker{top:106px;left:15px;padding:5px}.scene-tools{top:97px;right:15px;gap:5px}.scene-tools button{font-size:9px;min-height:30px;padding:4px 9px}.scene-tools button span{font-size:14px}
 #wall .wall-bottom{left:15px;right:15px;bottom:9px}#wall .wish-metrics{max-width:42%;padding:7px 9px}#wall .metrics-title b{font-size:10px}#wall #topicCounts span{font-size:8px}
 .scene-sheet{max-height:90dvh;overflow:auto}.campus-atlas{display:none}.friend-grid{grid-template-columns:repeat(4,1fr)}
}
#demoBurst{font:inherit;padding:2px 10px;border:1px solid currentColor;border-radius:12px;background:transparent;color:inherit}
.stage-editor{display:flex;align-items:center;gap:6px;font-size:12px;flex-wrap:wrap}
.stage-editor input{max-width:100%;font:inherit;padding:6px 9px;border-radius:8px;border:1px solid #96a99e}
#stageRemarks{padding:clamp(24px,5vw,82px);max-width:100%;overflow-wrap:anywhere}#stageRemarks[hidden]{display:none}
#stageRemarks p{font-size:clamp(21px,3vw,46px);line-height:1.45}
.stage-tools{flex-wrap:wrap}
 /* A readable, non-interactive ink plate stays in frame even on a visitor's own camera. */
.delivery-card{position:absolute;z-index:5;bottom:clamp(94px,13vh,156px);left:50%;margin-left:calc(-1 * min(210px,39vw));width:min(420px,78vw);box-sizing:border-box;padding:12px 18px 10px;border-radius:20px;border:1px solid var(--delivery-tone,#ffe0a3);background:linear-gradient(135deg,#fffdf4,#eef6ef);color:#1b3843;box-shadow:0 10px 30px #092d4640;pointer-events:none}
.delivery-card[hidden]{display:none}
.delivery-label{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:750;letter-spacing:.05em}
.delivery-label span:before{content:'✦';margin-right:6px;color:#ae782a}
.delivery-card img{display:block;width:100%;height:clamp(54px,8vh,96px);object-fit:contain;margin:5px 0;background:#fffdf7;border-radius:8px}
#deliveryFind:not([hidden]){display:block;margin:5px auto 0;pointer-events:auto;background:#214b52;color:white;padding:5px 12px;border-radius:20px}
.delivery-card small{display:block;text-align:center;font-size:12px}
#wall[data-map=orbit] .delivery-card{border-top:3px solid var(--delivery-tone);background:linear-gradient(150deg,#faf6ff,#fff9e8)}
#wall[data-map^=future] .delivery-card{background:#e7fbff;border-radius:8px;border-left:4px solid var(--delivery-tone)}
#topicCounts [data-lit] i{box-shadow:0 0 9px 3px var(--topic-light);animation:topic-arrives 1.8s ease-out}
@keyframes topic-arrives{from{transform:scale(1.8)}to{transform:scale(1)}}
@media(max-width:700px){.delivery-card{bottom:clamp(130px,17vh,154px);padding:8px 12px;border-radius:14px}.delivery-label,.delivery-card small{font-size:10px}}
@media(max-height:520px) and (orientation:landscape){.delivery-card{bottom:48px;width:240px;margin-left:-120px;padding:6px 10px}.delivery-card img{height:44px}}
@media(prefers-reduced-motion:reduce){#topicCounts [data-lit] i{animation:none}}
@media(prefers-reduced-motion:reduce){.scene-tools button,.scene-sheet button{transition:none}}
#wall .scene-tools button[hidden]{display:none}
.studio-keywords,.studio-pages{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.studio-keywords span{border-radius:22px;background:#eaf3ec;color:#365c59;padding:7px 12px;font-size:12px}.studio-source{font-size:11px!important;color:#657d78}.studio-pages button{border:1px solid #bbcfc5;border-radius:18px;padding:8px 10px;color:#335c59;background:#f8f6e9}.studio-pages button[aria-pressed=true]{background:#2a6265;color:#fff4d6}

.studio-sheet{max-width:820px!important}
.studio-keywords button{border:1px solid #c1d7ce;border-radius:20px;background:#f6faf4;color:#315b58;padding:8px 13px;font:inherit;font-size:12px}
.studio-keywords button span{padding:0;background:none;color:inherit;font:inherit}
.studio-keywords button[aria-pressed=true]{background:#23595e;border-color:#23595e;color:#fff4d6}
#studioDiagram{display:block;width:100%;height:auto;aspect-ratio:2;border-radius:24px;background:#0a2b3c}
.studio-steps{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0}
.studio-steps button{font:inherit;font-size:12px;padding:7px 12px;border:1px solid #bad0c6;border-radius:7px;background:#f8f8ed;color:#315b58}
.studio-steps button[aria-pressed=true]{background:#f6dfa8;border-color:#d1b16a;color:#273e41}
#studioDetail{font-size:14px;line-height:1.8;color:#315452;margin:12px 0}
.studio-sheet button:focus-visible{outline:3px solid #c18c2e;outline-offset:3px}
@media(max-width:700px){.studio-keywords{gap:5px;margin:14px 0}.studio-keywords button{font-size:11px;padding:7px 10px}.studio-steps button{font-size:11px;padding:6px 8px}#studioDetail{font-size:12px}.studio-sheet .studio-source{line-height:1.7}}

.studio-diagram-window{overflow:auto;max-width:100%;border-radius:24px;overscroll-behavior:contain}.studio-diagram-tools{display:flex;align-items:center;gap:12px;justify-content:space-between;margin:0 0 8px}.studio-diagram-tools button{font:inherit;font-size:12px;padding:5px 10px;background:#e5eee4;color:#325956}.studio-diagram-tools span{font-size:11px;color:#637d72}

#wall .scene-look-choice{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:7px;padding-top:7px;border-top:1px solid #758e792e;font-size:10px;color:inherit}.scene-look-choice select{min-height:44px;font-size:11px;width:155px;max-width:100%;padding:5px 9px;background:#24455c;color:#e6f7fb;border:1px solid #7296b855;border-radius:10px}
@media(max-width:700px){.scene-look-choice{font-size:9px;gap:5px}.scene-look-choice select{width:145px;font-size:10px}}
@media(max-height:540px) and (orientation:landscape){
 #wall .world-picker{grid-template-columns:minmax(170px,1fr) 145px;gap:5px;width:490px;max-width:calc(100% - 150px)!important}
 #worldChoice{grid-column:1/-1}
 #wall .world-picker .map-tools{margin:0}
 #wall .scene-look-choice{margin:0;padding:0;border:0}
 #wall .scene-look-choice>span,#wall #mapChoiceHint{display:none}
 #wall .scene-look-choice select{width:100%}
}
