:root{--ink:#111827;--muted:#5b6472;--line:#d9e2ec;--paper:#fffdf8;--surface:#fff;--teal:#0f766e;--blue:#1d4ed8;--gold:#f59e0b;--coral:#ef4444;--violet:#7c3aed;--shadow:0 24px 80px #1118271a;color:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit}.app-shell{background:linear-gradient(#fffdf8db,#f5f7fbf0),url(/little-voice-stories/sample-drawing.svg) right -120px top -80px/520px no-repeat;min-height:100vh}.topbar{justify-content:space-between;align-items:center;gap:1rem;padding:1rem clamp(1rem,4vw,3rem);display:flex}.brand,.topbar__links,.topbar__links a,.button-row,.primary-button,.secondary-button,.danger-button,.text-button,.inline-status{align-items:center;display:flex}.brand{gap:.75rem;text-decoration:none}.brand__mark{background:var(--ink);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:inline-flex}.brand strong,.brand small{display:block}.brand small{color:var(--muted);margin-top:.1rem;font-size:.78rem}.topbar__links{gap:.5rem}.topbar__links a,.text-button{border:1px solid var(--line);border-radius:8px;gap:.45rem;padding:.65rem .8rem;text-decoration:none}.workspace{max-width:1180px;margin:0 auto;padding:clamp(1rem,4vw,3rem)}.workspace__intro{gap:.8rem;max-width:820px;padding:2.5rem 0 1.25rem;display:grid}.eyebrow{color:var(--teal);letter-spacing:0;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:850}h1,h2,p{margin:0}h1{max-width:12ch;font-size:clamp(2.35rem,7vw,4.8rem);line-height:.98}h2{font-size:1.15rem;line-height:1.2}.workspace__intro p:not(.eyebrow),.muted{color:var(--muted);line-height:1.7}.step-tabs{grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem;margin:1.5rem 0;display:grid}.session-toolbar{flex-wrap:wrap;gap:.65rem;margin:0 0 1rem;display:flex}.session-toolbar__hint{color:var(--muted);flex-basis:100%;margin:.1rem 0 0;font-size:.92rem}.step-tab{border:1px solid var(--line);color:var(--muted);background:#ffffffc2;border-radius:8px;align-items:center;gap:.55rem;min-height:3rem;padding:.6rem .75rem;font-weight:800;display:flex}.step-tab span{color:#075985;background:#e0f2fe;border-radius:999px;flex:0 0 1.55rem;justify-content:center;align-items:center;width:1.55rem;height:1.55rem;display:inline-flex}.step-tab--active{background:var(--ink);border-color:var(--ink);color:#fff}.step-tab--active span{background:var(--gold);color:#111827}.tool-surface{box-shadow:var(--shadow);background:#ffffffe6;border:1px solid #d9e2ece6;border-radius:8px;min-height:520px;padding:clamp(1rem,3vw,1.5rem)}.step-grid,.form-grid,.story-layout,.voice-layout{gap:1rem;display:grid}.step-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,.7fr)}.form-grid,.story-layout,.voice-layout,.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.drop-zone,.summary-panel,.form-block,.story-actions,.story-editor,.voice-recorder,.voice-profile-panel{border:1px solid var(--line);border-radius:8px;gap:1rem;padding:clamp(1rem,3vw,1.25rem);display:grid}.drop-zone{background:var(--paper);text-align:center;align-content:center;min-height:474px}.drop-zone--active{border-color:var(--teal);outline:4px solid #14b8a62e}.button-row{flex-wrap:wrap;justify-content:center;gap:.65rem}.primary-button,.secondary-button,.danger-button{border-radius:8px;gap:.5rem;min-height:2.75rem;padding:.65rem .9rem;font-weight:850}.primary-button{background:var(--ink);border:1px solid var(--ink);color:#fff}.secondary-button{border:1px solid var(--line);color:var(--ink);background:#fff}.danger-button{color:#be123c;background:#fff1f2;border:1px solid #fecdd3}.align-start{justify-self:start}.inline-status{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:.5rem}.inline-status span{align-items:center;gap:.45rem;display:inline-flex}.text-button--compact{min-height:2.2rem;padding:.4rem .6rem}.summary-panel{background:#fff;align-content:start}.drawing-preview{aspect-ratio:4/3;background:var(--paper);border:1px solid var(--line);object-fit:contain;border-radius:8px;width:100%}.palette{gap:.45rem;display:flex}.palette span{box-shadow:0 0 0 1px var(--line);border:2px solid #fff;border-radius:999px;width:2rem;height:2rem}.confidence-banner{border:1px solid var(--line);border-radius:8px;gap:.25rem;padding:.75rem;display:grid}.confidence-banner strong{text-transform:capitalize}.confidence-banner span,.provenance-line{color:var(--muted);font-size:.82rem}.confidence-banner--high{background:#ecfdf5;border-color:#99f6e4}.confidence-banner--medium{background:#fffbeb;border-color:#fde68a}.confidence-banner--low{background:#fff1f2;border-color:#fecdd3}.explain-block{border:1px solid var(--line);color:var(--muted);border-radius:8px;padding:.75rem}.explain-block summary{color:var(--ink);cursor:pointer;font-weight:800}.explain-block ul{margin:.6rem 0 0;padding-left:1.1rem}.issue-list{color:var(--muted);background:#f8fafc;border:1px solid #e5edf5;border-radius:8px;gap:.55rem;padding:.75rem;display:grid}.issue-list strong{color:var(--ink)}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:0;display:grid}.metric-grid div{background:#f8fafc;border:1px solid #e5edf5;border-radius:8px;padding:.65rem}dt{color:var(--muted);margin-bottom:.2rem;font-size:.76rem}dd{overflow-wrap:anywhere;margin:0;font-weight:850}label,fieldset{color:var(--muted);border:0;gap:.45rem;margin:0;padding:0;display:grid}legend{color:var(--muted);margin-bottom:.45rem;padding:0}input,textarea{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;width:100%;min-height:2.75rem;padding:.7rem .8rem}input[type=checkbox]{accent-color:var(--teal);width:1.1rem;min-height:1.1rem}.toggle-row{color:var(--ink);border-bottom:1px solid #edf2f7;grid-template-columns:1fr auto;align-items:center;min-height:3rem;padding:.25rem 0}textarea{resize:vertical;min-height:7rem;line-height:1.55}.segmented{background:#eef2f7;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem;padding:.35rem;display:grid}.segment{color:var(--muted);background:0 0;border:0;border-radius:6px;min-height:2.45rem;font-weight:800}.segment--active{color:var(--ink);background:#fff;box-shadow:0 1px 4px #1118271a}.story-actions,.voice-recorder,.voice-profile-panel{align-content:start}.story-editor{grid-template-rows:auto 1fr;min-height:460px}.story-editor textarea{min-height:380px}.progress-line,.record-meter{gap:.45rem;display:grid}progress{accent-color:var(--teal);width:100%;height:.75rem}.record-meter span{font-size:2rem;font-weight:900}.footer{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem 0 0;display:flex}.text-button{color:var(--ink);background:0 0}.toast-region{z-index:10;gap:.5rem;width:min(360px,100vw - 2rem);display:grid;position:fixed;bottom:1rem;right:1rem}.toast{box-shadow:var(--shadow);color:#fff;background:#111827;border-radius:8px;padding:.85rem 1rem}.toast--success{background:#0f766e}.toast--error{background:#be123c}.debug-panel{color:#e2e8f0;background:#0f172a;border-radius:8px;gap:.75rem;margin-top:1rem;padding:1rem;display:grid}.debug-panel pre{white-space:pre-wrap;max-height:360px;margin:0;font-size:.78rem;overflow:auto}.spin{animation:.9s linear infinite spin}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=820px){.topbar,.footer{flex-direction:column;align-items:stretch}.topbar__links{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;display:grid}.step-tabs,.step-grid,.form-grid,.story-layout,.voice-layout,.settings-grid{grid-template-columns:1fr}.step-tabs{z-index:3;position:sticky;top:0}.drop-zone{min-height:360px}.segmented,.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{.topbar,.step-tabs,.session-toolbar,.story-actions,.voice-recorder,.footer,.toast-region,.debug-panel{display:none!important}.app-shell,.workspace,.tool-surface,.story-layout,.story-editor{box-shadow:none;background:#fff;max-width:none;min-height:auto;padding:0}.story-editor input,.story-editor textarea{border:0;padding:0}.story-editor textarea{min-height:0}}@media (width<=520px){.workspace,.tool-surface{padding:.85rem}.topbar__links,.metric-grid{grid-template-columns:1fr}.step-tab{font-size:.86rem}.topbar__links a span{display:inline}}
