/* Axon workspace: semantic tokens and shared interaction surfaces. */
:root {
  --canvas:#f5f7f7; --paper:#fff; --sidebar:#f0f4f2; --ink:#182d28; --text:#293d36;
  --muted:#596b63; --line:#d3ded8; --control-line:#86998e; --accent:#1f6048;
  --soft:#e2eee7; --focus:#176449; --danger:#a53029; --warning:#805000;
  --radius:12px; --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px;
  --space-6:24px; --space-8:32px; --reading:780px;
  color:var(--text); font-size:15px; line-height:1.55;
}
body { background:var(--canvas) }
button,input,textarea,select { font:inherit; color:inherit }
button,a,input,textarea,select,summary { touch-action:manipulation }
button:disabled { cursor:default; opacity:.55 }
button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible { outline:3px solid var(--focus); outline-offset:3px }
input:focus,textarea:focus,select:focus { outline:2px solid var(--focus); outline-offset:2px; border-color:var(--focus); box-shadow:none }
input,select,textarea { border:1px solid var(--control-line); border-radius:8px; background:var(--paper) }
input::placeholder,textarea::placeholder { color:var(--muted) }
.button,.icon-button,.send-button,.move-button { min-height:40px; min-width:40px; border-radius:8px; font-size:14px }
.button { padding:9px 14px; border-color:var(--control-line); font-weight:600 }
.button.primary { background:var(--accent); color:white; border-color:var(--accent) }
.button.primary:hover { background:#174a38 }
.button.subtle { background:transparent; border-color:transparent; color:var(--accent); padding:6px 8px; min-height:36px; font-size:13px }
.button.subtle:hover { background:var(--soft) }
.icon-button { color:var(--muted) }
.muted,.card .card-subtitle,.review-details,.message-label,.composer-note,.history-empty { color:var(--muted) }
.eyebrow { font-size:11px; letter-spacing:.12em; font-weight:650 }
.skip-link { position:fixed; top:10px; left:10px; z-index:100; transform:translateY(-160%); padding:12px; background:var(--paper); border:2px solid var(--focus); border-radius:8px }
.skip-link:focus { transform:none }
.workspace { height:100dvh; overflow:hidden }
.sidebar { width:280px; padding:22px 16px 16px; gap:18px; overflow:hidden }
.sidebar-heading { display:flex; align-items:center; gap:4px; flex-shrink:0 }
.sidebar-heading .brand { flex:1; min-width:0; padding:0; font-size:16px; margin:0; gap:8px; letter-spacing:-.4px }
.sidebar-heading .brand-mark { flex-shrink:0; width:32px; height:32px }
.sidebar-heading .icon-button { flex-shrink:0 }
.sidebar-restore { flex-shrink:0; font-size:12px; padding:8px 10px }
@media (max-width:720px) { .workspace-header { flex-wrap:wrap }.sidebar-restore { margin-right:auto } }
.brand-mark { border-radius:9px }
.workspace-navigation { gap:3px; flex-shrink:0 }
.nav-item { min-height:42px; padding:10px 12px; color:var(--muted); font-size:14px }
.nav-item[aria-current=page] { color:var(--accent); background:var(--soft) }
.sidebar-label { color:var(--muted); font-size:10px; margin:14px 12px 6px; letter-spacing:.1em }
.owner-navigation { margin:0 }
.workflow-history { display:flex; flex:1; min-height:80px; max-height:none; padding:16px 0 0; border:0; border-top:1px solid var(--line); background:none; overflow:hidden; flex-direction:column }
.history-heading { display:flex; gap:8px; align-items:center; flex-shrink:0 }
.history-heading h2 { margin:0; padding-left:10px; flex:1; font-size:12px; font-weight:600; color:var(--muted) }
.history-heading .icon-button { min-width:32px; min-height:32px; font-size:20px }
#history-search { width:calc(100% - 16px); margin:8px; padding:9px 10px; font-size:13px; flex-shrink:0 }
#history-status { font-size:12px; margin:0 10px }
.workflow-history #session-history-list { display:block; overflow:auto; min-height:0; flex:1; overscroll-behavior:contain; padding:0 4px }
.workflow-history #conversation-list,.workflow-history #analysis-list,.workflow-history #discussion-list,.workflow-history #history-empty { display:none!important }
.history-group { color:var(--muted); font-size:11px; margin:16px 8px 5px; font-weight:600 }
.history-row { display:block; width:100%; border:0; border-radius:8px; background:none; text-align:left; padding:10px 9px; margin:3px 0; min-height:48px; color:var(--text) }
.history-row:hover { background:var(--paper) }
.history-row[aria-current=page] { background:var(--soft); color:var(--accent) }
.history-row strong { display:block; font-size:13px; font-weight:500; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.history-row small { display:block; font-size:11px; margin-top:3px; color:var(--muted) }
.history-empty { padding:14px 10px; font-size:13px; line-height:1.6 }
#history-more { margin:8px; font-size:12px }
.sidebar-bottom { margin-top:auto; flex-shrink:0 }
.workspace-language { display:flex; align-items:center; justify-content:space-between; margin:6px 4px 14px; gap:8px }
.language-label { font-size:12px; margin:0 }
.language-switch { background:none; padding:2px; border-color:var(--line) }
.language-switch button { font-size:11px; padding:6px 7px }
.profile { padding:14px 4px 0; border-color:var(--line) }
.profile strong { font-size:12px; max-width:145px }
.profile small { font-size:11px; max-width:145px; overflow:hidden; text-overflow:ellipsis }
.workspace-header { min-height:88px; height:auto; padding:17px 32px; gap:16px; background:var(--paper); align-items:center; flex-shrink:0 }
.session-heading { min-width:0; flex:1 }
#workflow-subtitle { font-size:12px; color:var(--muted); margin:0 0 4px }
.title-line { display:flex; align-items:center; gap:8px }
.workspace-header h1 { font-size:19px; font-weight:600; line-height:1.4; margin:0; letter-spacing:-.3px; overflow-wrap:anywhere }
.title-line .icon-button { flex-shrink:0; font-size:20px; width:32px; min-height:32px; min-width:32px }
.session-state { color:var(--muted); display:block; font-size:11px; margin-top:4px }
.workflow-actions { gap:8px }
.workflow-actions .button { font-size:13px }
.workspace-error { margin:0; padding:14px 32px; color:var(--danger); background:#fff2ef; border-bottom:1px solid #d99b91; font-size:14px; overflow-wrap:anywhere }
.conversation-scroll { scroll-behavior:auto; overscroll-behavior:contain }
.home-content { max-width:1160px; padding:48px 40px; margin:auto }
.home-intro { margin-bottom:32px }
.home-intro h2 { font-size:32px; letter-spacing:-1px; margin:10px 0; font-weight:600 }
.workflow-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px }
.workflow-card,.discussion-home { min-height:190px; max-width:none; width:100%; padding:24px; margin:0; display:flex; gap:12px; border-radius:var(--radius); box-shadow:none }
.workflow-card strong { font-size:19px; line-height:1.4 }
.workflow-card>span:not(.workflow-icon) { font-size:14px; color:var(--muted) }
.workflow-card small { font-size:13px; margin-top:auto }
.workflow-card:hover { transform:none; border-color:var(--accent) }
.recent-section { margin-top:36px }
.recent-section h3 { font-size:17px }
.recent-item { min-height:72px; padding:14px 2px }
.recent-copy strong { font-size:14px }.recent-copy small { font-size:12px }
.status-pill { color:var(--accent); border-radius:6px; background:var(--soft); font-size:11px }
.welcome { max-width:var(--reading); padding:48px 24px 32px; margin:auto; text-align:left }
.welcome-mark { width:42px; height:42px; margin:0 0 20px; border-radius:10px }
.welcome h2 { font-size:30px; letter-spacing:-.7px; margin:12px 0; font-weight:600 }
.welcome>p { font-size:16px; line-height:1.65 }
.welcome .welcome-footnote { font-size:13px; line-height:1.6 }
.example-grid { margin:24px 0; gap:12px }
.example-card { padding:20px; border-radius:var(--radius) }
.example-card strong { font-size:15px }.example-card>span { font-size:13px }.example-card small { font-size:12px; color:var(--accent) }
.configuration-panel { padding:0; margin:0 0 24px; border:1px solid var(--line); border-radius:var(--radius); background:var(--paper) }
.configuration-panel>summary { cursor:pointer; padding:14px 18px; color:var(--text); font-size:14px; font-weight:550; min-height:48px }
.configuration-panel[open]>summary { border-bottom:1px solid var(--line) }
.document-configuration { max-width:var(--reading); margin:24px auto 0; width:calc(100% - 48px) }
.model-configuration,.document-model-configuration { padding:18px; max-width:none; margin:0 }
.model-config-grid { gap:10px; grid-template-columns:repeat(2,minmax(0,1fr)) }
.model-config-card { padding:16px; border-radius:8px; box-shadow:none }
.model-name { font-size:14px }.model-role { color:var(--accent); border-radius:5px; font-size:10px }
.model-config-card>.muted,.model-card-actions .muted { font-size:12px }
.model-config-note { font-size:12px; margin:14px 0 0 }.model-reset { min-height:36px; font-size:12px }
.perspective-control { border-top:1px solid var(--line); padding-top:12px }
.perspective-control .button { min-height:40px }
.perspective-picker fieldset { border:0; padding:0; margin-inline:0; min-width:0 }
.perspective-picker legend { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap }
.perspective-picker .perspective-choice { justify-content:flex-start; border-radius:8px; border-color:var(--control-line,var(--line)); cursor:pointer }
.perspective-choice input { flex:none; width:20px; height:20px; margin:0; accent-color:var(--accent) }
.perspective-choice:has(input:checked) { border-color:var(--accent); background:var(--soft) }
.perspective-choice:focus-within { outline:3px solid var(--focus,var(--accent)); outline-offset:3px }
.perspective-picker footer { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px; margin-top:20px }
.perspective-picker footer button,.perspective-picker .icon-button { min-height:40px }
.perspective-picker .form-error { margin-top:16px }
@media (pointer:coarse) { .perspective-control .button,.perspective-picker footer button,.perspective-choice { min-height:44px } }
@media (forced-colors:active) { .perspective-choice:has(input:checked) { border:2px solid Highlight } }
.model-card-actions { align-items:center; gap:8px }.model-card-actions .button { font-size:12px; white-space:normal }
.messages { max-width:var(--reading); padding:30px 24px; margin:auto }
.message { margin:0 0 28px; animation:none }.message.user { justify-content:flex-end }
.user-bubble { font-size:15px; padding:14px 18px; background:var(--soft); color:var(--ink); max-width:90%; white-space:normal }
.user-bubble p:last-child { margin-bottom:0 }
.message-label { font-size:12px; color:var(--muted); margin-bottom:10px }
.assistant-body { font-size:16px; line-height:1.7; overflow-wrap:anywhere }
.assistant-body p { white-space:normal }.assistant-body pre { font-size:13px }
.assistant-body h1 { font-size:25px }.assistant-body h2 { font-size:21px }.assistant-body h3 { font-size:18px }
.markdown-table { border:1px solid var(--line); border-radius:8px; margin:16px 0 }
.markdown-table:focus-visible { outline-color:var(--focus) }
.card { padding:24px; margin-top:16px; border-radius:var(--radius); box-shadow:none }
.card h3 { font-size:17px }.card .card-subtitle,.review-details { font-size:14px; line-height:1.6 }
.review-details { grid-template-columns:100px 1fr; gap:10px }.review-details dd { font-weight:500 }
.order-list li { padding:12px 0 }.order-name { font-size:14px }.order-count { font-size:12px }.order-number { font-size:12px; width:28px; height:28px }
.card .button { font-size:13px; min-height:40px }.artifact-link strong { font-size:14px }.artifact-link small { font-size:12px }
.processing-step { font-size:13px; color:var(--muted) }
.composer-area { padding:14px 24px 16px; border-top:1px solid var(--line); background:var(--canvas) }
.composer { max-width:var(--reading); padding:16px; border:1px solid var(--control-line); border-radius:var(--radius); box-shadow:none }
.composer:focus-within { border-color:var(--focus); box-shadow:none }
.composer textarea { font-size:16px; min-height:72px; max-height:200px; resize:none; line-height:1.6 }
.composer textarea:focus { outline:0 }
.composer-note { max-width:var(--reading); font-size:12px; text-align:left; line-height:1.5 }
.attachment-control span { font-size:12px; color:var(--muted) }.send-button { width:40px; height:40px; color:white }
.attached-file { max-width:100%; font-size:13px; border-color:var(--line); background:var(--soft) }
.attached-file .icon-button { min-height:32px; min-width:32px }
.editor-tools { display:flex; flex-wrap:wrap; gap:4px; margin:4px 0 8px; align-items:center }
.compose-preview { padding:16px; border-top:1px solid var(--line); background:var(--canvas); max-height:240px; overflow:auto }
.analysis-content,.discussion-content,.costs-content { max-width:1120px; padding:32px; margin:0 auto; width:100% }
.analysis-content>h2,.costs-content>h2 { font-size:28px; margin:0 0 10px; font-weight:600 }
.analysis-content>p,.costs-content>p { font-size:14px; line-height:1.7 }
.analysis-content>.card { margin-top:0 }.analysis-content label { font-weight:550 }
#analysis-input,#discussion-input { display:block; width:100%; resize:none; padding:14px; border:1px solid var(--control-line); border-radius:8px; font-size:16px; line-height:1.6; min-height:120px; margin:12px 0 }
#analysis-submit { margin-top:8px }
.agent-progress { grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:24px 0 }
.agent-status { padding:14px; margin:0; border-radius:8px }.agent-status h3 { font-size:14px }.agent-status .card-subtitle { font-size:12px; margin-bottom:8px; overflow-wrap:anywhere }
.agent-status .processing-step { font-size:12px }.agent-status .button { padding:7px 10px; font-size:12px; width:100%; margin-top:8px }
.analysis-tabs { gap:0; overflow:auto; margin:24px 0 0; flex-wrap:nowrap; border-bottom:1px solid var(--line) }
.analysis-tabs .button { min-width:fit-content; padding:12px 14px; border:0; border-bottom:3px solid transparent; border-radius:0; background:none; font-size:14px; color:var(--muted) }
.analysis-tabs .button[aria-selected=true] { color:var(--accent); border-bottom-color:var(--accent) }
#analysis-answer { padding:28px; margin-top:0; border-top:0; border-radius:0 0 var(--radius) var(--radius); background:var(--paper) }
.original-input { font-size:15px; line-height:1.7; overflow-wrap:anywhere }
.research-ledger { margin-top:20px }.research-ledger summary { padding:10px 0; font-size:13px; cursor:pointer; min-height:40px }
.research-ledger a { display:block; font-size:13px; overflow-wrap:anywhere; margin:6px 0 }
.discussion-layout { display:grid; grid-template-columns:minmax(0,1fr) 250px; gap:24px; align-items:start }
.discussion-layout>div { min-width:0 }.discussion-content { max-width:1200px }
#discussion-roster { margin:0; position:sticky; top:0; padding:18px }
.discussion-person { padding:16px 0; border-bottom:1px solid var(--line) }.discussion-person.selected { border-left:3px solid var(--accent); padding-left:12px }.discussion-person strong { font-size:14px }.discussion-person p { font-size:12px }.discussion-person .button { width:100%; font-size:12px; padding:8px }
.discussion-message { margin:0 0 22px; padding:20px; background:var(--paper); border:1px solid var(--line); border-radius:var(--radius) }
.discussion-user { background:var(--soft); border-color:var(--soft) }.discussion-synthesis { border-left:4px solid var(--accent) }
.discussion-message-heading { gap:10px; margin-bottom:12px }.discussion-message-heading strong { font-size:14px }.discussion-message-heading small { font-size:11px }
.discussion-message .assistant-body { font-size:15px }.discussion-message .original-input { margin:0 }
#discussion-composer { padding:18px; margin-top:18px; border-color:var(--control-line) }
.discussion-actions { gap:8px; display:flex; flex-wrap:wrap; align-items:center; margin:12px 0 }.discussion-actions small { font-size:12px }
.discussion-order-row { display:flex; align-items:center; gap:12px; min-height:48px }.discussion-order-row label { flex:1; font-size:14px }.discussion-order-row input { width:18px; height:18px }
.discussion-recovery { padding:16px; border:1px solid #b88938; background:#fff8e8; border-radius:8px; margin:16px 0; color:var(--warning) }
.discussion-recovery .button { margin:8px 8px 0 0 }
#discussion-topic { width:100%; min-height:44px; padding:10px; margin:10px 0 20px }
#discussion-status { font-size:13px; padding:12px 0 }.discussion-context-history { font-size:13px }
.new-content { align-self:center; margin:8px; background:var(--soft); z-index:2 }
.form-error { color:var(--danger); line-height:1.6; font-size:14px; overflow-wrap:anywhere }
.toast { background:var(--ink); font-size:14px; line-height:1.5 }
.model-picker,.rename-dialog,.expanded-editor { border:1px solid var(--line); border-radius:16px; background:var(--paper); color:var(--text); box-shadow:0 24px 80px #102c282b; padding:24px }
dialog::backdrop { background:#102c2866 }
.expanded-editor { width:min(1120px,calc(100vw - 48px)); max-width:none; height:min(820px,calc(100dvh - 64px)); max-height:none; padding:0 }
.expanded-editor[open] { display:flex; flex-direction:column }
.expanded-editor header { display:flex; justify-content:space-between; gap:16px; align-items:center; padding:20px 24px; border-bottom:1px solid var(--line); flex-shrink:0 }
.expanded-editor h2 { margin:0; font-size:20px }.expanded-editor header p { margin:0 0 4px; font-size:12px; max-width:70ch; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.editor-mode { padding:12px 24px; display:flex; gap:8px; border-bottom:1px solid var(--line); flex-shrink:0 }
.editor-mode [aria-pressed=true] { background:var(--soft); color:var(--accent); border-color:var(--accent) }
.expanded-editor-body { flex:1; min-height:0; display:grid; grid-template-columns:1fr; gap:0; overflow:hidden }
.expanded-editor-body[data-mode=split] { grid-template-columns:1fr 1fr }
#expanded-editor-input { width:100%; height:100%; border:0; border-radius:0; outline:none; resize:none; padding:24px; font-size:16px; line-height:1.7; font-family:ui-monospace,SFMono-Regular,Consolas,monospace }
#expanded-editor-input:focus { outline:3px solid var(--focus); outline-offset:-3px; box-shadow:none }
#expanded-editor-preview { padding:24px; overflow:auto; border-left:1px solid var(--line) }
.expanded-editor footer { padding:16px 24px; display:flex; align-items:center; gap:16px; border-top:1px solid var(--line); flex-wrap:wrap; flex-shrink:0 }
.expanded-editor footer .muted { font-size:12px }.expanded-editor footer .primary { margin-left:auto }
.rename-dialog { width:min(460px,calc(100vw - 32px)) }.rename-dialog h2 { margin-top:0; font-size:22px }.rename-dialog input { width:100%; padding:12px; margin:8px 0 }.rename-dialog .muted { font-size:13px }
.costs-filters { gap:12px; padding:20px; background:var(--paper); border:1px solid var(--line); border-radius:var(--radius) }.costs-filters label { font-size:12px }.costs-filters input,.costs-filters select { min-height:42px; padding:8px; font-size:14px }
.costs-metrics { gap:12px }.costs-metrics .card { padding:22px }.costs-metrics small { font-size:12px }.cost-value { font-size:28px }
.costs-table { overflow:auto; border:1px solid var(--line); background:var(--paper); border-radius:8px }.costs-table th,.costs-table td { padding:14px 12px; font-size:13px }.costs-table th { background:var(--sidebar) }.cost-number { font-variant-numeric:tabular-nums }.costs-table button { min-height:36px }
.cost-model-row { font-size:14px }.costs-content h3 { font-size:18px }
.board-toolbar,.board-file-actions { padding:12px 24px; gap:10px; background:var(--paper) }.board-toolbar label { font-size:12px }.board-toolbar input,.board-toolbar select { font-size:14px; min-height:40px; max-width:250px; border-color:var(--control-line) }.board-file-actions .button { font-size:12px; min-height:36px }
#board-status { color:var(--muted); font-size:12px }#board-editor { min-height:320px }#board-frame { min-height:320px }#board-empty { padding:40px 20px; text-align:center; font-size:16px }
.canvas-expanded .sidebar,.canvas-expanded .workspace-header { display:none }.canvas-expanded #board-editor { min-height:0 }.canvas-expanded #board-frame { min-height:0 }
.login-view { background:var(--canvas) }.login-header { padding:24px max(32px,calc((100% - 1120px)/2)); background:var(--paper) }.login-layout { gap:72px; padding:80px 32px; max-width:1120px }.login-story h1 { font-size:44px; font-weight:600; letter-spacing:-1.5px }.login-story>.muted { font-size:17px; line-height:1.65 }.login-capabilities { gap:0; margin-top:28px }.login-capabilities p { font-size:14px; margin:8px 0 }.login-card { padding:32px; border-radius:var(--radius) }.login-card label { font-size:14px }.login-card input { font-size:16px; height:46px; border-color:var(--control-line) }.login-card .demo-note { font-size:12px }
@media (max-width:1100px) { .sidebar { width:252px }.workspace-header { padding:16px 24px }.analysis-content,.discussion-content,.costs-content { padding:24px }.discussion-layout { grid-template-columns:minmax(0,1fr) 220px; gap:16px }.home-content { padding:36px 28px }.agent-progress { grid-template-columns:repeat(2,minmax(0,1fr)) } }
@media (max-width:900px) { .discussion-layout { grid-template-columns:1fr }.discussion-layout>div { order:0 }#discussion-roster { order:1; position:static; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px }#discussion-roster>h3,#discussion-roster>p { grid-column:1/-1 }.discussion-person { padding:12px; border:1px solid var(--line); border-radius:8px }.login-layout { gap:36px }.workflow-card { min-height:180px } }
@media (max-width:720px) { .sidebar { width:min(320px,calc(100vw - 32px)); padding:20px 16px; overflow:auto }.workspace-header { padding:14px 16px; min-height:84px; gap:10px }.workspace-header h1 { font-size:17px }.workspace-header .workflow-actions { width:100%; flex:0 0 100%; justify-content:flex-end }.workflow-actions .button { min-height:40px }.mobile-menu { min-height:40px; margin:0 }.home-content,.analysis-content,.discussion-content,.costs-content { padding:24px 16px }.home-intro h2 { font-size:28px }.workflow-cards { grid-template-columns:1fr }.workflow-card { min-height:164px; padding:20px }.recent-copy strong { white-space:normal }.recent-item { flex-wrap:wrap }.welcome { padding:30px 20px }.welcome h2 { font-size:27px }.example-grid { grid-template-columns:1fr }.messages { padding:24px 16px }.composer-area { padding:12px }.composer { padding:12px }.attachment-control span { max-width:190px; font-size:11px }.composer-note { font-size:11px }.document-configuration { width:calc(100% - 32px); margin-top:16px }.model-config-grid { grid-template-columns:1fr }.analysis-tabs .button { padding:12px; font-size:13px }#analysis-answer { padding:20px }.agent-progress { gap:8px }.agent-status { padding:12px }.assistant-body { font-size:16px }.discussion-message { padding:16px }#discussion-roster { grid-template-columns:1fr }.discussion-actions .button { flex:1 1 auto; font-size:12px }.card { padding:18px }.expanded-editor { width:100vw; height:100dvh; border:0; border-radius:0 }.expanded-editor header { padding:16px }.editor-mode { padding:12px 16px; gap:6px }.editor-mode .button { font-size:12px; padding:8px }.expanded-editor-body[data-mode=split] { grid-template-columns:1fr; grid-template-rows:1fr 1fr }#expanded-editor-input,#expanded-editor-preview { padding:16px }#expanded-editor-preview { border-left:0; border-top:1px solid var(--line) }.expanded-editor footer { padding:12px 16px; gap:8px }.expanded-editor footer .muted { font-size:11px }.board-toolbar,.board-file-actions { padding:10px 12px }.board-toolbar input,.board-toolbar select { max-width:calc(100vw - 48px) }#board-editor,#board-frame { min-height:300px }#board-status { margin-left:0 }.workspace-error { padding:12px 16px }.login-header { padding:20px; gap:12px }.login-layout { grid-template-columns:1fr; padding:32px 20px; gap:28px; max-width:520px }.login-story h1 { font-size:34px }.login-capabilities { display:none }.login-card { padding:24px }.login-story>.muted { font-size:16px } }
@media (pointer:coarse) { button,input,select,summary,.icon-button,.send-button,.move-button,.language-switch button { min-height:44px }.icon-button,.send-button,.move-button { min-width:44px }.language-switch button { font-size:12px }.editor-tools .button { min-height:44px } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important } }

.session-attachments { max-width:var(--reading); margin:24px auto 0; padding:20px 24px; border:1px solid var(--line); border-radius:var(--radius); background:var(--paper) }
.session-attachments h2 { font-size:16px; margin:0 0 8px }.session-attachments>p { font-size:13px }
#session-attachment-list { list-style:none; padding:0; margin:16px 0 0 }
.session-attachment { display:flex; align-items:center; gap:12px; padding:12px 0; border-top:1px solid var(--line) }.session-attachment>svg { width:22px; height:22px; flex:none; color:var(--muted) }
.session-attachment-copy { flex:1; min-width:0 }.session-attachment-name { display:block; overflow-wrap:anywhere; font-size:14px }.session-attachment-copy small { display:block; margin-top:4px; font-size:12px }.original-download { flex:none; font-size:13px; text-decoration:none }
@media(max-width:720px) { .session-attachments { margin:16px; padding:16px }.session-attachment { flex-wrap:wrap }.session-attachment-copy { flex-basis:calc(100% - 40px) }.original-download { margin-left:34px } }

.history-item {display:flex;align-items:stretch;gap:4px;min-width:0}
.history-item .history-row {flex:1;min-width:0}
.history-delete {flex:0 0 44px;align-self:center;width:44px;height:44px;display:grid;place-items:center;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--danger);cursor:pointer}
.history-delete:hover {border-color:var(--line);background:var(--paper)}
.history-delete:focus-visible {outline:2px solid var(--focus);outline-offset:2px}
.history-delete svg {width:18px;height:18px}
.delete-dialog {width:min(520px,calc(100vw - 32px));border:1px solid var(--line);border-radius:var(--radius);padding:24px;color:var(--text);background:var(--paper)}
.delete-dialog::backdrop {background:#15282070}
.delete-name {font-weight:650;overflow-wrap:anywhere}
.button.danger {background:var(--danger);color:#fff;border-color:var(--danger)}
.delete-dialog .card-actions {justify-content:flex-end;flex-wrap:wrap}
@media(max-width:400px){.delete-dialog {padding:16px}.history-delete {flex-basis:44px}.delete-dialog .card-actions .button {flex:1}}

#session-rename {min-width:44px;min-height:44px;width:44px;flex-shrink:0}
