@font-face{font-family:'Golos Text';src:url('/static/fonts/golos-400.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:'Golos Text';src:url('/static/fonts/golos-500.ttf') format('truetype');font-weight:500;font-display:swap}@font-face{font-family:'Golos Text';src:url('/static/fonts/golos-600.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:'Golos Text';src:url('/static/fonts/golos-700.ttf') format('truetype');font-weight:700;font-display:swap}
body,button,input,textarea,select{font-family:'Golos Text',sans-serif}.boot{display:grid;place-content:center;min-height:100dvh;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-60px;left:16px;z-index:200;background:var(--mint);color:var(--ink);padding:12px}.skip-link:focus{top:10px}.auth-shell{height:100dvh;overflow:auto;display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr}.field{display:flex;flex-direction:column;gap:9px;font-size:13px;color:var(--ink);margin-bottom:20px}.field input,.field textarea,.field select{box-sizing:border-box;width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink);font-size:14px;line-height:1.5}.field textarea{min-height:135px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--plum-500);outline-offset:2px}.field select{appearance:auto}.field small{color:var(--muted);line-height:1.6}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .field{margin:0}.inline-error{color:var(--red);font-size:13px;line-height:1.6;margin:12px 0;white-space:pre-wrap}.inline-error:empty{display:none}.connection-status{display:flex;gap:7px;align-items:center;font-size:11px;color:var(--green)}.connection-status:before{content:'';width:6px;height:6px;background:currentColor;border-radius:50%}.connection-status.offline{color:var(--red)}.nav-person small{overflow:hidden;text-overflow:ellipsis;max-width:115px}.workspace-title{font-size:23px}.onboarding{max-width:1000px;margin:auto;width:100%}.onboarding>h1{max-width:600px;line-height:1.2}.onboarding>p{max-width:620px;color:var(--muted);line-height:1.8;margin:18px 0 30px}.setup-step{display:grid;grid-template-columns:42px 1fr auto;align-items:start;gap:20px;padding:28px 0;border-top:1px solid var(--line)}.step-check{display:grid;place-content:center;width:34px;height:34px;border-radius:50%;background:var(--plum-pale);color:var(--plum);font-size:13px}.step-check.done{background:var(--mint);color:var(--success-800)}.setup-step h2{font-size:18px;font-weight:500;margin-bottom:9px}.setup-step p{max-width:560px;line-height:1.7;color:var(--muted);font-size:13px}.setup-actions{margin-top:25px;display:flex;gap:12px;flex-wrap:wrap}.conversation-empty{display:flex;align-items:center;justify-content:center;text-align:center;padding:40px;flex:1}.conversation-empty .empty{max-width:420px}.conversation-empty h2{font-weight:500;font-size:23px;line-height:1.3;margin:20px 0 12px}.conversation-empty p{color:var(--muted);font-size:14px;line-height:1.8;margin-bottom:24px}.list-heading .icon-btn{background:var(--white);border-radius:10px}.client.selected{background:var(--white)}.client-time{font-variant-numeric:tabular-nums}.conversation-header{min-height:94px}.chat-subtitle{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:6px}.compose-hint{font-size:11px!important}.compose-toolbar .text-btn{font-size:12px!important;max-width:none}.compose-toolbar .btn{font-size:12px!important}.bubble{font-size:14px;overflow-wrap:anywhere;white-space:pre-wrap}.message-meta{font-size:11px!important}.thread{overflow-y:auto;min-height:0}.assistant-empty{background:var(--plum);color:var(--white);border-radius:16px;padding:26px}.assistant-empty h3{font-size:22px;font-weight:500;line-height:1.3}.assistant-empty p{font-size:13px;color:var(--plum-200);line-height:1.8;margin:16px 0 23px}.assistant-empty .btn{background:var(--mint);color:var(--success-800);border:0}.assistant-footer{font-size:11px;line-height:1.7}.suggestion .source-link{display:block;text-align:left;white-space:normal}.source-quote{font-size:12px;line-height:1.7;color:var(--plum-200);margin-top:8px}.source-name{color:var(--white);font-weight:500;font-size:12px}.assistant .sources{border-top:1px solid var(--plum-700);margin-top:18px;padding-top:16px}.suggestion-copy .reason{color:var(--plum-200)}.stale-advice{background:var(--amber-pale);color:var(--amber);padding:12px;border-radius:10px;font-size:12px;line-height:1.6;margin:0 0 12px}.source-doc{white-space:pre-wrap;font-size:14px;line-height:1.85;color:var(--ink)}.document-content{min-width:0}.document h3{overflow-wrap:anywhere}.document p{font-size:12px}.document .status{font-size:11px}.document .icon-btn{flex-shrink:0}.rules-form{max-width:740px;margin-top:28px}.rules-form .field textarea{min-height:220px}.page-description{max-width:660px;color:var(--muted);font-size:14px;line-height:1.8;margin:16px 0 24px}.task-row{display:flex;align-items:flex-start;gap:16px;padding:23px 0;border-bottom:1px solid var(--line)}.task-row input{accent-color:var(--plum);width:20px;height:20px;margin-top:2px}.task-content{flex:1;min-width:0}.task-content strong{display:block;line-height:1.6;font-size:14px;font-weight:500;overflow-wrap:anywhere}.task-content p{font-size:12px;color:var(--muted);margin-top:7px;line-height:1.6}.task-row.complete strong{text-decoration:line-through;color:var(--muted)}.overdue{color:var(--red)!important}.task-row .text-btn{font-size:12px}.settings-section{max-width:750px;padding:30px 0;border-top:1px solid var(--line)}.settings-section h2{font-size:20px;font-weight:500;margin-bottom:15px}.settings-section p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:18px}.status-line{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.recording-status{display:flex;align-items:center;gap:12px;background:var(--plum-pale);border-radius:12px;padding:14px;margin-bottom:12px;font-size:13px;line-height:1.6}.recording-status .btn{margin-left:auto}.recording-dot{width:9px;height:9px;background:var(--red);border-radius:50%;box-shadow:0 0 0 5px oklch(from var(--danger-600) l c h / 0.082)}.recording-status[data-active=true] .recording-dot{animation:record-pulse 1.5s ease-in-out infinite}.busy{cursor:progress!important}.busy svg{animation:working 1.1s linear infinite}.busy-label{font-size:12px;color:var(--muted);margin-top:12px}.summary-message{font-size:13px;line-height:1.8}.summary-message p{white-space:pre-wrap}.dialog-body textarea{width:100%}.url-copy{overflow-wrap:anywhere;color:var(--plum);font-size:13px;line-height:1.7;padding:16px;border-radius:10px;background:var(--ground);margin:18px 0}.field input,.field select{min-height:44px}.guest-body{overflow:auto;background:var(--ground)}.guest-shell{height:100dvh;max-width:820px;margin:auto;display:flex;flex-direction:column;background:var(--white)}.guest-header{display:flex;gap:14px;padding:25px 30px;border-bottom:1px solid var(--line);align-items:center}.guest-header h1{font-size:20px;font-weight:600}.guest-header p{font-size:12px;color:var(--muted);margin-top:4px}.guest-header .status{margin-left:auto}.guest-note{padding:15px 30px;font-size:12px;color:var(--muted);line-height:1.6;background:var(--plum-50)}.guest-shell .thread{flex:1}.guest-shell .composer-wrap{padding:0 24px 22px}.guest-shell .message.client{margin-left:auto;align-items:flex-end}.guest-shell .message.client .bubble{background:var(--plum-pale)}.guest-shell .message.seller{margin-right:auto;margin-left:0;align-items:flex-start}.guest-shell .message.seller .bubble{background:var(--plum-100)}.guest-shell textarea{width:100%;resize:none;max-height:180px;min-height:80px}.list-filter{padding:8px 8px 20px;font-size:12px;color:var(--muted)}
@keyframes record-pulse{50%{opacity:.45}}@keyframes working{to{transform:rotate(360deg)}}
@media(max-width:850px){.topbar .connection-status{font-size:10px}.form-grid{grid-template-columns:1fr}.setup-step{grid-template-columns:32px 1fr;gap:12px}.setup-step>.btn{grid-column:2;justify-self:start}.setup-step p{font-size:13px}.page-heading{gap:16px}.settings-section{padding:24px 0}}
@media(max-width:650px){.nav .nav-btn{padding:8px 6px;min-width:57px;font-size:10px}.nav-bottom{display:none}.nav-btn svg{width:19px;height:19px}.topbar .btn{font-size:11px}.topbar .connection-status{display:none}.workspace-title{font-size:20px}.page{padding:26px 20px}.bubble{font-size:14px}.message-meta{font-size:11px!important}.compose-toolbar .text-btn{font-size:11px!important;max-width:130px}.compose-toolbar .btn{font-size:11px!important}.compose-hint{font-size:10px!important}.client-preview{font-size:13px}.client-company,.client-time{font-size:11px}.identity h2{font-size:16px}.identity p{font-size:11px}.conversation-header{padding:18px 12px}.header-actions .icon-btn{min-width:36px;width:36px}.assistant .source-quote{font-size:12px}.page-heading h1{font-size:26px}.field input,.field select,.field textarea{font-size:16px}.page-description{font-size:13px}.document h3{font-size:13px}.document p{font-size:11px}.guest-header{padding:18px;gap:10px}.guest-header h1{font-size:17px}.guest-header .status{font-size:10px}.guest-note{padding:13px 18px}.guest-shell .composer-wrap{padding:0 12px 16px}.guest-shell .thread{padding:22px 16px}.task-row{gap:12px}.task-content strong{font-size:14px}.task-row .text-btn{max-width:90px;text-align:right}.recording-status{font-size:12px;flex-wrap:wrap}.onboarding h1{font-size:28px}.onboarding>p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.recording-dot,.busy svg{animation:none!important}}

/* State-led motion: no decorative animation while the workspace is idle. */
.draft-transfer{position:fixed;z-index:240;pointer-events:none;width:40px;height:6px;border-radius:4px;background:var(--mint);box-shadow:0 0 18px oklch(from var(--mint-200) l c h / 0.702)}
.suggestion{isolation:isolate}.suggestion-copy blockquote{font-size:15px;line-height:1.7;letter-spacing:-.01em}
.suggestion .source-link{background:transparent;border:0;padding:0;margin-top:14px}.suggestion .source-quote{font-size:12px;color:var(--plum-300)}
.assistant-empty{position:relative;overflow:hidden}.assistant-empty h3{letter-spacing:-.025em}.assistant-empty .btn{width:100%;justify-content:center;min-height:44px}
.request-orbit{display:flex;gap:5px;height:24px;align-items:center;margin-bottom:12px}.request-orbit i{height:5px;width:5px;border-radius:50%;background:var(--mint);animation:request-dots 1.4s ease-in-out infinite}.request-orbit i:nth-child(2){animation-delay:.12s}.request-orbit i:nth-child(3){animation-delay:.24s}
.indexing-status{display:flex;align-items:center;gap:12px;background:var(--plum-pale);padding:16px 18px;border-radius:12px;font-size:13px;margin-bottom:20px}.indexing-status svg{animation:request-dots 1.4s ease-in-out infinite}
.audio-level{display:flex;align-items:center;gap:3px;height:28px;width:70px;flex-shrink:0}.audio-level i{width:3px;height:24px;border-radius:2px;background:var(--plum);transform:scaleY(.12)}
.recording-status[data-active=true] .recording-dot{animation:none}.recording-status{font-variant-numeric:tabular-nums}.recording-status .btn{min-height:40px}
.composer textarea[readonly]{color:var(--muted)}.composer:focus-within{border-color:var(--plum-500)}.speech-language{max-width:360px}
.client .avatar{transition:background-color 200ms,color 200ms}.client.selected .avatar{background:var(--plum);color:var(--mint)}.client.selected{box-shadow:inset 0 0 0 1px var(--plum-200)}
.document .btn{min-height:40px}.nav .nav-btn{position:relative}.btn svg,.text-btn svg{transition:transform 180ms var(--ease)}.btn:hover:not(:disabled) svg{transform:translateX(2px)}
.assistant-footer{margin:18px 5px}.assistant .page-description{font-size:13px;line-height:1.7}.assistant-section{padding:22px 4px}.assistant-section+.assistant-section{border-top:1px solid var(--line)}
.assistant-section>.btn{width:100%;justify-content:center}.identity div{min-width:0}.identity h2,.identity p{overflow-wrap:anywhere}
.advice-reason{font-size:12px;line-height:1.7;color:var(--plum-300);margin-top:20px}.advice-reason summary,.source-link summary{cursor:pointer;list-style-position:inside}.advice-reason p{margin-top:10px}.suggestion-copy>blockquote{margin-top:0}.source-link summary{line-height:1.6}.source-name{overflow-wrap:anywhere}
@keyframes request-dots{0%,80%,100%{opacity:.35;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}
@media(min-width:651px){[data-mobile-back]{display:none}}
@media(min-width:1200px){.assistant-close{display:none}}
@media(max-width:650px){.identity>.avatar{display:none}.compose-tools{flex-wrap:wrap}.compose-toolbar{align-items:flex-end}.suggestion-copy blockquote{font-size:14px}.audio-level{width:58px;gap:2px}.speech-language{max-width:none}.document .status{display:none}}
@media(prefers-reduced-motion:reduce){.request-orbit i,.indexing-status svg{animation:none!important;opacity:1}.draft-transfer{display:none}.btn:hover:not(:disabled) svg{transform:none}}

/* Independent finish review: enabled navigation and functional text remain readable. */
.nav-bottom .btn.ghost{color:var(--plum-300)}.nav-bottom .btn.ghost:hover{color:var(--white);background:var(--plum-800)}
@media(max-width:850px){.nav .nav-btn{font-size:11px}.topbar .connection-status{font-size:11px}}
@media(max-width:650px){.compose-hint{font-size:11px!important}.guest-header .status{font-size:11px}}


.settings-details{margin:8px 0 24px;border-block:1px solid var(--line)}
.settings-details>summary{padding:14px 0;min-height:44px;cursor:pointer;color:var(--ink);font-size:14px;font-weight:500}
.settings-details>summary:hover{color:var(--plum)}
.settings-details>summary:focus-visible{outline:2px solid var(--plum);outline-offset:3px}
.settings-details-content{padding-top:8px}
.settings-diagnostics{display:flex;justify-content:flex-end;margin-bottom:20px}
.settings-details .settings-section:last-child{padding-bottom:4px}
.guest-shell .compose-toolbar{justify-content:flex-end}

/* Shared input and action states. */
.field :is(input,textarea,select),.composer{border-color:var(--control-line)}
.composer:focus-within,.search:focus-within{border-color:var(--focus)}
.btn.primary{color:var(--on-accent)}
/* Phone: the format action keeps its full accessible name and shows the short one. */
.fmt-short{display:none}
@media(max-width:430px){#format-button .fmt-long{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}#format-button .fmt-short{display:inline}}
/* Touch: header icons reach 44px at tablet and phone widths. */
@media(max-width:1024px){.conversation-header .header-actions .icon-btn{width:44px;min-width:44px;height:44px}.conversation-header .cc-summary-trigger{min-height:44px}.conversation-header.cc-compact .cc-summary-trigger{width:44px;min-width:44px}}
/* Knowledge tabs: a count badge stays beside its label. */
.knowledge-switch button{white-space:nowrap;flex:none}
@media(max-width:430px){.knowledge-switch{gap:18px}}
/* Settings: «Готовить ответ заранее» (native checkbox, label wraps the input). */
.check-field{gap:6px}
.check-label{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;min-height:44px;font-size:14px;font-weight:500;color:var(--ink);cursor:pointer}
.check-label input{width:18px;height:18px;margin:0;accent-color:var(--plum);cursor:pointer}
.check-label input:focus-visible{outline:2px solid var(--plum-500);outline-offset:3px}
.check-field small{padding-left:28px;margin-top:-6px}
