/* Adapters for the existing application. Gameplay owns all values and actions. */
.dotf-app{--gold:var(--dotf-gold);--cyan:var(--dotf-cyan);--muted:var(--dotf-muted);--line:#b88b4545;margin:0;background:var(--dotf-night);color:var(--dotf-text)}
.dotf-app::before{opacity:.16;background:linear-gradient(#05091d33,#05091de8),url('/assets/astralis-moonlit-city.webp') center top/cover no-repeat;image-rendering:pixelated}
.dotf-app header.dotf-nav{height:auto;min-height:88px;padding:20px 4%;gap:20px;background:#07132cf5;border-bottom:1px solid var(--dotf-border);box-shadow:0 3px 0 #05091d,0 4px 0 #326ab780}
.dotf-app .brand{color:var(--dotf-gold)}.dotf-app .brand small{color:var(--dotf-cyan)}
.dotf-app nav{flex-wrap:wrap;gap:18px}.dotf-app nav a{display:inline-flex;align-items:center;gap:7px}.dotf-app .badge,.dotf-app .local-status{border:1px solid #b88b4580;border-radius:3px;background:#0a1835;color:var(--dotf-gold)}
.dotf-app main{position:relative}.astralis-panorama{height:180px;margin:0 0 30px;overflow:hidden;border:1px solid var(--dotf-border);outline:1px solid #326ab7;outline-offset:4px;position:relative}
.astralis-panorama img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 40%;image-rendering:pixelated}.astralis-panorama::after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 4px #05091d88;pointer-events:none}
.dotf-app .top h1,.dotf-app .prologue-intro h1{font-size:clamp(30px,3.7vw,52px);color:var(--dotf-gold)}
.dotf-app .eyebrow,.dotf-app .room-section-title{color:var(--dotf-cyan)}
.dotf-app .card,.dotf-app .console,.dotf-app .identity,.dotf-app .first-step{border:1px solid var(--dotf-border);border-radius:4px;background:linear-gradient(145deg,#143063,#0a1835 42%,#060e27);box-shadow:inset 0 0 0 3px #07122b,0 10px 28px #0006}
.dotf-app .console{outline:1px solid #326ab780;outline-offset:3px}.dotf-app .identity{padding:20px 24px}
.dotf-app .card h2{font-size:25px;color:var(--dotf-gold)}.dotf-app .console-head{background:#11254c;border-bottom:1px solid #b88b4575;color:var(--dotf-gold)}
.dotf-app button,.dotf-app .panel-action,.dotf-app .gold-button,.dotf-app .plain-button{border-radius:3px;border-color:#326ab7;background:linear-gradient(#17345e,#0a1b39);color:var(--dotf-cyan);min-height:40px;box-shadow:inset 0 0 0 2px #07132c}
.dotf-app button:hover:not(:disabled),.dotf-app .panel-action:hover{border-color:var(--dotf-gold);color:var(--dotf-gold);background:#183b6a}
.dotf-app button:focus-visible,.dotf-app summary:focus-visible{outline:2px solid var(--dotf-gold);outline-offset:3px}
.dotf-app .primary,.dotf-app #send,.dotf-app #command-form>button,.dotf-app .tabs button[aria-selected=true]{border-color:var(--dotf-gold);color:var(--dotf-gold);background:linear-gradient(#244b7c,#10264b)}
.dotf-app #output,.dotf-app #transcript{background:#050e23;color:#edf3ff;text-shadow:none}.dotf-app #transcript{font-family:system-ui,sans-serif}.dotf-app #output{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.dotf-app #command-form{background:#0b1d3d;border-color:#326ab7}.dotf-app #command{font-size:16px;color:#f8f1dd;background:#07132d;border-radius:3px;padding:10px;min-width:0}.dotf-app #command-form:focus-within{box-shadow:inset 0 0 0 1px var(--dotf-cyan)}
.dotf-app .input-options,.dotf-app #input-help{background:#09152e;color:var(--dotf-muted)}.dotf-app input[type=checkbox]{width:auto;min-height:0;accent-color:var(--dotf-cyan)}
.dotf-app progress,.dotf-app .track{height:10px;border:1px solid #4986b6;border-radius:0;background:#071027;padding:1px}.dotf-app progress::-webkit-progress-bar{background:#071027}.dotf-app progress::-webkit-progress-value{border-radius:0}.dotf-app .track i{border-radius:0}
.dotf-app .item-panel,.dotf-app dialog{background:linear-gradient(145deg,#183568,#09162e 50%,#060e27);border:2px solid var(--dotf-border);border-radius:4px;color:var(--dotf-text);box-shadow:inset 0 0 0 3px #07122b,0 18px 80px #000b}
.dotf-app dialog::backdrop{background:#03091bd9;backdrop-filter:none}.dotf-app .dialog-head,.dotf-app .item-panel-top{background:#0b1b38;border-bottom:1px solid #b88b4566}.dotf-app .item-panel h2,.dotf-app #panel-content h2,.dotf-app #panel-content h3,.dotf-app .entry h2{font-family:Georgia,serif;color:var(--dotf-gold)}
.dotf-app .item-emblem{border-radius:3px;background:#112b54;border-color:var(--dotf-border);color:var(--dotf-gold)}.dotf-app .item-fact,.dotf-app .inventory-item,.dotf-app .option-card,.dotf-app .help-grid>div,.dotf-app .crossing-choice{border-radius:3px;background:#10244a;border-color:#326ab780}
.dotf-app .npc-speech{background:#12294d;border-color:var(--dotf-violet);border-radius:0}.dotf-app .discovery{background:#132b46;border:1px solid var(--dotf-border);border-radius:3px}.dotf-app .ambient,.dotf-app #panel-content p,.dotf-app #panel-content li{color:var(--dotf-muted)}
.dotf-app .map-panel #mini-map{background:#07142b;border:1px solid #326ab780}.dotf-app .world-panel h2{font:700 11px/1.5 system-ui;color:var(--dotf-cyan)}
.dotf-app footer{background:#07132c;border-color:var(--dotf-border);color:var(--dotf-muted)}
.astralis-home .hero{min-height:720px}.astralis-home .hero-art{width:100%;height:100%;object-position:center;image-rendering:pixelated}.astralis-home .hero:before{background:linear-gradient(90deg,#05091deb,#05091dba 32%,#05091d15 75%),linear-gradient(0deg,#05091d,transparent 30%)}.astralis-home .hero:after{background:none}.astralis-home #game-title{font-size:clamp(56px,6.5vw,96px);line-height:1.04;letter-spacing:-2px}.astralis-home .intro{color:#e2eafa}.astralis-home .fine{color:var(--dotf-muted)}
.astralis-home .button,.astralis-home .nav-enter{background:linear-gradient(#21487b,#0b234a);border:1px solid var(--dotf-gold);box-shadow:inset 0 0 0 3px #07122b;color:var(--dotf-gold);border-radius:3px}.astralis-home .ribbon{background:#0a1835;border-color:var(--dotf-border);color:var(--dotf-cyan)}.astralis-home .ribbon b{color:var(--dotf-gold)}.astralis-home .scene{border:2px solid var(--dotf-gold);outline:1px solid #326ab7;outline-offset:4px}.astralis-home .scene img{image-rendering:pixelated}.astralis-home .scene-label{background:#07132cef}.astralis-home .last-call{background:linear-gradient(#0a1835,#11254c);border-color:var(--dotf-border)}
@media(min-width:801px){.astralis-live .workspace{grid-template-columns:minmax(0,1fr) 300px}}
@media(max-width:800px){.dotf-app header.dotf-nav{padding:18px 20px;flex-wrap:wrap}.dotf-app nav{gap:12px}.astralis-panorama{height:145px;margin-bottom:24px}.astralis-home nav>a:not(.nav-enter){display:inline-flex}.astralis-home nav{font-size:11px}.astralis-home .hero{min-height:800px}.astralis-home .hero-art{height:100%;object-position:65% top}.astralis-home .hero:before{background:linear-gradient(0deg,#05091dfc 5%,#05091de8 43%,#05091d11 85%)}.astralis-home .hero-copy{padding:290px 7% 55px}.astralis-home #game-title{font-size:62px}.astralis-home .scene-caption{display:none}}
@media(max-width:520px){.dotf-app main{padding:22px 16px}.astralis-home main{padding:0}.astralis-panorama{height:118px}.dotf-app .identity{padding:16px;flex-wrap:wrap}.dotf-app .top{flex-wrap:wrap}.dotf-app .connection{flex-wrap:wrap}.dotf-app .item-panel{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);inset:10px 10px auto;overflow:auto}.dotf-app .console-head{font-size:10px;letter-spacing:1px}.dotf-app .card{padding:18px}.dotf-app .dotf-icon{width:16px;height:16px}.astralis-home #game-title{font-size:54px}.astralis-home footer div{flex-wrap:wrap}.dotf-app .prologue-meters{gap:16px}}
.dotf-app .primary{border:1px solid var(--dotf-gold)}.astralis-live .identity{margin-bottom:22px}.dotf-app .muted,.dotf-app .hint,.dotf-app .note p,.dotf-app .identity #details{color:var(--dotf-muted)}
@media(max-width:520px){.astralis-live aside{grid-template-columns:minmax(0,1fr)}.astralis-live nav a{display:inline-flex}.dotf-app .item-description{font-family:system-ui,sans-serif;font-size:14px}.dotf-app .input-options{flex-wrap:wrap;gap:6px}}
