/* One conversation surface, with all secondary controls behind the menu. */
:root{color-scheme:dark}
body{--page:#0c1420;--panel:#172334;--field:#172334;--text:#f5f7fb;--muted:#becbdb;--border:#576b84;--accent:#6dbbff;--user:#223d5c;--focus:#b0dcff;--chat-font:1.25rem;margin:0;background:var(--page);color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;font-size:1.125rem;line-height:1.55;overflow:hidden;word-spacing:normal}
body[data-theme=light]{color-scheme:light;--page:#fff;--panel:#f1f4f8;--field:#f1f4f8;--text:#172333;--muted:#40546b;--border:#74869a;--accent:#005bad;--user:#e0edfa;--focus:#005bad}
body[data-text-size=normal]{--chat-font:1.125rem}body[data-text-size=extra]{--chat-font:1.5rem}
button,a,input,textarea,select,summary{touch-action:manipulation}button,a{color:inherit;word-spacing:normal}button{font-size:1.125rem;font-weight:500}button:hover{filter:none;background-color:var(--user)}button:disabled{cursor:default;opacity:.48}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button,summary{min-height:48px}button svg{flex:none}.ui-icon{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.icon-button{width:52px;height:52px;min-width:52px;display:grid;place-items:center;padding:0;border-radius:12px;background:transparent;color:var(--text);flex-shrink:0}.skip-link{position:fixed;top:-200px;left:12px;z-index:30;padding:12px;background:var(--page);border:2px solid var(--accent);border-radius:10px}.skip-link:focus{top:10px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.chat-app{height:100vh;height:var(--app-height,100dvh);display:flex;flex-direction:column;max-width:100%;overflow:hidden}
.chat-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:72px;padding:8px max(12px,env(safe-area-inset-left));padding-top:calc(8px + env(safe-area-inset-top));border-bottom:1px solid var(--border);background:var(--page);flex:none}
.chat-brand{font-size:1.25rem;font-weight:700;letter-spacing:.03em;white-space:normal;min-width:0;overflow-wrap:anywhere;text-align:center}.chat-brand b{color:var(--accent)}
main.chat-panel,body.has-chat main.chat-panel{width:100%;max-width:900px;min-height:0;padding:0;margin:0 auto;display:flex;flex:1;flex-direction:column;overflow:hidden}
.chat-scroll{overflow-y:auto;overscroll-behavior-y:contain;min-height:0;flex:1;padding:24px 28px;scroll-padding:24px;outline:none}
.welcome{padding:0;min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:520px;margin:0 auto;gap:18px}.welcome-mascot{height:80px;width:80px;object-fit:contain}.welcome h1{font-size:clamp(1.5rem,4vw,1.9rem);font-weight:650;line-height:1.35;letter-spacing:-.02em;margin:0}.welcome p{margin:0;font-size:var(--chat-font);color:var(--muted);line-height:1.5;max-width:310px}body.has-chat .welcome{display:none}
.messages{display:flex;flex-direction:column;gap:28px;padding:0}.messages:empty{display:none}.bubble{font-size:var(--chat-font);line-height:1.65;max-width:100%;overflow-wrap:anywhere;scroll-margin:20px}.bubble .text{white-space:pre-wrap}.bubble.user{align-self:flex-end;background:var(--user);border-radius:20px 20px 5px 20px;padding:14px 18px;max-width:88%;color:var(--text)}.bubble.assistant{padding:0;align-self:stretch;color:var(--text)}.bubble.assistant:before{display:none}.bubble a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.bubble img{max-width:min(100%,440px);max-height:420px;border-radius:14px;margin:12px 0}.file-link{font-size:1rem}.bubble audio{width:100%;max-width:400px}.bubble:focus{outline:2px solid var(--focus);outline-offset:5px;border-radius:10px}.choices{gap:10px;margin-top:16px}.choices button,.choices a{min-height:48px;padding:10px 14px;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--text);font-size:1.0625rem;line-height:1.5;text-decoration:none}.message-actions{margin-top:12px}.message-actions summary{display:flex;align-items:center;width:max-content;font-size:1rem;color:var(--muted);cursor:pointer}.message-actions summary::before{content:'+';margin-right:10px}.message-actions[open] summary::before{content:'−'}
.thinking{position:relative;isolation:isolate;display:flex;align-items:center;gap:18px;margin:22px 0 8px;padding:18px 22px 18px 12px;min-height:146px;border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:24px;background:linear-gradient(115deg,color-mix(in srgb,var(--accent) 9%,var(--page)),var(--page) 80%);color:var(--text);font-size:1.125rem;overflow:hidden}
.thinking-mascot{position:relative;width:112px;height:112px;flex:0 0 112px;display:grid;place-items:center}.thinking-mascot img{position:relative;z-index:2;width:112px;height:112px;object-fit:contain;transform-origin:50% 85%;animation:mascot-consider 4.4s ease-in-out infinite;filter:drop-shadow(0 7px 9px #03162c55)}
.mascot-halo{position:absolute;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,#39d7ff33,transparent 70%);animation:mascot-breathe 3.2s ease-in-out infinite}.mascot-orbit{position:absolute;inset:3px;border:1px solid color-mix(in srgb,var(--accent) 24%,transparent);border-top-color:var(--accent);border-right-color:transparent;border-radius:50%;transform:rotate(-24deg);animation:mascot-orbit 9s linear infinite}.mascot-orbit::after{content:'';position:absolute;top:10px;right:10px;width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent)}
.mascot-spark{position:absolute;z-index:3;width:5px;height:5px;background:#a5e868;border-radius:50%;box-shadow:0 0 8px #91e67c88;animation:mascot-spark 3.8s ease-in-out infinite}.spark-one{left:3px;top:31px}.spark-two{right:1px;top:43px;animation-delay:-1.3s;background:var(--accent)}.spark-three{right:18px;bottom:9px;animation-delay:-2.5s;width:3px;height:3px}
.thinking-copy{min-width:0}.thinking p{margin:0}.thinking #thinking-label{font-weight:650;font-size:1.05em;line-height:1.4;letter-spacing:-.015em}.thinking #thinking-hint{margin-top:5px;color:var(--muted);font-size:.875rem;line-height:1.5}.thinking-signal{display:flex;align-items:center;gap:5px;height:15px;margin-top:11px}.thinking-signal i{width:4px;height:5px;border-radius:4px;background:var(--accent);animation:mascot-signal 1.8s ease-in-out infinite}.thinking-signal i:nth-child(2){animation-delay:-1.5s}.thinking-signal i:nth-child(3){animation-delay:-1.2s}.thinking-signal i:nth-child(4){animation-delay:-.9s}.thinking-signal i:nth-child(5){animation-delay:-.6s}
body[data-assistant-waiting=true] .welcome{display:none}body[data-mascot-state=offline] .thinking{border-color:color-mix(in srgb,#e9b569 35%,transparent)}body[data-mascot-state=offline] .thinking *{animation-play-state:paused!important}body[data-mascot-state=offline] .thinking-signal i{background:#e9b569}body[data-document-hidden=true] .thinking *{animation-play-state:paused!important}
@keyframes mascot-consider{0%,100%{transform:translateY(2px) rotate(-2deg)}40%{transform:translateY(-5px) rotate(1.5deg)}70%{transform:translateY(-2px) rotate(-.5deg)}}
@keyframes mascot-breathe{0%,100%{opacity:.5;transform:scale(.9)}50%{opacity:1;transform:scale(1.12)}}
@keyframes mascot-orbit{to{transform:rotate(336deg)}}
@keyframes mascot-spark{0%,100%{opacity:.25;transform:translateY(2px) scale(.7)}50%{opacity:.9;transform:translateY(-5px) scale(1)}}
@keyframes mascot-signal{0%,100%{transform:scaleY(.7);opacity:.45}50%{transform:scaleY(2.1);opacity:1}}
.mascot-energy{position:absolute;inset:0;z-index:3;opacity:0;transition:opacity 1.2s ease;pointer-events:none}.mascot-bolt{position:absolute;width:12px;height:28px;background:linear-gradient(#e6fbff,#36bdff);clip-path:polygon(48% 0,100% 0,61% 38%,100% 38%,17% 100%,39% 53%,0 53%);filter:drop-shadow(0 0 4px #35ceff);animation:mascot-current 3.6s ease-in-out infinite}.bolt-left{left:0;top:27px;transform:rotate(-16deg)}.bolt-right{right:0;top:34px;animation-delay:-1.2s}.bolt-top{left:47%;top:-7px;width:10px;height:20px;animation-delay:-2.4s}
.mascot-fire{position:absolute;z-index:1;left:22%;top:-3px;width:62%;height:61px;opacity:0;transition:opacity 1.8s ease;pointer-events:none}.mascot-fire i{position:absolute;bottom:0;left:27%;width:48%;height:100%;border-radius:65% 12% 55% 45%;background:linear-gradient(15deg,#ff764b99 5%,#ffb644cc 55%,#fff0a8bb);transform-origin:50% 100%;animation:mascot-flame 3.3s ease-in-out infinite}.mascot-fire i:nth-child(2){left:0;height:75%;width:40%;animation-delay:-1.1s;background:linear-gradient(15deg,#f8782b77,#ffc86bba)}.mascot-fire i:nth-child(3){left:64%;height:70%;width:36%;animation-delay:-2.2s;background:linear-gradient(15deg,#ed583d77,#ffd585bb)}
body[data-mascot-intensity=charged] .mascot-energy,body[data-mascot-intensity=storm] .mascot-energy{opacity:1}body[data-mascot-intensity=charged] .mascot-halo{background:radial-gradient(circle,#39d7ff66,transparent 70%)}body[data-mascot-intensity=storm] .mascot-fire{opacity:.92}body[data-mascot-intensity=storm] .mascot-halo{background:radial-gradient(circle,#ffb54c77,transparent 72%)}body[data-mascot-intensity=storm] .mascot-spark{background:#ffd47b;box-shadow:0 0 9px #ffb65d88}body[data-mascot-intensity=storm] .thinking-signal i{background:#dd9944}
@keyframes mascot-current{0%,100%{opacity:.38;transform:translateY(2px) rotate(-10deg) scale(.86)}50%{opacity:.95;transform:translateY(-3px) rotate(6deg) scale(1.08)}}
@keyframes mascot-flame{0%,100%{transform:rotate(-9deg) scaleY(.78);opacity:.65}45%{transform:rotate(7deg) scaleY(1.1);opacity:1}75%{transform:rotate(-3deg) scaleY(.9);opacity:.8}}
@media(prefers-reduced-motion:reduce){.thinking *{transition:none!important}.mascot-fire{display:none}}
@media(max-width:430px){.thinking{padding:14px 12px 14px 5px;gap:10px;min-height:126px;border-radius:20px}.thinking-mascot{width:88px;height:96px;flex-basis:88px}.thinking-mascot img{width:96px;height:96px}.thinking #thinking-label{font-size:1rem}.thinking #thinking-hint{font-size:.8125rem}}
.composer-wrap,body.has-chat .composer-wrap{flex:none;position:relative;bottom:auto;margin:0;padding:12px 24px max(14px,env(safe-area-inset-bottom));background:var(--page);box-shadow:none}
.composer{border:1px solid var(--border);border-radius:22px;background:var(--field);padding:14px 12px 10px;box-shadow:none}.composer:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
textarea#message{font-family:inherit;font-size:var(--chat-font);line-height:1.5;min-height:34px;max-height:180px;width:100%;padding:0 6px;color:var(--text);border:0;background:transparent;resize:none;border-radius:0}textarea#message::placeholder{color:var(--muted);opacity:1}
.composer-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px}.attach-actions{display:flex;gap:6px;align-items:center}.attach-actions button,.attach-actions #camera{width:48px;height:48px;min-width:48px;display:grid;place-items:center;padding:0;border:0;background:transparent;border-radius:12px;color:var(--text)}.attach-actions button:hover{background:var(--user)}.attach-actions .ui-icon{width:26px;height:26px}#send{width:50px;height:50px;min-width:50px;display:grid;place-items:center;border-radius:16px;background:var(--accent);color:#071629}body[data-theme=light] #send{color:#fff}#send svg{width:26px}#send:disabled{background:var(--border);color:var(--page);opacity:.7}
.connection{margin:0 0 10px;padding:8px 0;display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:1rem;line-height:1.5;color:var(--muted);background:none;border-radius:0}.connection[data-state=ready]{display:none}.connection[data-state=error]{padding:12px;background:#452d12;color:#ffebc2;border:1px solid #d8aa60;border-radius:12px}.connection button{font-size:1rem;min-height:48px;border:1px solid currentColor;padding:9px 14px;color:inherit}.notice{font-size:1rem;background:#452d12;border:1px solid #d8aa60;color:#ffebc2;margin:10px 0 0;padding:10px 14px;line-height:1.5}.notice:empty{display:none}.mode{font-size:1rem;line-height:1.5;background:var(--panel);color:var(--text);margin:0 0 10px;padding:8px 12px}.mode button{font-size:1rem;color:var(--accent);min-height:44px}.file-preview{gap:12px;background:var(--panel);border:1px solid var(--border);margin:0 0 10px;padding:10px 12px;color:var(--text)}.file-info span{font-size:1rem}.file-info small{font-size:.9375rem;color:var(--muted)}.file-preview button{display:grid;place-items:center;min-width:48px;min-height:48px}.recording{color:#fff!important;background:#a52636!important}
/* Native dialogs keep focus inside and close with Escape / Android Back. */
dialog{color-scheme:inherit;background:var(--page);color:var(--text);border:1px solid var(--border);border-radius:20px;padding:22px;width:min(620px,calc(100% - 24px));max-height:calc(100dvh - 28px);font-size:1.125rem;overflow:auto;overscroll-behavior:contain;box-shadow:0 22px 100px #0008}dialog::backdrop{background:#0009;backdrop-filter:none}.navigation-dialog{width:min(380px,calc(100% - 24px));margin:12px auto auto 12px}.dialog-head{align-items:center;gap:14px;position:sticky;top:-22px;margin:-2px 0 16px;padding:2px 0 12px;background:var(--page);z-index:1}.dialog-head h2{font-size:1.5rem;line-height:1.3;margin:0;letter-spacing:0;font-weight:650}.dialog-head>button{background:transparent;color:var(--text);font-size:1.8rem;min-width:48px;min-height:48px}.main-menu{display:grid;gap:8px}.main-menu button,.menu-more button,.menu-more a{display:flex;align-items:center;min-height:56px;width:100%;border-radius:10px;padding:12px 14px;text-align:left;font-size:1.125rem;line-height:1.4}.main-menu button{background:var(--panel)}.menu-more{margin-top:18px;border-top:1px solid var(--border);padding-top:10px}.menu-more summary,.account-extra summary{cursor:pointer;padding:12px 0;color:var(--text);font-size:1.125rem;line-height:1.5}.history-list{display:grid;gap:8px}.history-list button{text-align:left;padding:14px;border:1px solid var(--border);background:var(--panel);border-radius:12px;min-height:56px;font-size:1.125rem;line-height:1.5;white-space:normal;overflow-wrap:anywhere}.reading-settings{display:grid;grid-template-columns:1fr;gap:10px;margin:12px 0 24px}.reading-settings label{margin-top:10px}.reading-settings select,dialog select{font-size:1.125rem;min-height:52px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--text);max-width:100%;width:100%}.settings-account{background:var(--panel);width:100%;min-height:56px;padding:14px;border:1px solid var(--border);border-radius:12px;text-align:left;overflow-wrap:anywhere}.account-extra{border-top:1px solid var(--border);padding-top:8px;margin-top:20px}.account-extra>button{display:block;margin:10px 0;padding:12px;border-radius:10px;border:1px solid var(--border);text-align:left}.account-extra p{margin:10px 0}.account-extra .small-label{display:none}
dialog p,dialog .access-intro,dialog .access-fineprint{font-size:1rem!important;color:var(--muted)!important;line-height:1.6;overflow-wrap:anywhere}.small-label{font-size:.9375rem;color:var(--muted);letter-spacing:0}.dialog-head .small-label{display:none}dialog h3{font-size:1.25rem;line-height:1.45;color:var(--text)}.identity-panel,.link-panel,.reward-panel,.workshop-panel,.profile-panel,.plan{background:var(--panel);border-color:var(--border);color:var(--text)}.identity-panel{margin-top:18px;padding:16px;flex-wrap:wrap;gap:14px}.identity-panel>div{flex-basis:100%}.primary-button,.identity-panel button,.plan button,.plan a,.profile-options button{min-height:52px;font-size:1rem;white-space:normal;padding:12px 14px;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:10px}.primary-button,.profile-options button[aria-pressed=true]{background:var(--user);color:var(--text);border-color:var(--accent)}.profile-panel{grid-template-columns:1fr;padding:16px;border-radius:12px}.profile-panel label{color:var(--text);font-size:1rem}.profile-options{flex-wrap:wrap}.profile-options button{flex:1}.plan-grid{grid-template-columns:1fr}.plan.featured{background:var(--panel);border-color:var(--accent)}.plan-tag,.plan-period,.plan-price{color:var(--text);font-size:1rem}.plan ul{font-size:1rem;color:var(--muted)}.reward-panel button,.workshop-panel button{font-size:1rem;white-space:normal;color:var(--accent);min-height:48px}.workshop-panel{flex-direction:column;align-items:flex-start;padding:16px;border-radius:12px}.link-panel strong{color:var(--text)}.link-panel a,.link-panel button{color:var(--accent);font-size:1rem}.link-panel #cancel-account{font-size:1rem}.yandex-login{display:flex;gap:12px;align-items:center;justify-content:center;min-height:56px;padding:12px 16px;border-radius:12px;background:#fcdf3a;color:#141a20;font-size:1.125rem;font-weight:650;margin-bottom:12px}.yandex-login b{font-size:1.5rem}#registration-status{margin-top:12px}
@media(max-width:600px){.chat-header{min-height:66px;padding-left:8px;padding-right:8px;gap:8px}.chat-brand{font-size:1.125rem}.chat-scroll{padding:24px 18px;scroll-padding:18px}.composer-wrap,body.has-chat .composer-wrap{padding:8px 12px max(10px,env(safe-area-inset-bottom))}.composer{padding:12px 8px 8px;border-radius:20px}.bubble.user{max-width:92%;padding:12px 16px}.welcome{gap:16px}.welcome-mascot{height:72px;width:72px}dialog{padding:18px;max-height:calc(100dvh - 20px)}.dialog-head{top:-18px}dialog h2{font-size:1.375rem}.attach-actions{gap:4px}}
@media(max-height:500px){.chat-header{min-height:54px;padding-top:2px;padding-bottom:2px}.welcome{gap:8px}.welcome-mascot{display:none}.composer-wrap,body.has-chat .composer-wrap{padding-top:4px;padding-bottom:4px}.composer-actions{margin-top:4px}.chat-scroll{padding-top:12px;padding-bottom:12px}.composer{padding-top:8px}textarea#message{max-height:90px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}

.welcome-links{display:flex;gap:10px 20px;flex-wrap:wrap;justify-content:center;font-size:.875rem;line-height:1.5}.welcome-links a{color:var(--muted);text-underline-offset:4px}.welcome-links a:focus-visible{outline:2px solid currentColor;outline-offset:4px}

/* Selected car scanner identity. */
.chat-brand{display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.chat-brand img{width:40px;height:40px;flex:none;object-fit:contain;border-radius:8px}.chat-brand span{white-space:nowrap}@media(max-width:360px){.chat-brand{font-size:.95rem;gap:5px}.chat-brand img{width:32px;height:32px}}

/* Hold the logo without starting an image drag or native touch callout. */
.chat-brand{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.admin-entry-dialog{width:min(380px,calc(100vw - 32px))}.admin-entry-link{display:block;padding:14px 16px;margin-top:12px;border:1px solid var(--border);border-radius:12px;color:var(--text);text-decoration:none;text-align:center}.admin-entry-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

/* DIAGNOST workspace: one primary task, shared navy / white / amber system. */
body{--page:#081321;--panel:#102235;--field:#102235;--text:#edf3fa;--muted:#b4c2d3;--border:#2d425a;--accent:#ffb020;--user:#172f47;--focus:#ffca65;font-size:16px;line-height:1.55;background:var(--page);font-feature-settings:'ss01' on}
body[data-theme=light]{--page:#f4f7fb;--panel:#fff;--field:#fff;--text:#10243a;--muted:#5b6c80;--border:#cbd5e1;--accent:#885300;--user:#e5edf6;--focus:#885300;color-scheme:light}
button{font-size:1rem}button,a,input,textarea,select{font-family:inherit}button,summary{min-height:44px}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.chat-header{padding-right:max(24px,env(safe-area-inset-right));padding-left:max(24px,env(safe-area-inset-left));border:0;min-height:76px;background:var(--page)}
.chat-brand{gap:10px;font-size:1.125rem;letter-spacing:.015em}.chat-brand b{color:var(--text)}.chat-brand img{width:40px;height:40px;border-radius:10px}.icon-button{width:44px;height:44px;min-width:44px;border:1px solid transparent;border-radius:12px}.icon-button:hover{border-color:var(--border);background:var(--panel)}.ui-icon{width:23px;height:23px;stroke-width:1.7}
.workspace-shortcuts{display:flex;justify-content:center;gap:6px;flex:none;padding:0 16px 14px;border-bottom:1px solid var(--border)}.workspace-shortcuts button{display:flex;align-items:center;justify-content:center;gap:9px;padding:8px 18px;color:var(--muted);border:1px solid transparent;border-radius:10px;font-size:.9375rem}.workspace-shortcuts button:hover{color:var(--text);background:var(--panel);border-color:var(--border)}.workspace-shortcuts .ui-icon{width:19px;height:19px}
main.chat-panel,body.has-chat main.chat-panel{max-width:940px}.chat-scroll{padding:28px 36px;scroll-padding:28px}.welcome{max-width:800px;min-height:100%;justify-content:center;align-items:flex-start;text-align:left;gap:18px;padding:28px 0}.welcome-eyebrow{font-size:.6875rem;letter-spacing:.15em;font-weight:700;line-height:1.6;color:var(--accent)}.welcome h1{max-width:650px;font-size:clamp(2rem,4vw,2.9rem);line-height:1.13;letter-spacing:-.04em;font-weight:650}.welcome p{font-size:1.0625rem;line-height:1.65;max-width:620px}.welcome-mascot{display:none}
.start-scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;margin:10px 0 0}.start-scenarios button{position:relative;display:grid;grid-template-columns:1fr;align-content:start;gap:7px;min-height:172px;padding:20px;text-align:left;background:var(--panel);border:1px solid var(--border);border-radius:16px;transition:background-color .15s,border-color .15s}.start-scenarios button:hover{background:var(--user);border-color:var(--accent)}.scenario-icon{display:grid;place-items:center;width:34px;height:34px;margin-bottom:9px;color:var(--accent)}.start-scenarios strong{font-size:1rem;font-weight:600;line-height:1.35;color:var(--text)}.start-scenarios small{font-size:.8125rem;line-height:1.5;color:var(--muted)}.scenario-arrow{position:absolute;right:16px;top:19px;font-size:1.125rem;color:var(--muted)}
.welcome-access{display:flex;align-items:center;gap:22px;width:100%;padding:16px 0 0}.welcome .welcome-access p{font-size:.8125rem;line-height:1.55;max-width:530px}.welcome-access button{flex:none;padding:10px 14px;border-radius:10px;border:1px solid var(--border);font-size:.875rem;color:var(--text);background:var(--panel)}.welcome-links{justify-content:flex-start;gap:20px;margin:0;font-size:.8125rem}.welcome-links a{min-height:44px;display:flex;align-items:center;color:var(--muted)}
.messages{gap:32px}.bubble{line-height:1.7}.bubble.user{padding:13px 18px;border-radius:18px 18px 5px 18px;background:var(--user)}.bubble.assistant{padding:0}.bubble a{color:var(--accent)}.choices{gap:8px}.choices button,.choices a{font-size:.9375rem;min-height:44px;border-radius:10px;padding:10px 14px;background:var(--panel)}.choices button:hover,.choices a:hover{border-color:var(--accent)}.message-actions summary{font-size:.875rem}.history-entry{font-size:1rem;line-height:1.6}
.composer-wrap,body.has-chat .composer-wrap{padding:12px 36px max(12px,env(safe-area-inset-bottom));background:var(--page)}.composer{padding:16px 14px 10px;border-radius:20px;border:1px solid var(--border);background:var(--field);box-shadow:0 12px 32px #0000000a}.composer:focus-within{border-color:var(--focus);box-shadow:0 0 0 1px var(--focus)}textarea#message{padding:0 4px;min-height:34px}.composer-actions{margin-top:8px}.attach-actions{gap:4px}.attach-actions button,.attach-actions #camera{width:44px;height:44px;min-width:44px;border-radius:10px;color:var(--muted)}.attach-actions button:hover{color:var(--text)}.attach-actions .ui-icon{width:23px;height:23px}#send,body[data-theme=light] #send{width:44px;height:44px;min-width:44px;border-radius:12px;background:#ffb020;color:#10243a}#send:disabled,body[data-theme=light] #send:disabled{background:var(--border);color:var(--muted);opacity:.7}.file-preview{border-radius:12px}.file-info span{font-size:.9375rem}.file-info small{font-size:.8125rem}.connection{font-size:.875rem;padding:4px 0;margin-bottom:8px}.connection button{min-height:44px}.service-notice{margin:4px 0 0;border:0;font-size:.8125rem;color:var(--muted)}.service-notice summary{display:flex;align-items:center;justify-content:center;font-size:.75rem;padding:6px 0;color:var(--muted);min-height:44px;cursor:pointer}.service-notice p{font-size:.8125rem;line-height:1.6}.notice{border-radius:12px;font-size:.875rem}.mode{border-radius:12px;font-size:.875rem}.mode button{font-size:.875rem}
/* Quiet waiting state; preserve all source assets, runtime IDs and motion guards. */
.thinking{min-height:76px;margin:22px 0 4px;padding:12px 16px;gap:12px;border:1px solid var(--border);border-radius:14px;background:var(--panel);font-size:1rem}.thinking-mascot{width:44px;height:44px;flex:0 0 44px}.thinking-mascot img{width:44px;height:44px;animation:none;filter:none}.mascot-halo,.mascot-orbit,.mascot-spark,.mascot-energy,.mascot-fire{display:none}.thinking #thinking-label{font-size:.9375rem;font-weight:600}.thinking #thinking-hint{font-size:.8125rem;margin-top:2px}.thinking-signal{height:10px;margin-top:7px;gap:4px}.thinking-signal i{width:3px;background:var(--accent)}#stop-generation{font-size:.8125rem;border:1px solid var(--border);border-radius:8px;min-height:44px;padding:6px 10px;margin-top:10px;color:var(--text)}
/* Secondary work lives in focused panels, never in a second chat workspace. */
dialog{width:min(680px,calc(100% - 40px));max-height:calc(100dvh - 64px);padding:28px;border:1px solid var(--border);border-radius:24px;background:var(--page);box-shadow:0 24px 100px #0007;font-size:1rem}dialog::backdrop{background:#020912b3;backdrop-filter:blur(4px)}.dialog-head{top:-28px;padding:8px 0 16px;margin:0 0 18px;gap:16px;background:var(--page);border-bottom:1px solid var(--border)}.dialog-head h2,dialog h2{font-size:1.375rem;line-height:1.25;letter-spacing:-.025em;font-weight:650}.dialog-head>button{width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:1px solid var(--border);border-radius:12px;font-size:1.5rem;background:var(--panel)}dialog p,dialog .access-intro,dialog .access-fineprint{font-size:.9375rem!important;line-height:1.65}dialog h3{font-size:1.0625rem;letter-spacing:-.01em;margin-top:0}.navigation-dialog{width:min(400px,calc(100% - 40px));margin:20px auto auto 20px}.navigation-dialog .dialog-head h2{font-size:1.1875rem}.main-menu{gap:5px}.main-menu button{min-height:48px;padding:11px 14px;background:transparent;border:1px solid transparent;border-radius:10px;font-size:1rem}.main-menu button:hover{background:var(--panel);border-color:var(--border)}.main-menu .menu-primary{background:#ffb020;color:#10243a;font-weight:650;margin-bottom:10px;gap:10px}.main-menu .menu-primary:hover{background:#ffc04b;border-color:transparent}.menu-more{margin-top:16px;padding-top:10px}.menu-more summary,.account-extra summary,.account-section summary{font-size:.9375rem;font-weight:550;padding:12px 0;cursor:pointer;line-height:1.5}.menu-more a{min-height:44px;padding:8px 12px;font-size:.875rem;color:var(--muted)}
.history-list{gap:10px}.history-list button{padding:16px;background:var(--panel);border:1px solid var(--border);border-radius:14px;font-size:1rem;min-height:56px}.history-list button:hover{border-color:var(--accent)}.history-list .conversation-card.active{border-color:var(--accent)}.conversation-card-meta{font-size:.75rem;color:var(--accent);margin-top:7px}.conversation-card-preview{font-size:.8125rem;color:var(--muted);line-height:1.55;margin-top:5px}.history-conversation-note{margin:0 0 16px}.history-entry{padding:14px;border-radius:12px;border:1px solid var(--border);background:var(--panel);white-space:pre-wrap}.history-entry.user{background:var(--user)}.history-back{width:max-content}.reading-settings{gap:10px;margin-top:0}.reading-settings label{font-size:.9375rem;font-weight:550}.reading-settings select,dialog select{font-size:1rem;min-height:48px;border-radius:10px;background:var(--panel)}.settings-account{font-size:1rem;min-height:48px;border-radius:12px}.account-extra,.account-section{border-top:1px solid var(--border);padding-top:0;margin-top:16px}.account-extra>button{font-size:.9375rem;min-height:44px}.account-extra p{margin:10px 0}.account-extra summary::marker,.account-section summary::marker{color:var(--muted)}
#access-dialog{width:min(840px,calc(100% - 40px))}.account-dashboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.account-dashboard article{padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--panel);min-width:0}.account-dashboard article>span{font-size:.75rem;color:var(--muted)}.account-dashboard strong{display:block;font-size:1.375rem;line-height:1.25;font-weight:600;margin:8px 0;letter-spacing:-.025em;color:var(--text)}.account-dashboard small{font-size:.75rem;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}.cabinet-summary{display:grid;grid-template-columns:1fr;gap:10px;padding:0;border:0;background:transparent}.cabinet-summary article{padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.cabinet-summary strong{font-size:1rem}.cabinet-summary span,.cabinet-summary small{font-size:.8125rem;color:var(--muted)}.auth-options{margin:18px 0}.yandex-login{font-size:.9375rem;min-height:48px;border-radius:12px;padding:12px 16px}.identity-panel,.link-panel,.reward-panel,.workshop-panel,.profile-panel,.plan{border:1px solid var(--border);border-radius:14px;padding:18px;background:var(--panel);margin-top:16px}.identity-panel{gap:12px}.identity-panel h3{margin-bottom:8px}.identity-panel p{margin:0}.identity-panel>button{width:100%;background:#ffb020;color:#10243a;border-color:transparent}.primary-button,.identity-panel button,.plan button,.plan a,.profile-options button{min-height:44px;font-size:.9375rem;border-radius:10px}.profile-options button[aria-pressed=true]{border-color:var(--accent);background:var(--user)}.reward-panel>span{display:none}.reward-panel p{font-size:.875rem!important}.reward-panel button,.workshop-panel button{font-size:.875rem;padding:8px 0}.vehicle-section{margin:18px 0}.vehicle-list{display:grid;gap:10px}.vehicle-card{padding:16px;background:var(--panel);border:1px solid var(--border);border-radius:14px}.vehicle-card button{border:1px solid var(--border);border-radius:10px;min-height:44px;padding:10px 14px}.plan-grid{gap:12px}.plan.featured{border-color:var(--accent)}.admin-entry-dialog{width:min(380px,calc(100% - 32px))}
@media(min-width:1100px){.chat-header{padding-left:40px;padding-right:40px}.workspace-shortcuts{gap:14px}.chat-scroll{padding-top:32px;padding-bottom:32px}}
@media(max-width:640px){.chat-header{min-height:64px;padding-left:12px;padding-right:12px;gap:8px}.chat-brand{font-size:1.0625rem;gap:8px}.chat-brand img{width:36px;height:36px}.workspace-shortcuts{padding:0 12px 10px;gap:4px}.workspace-shortcuts button{flex:1;gap:7px;padding:7px 8px;font-size:.8125rem;min-height:44px}.workspace-shortcuts .ui-icon{width:17px;height:17px}.chat-scroll{padding:20px 20px;scroll-padding:20px}.welcome{padding:14px 0;gap:16px;min-height:100%;justify-content:flex-start}.welcome h1{font-size:2rem;max-width:360px}.welcome p{font-size:1rem;line-height:1.6}.welcome-eyebrow{font-size:.625rem;letter-spacing:.12em}.start-scenarios{grid-template-columns:1fr;gap:8px;margin:2px 0}.start-scenarios button{grid-template-columns:32px 1fr;gap:2px 12px;min-height:76px;padding:14px 40px 14px 14px;border-radius:14px;align-content:center}.scenario-icon{grid-row:1/3;align-self:center;margin:0;width:32px;height:32px}.start-scenarios strong{font-size:.9375rem}.start-scenarios small{font-size:.75rem}.scenario-arrow{right:15px;top:24px}.welcome-access{flex-direction:column;align-items:flex-start;gap:8px;padding-top:0}.welcome .welcome-access p{font-size:.75rem}.welcome-access button{font-size:.8125rem;min-height:44px;padding:8px 12px}.welcome-links{font-size:.75rem;gap:18px}.composer-wrap,body.has-chat .composer-wrap{padding:8px 14px max(8px,env(safe-area-inset-bottom))}.composer{border-radius:18px;padding:13px 10px 8px}.composer-actions{margin-top:5px}.messages{gap:26px}.bubble.user{max-width:94%;padding:12px 15px}.thinking{min-height:72px;padding:10px 12px;gap:10px}.thinking-mascot{width:40px;height:40px;flex-basis:40px}.thinking-mascot img{width:40px;height:40px}.service-notice summary{font-size:.6875rem;min-height:44px}dialog,.navigation-dialog,#access-dialog,.admin-entry-dialog{width:100%;max-width:100%;max-height:88dvh;max-height:calc(100dvh - 36px);margin:auto 0 0;border-radius:24px 24px 0 0;border-bottom:0;padding:20px 20px max(24px,env(safe-area-inset-bottom))}.dialog-head{top:-20px;padding-top:6px;margin-bottom:18px}.dialog-head h2,dialog h2{font-size:1.25rem}.dialog-head::before{content:'';position:absolute;top:-10px;left:calc(50% - 18px);width:36px;height:4px;border-radius:4px;background:var(--border)}.account-dashboard{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.account-dashboard article{padding:14px}.account-dashboard strong{font-size:1.25rem}.account-dashboard small{font-size:.6875rem}.profile-panel,.identity-panel,.reward-panel,.workshop-panel{padding:16px}.main-menu button{min-height:48px}html[data-app-display=telegram] dialog{margin-top:auto!important;margin-bottom:0}}
@media(max-width:360px){.chat-brand{font-size:.9375rem;gap:6px}.chat-brand img{width:32px;height:32px}.chat-scroll{padding-left:16px;padding-right:16px}.welcome h1{font-size:1.8rem}.workspace-shortcuts button{gap:5px;padding-left:5px;padding-right:5px}.workspace-shortcuts .ui-icon{display:none}.account-dashboard strong{font-size:1.125rem}}
@media(max-height:520px){.welcome{padding:12px 0}.chat-header{min-height:52px;padding-top:4px;padding-bottom:4px}.workspace-shortcuts{padding-bottom:4px}.workspace-shortcuts button{min-height:44px}.composer-wrap,body.has-chat .composer-wrap{padding-top:4px;padding-bottom:4px}.service-notice{display:none}.chat-scroll{padding-top:12px;padding-bottom:12px}textarea#message{max-height:90px}.welcome h1{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){.start-scenarios button,.thinking *{transition:none!important;animation:none!important}}
/* Reset legacy component colors that otherwise leak into the dark account. */
#access-promo{margin:0;max-width:530px}.message-tools button,.file-chip,.file-chip button{background:var(--panel);border-color:var(--border);color:var(--muted);font-size:.8125rem}.message-tools button{min-height:44px}.file-chip button{min-width:44px;min-height:44px}.composer[data-drag=true]{border-color:var(--accent);background:var(--user)}.conversation-card,.conversation-card.active,.history-back,.history-conversation-title{color:var(--text)}.conversation-card.active{background:var(--user)}.conversation-card.active .conversation-card-meta{color:var(--accent)}.history-entry.assistant{background:var(--panel);border-color:var(--border);margin-right:0}.history-resume{background:#ffb020!important;color:#10243a!important;font-weight:600}.vehicle-section{background:var(--panel);border-color:var(--border);padding:16px}.vehicle-card strong{color:var(--text);font-size:.9375rem}.vehicle-card small,.section-heading span{color:var(--muted);font-size:.8125rem}.account-dashboard article>strong{color:var(--text)}.account-dashboard article>small{color:var(--muted);font-size:.75rem}.account-dashboard article>span{letter-spacing:0;text-transform:none}.cabinet-summary article[data-ready=false]{background:var(--panel);border-color:var(--accent)}.plan li:before{color:var(--accent)}.profile-panel select{background:var(--panel);color:var(--text);border-color:var(--border)}#access-notice{color:var(--accent)}.stop-generation{background:var(--panel)}

#vk-login,#ok-login,#mail-login{background:var(--panel);border:1px solid var(--border);color:var(--text)}

/* Capabilities must follow both themes, including the modal's inherited text color. */
.capability-card,.capabilities-options button{background:var(--panel);color:var(--text);border-color:var(--border);box-shadow:none}
.capability-card strong{color:var(--text)}
.capability-card small,.capabilities-caveat{color:var(--muted)}
.capability-card:hover,.capabilities-options button:hover{background:var(--user);border-color:var(--accent)}
.capability-card:focus-visible,.capabilities-options button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.capabilities-dialog{background:var(--page);color:var(--text);border-color:var(--border)}

/* Conversation first: secondary controls stay in the existing accessible menu. */
.workspace-shortcuts,.welcome-eyebrow,.welcome-access,.welcome-links,.start-scenarios{display:none!important}
body{--chat-font:1.0625rem}
body[data-text-size=normal]{--chat-font:1rem}
body[data-text-size=extra]{--chat-font:1.375rem}
.chat-header{min-height:60px;padding-top:max(4px,env(safe-area-inset-top));padding-bottom:4px}
.chat-brand{font-size:1rem;letter-spacing:0}.chat-brand img{width:28px;height:28px}
.welcome{align-items:center;justify-content:center;text-align:center;padding:20px 0;gap:12px}
.welcome h1{font-size:clamp(1.5rem,4vw,2rem);letter-spacing:-.025em}
.welcome #welcome-description{display:none}
.chat-scroll{padding:20px 24px}.messages{gap:24px}.bubble{line-height:1.65}
.composer-wrap,body.has-chat .composer-wrap{padding:8px 20px max(8px,env(safe-area-inset-bottom))}
.composer{border-radius:24px;padding:12px 10px 8px;box-shadow:none}
textarea#message{font-size:var(--chat-font);min-height:28px;max-height:140px;line-height:1.5}
.composer-actions{margin-top:4px}#send{border-radius:50%}
.capability-strip{padding:0 0 8px;gap:8px}
.capability-card{flex:0 0 auto;min-height:44px;padding:8px 14px;border-radius:999px}
.capability-card strong{font-size:.8125rem;font-weight:500}.capability-card small{display:none}
.context-selector{display:block;padding:0;margin:0 0 6px;border:0;position:relative}
.context-selector>summary{display:flex;align-items:center;gap:8px;cursor:pointer;width:fit-content;max-width:100%;min-height:44px;padding:5px 12px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.8125rem;overflow-wrap:anywhere;list-style:none}
.context-selector>summary::-webkit-details-marker{display:none}
.context-selector>summary:after{content:'⌄';margin-left:4px}.context-selector[open]>summary:after{content:'⌃'}
.context-options{display:flex;gap:6px;flex-wrap:wrap;padding:10px;margin-top:6px;border:1px solid var(--border);border-radius:16px;background:var(--panel);max-height:25dvh;overflow:auto}
.context-selector-label{display:none}
.context-selector button{min-height:44px;color:var(--text);border-color:var(--border);font-size:.8125rem}
.context-selector button[aria-pressed=true]{background:var(--user);color:var(--text);border-color:var(--accent)}
#context-vehicle{width:100%;min-height:44px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--field);color:var(--text);font-size:1rem}
.context-indicator{font-size:.75rem;color:var(--muted);padding:0 10px 6px}.context-indicator:empty{display:none}
.service-notice summary{font-size:.6875rem;min-height:32px;padding:4px 0}
@media(max-width:640px){.chat-header{padding-left:8px;padding-right:8px}.chat-scroll{padding:16px}.composer-wrap,body.has-chat .composer-wrap{padding-left:10px;padding-right:10px}.welcome{justify-content:center}.welcome h1{font-size:1.625rem}.capability-card{flex-basis:auto;min-height:44px;padding:8px 12px}}
@media(max-height:520px){body:not(.has-chat) .capability-strip{display:none!important}.chat-header{min-height:48px}.welcome{padding:8px 0}.welcome h1{font-size:1.25rem}.composer-wrap{padding-top:4px}}
