@font-face{font-family:Outfit;src:url('/static/fonts/outfit.ttf') format('truetype');font-weight:400 700;font-style:normal;font-display:swap}
:root{
  --background:#f2f2f2;--foreground:#000000;--card:#ffffff;--card-foreground:#000000;
  --primary:#000000;--primary-foreground:#ffffff;--secondary:#ffffff;--secondary-foreground:#000000;
  --muted:#f8f8f8;--muted-foreground:#2e3d50;--accent:#6850fa;--accent-foreground:#ffffff;
  --destructive:#fb2c36;--border:#e5e7eb;--input:#e5e7eb;--ring:#000000;--radius:16px;--font-sans:Outfit,sans-serif;
  --space-4:4px;--space-8:8px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;
  --space-32:32px;--space-48:48px;--space-64:64px;
  --text-tiny:8px;--text-small:10px;--text-label:11px;--text-caption:12px;--text-body:14px;--text-reading:16px;--text-title:20px;--text-display:48px;
  --line-body:20px;--line-caption:16px;--line-reading:28px;
  --radius-small:4px;--radius-control:6px;--radius-card:12px;--radius-pill:2.44032e+07px;
  --stroke:calc(var(--space-4)/4);
  --shadow-soft:0 16px 16px 0 oklch(0 0 0 / 0.02);
  --shadow-card:0 1px 3px 0 rgba(0,0,0,0.1),0 1px 2px -1px rgba(0,0,0,0.1);
  --shadow-dialog:0 25px 50px -12px rgba(0,0,0,0.25);
  --shadow-accent:0 2px 2px 0 rgba(255,255,255,0.25) inset,0 -2px 0 0 rgba(87,67,209,0.66) inset,0 0 0 1px rgb(104,80,250),0 0 6px 0 rgba(0,0,0,0.02),0 2px 4px 0 rgba(0,0,0,0.08);
  color-scheme:light;
}
.dark{
  --background:#141414;--foreground:#f7f7f7;--card:#1c1c1c;--card-foreground:#f7f7f7;
  --primary:#000000;--primary-foreground:#ffffff;--secondary:#292929;--secondary-foreground:#f7f7f7;
  --muted:#292929;--muted-foreground:#a6a6a6;--accent:#6850fa;--accent-foreground:#ffffff;
  --destructive:#fb2c36;--border:#2e2e2e;--input:#2e2e2e;--ring:#000000;color-scheme:dark;
}
*{box-sizing:border-box}
body{margin:0;background:var(--background);color:var(--foreground);font:400 var(--text-body)/var(--line-body) var(--font-sans)}
button,input,textarea,select{font:inherit}
button{cursor:pointer;border:0}
button:disabled{cursor:not-allowed;color:var(--muted-foreground);background:var(--muted)}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:var(--space-4) solid var(--ring);outline-offset:var(--space-4);border-color:var(--accent)}
a{color:var(--foreground);text-underline-offset:var(--space-4)}
h1,h2,h3,h4,p{margin-top:0}
h2,h3{font-size:var(--text-title);line-height:var(--line-reading);font-weight:600}
p{line-height:var(--line-reading)}
.hidden{display:none!important}
.app-shell{display:grid;grid-template-columns:calc(var(--space-64)*4) minmax(0,1fr);min-height:100dvh}
.sidebar{background:var(--card);color:var(--card-foreground);border-inline-end:var(--stroke) solid var(--border);padding:var(--space-32) var(--space-20);display:flex;flex-direction:column;gap:var(--space-12);position:sticky;top:0;height:100dvh;min-height:0}
.brand{display:flex;align-items:center;gap:var(--space-12);text-decoration:none;font-size:var(--text-title);line-height:var(--line-reading);font-weight:700;margin-bottom:var(--space-20)}
.brand-word{display:block;line-height:var(--line-body);letter-spacing:-.025em;white-space:nowrap}
.brand-ai{color:var(--accent)}
.brand-light{display:block;font-size:var(--text-label);line-height:var(--line-caption);font-weight:400;letter-spacing:.01em}
.brand-mark{position:relative;display:flex;align-items:center;justify-content:center;width:var(--space-48);height:var(--space-48);border-radius:var(--radius-card);background:var(--primary);color:var(--primary-foreground);font-size:0;flex-shrink:0;overflow:hidden}
.brand-mark::before,.brand-mark::after{content:"";position:absolute;top:25%;width:10%;height:50%;border-radius:var(--radius-pill);background:var(--primary-foreground)}
.brand-mark::before{inset-inline-start:24%}
.brand-mark::after{inset-inline-end:24%}
.brand-mark span{position:absolute;width:42%;height:10%;border-radius:var(--radius-pill);inset-inline-start:29%;top:45%;background:var(--accent)}
.eyebrow,.sidebar-label{font-size:var(--text-small);line-height:var(--line-caption);font-weight:600;color:var(--muted-foreground)}
.primary,.secondary,.danger-button{padding:var(--space-12) var(--space-16);border-radius:var(--radius-control);font-size:var(--text-body);line-height:var(--line-body);font-weight:500;border:var(--stroke) solid var(--border);white-space:nowrap}
.primary{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}
.primary:hover:not(:disabled){background:var(--accent);color:var(--accent-foreground);border-color:var(--accent);box-shadow:var(--shadow-accent)}
.secondary{background:var(--secondary);color:var(--secondary-foreground)}
.secondary:hover:not(:disabled){border-color:var(--accent)}
.danger-button{background:var(--destructive);color:var(--primary-foreground);border-color:var(--destructive)}
.full-width{width:100%}
.new-button{display:flex;align-items:center;justify-content:center;gap:var(--space-8);width:100%;margin-bottom:var(--space-8)}
.new-button span{font-size:var(--text-title)}
.sessions-heading{display:flex;align-items:center;justify-content:space-between;font-size:var(--text-caption);color:var(--muted-foreground)}
.sessions-heading>span:last-child,.count-pill{padding:var(--space-4) var(--space-8);background:var(--muted);color:var(--muted-foreground);border-radius:var(--radius-small);font-size:var(--text-small)}
#sessions{display:flex;flex-direction:column;gap:var(--space-8);overflow-y:auto;min-height:0}
.session-item{position:relative;flex-shrink:0}
.session-button{background:var(--card);color:var(--card-foreground);border:var(--stroke) solid var(--border);border-radius:var(--radius-card);padding:var(--space-12);padding-inline-end:var(--space-32);width:100%;text-align:start}
.session-button.active{background:var(--accent);color:var(--accent-foreground);border-color:var(--accent)}
.session-button strong{display:block;font-size:var(--text-caption);line-height:var(--line-body);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.session-button small{font-size:var(--text-small);line-height:var(--line-caption)}
.session-delete{position:absolute;inset-inline-end:var(--space-8);top:var(--space-8);background:var(--secondary);color:var(--secondary-foreground);border-radius:var(--radius-small);font-size:var(--text-title);line-height:var(--line-body);padding:var(--space-4)}
.sidebar-empty{font-size:var(--text-caption);color:var(--muted-foreground);margin:0}
.sidebar-bottom{margin-top:auto;padding-top:var(--space-16);border-top:var(--stroke) solid var(--border);display:flex;flex-direction:column;align-items:stretch;gap:var(--space-4);flex-shrink:0}
.account-summary{margin-bottom:var(--space-8)}
.account-summary strong,.account-summary small{display:block;font-size:var(--text-caption);line-height:var(--line-body)}
.account-summary small{color:var(--muted-foreground)}
.settings-button,.text-button{background:var(--secondary);color:var(--secondary-foreground);font-size:var(--text-caption);line-height:var(--line-body);padding:var(--space-8);border-radius:var(--radius-control);text-align:start}
.text-button:hover:not(:disabled),.settings-button:hover:not(:disabled){background:var(--accent);color:var(--accent-foreground)}
.local-note{display:flex;gap:var(--space-8);padding:var(--space-12) 0;color:var(--muted-foreground);font-size:var(--text-label)}
.local-note p{font-size:var(--text-small);line-height:var(--line-caption);margin:0}
.small-icon{font-size:var(--text-title)}
.version-label{font-size:var(--text-small);line-height:var(--line-caption);color:var(--muted-foreground);margin:var(--space-12) 0 0}
main{min-width:0}
.topbar{height:var(--space-64);padding:0 var(--space-32);display:flex;align-items:center;justify-content:space-between;gap:var(--space-16);border-bottom:var(--stroke) solid var(--border)}
.breadcrumb{font-size:var(--text-caption);color:var(--muted-foreground);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.breadcrumb strong{color:var(--foreground);font-weight:500}
.breadcrumb span{margin:0 var(--space-8)}
.topbar-right{display:flex;align-items:center;gap:var(--space-12);flex-shrink:0}
.provider-tag,.chip{background:var(--muted);color:var(--muted-foreground);padding:var(--space-4) var(--space-8);border:var(--stroke) solid var(--border);border-radius:var(--radius-pill);font-size:var(--text-small);line-height:var(--line-caption);white-space:nowrap}
.chip.ready{background:var(--accent);color:var(--accent-foreground);border-color:var(--accent)}
.icon-button{display:flex;align-items:center;justify-content:center;min-height:var(--space-32);min-width:var(--space-32);padding:var(--space-8);background:var(--secondary);color:var(--secondary-foreground);border:var(--stroke) solid var(--border);border-radius:var(--radius-control);font-size:var(--text-caption)}
.main-content{max-width:calc(var(--space-64)*24);margin:auto;padding:var(--space-32)}
.page-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--space-24);margin-bottom:var(--space-32)}
.page-heading h1{font-size:var(--text-display);line-height:calc(var(--line-reading)*2);font-weight:600;margin:var(--space-8) 0;overflow-wrap:anywhere}
.page-heading h1 em{font-style:normal;color:var(--accent)}
.page-heading p{font-size:var(--text-body);color:var(--muted-foreground);margin:0}
.workflow{display:flex;align-items:center;gap:var(--space-16);border-bottom:var(--stroke) solid var(--border);padding-bottom:var(--space-20);margin-bottom:var(--space-24)}
.workflow i{height:var(--stroke);width:var(--space-24);background:var(--border)}
.workflow-step{display:flex;align-items:center;gap:var(--space-8);background:var(--background);color:var(--muted-foreground);font-size:var(--text-caption);padding:0}
.workflow-step span{display:flex;align-items:center;justify-content:center;width:var(--space-32);height:var(--space-32);border-radius:var(--radius-control);background:var(--muted);color:var(--muted-foreground);border:var(--stroke) solid var(--border);font-size:var(--text-label)}
.workflow-step.active{color:var(--foreground);font-weight:600}
.workflow-step.active span{background:var(--accent);color:var(--accent-foreground);border-color:var(--accent)}
.panel,.welcome,.auth-card,.note-card{background:var(--card);color:var(--card-foreground);border:var(--stroke) solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft)}
.panel{padding:var(--space-24)}
.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);margin-bottom:var(--space-20)}
.panel-heading h2{margin:var(--space-4) 0 0}
.subtle-label{font-size:var(--text-small);color:var(--muted-foreground)}
.setup-grid{display:grid;grid-template-columns:minmax(0,1fr) calc(var(--space-64)*4);gap:var(--space-24)}
.context-panel label,.provider-fields>label{display:block;font-size:var(--text-caption);font-weight:500;margin:var(--space-20) 0 var(--space-8)}
.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-16)}
.label-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-12)}
.upload-button{font-size:var(--text-label)!important;font-weight:500!important;padding:var(--space-4) var(--space-8);margin:0!important;cursor:pointer;background:var(--secondary);color:var(--secondary-foreground);border:var(--stroke) solid var(--input);border-radius:var(--radius-control)}
input:not([type=checkbox]),select,textarea{display:block;width:100%;background:var(--card);color:var(--card-foreground);border:var(--stroke) solid var(--input);border-radius:var(--radius-control);padding:var(--space-12);margin-top:var(--space-8);font-size:var(--text-body);line-height:var(--line-body)}
input::placeholder,textarea::placeholder{color:var(--muted-foreground)}
input:focus,textarea:focus,select:focus{outline:var(--stroke) solid var(--ring);border-color:var(--accent)}
input[type=checkbox]{accent-color:var(--accent);width:var(--space-16);height:var(--space-16);flex-shrink:0}
textarea{resize:vertical;min-height:calc(var(--space-64)*2);line-height:var(--line-reading)}
#extra-notes{min-height:calc(var(--space-64)*5)}
.field-hint,.panel-description,.empty-copy{font-size:var(--text-caption);line-height:var(--line-body);color:var(--muted-foreground);font-weight:400}
.field-hint{margin:var(--space-8) 0}
.input-action{display:flex;align-items:center;gap:var(--space-8)}
.input-action input{flex:1;min-width:0}.input-action button{margin-top:var(--space-8)}
.form-footer,.next-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-16);margin-top:var(--space-24);padding-top:var(--space-20);border-top:var(--stroke) solid var(--border)}
.form-footer>span{font-size:var(--text-caption);color:var(--muted-foreground)}
.note-card{padding:var(--space-24)}
.note-card h3{margin:var(--space-8) 0 var(--space-20)}
.checklist-item{display:flex;gap:var(--space-12);margin-bottom:var(--space-20)}
.checklist-item>span{color:var(--accent);font-size:var(--text-title)}
.checklist-item strong{font-size:var(--text-caption);font-weight:500}
.checklist-item p,.quiet-note{font-size:var(--text-caption);line-height:var(--line-body);color:var(--muted-foreground);margin:var(--space-4) 0}
.quiet-note{margin-top:var(--space-24)}
.research-preview,.settings-note,.audio-notice{background:var(--muted);color:var(--muted-foreground);border:var(--stroke) solid var(--border);border-radius:var(--radius-card);padding:var(--space-12);margin-top:var(--space-12);font-size:var(--text-caption);line-height:var(--line-body)}
.research-preview pre{white-space:pre-wrap;max-height:calc(var(--space-64)*3);overflow:auto;font:inherit}
.warning{border-color:var(--accent)}
.prepare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-24)}
.briefing-result{margin-top:var(--space-20)}
.briefing-question-actions{display:flex;align-items:center;gap:var(--space-8);margin:var(--space-8) 0}
.briefing-answer{margin:var(--space-12) 0 var(--space-20);border:var(--stroke) solid var(--border);border-radius:var(--radius-card);background:var(--card);color:var(--card-foreground);overflow:hidden}
.briefing-answer.streaming{border-color:var(--accent)}
.briefing-answer-content{padding:var(--space-16);font-size:var(--text-body);line-height:var(--line-reading)}
.next-bar p{margin:0;color:var(--muted-foreground);font-size:var(--text-caption)}
.sound-check{background:var(--muted);color:var(--muted-foreground);text-align:center;border:var(--stroke) solid var(--border);border-radius:var(--radius-card);padding:var(--space-20);margin:var(--space-16) 0}
.sound-check strong{font-size:var(--text-body)}
.sound-check p{font-size:var(--text-caption);line-height:var(--line-body);margin:var(--space-8) 0 0}
.voice-script{display:block;margin:var(--space-12) 0 0;padding:var(--space-16) var(--space-20);background:var(--card);color:var(--card-foreground);border:var(--stroke) solid var(--border);border-inline-start:var(--space-4) solid var(--accent);border-radius:var(--radius-card);font-size:var(--text-reading);line-height:var(--line-reading);text-align:start}
.voice-script.recording{border-color:var(--accent);box-shadow:var(--shadow-accent)}
.sessions-browse{display:block;padding:var(--space-8) var(--space-12);font-size:var(--text-caption);color:var(--muted-foreground);border-radius:var(--radius-control);text-decoration:none}
.sessions-browse:hover{background:var(--accent);color:var(--accent-foreground)}
.interview-filters{display:flex;flex-wrap:wrap;gap:var(--space-16);align-items:flex-end;padding:var(--space-20);margin-bottom:var(--space-16)}
.interview-filters label{flex:1 1 calc(var(--space-64)*3);margin:0}
.interviews-page{max-width:calc(var(--space-64)*24);margin:0 auto;padding:var(--space-32)}
.interviews-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-24);margin-bottom:var(--space-24)}
.interviews-heading h1{font-size:var(--text-display);line-height:calc(var(--line-reading)*2);margin:var(--space-8) 0}
.voice-script{font-size:var(--text-title);font-weight:600;line-height:var(--line-reading)}
.interviews-heading p{color:var(--muted-foreground)}
.interviews-actions{display:flex;gap:var(--space-8);flex-wrap:wrap}
.interview-filters .toggle-label{flex-basis:100%}
.interview-record-section{border-top:var(--stroke) solid var(--border);padding-top:var(--space-16);margin-top:var(--space-24)}
.interview-record-event{padding:var(--space-16);border:var(--stroke) solid var(--border);border-radius:var(--radius-card);margin:var(--space-12) 0}
.interview-record-event p{white-space:pre-wrap;overflow-wrap:anywhere}
.interview-table .text-button{font-weight:600}
.muted-cell{color:var(--muted-foreground);padding:var(--space-24)}
@media(max-width:calc(64px * 12)){
  .interviews-page{padding:var(--space-20) var(--space-16)}
  .interviews-heading{align-items:flex-start;flex-direction:column}
  .interviews-heading h1{font-size:var(--text-title);line-height:var(--line-reading)}
  .selection-actions{flex-wrap:wrap}
}
.chip.live{background:var(--accent);color:var(--accent-foreground);border-color:var(--accent)}
.interview-table tbody tr{cursor:pointer}
.interview-table tbody tr:hover{background:var(--card)}
.interview-table .muted-cell{color:var(--muted-foreground)}
.voice-lines,.wave-meter{display:flex;align-items:center;justify-content:center;gap:var(--space-8);height:var(--space-64);margin-bottom:var(--space-16)}
.voice-lines span,.wave-meter span{width:var(--space-8);height:var(--space-24);background:var(--accent);border-radius:var(--radius-pill)}
.voice-lines span:nth-child(2n),.wave-meter span:nth-child(2n){height:var(--space-48)}
.voice-lines span:nth-child(3n),.wave-meter span:nth-child(3n){height:var(--space-64)}
.wave-meter.recording span{animation:pulse 1s infinite alternate}
.voice-player{display:block;width:100%;height:var(--space-48);margin:var(--space-12) 0}
.global-voice-settings{margin-top:var(--space-24);padding-top:var(--space-20);border-top:var(--stroke) solid var(--border)}
.welcome{display:grid;grid-template-columns:1fr 2fr;overflow:hidden;min-height:calc(var(--space-64)*6)}
.welcome-art{display:flex;flex-direction:column;justify-content:center;align-items:center;background:var(--muted);color:var(--muted-foreground);padding:var(--space-32);border-inline-end:var(--stroke) solid var(--border)}
.art-label{font-size:var(--text-small);line-height:var(--line-caption);margin-top:var(--space-24)}
.welcome-copy{padding:var(--space-48)}
.welcome-copy h2{font-size:var(--text-display);line-height:calc(var(--line-reading)*2);font-weight:500;margin:var(--space-12) 0 var(--space-20)}
.welcome-copy>p{color:var(--muted-foreground)}
.welcome-actions,.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-12)}
.welcome-features{display:flex;flex-wrap:wrap;gap:var(--space-16);margin-top:var(--space-24);font-size:var(--text-caption);color:var(--muted-foreground)}
.live-active .main-content{max-width:none;padding:var(--space-20) var(--space-24)}
.live-active .page-heading{margin-bottom:var(--space-16)}
.live-active .page-heading h1{font-size:var(--text-title);line-height:var(--line-reading)}
.live-active .workflow{margin-bottom:var(--space-16);padding-bottom:var(--space-12)}
.live-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-16)}
.live-status,.live-control-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-12)}
.live-status strong{font-size:var(--text-body);font-weight:500}
.live-status #elapsed{font-size:var(--text-caption);color:var(--muted-foreground)}
.status-dot{width:var(--space-8);height:var(--space-8);background:var(--muted-foreground);border-radius:var(--radius-pill)}
.status-dot.listening{background:var(--accent)}
.toggle-label{display:flex;align-items:center;gap:var(--space-8);font-size:var(--text-caption);font-weight:400;line-height:var(--line-body)}
.live-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-16);margin:var(--space-16) 0}
.live-toolbar strong{display:block;font-size:var(--text-caption);font-weight:500;margin-bottom:var(--space-8)}
.live-toolbar label{color:var(--muted-foreground)}
.detected-question{border:var(--stroke) solid var(--accent);border-radius:var(--radius-card);background:var(--card);color:var(--card-foreground);padding:var(--space-16);margin:var(--space-16) 0}
.detected-question>span{display:block;color:var(--muted-foreground);font-size:var(--text-caption);margin-bottom:var(--space-8)}
.detected-question>strong{font-size:var(--text-reading);font-weight:500;line-height:var(--line-reading);overflow-wrap:anywhere}
.detected-question button{margin-inline-start:var(--space-12)}
.live-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,4fr);gap:var(--space-20)}
.live-grid>.panel{padding:0;overflow:hidden;display:flex;flex-direction:column;min-height:calc(var(--space-64)*8);height:calc(100dvh - var(--space-64)*3);max-height:calc(var(--space-64)*16)}
.live-grid .panel-heading{padding:var(--space-20);margin:0;border-bottom:var(--stroke) solid var(--border);flex-wrap:wrap;flex-shrink:0}
.panel-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-8)}
.panel-actions .text-button{font-size:var(--text-label);white-space:nowrap}
.transcript-list,.answer-list{padding:var(--space-20);flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}
.transcript-entry{border-inline-start:var(--space-4) solid var(--border);padding-inline-start:var(--space-12);margin-bottom:var(--space-24)}
.transcript-entry.other{border-inline-start-color:var(--accent)}
.entry-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-8);font-size:var(--text-label);line-height:var(--line-caption);color:var(--muted-foreground);margin-bottom:var(--space-8)}
.entry-meta strong{font-size:var(--text-caption);color:var(--card-foreground);font-weight:500}
.entry-meta time{margin-inline-start:auto}
.transcript-entry p{font-size:var(--text-reading);line-height:var(--line-reading);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}
.entry-action{background:var(--secondary);color:var(--secondary-foreground);font-size:var(--text-label);padding:var(--space-4) var(--space-8);margin-top:var(--space-8);border:var(--stroke) solid var(--border);border-radius:var(--radius-control)}
.entry-action+.entry-action{margin-inline-start:var(--space-8)}
.entry-text{cursor:text;border-radius:var(--radius-control)}
.entry-text:hover{background:var(--card)}
.support-launcher{position:fixed;inset-inline-end:var(--space-20);bottom:var(--space-20);z-index:20;text-decoration:none;box-shadow:var(--shadow-card)}
.entry-editor{margin-top:var(--space-8)}
.entry-edit-field{min-height:var(--space-64);resize:vertical}
.transcript-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-12);padding:var(--space-12) var(--space-20);border-top:var(--stroke) solid var(--border);background:var(--muted);color:var(--muted-foreground);font-size:var(--text-label);line-height:var(--line-caption);flex-shrink:0}
.entry-select{accent-color:var(--accent);width:var(--space-16);height:var(--space-16);margin:0;flex-shrink:0}
.selection-actions{display:flex;align-items:center;gap:var(--space-8)}
.selection-actions .primary{padding:var(--space-4) var(--space-12);font-size:var(--text-label);line-height:var(--line-caption)}
.selection-actions .text-button{padding:var(--space-4) var(--space-8)}
.answer-card{border:var(--stroke) solid var(--border);border-radius:var(--radius-card);margin-bottom:var(--space-20);overflow:hidden;background:var(--card);color:var(--card-foreground)}
.answer-question{padding:var(--space-16) var(--space-20);background:var(--muted);color:var(--muted-foreground);border-bottom:var(--stroke) solid var(--border);font-size:var(--text-body);line-height:var(--line-body);font-weight:500;overflow-wrap:anywhere}
.answer-question.editable{cursor:text}
.answer-question.editable:hover,.answer-question.editable:focus-visible{box-shadow:inset 0 0 0 calc(var(--stroke)*2) var(--ring)}
.answer-question-editor{padding:var(--space-16) var(--space-20);background:var(--muted);border-bottom:var(--stroke) solid var(--border)}
.answer-question-edit{min-height:var(--space-64);resize:vertical;background:var(--card);color:var(--card-foreground)}
.answer-question-edit-actions{display:flex;flex-wrap:wrap;gap:var(--space-8);margin-top:var(--space-8)}
.answer-question-edit-actions button{padding:var(--space-8) var(--space-12)}
.answer-question-edit-actions .answer-question-save{font-size:var(--text-body);line-height:var(--line-body)}
.answer-content{padding:var(--space-20) var(--space-24);font-size:var(--text-reading);line-height:var(--line-reading);overflow-wrap:anywhere}
.answer-meta{padding:var(--space-12) var(--space-20);font-size:var(--text-label);line-height:var(--line-caption);border-top:var(--stroke) solid var(--border);color:var(--muted-foreground)}
.answer-card.streaming{border-color:var(--accent)}
.answer-card.failed{border-color:var(--destructive)}
.answer-card.failed .answer-meta{color:var(--destructive)}
.answer-card.cancelled{border-color:var(--border);opacity:.8}
.answer-card.cancelled .answer-meta{color:var(--muted-foreground)}
.sparkle,.empty-symbol,.composer-icon{color:var(--accent)}
.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:calc(var(--space-64)*4);padding:var(--space-24);color:var(--muted-foreground)}
.empty-symbol{font-size:var(--text-display);line-height:calc(var(--line-reading)*2);margin-bottom:var(--space-20)}
.empty-state h3{font-size:var(--text-title);font-weight:500;color:var(--card-foreground)}
.empty-state p,.empty-footnote{font-size:var(--text-caption);line-height:var(--line-body);max-width:calc(var(--space-64)*5)}
.empty-footnote{margin-top:var(--space-16)}
.prose p{margin:0 0 var(--space-16);line-height:var(--line-reading)}
.prose p:last-child{margin-bottom:0}
.prose ul,.prose ol{padding-inline-start:var(--space-20);margin:var(--space-12) 0 var(--space-20)}
.prose li{margin:var(--space-8) 0;line-height:var(--line-reading)}
.prose strong{font-weight:600}
.prose h3{margin:var(--space-20) 0 var(--space-12);font-size:var(--text-title)}
.prose code{font-family:var(--font-sans);font-size:var(--text-body);background:var(--muted);color:var(--muted-foreground);padding:var(--space-4);border-radius:var(--radius-small);font-variant-ligatures:none}
.prose pre{overflow:auto;background:var(--muted);color:var(--muted-foreground);padding:var(--space-16);border-radius:var(--radius-card);line-height:var(--line-reading);tab-size:4}
.prose pre code{padding:0}
.question-composer{display:flex;align-items:center;gap:var(--space-12);margin-top:var(--space-20);padding:var(--space-12);background:var(--card);color:var(--card-foreground);border:var(--stroke) solid var(--input);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}
.question-composer textarea{min-height:var(--space-32);max-height:calc(var(--space-64)*2);border:0;margin:0;padding:var(--space-4);resize:none;font-size:var(--text-reading)}
.composer-icon{font-size:var(--text-title)}
.workspace-footer{display:flex;justify-content:space-between;gap:var(--space-16);font-size:var(--text-small);line-height:var(--line-caption);color:var(--muted-foreground);margin-top:var(--space-8)}
dialog{width:min(calc(var(--space-64)*9),calc(100vw - var(--space-32)));max-height:calc(100dvh - var(--space-48));border:var(--stroke) solid var(--border);border-radius:var(--radius);background:var(--card);color:var(--card-foreground);padding:var(--space-24);box-shadow:var(--shadow-dialog);overflow-y:auto}
dialog::backdrop{background:var(--background)}
.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-16);margin-bottom:var(--space-16)}
.dialog-heading h2{margin:var(--space-4) 0;font-size:var(--text-title)}
.dialog-footer{display:flex;justify-content:flex-end;border-top:var(--stroke) solid var(--border);padding-top:var(--space-20);margin-top:var(--space-24)}
.error-copy{color:var(--destructive);font-size:var(--text-caption)}
.toast{position:fixed;bottom:var(--space-24);left:50%;transform:translateX(-50%);padding:var(--space-12) var(--space-20);font-size:var(--text-body);line-height:var(--line-body);max-width:calc(100vw - var(--space-32));background:var(--primary);color:var(--primary-foreground);border:var(--stroke) solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-dialog);z-index:50}
.toast.error{background:var(--destructive);color:var(--primary-foreground);border-color:var(--destructive)}
.wide-dialog{width:min(calc(var(--space-64)*18),calc(100vw - var(--space-32)))}
.plan-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-16);margin:var(--space-20) 0}
.plan-card{padding:var(--space-20);border:var(--stroke) solid var(--border);border-radius:var(--radius);background:var(--card);color:var(--card-foreground)}
.plan-card h3{font-size:var(--text-title);font-weight:600;margin:0}
.plan-price{font-size:var(--text-display);line-height:calc(var(--line-reading)*2);font-weight:500;margin:var(--space-12) 0}
.plan-card p{font-size:var(--text-caption);line-height:var(--line-body);color:var(--muted-foreground)}
.plan-card .button-row{margin-top:var(--space-16)}
.checkout-result{font-size:var(--text-caption);line-height:var(--line-body);margin-top:var(--space-12);overflow-wrap:anywhere}
.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-16);margin:var(--space-20) 0}
#usage-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.metric{padding:var(--space-20);border:var(--stroke) solid var(--border);border-radius:var(--radius-card);background:var(--muted);color:var(--muted-foreground);font-size:var(--text-caption)}
.metric strong{display:block;color:var(--card-foreground);font-size:var(--text-title);line-height:var(--line-reading);font-weight:600;margin-bottom:var(--space-8)}
.table-wrap{overflow-x:auto;margin:var(--space-16) 0 var(--space-24)}
table{border-collapse:collapse;width:100%;font-size:var(--text-caption);line-height:var(--line-body)}
th,td{text-align:start;padding:var(--space-12);border-bottom:var(--stroke) solid var(--border);vertical-align:top}
th{font-size:var(--text-label);font-weight:500;background:var(--muted);color:var(--muted-foreground)}
td .text-button{padding:var(--space-4)}
.record-entry{padding:var(--space-16);border:var(--stroke) solid var(--border);border-radius:var(--radius-card);margin:var(--space-12) 0;background:var(--card);color:var(--card-foreground)}
.record-entry h3{font-size:var(--text-reading);font-weight:500;margin:0 0 var(--space-8)}
.record-entry pre{white-space:pre-wrap;font:400 var(--text-caption)/var(--line-body) var(--font-sans);max-height:calc(var(--space-64)*8);overflow:auto}
.record-context{max-height:calc(var(--space-64)*4)!important;overflow:auto}
.plan-editor label{display:block;font-size:var(--text-caption);margin:var(--space-12) 0}
#admin-ai-settings{margin:var(--space-24) 0;padding-bottom:var(--space-24);border-bottom:var(--stroke) solid var(--border)}
#admin-ai-form>label:not(.toggle-label){display:block;font-size:var(--text-caption);font-weight:500;margin:var(--space-20) 0 var(--space-8)}
#admin-ai-form [data-admin-provider]>label{display:block;font-size:var(--text-caption);font-weight:500;margin:var(--space-20) 0 var(--space-8)}
#admin-ai-form .toggle-label{margin:var(--space-12) 0}
.admin-tabs{display:flex;gap:var(--space-4);overflow-x:auto;margin:var(--space-24) 0;border-bottom:var(--stroke) solid var(--border);padding-bottom:var(--space-8)}
.admin-tab{flex:0 0 auto;border:var(--stroke) solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--muted-foreground);padding:var(--space-8) var(--space-12);font:600 var(--text-caption)/var(--line-body) var(--font-sans);cursor:pointer}
.admin-tab:hover{background:var(--muted);color:var(--foreground)}
.admin-tab[aria-selected="true"]{background:var(--accent);color:var(--accent-foreground);border-color:var(--accent)}
.admin-tab:focus-visible{outline:var(--stroke) solid var(--ring);outline-offset:var(--space-4)}
.admin-panel{min-height:calc(var(--space-64)*5)}
.admin-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-16)}
.admin-section-heading h3{margin-bottom:var(--space-4)}
.admin-section-heading .field-hint{margin-top:0}
#admin-panel-ai #admin-ai-settings{margin-top:0}
#account-dialog .button-row{align-items:stretch;flex-direction:column}
.mobile-account{display:none}
#reading-dialog{width:calc(100vw - var(--space-24));height:calc(100dvh - var(--space-24));max-width:none;max-height:none;padding:var(--space-16);overflow:hidden}
#reading-dialog[open]{display:flex;flex-direction:column}
.reading-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-16);margin-bottom:var(--space-16);flex-shrink:0}
.reading-header h2{font-size:var(--text-title);margin:0}
.reading-header p{font-size:var(--text-caption);line-height:var(--line-body);color:var(--muted-foreground);margin:var(--space-4) 0 0}
#reading-body{flex:1;min-height:0;overflow:auto}
#reading-body .live-grid{height:100%;min-height:0}
#reading-body .panel{padding:0;display:flex;flex-direction:column;overflow:hidden;height:100%;min-height:0;max-height:none}
#reading-body .panel-heading{flex-shrink:0;padding:var(--space-20);border-bottom:var(--stroke) solid var(--border);margin:0}
#reading-body #expand-transcript,#reading-body #expand-guidance{display:none}
.auth-page{min-height:100dvh}
.auth-layout{display:grid;grid-template-columns:minmax(0,1fr) calc(var(--space-64)*7);align-items:center;gap:var(--space-64);max-width:calc(var(--space-64)*19);min-height:100dvh;margin:auto;padding:var(--space-48) var(--space-32)}
.auth-story h1{font-size:var(--text-display);line-height:calc(var(--line-reading)*2);font-weight:500;margin:var(--space-24) 0}
.auth-story>p{max-width:calc(var(--space-64)*7);color:var(--muted-foreground)}
.auth-features{display:flex;flex-direction:column;gap:var(--space-12);margin-top:var(--space-32);font-size:var(--text-caption);color:var(--muted-foreground)}
.auth-card{padding:var(--space-32)}
.auth-card h2{margin:var(--space-12) 0;font-size:var(--text-title);line-height:var(--line-reading)}
.auth-card label{display:block;font-size:var(--text-caption);font-weight:500;margin:var(--space-20) 0}
.theme-toggle{white-space:nowrap}
.auth-theme{position:absolute;inset-inline-end:var(--space-24);top:var(--space-24)}
.payment-page{max-width:calc(var(--space-64)*12);margin:var(--space-32) auto;background:var(--card);color:var(--card-foreground);border-radius:var(--radius);border:var(--stroke) solid var(--border)}
.payment-page h1{font-size:var(--text-title);line-height:var(--line-reading)}
.crypto-wallet{display:flex;gap:var(--space-24);align-items:center;margin:var(--space-20) 0}
.crypto-qr{width:calc(var(--space-64)*3);height:calc(var(--space-64)*3);border-radius:var(--radius-card);background:var(--primary-foreground);padding:var(--space-8)}
.crypto-wallet-fields{flex:1;min-width:0}.crypto-wallet-fields label,.plan-card>label{display:block;font-size:var(--text-caption);margin:var(--space-12) 0}
.crypto-wallet-fields input{width:100%}#checkout-panel{overflow-wrap:anywhere}
.error-message{color:var(--destructive);font-size:var(--text-caption);line-height:var(--line-body)}
#payment-timeline{white-space:pre-wrap;font:400 var(--text-caption)/var(--line-body) var(--font-sans)}
.setup-guide{max-width:calc(var(--space-64)*14);margin:var(--space-32) auto;padding:var(--space-32);background:var(--card);color:var(--card-foreground);border-radius:var(--radius)}
.setup-guide h1{font-size:var(--text-title);line-height:var(--line-reading)}
.setup-guide pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--muted);color:var(--muted-foreground);padding:var(--space-16);border-radius:var(--radius-card);font:400 var(--text-caption)/var(--line-body) var(--font-sans)}
@keyframes pulse{from{transform:scaleY(.5)}to{transform:scaleY(1)}}
@media(max-width:calc(64px * 18)){
  .app-shell{grid-template-columns:calc(var(--space-64)*3 + var(--space-32)) minmax(0,1fr)}
  .sidebar{padding:var(--space-24) var(--space-16)}
  .main-content,.live-active .main-content{padding:var(--space-24)}
  .setup-grid{grid-template-columns:1fr}.setup-aside{display:none}
  .auth-layout{gap:var(--space-32)}
  .welcome-copy{padding:var(--space-32)}
  .welcome-copy h2{font-size:var(--text-title);line-height:var(--line-reading)}
}
@media(max-width:calc(64px * 12)){
  .app-shell{display:block}.sidebar{position:static;display:grid;grid-template-columns:1fr auto;height:auto;padding:var(--space-16);gap:var(--space-12)}
  .brand{margin:0;font-size:var(--text-title)}.brand-mark{width:var(--space-32);height:var(--space-32)}
  .sidebar-label,.sessions-heading,.sidebar-bottom{display:none}
  .new-button{grid-column:2;grid-row:1;width:auto;margin:0;padding:var(--space-8) var(--space-12);font-size:var(--text-caption)}
  #sessions{grid-column:1/-1;flex-direction:row;overflow-x:auto;max-height:var(--space-64)}
  .session-item{min-width:calc(var(--space-64)*3);max-width:calc(var(--space-64)*4)}
  .session-button{padding:var(--space-8) var(--space-32) var(--space-8) var(--space-8)}
  .topbar{height:var(--space-48);padding:0 var(--space-16);gap:var(--space-8)}.topbar-right{gap:var(--space-8)}
  .mobile-account{display:flex}.provider-tag{display:none}
  .main-content,.live-active .main-content{padding:var(--space-20) var(--space-16)}
  .page-heading{gap:var(--space-16);margin-bottom:var(--space-20)}
  .page-heading h1{font-size:var(--text-title);line-height:var(--line-reading)}
  .page-heading .eyebrow{font-size:var(--text-tiny)}.page-heading p{font-size:var(--text-caption)}
  .page-heading>button{font-size:var(--text-small);padding:var(--space-8)}
  .workflow{gap:var(--space-8);justify-content:space-between;overflow-x:auto}.workflow i{display:none}
  .workflow-step{font-size:var(--text-small);white-space:nowrap;gap:var(--space-4)}
  .workflow-step span{width:var(--space-24);height:var(--space-24);font-size:var(--text-small)}
  .welcome,.prepare-grid,.live-grid{grid-template-columns:1fr}
  .welcome-art{padding:var(--space-20);border-inline-end:0;border-bottom:var(--stroke) solid var(--border)}
  .welcome-art .voice-lines{margin-bottom:0}.art-label{display:none}.welcome-copy{padding:var(--space-24)}
  .context-panel,.panel{padding:var(--space-20)}
  .form-row{gap:var(--space-12)}input:not([type=checkbox]),select,textarea{font-size:var(--text-reading)}
  .label-row{flex-wrap:wrap}.input-action{flex-wrap:wrap}
  .input-action input{flex-basis:100%}.input-action button{margin:0}
  .live-control-actions{width:100%;gap:var(--space-8)}.live-control-actions button{font-size:var(--text-caption);padding:var(--space-8) var(--space-12)}
  .live-control-actions label{width:100%}.live-toolbar{align-items:flex-start;flex-direction:column;gap:var(--space-12)}
  .live-grid>.panel{height:calc(var(--space-64)*9);min-height:calc(var(--space-64)*7);max-height:none}
  .panel-heading{flex-wrap:wrap}.panel-actions{justify-content:flex-start}
  .question-composer{flex-wrap:wrap;gap:var(--space-8)}.question-composer textarea{flex-basis:100%}.composer-icon{display:none}
  .question-composer button{margin-inline-start:auto}.workspace-footer{flex-direction:column;gap:var(--space-4)}
  .plan-cards,.metric-grid,#usage-cards{grid-template-columns:1fr}
  .crypto-wallet{flex-direction:column;align-items:stretch}.crypto-qr{align-self:center}.payment-page,.setup-guide{margin:var(--space-16);padding:var(--space-20)}
  dialog,.wide-dialog{padding:var(--space-20);width:calc(100vw - var(--space-24))}
  .dialog-heading h2{font-size:var(--text-title)}
  .admin-section-heading{flex-direction:column}.admin-section-heading>.secondary{width:100%}
  .reading-header{align-items:flex-start;flex-direction:column;gap:var(--space-12)}
  .reading-header button{font-size:var(--text-caption);padding:var(--space-8) var(--space-12)}
  #reading-dialog{padding:var(--space-12)}
  #reading-body.both-panels .live-grid{height:auto;display:flex;flex-direction:column}
  #reading-body.both-panels .panel{height:calc(var(--space-64)*8);min-height:calc(var(--space-64)*7);flex-shrink:0}
  .auth-layout{grid-template-columns:1fr;gap:var(--space-24);padding:var(--space-64) var(--space-20) var(--space-32)}
  .auth-story h1{font-size:var(--text-title);line-height:var(--line-reading)}.auth-features{display:none}.auth-card{padding:var(--space-24)}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.debug-panel{position:fixed;inset-inline-end:0;top:0;bottom:0;width:min(calc(var(--space-64)*7),100vw);z-index:40;background:var(--card);color:var(--card-foreground);border-inline-start:var(--stroke) solid var(--border);box-shadow:var(--shadow-dialog);padding:var(--space-16);display:flex;flex-direction:column;gap:var(--space-12);overflow:hidden}
.debug-heading,.debug-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8)}
.debug-heading h2{margin:0}.debug-notice{font-size:var(--text-caption);line-height:var(--line-body);color:var(--muted-foreground);margin:0}
.debug-filters{display:flex;align-items:end;gap:var(--space-12)}.debug-filters>label:first-child{flex:1}.debug-filters label{font-size:var(--text-caption)}
.debug-panel .field-hint{font-size:var(--text-caption);line-height:var(--line-body);margin:0}
.debug-list{flex-shrink:0;max-height:calc(var(--space-64)*3);overflow:auto;display:flex;flex-direction:column;gap:var(--space-4)}
.debug-row{display:block;text-align:start;flex-shrink:0;padding:var(--space-8);border:var(--stroke) solid var(--border);border-radius:var(--radius-control);background:var(--secondary);color:var(--secondary-foreground)}
.debug-row[aria-pressed=true]{border-color:var(--accent);box-shadow:var(--shadow-card)}.debug-row strong,.debug-row small{display:block;overflow-wrap:anywhere;font-size:var(--text-caption);line-height:var(--line-body)}.debug-row small{color:var(--muted-foreground)}
.debug-detail{display:flex;flex-direction:column;gap:var(--space-8);min-height:0;flex:1}.debug-detail-heading strong{font-size:var(--text-caption);overflow-wrap:anywhere}
.debug-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}.debug-metrics>div{background:var(--muted);color:var(--foreground);border-radius:var(--radius-small);padding:var(--space-8)}.debug-metrics strong,.debug-metrics small{display:block;overflow-wrap:anywhere}.debug-metrics small{font-size:var(--text-small);color:var(--muted-foreground)}.debug-metrics strong{font-size:var(--text-body);font-weight:600}
.debug-tabs{display:flex;gap:var(--space-4);flex-wrap:wrap}.debug-tabs button{flex:1;border-radius:var(--radius-control);padding:var(--space-8);background:var(--secondary);color:var(--secondary-foreground);border:var(--stroke) solid var(--border);font-size:var(--text-caption)}.debug-tabs button[aria-pressed=true]{background:var(--accent);color:var(--accent-foreground);border-color:var(--accent)}
#debug-content{min-height:var(--space-64);flex:1;overflow:auto;margin:0;padding:var(--space-12);border-radius:var(--radius-control);background:var(--muted);color:var(--foreground);white-space:pre-wrap;overflow-wrap:anywhere;font:400 var(--text-caption)/var(--line-body) var(--font-sans)}
@media(min-width:1600px){.debug-open .app-shell{margin-inline-end:calc(var(--space-64)*7)}}
@media(max-width:640px){.debug-panel{padding:var(--space-12);gap:var(--space-8)}.debug-list{max-height:calc(var(--space-64)*2)}.debug-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.debug-notice{font-size:var(--text-small);line-height:var(--line-caption)}}
