:root{--bg:#12130f;--panel:#1b1d18;--panel-2:#22251f;--line:#383d32;--text:#f2eee3;--muted:#b8b0a0;--soft:#8f9d87;--accent:#d3b35f;--accent-2:#70a6a1;--danger:#d66a5f;--ok:#82b879;--shadow:0 18px 48px rgba(0,0,0,0.28)}*{box-sizing:border-box}body,html{height:100%;min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;letter-spacing:0}body:before{content:"";position:fixed;z-index:0;inset:0;pointer-events:none;background:radial-gradient(circle at 12% 0,rgba(112,166,161,.12),transparent 34rem),linear-gradient(180deg,#171912 0,var(--bg) 72%,#0f100d 100%)}*{scrollbar-width:thin;scrollbar-color:rgba(211,179,95,.58) rgba(8,9,7,.38)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{border-radius:999px;background:linear-gradient(180deg,rgba(211,179,95,.08),rgba(8,9,7,.52)),rgba(8,9,7,.42)}::-webkit-scrollbar-thumb{border:2px solid rgba(8,9,7,.58);border-radius:999px;background:linear-gradient(180deg,rgba(226,194,109,.9),rgba(142,113,45,.92));box-shadow:inset 0 0 0 1px rgba(255,240,190,.18)}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,rgba(245,211,124,.96),rgba(177,139,52,.96))}::-webkit-scrollbar-button,::-webkit-scrollbar-corner{width:0;height:0;display:none}button,input,select,textarea{font:inherit}button{border:0}a{color:inherit;text-decoration:none}.app-shell{position:relative;z-index:1;min-height:100vh;padding-bottom:72px}.app-shell:has(.scene-page){display:flex;flex-direction:column;height:100dvh;max-height:100dvh;overflow:hidden;padding-bottom:0}.app-shell:has(.scene-page)>.status-bar,.app-shell:has(.scene-page)>.top-nav{flex:0 0 auto}.app-shell:has(.scene-page)>main{flex:1 1 auto;min-height:0;overflow:hidden}.top-nav{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(18,19,15,.88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:12px clamp(16px,4vw,48px)}.brand{display:flex;align-items:baseline;gap:10px;min-width:0}.brand strong{font-size:16px;white-space:nowrap}.brand span{color:var(--muted);font-size:13px}.nav-links{gap:4px}.nav-links,.top-nav-actions{display:flex;align-items:center}.top-nav-actions{gap:8px}.nav-link{border-radius:6px;color:var(--muted);padding:8px 10px;font-size:14px}.nav-action{border:1px solid rgba(211,179,95,.24);background:rgba(211,179,95,.08);cursor:pointer;font:inherit}.nav-action:disabled{opacity:.45;cursor:not-allowed}.reset-progress-action{color:var(--gold);white-space:nowrap}.nav-action:focus-visible,.nav-link.active,.nav-link:hover{background:rgba(211,179,95,.12);color:var(--text)}.mobile-nav{position:fixed;z-index:30;right:0;bottom:0;left:0;display:none;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.08);background:rgba(18,19,15,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-nav .nav-link{border-radius:0;padding:12px 6px;text-align:center;font-size:12px}.status-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:1px;gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.status-cell{min-width:0;background:rgba(27,29,24,.96);padding:10px 16px}.status-cell span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase}.status-cell strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;margin-top:3px}.page{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:28px 0 52px}.scene-page{display:flex;flex-direction:column;height:100%;max-height:100%;min-height:0;overflow:hidden;padding:20px 0}.page-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:20px}.scene-page .page-header{flex:0 0 auto}.scene-header-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.scene-page>.notice{flex:0 0 auto;margin:0 0 12px}.page-title{margin:0;font-size:clamp(24px,4vw,38px);line-height:1.05}.page-kicker{color:var(--accent);font-size:13px;text-transform:uppercase;margin-bottom:7px}.subtle{color:var(--muted)}.grid{display:grid;grid-gap:14px;gap:14px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.card{border:1px solid var(--line);border-radius:8px;background:rgba(27,29,24,.9);box-shadow:var(--shadow);padding:18px}.card h2,.card h3{margin:0 0 10px}.card p{color:var(--muted);line-height:1.55}.button-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.choice-list{display:grid;grid-gap:8px;gap:8px}.choice-button{width:100%;justify-content:flex-start;text-align:left;min-height:42px}.scene-closed-note{margin:0;border:1px solid rgba(211,179,95,.24);border-radius:6px;background:rgba(211,179,95,.08);padding:10px 12px;color:var(--text)}.scene-continue-transition{width:100%;min-height:48px;font-size:16px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border-radius:6px;cursor:pointer;padding:0 14px;background:var(--panel-2);color:var(--text)}.btn:hover{filter:brightness(1.08)}.btn.primary{background:var(--accent);color:#19150a;font-weight:700}.btn.danger{background:rgba(214,106,95,.18);color:#ffd8d3}.btn.ghost{background:transparent;border:1px solid var(--line)}.btn:disabled{cursor:not-allowed;opacity:.55}.timeline{position:relative;display:grid;grid-gap:12px;gap:12px}.timeline-node{display:grid;grid-template-columns:26px 1fr;grid-gap:12px;gap:12px}.timeline-dot{width:13px;height:13px;border-radius:50%;background:var(--accent);margin:6px auto 0;box-shadow:0 0 0 5px rgba(211,179,95,.14)}.route-slot{margin:8px 0 0;color:var(--muted);font-size:13px}.route-progress-page{width:min(1320px,calc(100% - 32px))}.route-section-list,.route-tabs{display:grid;grid-gap:12px;gap:12px;margin-bottom:18px}.route-tabs{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.route-section-list{grid-template-columns:1fr}.route-section{display:grid;grid-gap:12px;gap:12px}.route-tab{width:100%;min-height:72px;border:1px solid rgba(211,179,95,.22);border-radius:8px;background:linear-gradient(180deg,rgba(211,179,95,.08),rgba(27,29,24,.92)),rgba(27,29,24,.92);color:var(--text);cursor:pointer;padding:14px;text-align:left}.route-tab small,.route-tab span{display:block}.route-tab span{font-weight:700;line-height:1.2}.route-tab small{margin-top:8px;color:var(--muted);font-size:12px;text-transform:uppercase}.route-tab.active{border-color:rgba(211,179,95,.72);box-shadow:0 0 0 1px rgba(211,179,95,.18),var(--shadow)}.route-tab.hidden,.route-tab.locked{cursor:not-allowed;opacity:.58}.route-dialogue-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:14px;gap:14px;align-items:stretch}.route-section-dialogues{margin-bottom:2px}.route-dialogue-card{min-height:210px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:8px;background:linear-gradient(145deg,rgba(255,255,255,.03),transparent 34%),rgba(27,29,24,.92);box-shadow:var(--shadow);padding:18px}.route-dialogue-card.active,.route-dialogue-card.available{border-color:rgba(211,179,95,.62)}.route-dialogue-card.highlighted{border-color:rgba(245,211,124,.96);box-shadow:0 0 0 2px rgba(245,211,124,.28),0 18px 48px rgba(0,0,0,.34)}.route-dialogue-card.completed{border-color:rgba(130,184,121,.42)}.route-dialogue-card.auto_next,.route-dialogue-card.closed,.route-dialogue-card.hidden,.route-dialogue-card.locked{background:rgba(27,29,24,.72)}.route-card-topline{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.route-status{width:max-content;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.05);color:var(--muted);padding:4px 9px;font-size:12px;font-weight:700;text-transform:uppercase}.route-status.completed{background:rgba(130,184,121,.12);color:#c8edc1}.route-status.active,.route-status.available{background:rgba(211,179,95,.16);color:#f1d887}.route-status.closed{background:rgba(214,106,95,.14);color:#ffd8d3}.route-order{color:rgba(242,238,227,.34);font-size:13px;font-weight:700}.route-dialogue-card h2{margin:0;font-size:22px}.route-dialogue-card p{color:var(--muted);line-height:1.55}.route-participants{margin:8px 0 0;color:var(--accent);font-size:13px}.route-reason{margin-top:auto;border-top:1px solid rgba(255,255,255,.08);padding-top:12px}.route-continue{align-self:flex-start;margin-top:14px}.route-debug{margin-top:18px;border:1px solid var(--line);border-radius:8px;background:rgba(12,13,10,.72);padding:12px 14px}.route-debug summary{cursor:pointer;color:var(--accent);font-weight:700}.route-debug pre{max-height:360px;overflow:auto;color:var(--muted);font-size:12px;white-space:pre-wrap}.account-settings-card{grid-column:span 2}.settings-groups{display:grid;grid-gap:14px;gap:14px}.settings-section{display:grid;grid-gap:12px;gap:12px;border:1px solid rgba(214,180,91,.22);border-radius:8px;background:linear-gradient(135deg,rgba(214,180,91,.08),transparent 42%),rgba(12,13,10,.36);padding:14px}.settings-section h3{margin:0;color:var(--accent);font-size:15px;line-height:1.2}.setting-toggle{display:flex;gap:10px;align-items:center;color:var(--text);line-height:1.35}.setting-toggle input{width:18px;height:18px;accent-color:var(--accent)}.setting-range{display:grid;grid-template-columns:minmax(0,1fr) 96px;grid-gap:8px 12px;gap:8px 12px;align-items:center}.setting-range small,.setting-range span{grid-column:1/-1}.setting-range span{color:var(--text)}.setting-range small{color:var(--muted);font-size:12px}.setting-range input[type=range]{width:100%;accent-color:var(--accent)}.setting-range input[type=number]{min-height:36px;text-align:center}.scene-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:16px;gap:16px;flex:1 1;height:100%;max-height:100%;min-height:0;overflow:hidden}.scene-play-space{display:grid;grid-template-rows:minmax(0,1fr) auto;grid-gap:14px;gap:14px;min-height:0}.scene-right-panel{display:none;overflow-y:auto;overscroll-behavior:contain;padding-right:4px}.scene-right-panel,.scene-stage{height:100%;max-height:100%;min-height:0}.scene-stage{border:1px solid rgba(211,179,95,.36);border-radius:8px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),var(--shadow);background:linear-gradient(180deg,rgba(20,21,17,.7),rgba(11,12,10,.82)),repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 1px,transparent 1px 84px),repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 84px),#20231e;position:relative;overflow:hidden;padding:20px 24px;display:flex;flex-direction:column}.scene-stage.has-backdrop{background:radial-gradient(circle at 28% 8%,rgba(255,232,170,.1),transparent 34%),linear-gradient(180deg,rgba(9,10,8,.42),rgba(9,10,8,.72) 64%,rgba(9,10,8,.86)),var(--scene-backdrop-image),#151712;background-position:50%;background-size:cover}.scene-stage:after,.scene-stage:before{content:"";position:absolute;inset:0;pointer-events:none}.scene-stage:before{z-index:0;background:linear-gradient(90deg,rgba(0,0,0,.28),transparent 34%,rgba(0,0,0,.36)),linear-gradient(180deg,transparent,rgba(0,0,0,.14) 55%,rgba(0,0,0,.42))}.scene-stage:after{z-index:0;opacity:.48;background:repeating-linear-gradient(90deg,rgba(255,255,255,.045) 0 1px,transparent 1px 96px),repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 96px)}.npc-list{flex:0 0 auto;position:relative;z-index:1;display:flex;gap:12px;flex-wrap:wrap;align-items:flex-start}.npc-token{border:1px solid var(--speaker-border,rgba(211,179,95,.32));border-radius:8px;background:linear-gradient(90deg,var(--speaker-glow,rgba(211,179,95,.08)),transparent 46%),var(--speaker-bg,rgba(18,19,15,.78));box-shadow:inset 2px 0 0 var(--speaker-border,rgba(211,179,95,.32)),0 12px 30px rgba(0,0,0,.24);color:var(--speaker-accent,var(--text));padding:10px 12px;font-size:14px;font-weight:700}.scene-chat{display:flex;flex-direction:column;flex:1 1;min-height:0;margin-top:18px;padding:2px 6px 18px 0;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth}.scene-chat,.scene-timed-decision{position:relative;z-index:1;gap:12px}.scene-timed-decision{flex:0 0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:12px;margin:8px 0 0;border:1px solid rgba(211,179,95,.38);border-radius:8px;background:rgba(57,45,16,.72);padding:10px 12px;color:#fff8d6;font-size:14px}.scene-timed-decision strong{min-width:42px;border-radius:8px;background:rgba(12,14,10,.84);padding:6px 8px;text-align:center;font-size:18px}.scene-composer{position:relative;z-index:1;flex:0 0 auto;display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(0,1fr) auto;align-items:end;margin:0;padding:0}.scene-composer .field{margin:0}.scene-composer textarea{min-height:60px;max-height:118px}.scene-composer .btn{min-height:60px;justify-self:stretch}.scene-send-icon{display:none}.scene-action-deck{display:grid;grid-gap:14px;gap:14px;border:1px solid rgba(211,179,95,.26);border-radius:8px;background:linear-gradient(180deg,rgba(25,24,18,.82),rgba(11,12,10,.86)),rgba(18,19,15,.92);box-shadow:var(--shadow);padding:14px}.scene-action-deck .choice-list{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.scene-action-deck .choice-button{justify-content:center;text-align:center;border-color:rgba(211,179,95,.36);background:rgba(16,17,13,.58)}.scene-action-deck .field{margin:0}.scene-action-deck label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.debug-modal-backdrop{position:fixed;z-index:80;inset:0;display:grid;place-items:center;background:rgba(4,5,4,.72);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:clamp(16px,4vw,42px)}.debug-modal-panel{display:grid;grid-template-rows:auto auto minmax(0,1fr);grid-gap:14px;gap:14px;width:min(1040px,100%);max-height:min(820px,100%);min-height:0;border:1px solid rgba(211,179,95,.28);border-radius:8px;background:rgba(18,19,15,.96);box-shadow:0 28px 80px rgba(0,0,0,.48);padding:18px}.debug-modal-header{display:flex;gap:16px;align-items:flex-start;justify-content:space-between}.debug-modal-header h2{margin:0}.debug-modal-body{min-height:0;overflow:auto;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(7,8,6,.62);padding:14px}.debug-modal-body pre{margin:0;white-space:pre-wrap;word-break:break-word}.chat-message{width:min(86%,620px);border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(15,17,14,.78);padding:10px 12px;white-space:pre-wrap}.chat-message.player{align-self:flex-end;position:relative;border-color:rgba(222,183,89,.48);background:linear-gradient(90deg,rgba(222,183,89,.16),transparent 38%),rgba(44,35,18,.72);box-shadow:inset 3px 0 0 rgba(222,183,89,.72)}.chat-message.npc{align-self:flex-start;border-color:var(--speaker-border,rgba(255,255,255,.1));background:linear-gradient(90deg,var(--speaker-glow,rgba(255,255,255,.06)),transparent 42%),var(--speaker-bg,rgba(15,17,14,.78));box-shadow:inset 3px 0 0 var(--speaker-border,rgba(255,255,255,.1)),0 14px 28px rgba(0,0,0,.16)}.chat-message.system{align-self:center;width:min(92%,680px);border-color:rgba(255,112,112,.34);background:rgba(68,26,24,.34)}.chat-message.scene{align-self:center;width:min(92%,680px);color:var(--muted);background:rgba(9,10,8,.46)}.chat-message.scene.accent-actor{border-color:color-mix(in srgb,var(--speaker-border,rgba(222,183,89,.38)) 58%,transparent);background:linear-gradient(90deg,color-mix(in srgb,var(--speaker-glow,rgba(222,183,89,.12)) 48%,transparent),transparent 38%),color-mix(in srgb,var(--speaker-bg,rgba(28,23,13,.58)) 62%,rgba(9,10,8,.46));box-shadow:inset 2px 0 0 color-mix(in srgb,var(--speaker-border,rgba(222,183,89,.5)) 58%,transparent);color:var(--text)}.chat-message.scene.accent-actor .chat-speaker{color:color-mix(in srgb,var(--speaker-accent,#f1cf72) 76%,var(--muted))}.chat-speaker{margin-bottom:5px;color:var(--accent);font-size:12px;font-weight:700}.chat-message.player .chat-speaker{color:#f1cf72}.chat-message.npc .chat-speaker{color:var(--speaker-accent,var(--accent))}.chat-text{color:var(--text);font-size:14px;line-height:1.55}.chat-message.scene .chat-text{color:var(--muted)}.chat-message.scene.accent-actor .chat-text{color:color-mix(in srgb,var(--text) 84%,var(--muted))}.chat-message.pending .chat-text{color:var(--muted)}.typing-indicator span{animation:typing-dot 1s infinite}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s}.typing-cursor{display:inline-block;width:.65ch;height:1.05em;margin-left:2px;transform:translateY(.15em);background:var(--accent);animation:blink 1s step-end infinite}.message-feedback{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.btn.mini{min-height:28px;padding:5px 8px;font-size:12px}.feedback-saved{color:var(--muted);font-size:12px}.message-feedback-form{display:grid;grid-gap:8px;gap:8px;margin-top:10px;border-top:1px solid var(--line);padding-top:10px}.message-feedback-form textarea{min-height:68px}.tag-grid.compact{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px}@keyframes blink{0%,45%{opacity:1}46%,to{opacity:0}}@keyframes typing-dot{0%,20%{opacity:.25}45%,to{opacity:1}}.response-box{min-height:148px;white-space:pre-wrap;line-height:1.6;color:var(--text)}.debug-panel pre{overflow:auto;max-height:220px;margin:0;color:var(--muted);font-size:12px;line-height:1.45}.debug-tabs{display:flex;gap:8px;margin-bottom:12px}.debug-tab{border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--muted);padding:7px 10px;cursor:pointer}.debug-tab.active{background:rgba(224,188,82,.14);color:var(--text);border-color:rgba(224,188,82,.42)}.debug-summary{display:grid;grid-gap:12px;gap:12px}.debug-summary-section{border-top:1px solid var(--line);padding-top:10px}.debug-summary-section:first-child{border-top:0;padding-top:0}.debug-summary-title{margin-bottom:7px;color:var(--accent);font-size:12px;font-weight:700;text-transform:uppercase}.debug-summary-grid,.debug-summary-line,.debug-summary-row{color:var(--text);font-size:13px}.debug-summary-row{display:flex;gap:8px;align-items:center}.debug-summary-line{display:grid;grid-template-columns:minmax(70px,110px) 1fr;grid-gap:6px 10px;gap:6px 10px;padding:4px 0}.debug-summary-line code{white-space:normal}.debug-summary-line code,.debug-summary-line small{grid-column:2;color:var(--muted);word-break:break-word}.debug-summary-line small{font-size:11px;line-height:1.35}.debug-summary-line em{color:var(--muted);font-style:normal}.scene-goal-line strong{color:var(--accent)}.debug-summary-grid{display:grid;grid-template-columns:minmax(120px,1fr) auto;grid-gap:6px 12px;gap:6px 12px}.debug-summary-muted,.debug-summary-warning{color:var(--muted);font-size:12px}.debug-summary-warning{color:var(--danger);word-break:break-word}.modal-backdrop{position:fixed;z-index:60;inset:0;display:grid;place-items:center;padding:18px;background:rgba(6,7,5,.72)}.modal-panel{width:min(720px,100%);max-height:min(680px,calc(100vh - 36px));overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:var(--shadow);padding:20px}.modal-panel h2{margin:0 0 12px}.transition-backdrop{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:0;background:#050605}.transition-panel{position:relative;width:100vw;height:100svh;max-height:none;overflow:hidden;display:grid;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}.transition-header{display:none}.transition-header h2{margin:0}.transition-media-frame{display:grid;place-items:center;overflow:hidden;border:0;border-radius:0;background:transparent;width:100vw;height:100svh}.transition-video{width:100vw;height:100svh;object-fit:contain;background:#050605}.transition-fallback{width:100%;height:100%;background:#050605;color:transparent;font-size:0}.transition-actions{position:absolute;right:clamp(16px,3vw,32px);bottom:max(clamp(16px,3vw,32px),env(safe-area-inset-bottom));z-index:2;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;align-items:center}.transition-actions .btn{min-height:44px;border:1px solid rgba(255,232,168,.32);border-radius:999px;background:rgba(211,179,95,.88);box-shadow:0 12px 32px rgba(0,0,0,.42);padding:0 18px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.transition-error,.transition-hint{display:none}.document-body{white-space:pre-wrap;color:var(--text);line-height:1.65}.field{display:grid;grid-gap:7px;gap:7px;margin:10px 0}.field label{color:var(--muted);font-size:13px}input,textarea{width:100%;border:1px solid var(--line);border-radius:6px;background:rgba(255,255,255,.04);color:var(--text);padding:10px 12px}textarea{min-height:112px;resize:vertical}input:disabled,textarea:disabled{cursor:not-allowed;color:var(--muted);opacity:.72}.tag-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.tag{display:flex;gap:8px;align-items:center;font-size:13px}.notice,.tag{color:var(--muted)}.notice{border-left:3px solid var(--accent-2);padding:10px 12px;background:rgba(112,166,161,.08)}.error{border-left-color:var(--danger);color:#ffd8d3;background:rgba(214,106,95,.1)}@media (max-width:780px){.top-nav{gap:10px;padding:10px 12px}.brand span{display:none}.top-nav-actions{margin-left:auto}.top-nav .nav-links{display:none}.reset-progress-action{max-width:none;overflow:hidden;text-overflow:ellipsis;padding:6px 7px;font-size:11px}.mobile-nav{display:grid}.status-bar{display:none}.page{width:min(100% - 24px,1120px);padding-top:18px}.page-header{display:block}.grid.cols-2,.grid.cols-3,.route-dialogue-grid,.route-tabs,.scene-grid{grid-template-columns:1fr}.account-settings-card{grid-column:auto}.route-tab{min-height:60px}.app-shell:has(.scene-page){height:100dvh;min-height:0;overflow:hidden;padding-bottom:0}.scene-page{height:100%;overflow:hidden}.scene-grid{grid-template-rows:minmax(0,1fr) minmax(160px,.72fr);overflow:hidden}.scene-play-space{min-height:0}.scene-right-panel{overflow-y:auto;padding-right:0}.scene-stage{height:100%;min-height:0;padding:14px}.npc-list{gap:8px}.npc-token{padding:8px 10px;font-size:13px}.scene-chat{gap:10px;margin-top:12px;padding-right:2px}.chat-message{width:min(100%,680px);max-width:100%;padding:10px 12px}.chat-message.player{width:min(96%,680px)}.chat-text{font-size:13px;line-height:1.55}.scene-action-deck{padding:12px}.scene-action-deck .choice-list,.scene-composer{grid-template-columns:1fr}.scene-composer .btn{min-height:44px}.tag-grid{grid-template-columns:1fr}}@media (max-width:780px) and (orientation:portrait){.app-shell:has(.scene-page){padding-bottom:48px}.scene-page{width:min(100% - 12px,1120px);padding-top:6px}.scene-page .page-header{display:block;margin-bottom:8px}.scene-header-actions,.scene-page .page-kicker{display:none}.scene-page .page-title{font-size:clamp(20px,6.2vw,27px);line-height:1.08}.scene-grid{gap:8px}.scene-grid,.scene-play-space{grid-template-rows:minmax(0,1fr) auto}.scene-stage{border-radius:7px;min-height:0}.scene-action-deck{gap:8px;max-height:27dvh;overflow-y:auto;padding:8px;margin-bottom:4px}.scene-action-deck .choice-list{gap:6px}.scene-action-deck .choice-button{min-height:38px}.scene-composer{grid-template-columns:minmax(0,1fr) 46px;align-items:stretch;gap:8px;margin-top:4px}.scene-composer textarea{min-height:46px;max-height:46px;resize:none}.scene-composer .btn{min-height:46px;width:46px;padding:0}.scene-send-label{display:none}.scene-send-icon{display:block;font-size:18px;line-height:1}}@media (max-width:920px) and (orientation:landscape){.top-nav{padding:6px 12px}.brand strong,.nav-link{font-size:12px}.nav-link{padding:6px 8px}.mobile-nav,.status-bar{display:none}.app-shell:has(.scene-page){height:100dvh;padding-bottom:0}.scene-page{width:min(100% - 18px,1280px);height:100%;padding:8px 0}.scene-page .page-header{display:flex;align-items:center;margin-bottom:8px}.scene-page .page-kicker{display:none}.scene-page .page-title{font-size:clamp(20px,4vw,28px)}.scene-grid{grid-template-rows:minmax(0,1fr) auto;gap:8px}.scene-stage{padding:10px 14px}.npc-token{padding:6px 9px;font-size:12px}.scene-chat{gap:8px;margin-top:8px;padding-bottom:10px}.chat-message{padding:8px 10px}.chat-text{font-size:12px;line-height:1.45}.scene-action-deck{gap:8px;padding:8px 10px}.scene-action-deck .choice-list{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:6px}.choice-button,.scene-action-deck .choice-button{min-height:34px;font-size:12px;padding:0 10px}.scene-composer{grid-template-columns:minmax(0,1fr) minmax(86px,auto);gap:8px}.scene-composer textarea{min-height:40px;max-height:64px}.scene-composer .btn{min-height:40px}}