/* Shared website tokens, applied after the standalone application styles. */
.bookshelf-page{--paper:var(--bg);--sheet:var(--surface);--rule:var(--line);--staff:var(--line-2);--good:var(--green);--warn:var(--gold);--late:var(--danger);--f-display:var(--font-display);--f-body:var(--font-ui)}
.bookshelf-page .wrap{max-width:1044px;padding:40px 28px 58px;box-sizing:border-box}
.bookshelf-page h1{font-weight:500;font-family:var(--font-display);font-size:clamp(32px,5vw,45px)}
.bookshelf-page .tabs{top:0}.storage-copy{font:.84rem/1.6 var(--font-ui);color:var(--ink-2);margin-top:24px}.storage-copy a{color:var(--accent);text-underline-offset:3px}
.bookshelf-notes{border-top:1px solid var(--line);margin-top:38px;padding-top:20px;color:var(--ink-2);font:.78rem/1.6 var(--font-ui)}
.narrative-page{--muted:var(--ink-2);--navy:var(--accent);--theme:var(--green);--plot:var(--purple);font-family:var(--font-ui);background:var(--bg);color:var(--ink)}
.narrative-page .app{min-height:calc(100vh - 180px)}.narrative-page .rail{background:var(--surface-2);color:var(--ink);border-right:1px solid var(--line)}
.narrative-page .rail a,.narrative-page .rail small,.narrative-page .rail p,.narrative-page .rail .eyebrow{color:var(--ink-2)}
.narrative-page .studio-back{font-size:.82rem;text-decoration:none;margin-bottom:10px}.narrative-page .brand-mark{background:var(--accent);color:var(--on-accent)}
.narrative-page .nav-button{color:var(--ink-2)}.narrative-page .nav-button.active,.narrative-page .nav-button:hover{color:var(--ink);background:var(--surface-3)}
.narrative-page h1,.narrative-page h2,.narrative-page h3,.narrative-page .project-name{font-family:var(--font-display)}
.narrative-page .topbar,.narrative-page .panel,.narrative-page .book-card,.narrative-page .scene-card,.narrative-page dialog,.narrative-page .dialog-top,.narrative-page .dialog-bottom{background:var(--surface);color:var(--ink)}
.narrative-page input,.narrative-page select,.narrative-page textarea,.narrative-page button{background:var(--surface);color:var(--ink);border-color:var(--line-2)}
.narrative-page button.primary{background:var(--accent-fill);color:var(--on-accent)}.narrative-page .score-scroll{background:var(--surface)}
.narrative-page .rail-bottom button{border-color:var(--line-2)}.narrative-page .toast{background:var(--accent);color:var(--on-accent)}
.legacy-notice{max-width:1044px;margin:24px auto;padding:0 28px;font:.9rem var(--font-ui);color:var(--ink-2)}
@media(max-width:700px){.bookshelf-page .wrap{padding:28px 20px 40px}.narrative-page .rail{border-right:0;border-bottom:1px solid var(--line)}.narrative-page .app{display:block}}
@media print{.amdg-footer,.storage-copy,.studio-back{display:none!important}}

/* Narrative Studio uses the current website palette in both themes. */
.narrative-page{--paper:var(--bg);--char:var(--accent);--music:var(--gold);--shadow:0 10px 32px color-mix(in srgb,var(--ink) 7%,transparent)}
.narrative-page .project-name{color:var(--ink)}
.narrative-page .choice-card,.narrative-page .guide-step.active,.narrative-page .score-label,.narrative-page .score-cell,.narrative-page .dialog-top,.narrative-page .dialog-bottom{background:var(--surface);color:var(--ink)}
.narrative-page .choice-card.selected,.narrative-page .cast-setup-row,.narrative-page .summary-panel,.narrative-page .cue-table th,.narrative-page .arc-note,.narrative-page .notice,.narrative-page .guide-tip{background:var(--surface-2);border-color:var(--line-2);color:var(--ink)}
.narrative-page .choice-card.selected{border-color:var(--accent);box-shadow:inset 3px 0 var(--accent)}
.narrative-page .choice-card .eyebrow,.narrative-page .stage-scenes button{color:var(--accent)}
.narrative-page .stage-scenes button,.narrative-page .heat-row button{background:var(--surface-2)}
.narrative-page .heat-row button.filled{background:var(--theme);color:var(--on-accent)}
.narrative-page .badge{background:var(--surface-2);color:var(--ink-2)}
.narrative-page .step-num{border-color:var(--line-2)}
.narrative-page .guide-step.active .step-num{background:var(--accent-fill);color:var(--on-accent)}
.narrative-page .chip:has(input:checked){background:color-mix(in srgb,var(--color) 14%,var(--surface));color:var(--ink)}
.narrative-page .arc-chart text{fill:var(--ink-2)}
.narrative-page .danger,.narrative-page .storage-error{color:var(--danger)!important}
.narrative-page button:hover{background:var(--surface-3)}
.narrative-page button.primary:hover{background:var(--accent-fill);filter:brightness(1.08)}
