:root{font:14px/1.45 system-ui,sans-serif;color:#e9f1f6;background:#0a1420;color-scheme:dark}*{box-sizing:border-box}body{margin:0}header{height:74px;display:flex;align-items:center;gap:18px;padding:12px 24px;border-bottom:1px solid #304455;background:#101e2c}header img{width:65px;max-height:48px;object-fit:contain}header strong{font-size:18px}small{display:block;color:#91aabc}nav{margin-left:auto;display:flex;gap:18px}a{color:#7ee1d6}main{display:grid;grid-template-columns:minmax(0,1fr) 370px;height:calc(100dvh - 74px)}.stage{position:relative;overflow:hidden;background:radial-gradient(ellipse at 45% 30%,#28445a,#0e1d2b 75%)}canvas{width:100%;height:100%;display:block;touch-action:none}.headline{position:absolute;top:24px;left:28px;max-width:520px;pointer-events:none;text-shadow:0 2px 5px #102030}h1{font-size:clamp(24px,3vw,42px);margin:8px 0}p{margin:9px 0 14px}.badge{font-size:11px;letter-spacing:2px;color:#80e4d4}.stage-bottom{position:absolute;bottom:22px;left:28px;right:20px;display:flex;flex-direction:column;gap:5px;pointer-events:none}.stage-bottom strong{font-size:18px}.stage-bottom span{font-size:12px;color:#b4c9d9}#loading{position:absolute;top:50%;left:30%;background:#142938;padding:15px;border-radius:10px}aside{overflow-y:auto;padding:20px;border-left:1px solid #304455;background:#101e2c}label{display:block;margin:12px 0 5px;color:#bad1df;font-size:12px;font-weight:650}input,select,textarea,button{font:inherit}input:not([type=checkbox]):not([type=range]),select,textarea{width:100%;padding:9px;color:#edf6fc;background:#182e40;border:1px solid #3e5669;border-radius:6px}button{cursor:pointer;background:#223c51;color:#e6f3fb;border:1px solid #476175;border-radius:6px;padding:8px 10px}button:hover{background:#35566c}button:disabled{opacity:.4;cursor:default}.primary{background:#1d6e64;border-color:#5ec8b3}.row{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.check{display:flex;gap:8px;align-items:center;font-weight:400}input[type=range]{width:100%;accent-color:#64d6bd}details{border-top:1px solid #304455;margin-top:18px;padding-top:14px}summary{font-size:15px;font-weight:650;cursor:pointer}.muted,#reviewStatus{font-size:12px;color:#9fb6c6}#parts label{margin:7px 0;font-weight:400}#downloads a{display:block;border:1px solid #365266;border-radius:6px;padding:9px;margin:7px 0;text-decoration:none}#downloads small{color:#b4cbd9}output{float:right}.hidden{display:none}@media(max-width:850px){main{grid-template-columns:1fr;height:auto}.stage{height:70dvh;min-height:480px}aside{border-left:0}header{padding:8px 12px}nav a{font-size:11px}nav{gap:10px}.headline{left:15px;top:16px;max-width:80%}.stage-bottom{left:15px}.headline p{font-size:12px}header small{font-size:10px}}
.headline{max-width:330px}.headline h1{font-size:32px}.headline p{font-size:12px;max-width:300px}@media(max-width:850px){.headline{max-width:55%}.headline h1{font-size:23px}.headline p{font-size:11px}}

#sourceReference{position:absolute;inset:145px 15px 100px;text-align:center;z-index:2}#sourceReference[hidden]{display:none}#sourcePhoto{height:calc(100% - 45px);max-width:100%;object-fit:contain}#sourcePhoto[hidden]{display:none}#sourceCaption{font-size:12px;color:#c3d8e6}body.source-reference #viewport{visibility:hidden}body.source-reference #modelLabel{color:#bce6dd}@media(max-width:540px){header{height:auto;min-height:78px;flex-wrap:wrap;gap:8px}nav{width:100%;margin-left:0;justify-content:space-between}main{height:auto}.stage{height:70dvh;min-height:510px}.headline{max-width:90%}.headline p{max-width:90%}#sourceReference{inset:145px 12px 105px}.stage-bottom strong{font-size:15px}.stage-bottom span{font-size:11px}}
@media(max-width:540px){.stage{height:78dvh;min-height:620px}.stage canvas{position:absolute;top:150px;left:0;width:100%;height:calc(100% - 255px)}.headline{top:15px}.stage-bottom{bottom:16px}}
/* R107 inside-to-twin tour. Keep the approved logo and original source imagery. */
.tour-overlay{position:absolute;right:22px;top:24px;width:min(330px,42%);padding:14px 16px;background:rgba(9,25,37,.88);border:1px solid #3a656d;border-radius:12px;pointer-events:none;backdrop-filter:blur(8px)}
.tour-mode{font-size:10px;letter-spacing:1.6px;font-weight:750;color:#8be3cb}.tour-steps{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.tour-steps button{font-size:10px;padding:3px 5px;border-radius:3px;color:#aac1cd;background:#1c3444}.tour-steps button.active{background:#99edd8;color:#09272b;font-weight:750}.tour-overlay p{font-size:12px;line-height:1.45;margin:10px 0 5px}.tour-overlay small{font-size:10px;line-height:1.4;color:#b6c9d5}.build-meter{height:4px;background:#355063;border-radius:3px;overflow:hidden;margin:10px 0}.build-meter span{display:block;height:100%;background:#85eed7;width:0}.part-callout{position:absolute;border-left:2px solid #83ead5;padding:5px 7px;background:rgba(8,26,37,.9);font-size:11px;line-height:1.3;pointer-events:none;white-space:nowrap;border-radius:0 4px 4px 0;color:#d9f8f2}.stage-bottom{background:linear-gradient(transparent,rgba(8,22,33,.8));padding:14px 0 2px}.stage-bottom strong{max-width:650px}#tourCaption{min-height:35px}
@media(max-width:1100px) and (min-width:851px){.tour-overlay{width:260px;max-width:44%;right:12px}.headline{max-width:46%}.headline h1{font-size:27px}}
@media(max-width:850px){.tour-overlay{right:14px;top:16px;width:42%;padding:10px}.tour-overlay p{font-size:11px}.tour-steps{gap:3px}.tour-steps button{font-size:9px;padding:2px 3px}}
@media(max-width:540px){.stage{min-height:680px}.stage canvas{top:228px;height:calc(100% - 330px)}.headline{top:13px}.headline h1{font-size:24px;margin:4px 0}.headline p{font-size:11px;margin:5px 0}.tour-overlay{top:109px;left:14px;right:14px;width:auto;padding:9px 12px}.tour-steps{margin-top:5px;flex-wrap:nowrap;justify-content:space-between}.tour-overlay p{margin:5px 0 2px;min-height:28px}.tour-mode{font-size:9px}.tour-overlay small{font-size:9px}.part-callout{font-size:9px;max-width:120px;white-space:normal}.stage-bottom{bottom:12px}.stage-bottom strong{font-size:15px}}
@media(prefers-reduced-motion:reduce){.tour-overlay{backdrop-filter:none}}

/* R113 character-specific source reviews */
[hidden]{display:none!important}#currentWork{border-top:1px solid #365266;margin-top:18px;padding-top:14px}#currentWork h2{font-size:17px;margin:0 0 10px}.progress-item{display:grid;grid-template-columns:85px 1fr;gap:10px;padding:8px 0;border-bottom:1px solid #294051;font-size:12px}.progress-item b{color:#87decd}.progress-item span{color:#d1e1eb}#evidencePhoto{display:block;width:100%;max-height:440px;object-fit:contain;margin-top:12px}body:not(.beerman) .tour-overlay{display:none}body:not(.beerman) .stage canvas{top:135px;height:calc(100% - 235px)}body:not(.beerman) #sourceReference{inset:145px 12px 105px}@media(min-width:851px){body:not(.beerman) .stage canvas{position:static;height:100%}}

/* R114 playback controls stay reachable above the scene. */
.stage-audio-enable{position:absolute;left:18px;bottom:112px;z-index:14;max-width:44%;min-height:44px}.stage-audio-enable[hidden]{display:none!important}@media(max-width:540px){.stage-audio-enable{left:14px;bottom:167px;max-width:calc(100% - 28px)}}

/* R115: make the verified internal study reachable directly on the viewer. */
.stage-study-actions{position:absolute;z-index:13;left:28px;bottom:112px;display:flex;gap:7px;align-items:center;flex-wrap:wrap;max-width:calc(100% - 56px)}
.stage-study-actions button{min-height:44px;min-width:76px;padding:9px 13px;font-weight:650;background:#203c50;box-shadow:0 2px 12px #07121c80}
.stage-study-actions button.primary{background:#1d6e64}
.stage-study-actions button[aria-pressed=true]{border:2px solid #95eee0}
#internalViewStatus{flex-basis:100%;font-size:11px;line-height:1.35;color:#d3e9ef;max-width:360px;background:#0b2030e8;border-radius:4px;padding:4px 7px}
#internalViewStatus:empty{display:none}
@media(max-width:540px){.stage-study-actions{left:14px;right:14px;bottom:112px;max-width:none;gap:6px}.stage-study-actions button{padding:8px 11px;font-size:12px}.stage-audio-enable{bottom:212px}}

@media(max-width:540px){
 .stage{height:calc(100svh - 108px);min-height:450px}
 .headline{top:10px;left:14px;max-width:calc(100% - 28px)}
 .headline .badge{display:none}.headline h1{font-size:20px;line-height:1.2;margin:0}.headline p{display:none}
 .tour-overlay{top:43px;left:14px;right:14px;padding:7px 10px}
 .tour-overlay p{font-size:10px;line-height:1.3;min-height:0;margin:4px 0 2px}
 .tour-mode{font-size:8px;letter-spacing:1px}.tour-steps{margin-top:4px}
 .stage canvas{top:155px;height:calc(100% - 225px)}
 .stage-study-actions{bottom:77px}
 .stage-bottom{bottom:8px;left:14px;right:14px;gap:2px;padding-top:5px}
 .stage-bottom strong{font-size:12px;line-height:1.2}.stage-bottom span{font-size:9px;line-height:1.2}#orbitHelp{display:none}
 .stage-audio-enable{bottom:132px}
}

/* TOURCLICK2: accessible chapter navigation, shared with the existing view selector. */
.tour-steps button{pointer-events:auto;min-height:44px;padding:7px 9px;line-height:1.2;text-align:center;border:1px solid #476175;cursor:pointer}.tour-steps button:focus-visible{outline:3px solid #a2f7e5;outline-offset:3px}.tour-steps button:disabled{cursor:wait}
@media(max-width:540px){.tour-steps{flex-wrap:wrap;justify-content:flex-start}.tour-steps button{flex:1 1 calc(33.333% - 4px);min-height:44px;padding:7px 5px;font-size:10px}.stage canvas{top:235px;height:calc(100% - 305px)}.stage{min-height:530px}}
