@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;450;500;550;600;650;700;750;800&display=swap');
:root{color-scheme:light;--bg:#f6f7f9;--surface:#fff;--text:#22292d;--muted:#717b80;--line:#e8ecee;--soft:#f3f5f6;--accent-shadow:#087d6022;--accent:#087d60;--accent-hover:#05664e;--tint:#edf7f3;--tint-line:#dceee5;--accent-text:#116f55;--shadow:0 8px 30px #122d2110;--panel-shadow:0 2px 5px #122d2103}
:root[data-theme=dark]{color-scheme:dark;--bg:#111516;--surface:#1b2022;--text:#edf2f1;--muted:#9ba7aa;--line:#30383a;--soft:#252c2e;--accent-shadow:#65dfb218;--accent:#65dfb2;--accent-hover:#8cecc8;--tint:#1b302b;--tint-line:#28473b;--accent-text:#98e4c4;--shadow:0 8px 30px #0003;--panel-shadow:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button{border:0}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-library{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}.shell{max-width:1184px;padding:0 48px;margin:auto}.header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;text-decoration:none;color:var(--text);font-size:30px;letter-spacing:-1.5px;font-weight:800}.brand-icon{height:35px;width:35px;background:var(--accent);color:var(--surface);display:grid;place-items:center;margin-right:10px;border-radius:11px}.brand-icon svg{width:23px;height:23px;stroke-width:2.5}.header-right{display:flex;align-items:center;gap:28px}.header-caption{font-size:14px;color:var(--muted)}.icon-button{width:44px;height:44px;display:inline-grid;place-items:center;background:transparent;border-radius:50%;flex-shrink:0}.icon-button:hover{background:var(--soft)}.theme-button{background:var(--surface);border:1px solid var(--line)}main{padding:48px 0 32px}h1{font-size:34px;letter-spacing:-1.3px;font-weight:650;line-height:1.2;margin:0}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 328px;gap:24px;align-items:start}.conversation{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:25px 28px 20px;min-height:540px;box-shadow:var(--panel-shadow);display:flex;flex-direction:column}.conversation-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.quiet-button{background:transparent;color:var(--muted);display:flex;align-items:center;gap:7px;font-size:13px;padding:10px 0 10px 10px}.quiet-button svg{width:16px;height:16px}.quiet-button:hover{color:var(--text)}.session-label{display:flex;align-items:center;gap:14px;margin:10px 0 18px}.session-label span{height:1px;background:var(--line);flex:1}.session-label p{font-size:12px;color:var(--muted);margin:6px 0}.messages{display:flex;flex-direction:column;gap:16px}.message{background:var(--soft);border:1px solid transparent;border-radius:18px;padding:18px 20px}.message.ru{background:var(--tint);border-color:var(--tint-line)}.message-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.speaker{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--muted);font-weight:600}.speaker-code{color:var(--accent-text);background:var(--surface);font-size:10px;letter-spacing:.5px;border:1px solid var(--tint-line);border-radius:5px;padding:3px 5px}.vi .speaker-code{color:var(--muted);border-color:var(--line)}.message-top time{font-size:12px;color:var(--muted)}.message-copy{display:block;text-align:left;padding:0;background:transparent;width:100%;border-radius:4px}.original{font-size:15px;color:var(--muted);margin:0 0 10px;line-height:1.5}.translation{font-size:21px;font-weight:550;line-height:1.5;margin:0;letter-spacing:-.35px}.message-actions{display:flex;align-items:center;justify-content:space-between;margin-top:14px;min-height:28px}.translated-label{font-size:12px;color:var(--muted)}.message-tools{display:flex;gap:6px}.message-tools button{height:30px;width:32px;border-radius:8px;display:grid;place-items:center;background:transparent;color:var(--muted)}.message-tools button:hover{background:var(--surface);color:var(--accent)}.message-tools svg{width:17px;height:17px}.conversation-bottom{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:auto;padding-top:24px;font-size:12px;color:var(--muted)}.conversation-bottom svg{width:15px;height:15px}.control-panel{border:1px solid var(--line);background:var(--surface);border-radius:24px;padding:18px;box-shadow:var(--panel-shadow)}.mode-tabs{display:flex;padding:4px;border-radius:12px;background:var(--soft);gap:3px}.mode-tabs button{background:transparent;color:var(--muted);border-radius:9px;flex:1;min-height:42px;padding:8px 7px;font-size:13px;display:flex;align-items:center;justify-content:center;gap:5px;font-weight:600}.mode-tabs button svg{width:15px;height:15px}.mode-tabs button[aria-selected=true]{background:var(--surface);color:var(--text);box-shadow:0 2px 6px #0000000b}.language-picker{margin-top:24px}.language-picker button{display:flex;align-items:center;gap:10px;background:transparent;width:100%;padding:13px 12px;border:1px solid var(--line);border-radius:12px;font-size:14px}.language-picker button svg{margin-left:auto;width:18px;height:18px;color:var(--muted)}.language-code{font-size:11px;font-weight:700;color:var(--accent-text);background:var(--tint);padding:5px 6px;border-radius:6px}.target-language{font-size:11px;color:var(--muted);font-weight:650;padding:5px}.auto-languages{display:flex;align-items:center;justify-content:center;gap:20px;font-size:14px;height:53px;margin-top:24px}.auto-languages svg{color:var(--muted);width:18px;height:18px}.recording-area{text-align:center;padding:32px 0 21px;position:relative}.mic-halo{height:128px;width:128px;margin:0 auto 24px;border:1px solid var(--tint-line);border-radius:50%;display:grid;place-items:center;background:var(--tint)}.mic-button{width:96px;height:96px;background:var(--accent);color:var(--surface);border-radius:50%;display:grid;place-items:center;box-shadow:0 5px 14px var(--accent-shadow);transition:transform .2s,background .2s}.mic-button:hover{background:var(--accent-hover);transform:scale(1.04)}.mic-button svg{width:33px;height:33px;stroke-width:1.6}.record-label{font-weight:650;font-size:17px;letter-spacing:-.4px}.recording-area p{color:var(--muted);font-size:14px;line-height:1.7;margin:8px 0 0}.stop-square{width:23px;height:23px;background:currentColor;border-radius:5px}.recording .mic-halo{animation:breathe 2s ease-in-out infinite}.recording .record-label{color:var(--accent-text)}.type-button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:46px;background:var(--soft);border-radius:11px;width:100%;font-size:14px;font-weight:550}.type-button:hover{background:var(--line)}.type-button svg{width:18px;height:18px}.mode-footnote{border-top:1px solid var(--line);padding-top:17px;margin-top:20px;display:flex;align-items:flex-start;gap:8px;color:var(--muted);font-size:12px;line-height:1.6}.small-ring{width:11px;height:11px;border:1.5px solid var(--muted);border-radius:50%;flex-shrink:0;margin-top:4px}.below-workspace{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted);padding:5px 0}.below-workspace p{display:flex;align-items:center;gap:7px}.below-workspace svg{width:14px;height:14px}.demo-notice{font-size:12px;color:var(--muted);margin:18px 0 0;text-align:center}footer{padding:25px 0;display:flex;justify-content:space-between;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}dialog{border:1px solid var(--line);border-radius:22px;padding:28px;background:var(--surface);color:var(--text);max-width:520px;width:calc(100% - 32px);box-shadow:var(--shadow)}dialog::backdrop{background:#09161466;backdrop-filter:blur(4px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px}h2{font-size:22px;letter-spacing:-.7px;margin:0}.dialog-description{color:var(--muted);font-size:14px;margin:12px 0 24px}label{display:block;color:var(--muted);font-size:13px;margin:18px 0 8px}textarea{width:100%;resize:vertical;border:1px solid var(--line);border-radius:12px;background:var(--soft);color:var(--text);padding:13px 14px;min-height:110px;font-size:16px;line-height:1.6}textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.editor-notice{font-size:12px;color:var(--muted)}.dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.primary-button,.secondary-button{padding:12px 20px;border-radius:11px;font-size:14px;font-weight:600}.primary-button{background:var(--accent);color:var(--surface)}.secondary-button{background:var(--soft);color:var(--text)}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,10px);opacity:0;pointer-events:none;padding:14px 20px;background:var(--text);color:var(--surface);border-radius:13px;box-shadow:var(--shadow);max-width:calc(100% - 32px);width:max-content;font-size:14px;transition:.2s;z-index:10}.toast.visible{opacity:1;transform:translate(-50%,0)}.empty-state{text-align:center;margin:auto;padding:50px 10px 65px}.empty-icon{color:var(--accent);background:var(--tint);height:64px;width:64px;border-radius:20px;margin:0 auto 20px;display:grid;place-items:center}.empty-icon svg{height:28px;width:28px}.empty-state h2{font-size:21px}.empty-state p{font-size:14px;color:var(--muted);line-height:1.7}.empty-state button{background:none;color:var(--accent);font-size:14px;text-decoration:underline;text-underline-offset:4px;padding:10px}.record-wave{height:18px;display:flex;gap:3px;align-items:center;justify-content:center;margin-top:12px}.record-wave span{width:3px;border-radius:3px;background:var(--accent);animation:wave .8s alternate infinite}.pending{font-size:16px;color:var(--muted);font-weight:400}@keyframes breathe{50%{box-shadow:0 0 0 8px var(--tint)}}@keyframes wave{to{height:4px}}
@media(min-width:1500px){.shell{padding-top:25px}main{padding-top:58px}.conversation{min-height:575px}}
@media(max-width:900px){.shell{padding:0 24px}.workspace{grid-template-columns:minmax(0,1fr) 290px;gap:16px}.conversation{padding:20px}.header-caption{display:none}h1{font-size:30px}.translation{font-size:19px}}
@media(max-width:680px){.shell{padding:0 20px}.header{height:79px;border-bottom:0}.brand{font-size:27px}.brand-icon{height:31px;width:31px;border-radius:10px}.theme-button{height:40px;width:40px}main{padding:15px 0 280px}h1{font-size:27px;letter-spacing:-1px}.workspace{display:flex;flex-direction:column;gap:0}.conversation{padding:0;background:transparent;border:0;min-height:380px;width:100%;box-shadow:none}.conversation-toolbar{padding:0 0 3px}.quiet-button{font-size:12px}.session-label{margin:4px 0 12px}.session-label p{font-size:11px}.message{border-radius:17px;padding:16px 17px}.message.vi{background:var(--surface);border-color:var(--line)}.messages{gap:12px}.message-top{margin-bottom:9px}.original{font-size:14px;margin-bottom:8px}.translation{font-size:19px;line-height:1.45}.message-actions{margin-top:10px}.conversation-bottom{padding-top:19px;font-size:11px}.control-panel{position:fixed;bottom:0;left:0;right:0;border-radius:24px 24px 0 0;border-bottom:0;padding:14px 20px max(14px,env(safe-area-inset-bottom));z-index:5;box-shadow:0 -8px 35px #122d2109}.mode-tabs{max-width:390px;margin:auto}.mode-tabs button{min-height:36px;font-size:13px}.mode-tabs button svg{width:15px;height:15px}#mode-panel{max-width:440px;position:relative;margin:auto;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:0 16px}.language-picker,.auto-languages{grid-column:1/-1;margin:12px auto 0}.language-picker button{border:0;padding:0;min-height:28px;gap:10px;font-size:13px}.language-code{font-size:10px;padding:3px 5px}.target-language{padding:3px}.language-picker button svg{margin:0 4px}.auto-languages{height:28px;font-size:13px;gap:12px}.recording-area{grid-column:1/-1;padding:10px 0 0;min-height:104px}.mic-halo{height:70px;width:70px;margin:0 auto 6px;border:0;background:none}.mic-button{width:65px;height:65px}.mic-button svg{width:25px;height:25px}.record-label{font-size:12px;font-weight:600}.recording-area p{display:none}.type-button{position:absolute;right:22px;bottom:33px;width:44px;height:44px;min-height:44px;border-radius:50%;font-size:0;gap:0}.type-button svg{width:22px;height:22px}.mode-footnote{display:none}.below-workspace{display:none}.demo-notice{font-size:11px;text-align:center;margin:20px auto 0;max-width:290px;line-height:1.65}footer{display:none}.toast{bottom:265px;font-size:13px;max-width:calc(100% - 40px)}dialog{padding:22px;max-height:calc(100dvh - 36px);overflow:auto}h2{font-size:21px}.record-wave{position:absolute;left:28px;bottom:45px;margin:0}.empty-state{padding:55px 15px}.speaker{font-size:11px}.message-top time{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* Compact bilingual wordmark and conversation toolbar. */
.brand{font-size:28px;letter-spacing:-1px;font-weight:750;white-space:nowrap}.brand-icon svg{stroke-width:1.65}.conversation-languages{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:14px;font-weight:550}.conversation-languages>span{font-size:15px;color:var(--muted)}
@media(max-width:680px){.brand{font-size:24px;letter-spacing:-.8px}.conversation-languages{font-size:13px;gap:7px}}

/* Accent choice is independent of light/dark appearance. */
:root[data-accent=blue]{--accent:#2861c4;--accent-hover:#1d4eaa;--tint:#edf3fd;--tint-line:#dbe6fa;--accent-text:#2756a3;--accent-shadow:#2861c422}
:root[data-accent=rose]{--accent:#bc426e;--accent-hover:#a5315d;--tint:#fcf0f5;--tint-line:#f2dce5;--accent-text:#a7345e;--accent-shadow:#bc426e22}
:root[data-theme=dark][data-accent=blue]{--accent:#8bb7ff;--accent-hover:#afcfff;--tint:#1c2a40;--tint-line:#2b4160;--accent-text:#b2d0ff;--accent-shadow:#8bb7ff18}
:root[data-theme=dark][data-accent=rose]{--accent:#f49bbb;--accent-hover:#ffc0d6;--tint:#36232d;--tint-line:#563548;--accent-text:#f7bbd1;--accent-shadow:#f49bbb18}
.header-right{gap:10px}.header-caption{margin-right:14px}.menu-button{border:1px solid var(--line);background:var(--surface)}
.settings-dialog{margin:20px 20px 20px auto;width:350px;max-width:calc(100% - 32px);max-height:calc(100dvh - 40px);overflow:auto;padding:26px;border-radius:22px}
.settings-dialog .dialog-description{margin:6px 0 26px}.accent-options{border:0;padding:0;margin:0;min-width:0}.accent-options legend{font-size:14px;color:var(--muted);margin-bottom:12px}
.accent-option{display:flex;position:relative;align-items:center;gap:12px;margin:0 0 10px;padding:15px 12px;border:1px solid var(--line);border-radius:14px;cursor:pointer;background:var(--surface);color:var(--text)}
.accent-option:has(input:checked){border-color:var(--accent);background:var(--tint)}.accent-option:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:3px}
.accent-option input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.accent-swatch{height:30px;width:30px;border-radius:50%;flex-shrink:0;box-shadow:inset 0 0 0 1px #0000000a}.swatch-green{background:#087d60}.swatch-blue{background:#2861c4}.swatch-rose{background:#bc426e}
:root[data-theme=dark] .swatch-green{background:#65dfb2}:root[data-theme=dark] .swatch-blue{background:#8bb7ff}:root[data-theme=dark] .swatch-rose{background:#f49bbb}
.accent-copy{display:flex;flex-direction:column;gap:3px}.accent-copy strong{font-size:15px;font-weight:600}.accent-copy>span{font-size:12px;color:var(--muted)}.accent-check{margin-left:auto;color:var(--accent-text);font-size:18px;visibility:hidden}.accent-option:has(input:checked) .accent-check{visibility:visible}.settings-note{font-size:13px;line-height:1.7;color:var(--muted);margin:20px 0}.settings-done{width:100%;min-height:46px}
@media(max-width:680px){.header{gap:12px}.header-right{gap:6px}.header-caption{margin:0}.menu-button,.theme-button{height:40px;width:40px}.settings-dialog{margin:12px 12px auto auto;padding:22px;max-width:calc(100% - 24px);max-height:calc(100dvh - 24px)}}
@media(max-width:370px){.brand{font-size:21px}.brand-icon{margin-right:7px}.header-right{gap:4px}}
@supports (padding: max(0px)) {.shell{padding-top:env(safe-area-inset-top)}}
.install-help{border-top:1px solid var(--line);padding:17px 0 8px;margin-top:16px;font-size:14px}
.install-help summary{cursor:pointer;color:var(--text);font-weight:600;list-style:none}
.install-help summary::-webkit-details-marker{display:none}
.install-help summary::after{content:'+';float:right;color:var(--accent);font-size:19px;font-weight:400;line-height:1}
.install-help[open] summary::after{content:'−'}
.install-help ol{padding-left:23px;margin:14px 0 4px;color:var(--muted);font-size:13px;line-height:1.8}
.install-help li{margin:6px 0}
.api-settings{padding:18px 0 20px;border-bottom:1px solid var(--line);margin-bottom:20px}
.api-settings h3{font-size:17px;letter-spacing:-.3px;margin:0 0 4px}
.api-description{color:var(--muted);font-size:13px;line-height:1.6;margin:0 0 20px}
.api-preset{width:100%;min-height:44px;margin:0 0 8px;border-color:var(--accent);color:var(--accent-text);background:var(--tint)}
.api-settings label{margin:15px 0 7px;font-size:13px}
.api-settings input,.api-settings select{display:block;width:100%;min-width:0;height:44px;border:1px solid var(--line);border-radius:10px;background:var(--soft);color:var(--text);padding:0 12px;font-size:14px}
.api-settings input:focus,.api-settings select:focus{outline:2px solid var(--accent);outline-offset:1px}
.api-settings input::placeholder{color:var(--muted);opacity:.8}
.api-row{display:flex;align-items:center;gap:8px}.api-row select{flex:1}.api-row .secondary-button,.api-row .primary-button{height:44px;white-space:nowrap;padding:0 14px}
.api-actions{margin-top:18px}.api-actions button{flex:1}.api-status{min-height:40px;color:var(--muted);font-size:12px;line-height:1.55;margin:12px 0 0}.api-status.error{color:#ad3750}
.api-remove{background:transparent;color:var(--muted);text-decoration:underline;text-underline-offset:3px;padding:5px 0;font-size:13px}
.settings-dialog{width:390px}
@media(max-width:680px){.settings-dialog{width:calc(100% - 24px)}.api-actions{flex-wrap:wrap}.api-actions button{flex:1 0 130px}}
.api-settings{padding-top:10px}
.api-description{margin-bottom:10px}
.api-signin{display:block;color:var(--accent-text);font-size:13px;font-weight:650;padding:10px 0}
.api-personal{border:1px solid var(--line);border-radius:13px;background:var(--surface);margin-top:10px}
.api-personal>summary{list-style:none;cursor:pointer;padding:12px 14px;font-size:14px;font-weight:650}
.api-personal>summary::-webkit-details-marker,.api-advanced>summary::-webkit-details-marker{display:none}
.api-personal>summary::after,.api-advanced>summary::after{content:'+';float:right;color:var(--accent);font-size:18px;font-weight:400;line-height:1}
.api-personal[open]>summary::after,.api-advanced[open]>summary::after{content:'−'}
.api-personal-content{padding:0 14px 14px}
.api-personal-content>label:first-child{margin-top:4px}
.api-advanced{margin-top:14px;border-top:1px solid var(--line)}
.api-advanced>summary{list-style:none;cursor:pointer;color:var(--muted);font-size:13px;padding:12px 0 0}
.api-advanced label{margin-top:11px}
.api-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:15px}
.api-actions button{height:44px;min-width:0;padding:0 5px;font-size:12px;white-space:nowrap}
.api-settings input,.api-settings select{font-size:16px;min-height:44px}
.api-status{min-height:0;margin-top:9px}
.settings-dialog{max-height:calc(100dvh - 24px);overscroll-behavior:contain;padding-bottom:max(24px,env(safe-area-inset-bottom))}
@media(max-width:680px){.settings-dialog{margin:8px 8px auto auto;width:calc(100% - 16px);max-width:calc(100% - 16px);max-height:calc(100dvh - 16px);padding:20px 18px max(20px,env(safe-area-inset-bottom))}}
.voice-settings{padding:2px 0 17px;border-bottom:1px solid var(--line);margin-bottom:19px}
.voice-settings h3{font-size:17px;margin:0 0 5px;letter-spacing:-.3px}
.voice-settings>p,.privacy-help p{color:var(--muted);font-size:12px;line-height:1.6;margin:0 0 12px}
.voice-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin:13px 0}
.voice-row label{grid-column:1/-1;margin:0;color:var(--text);font-size:13px;font-weight:600}
.voice-row select{height:43px;min-width:0;width:100%;border:1px solid var(--line);background:var(--soft);color:var(--text);border-radius:10px;padding:0 8px;font-size:16px}
.voice-row button{min-width:92px;padding:0 10px;font-size:12px}
.voice-settings .voice-status{margin:10px 0 0;color:var(--muted)}
.privacy-help{padding:0 0 17px;border-bottom:1px solid var(--line);margin-bottom:19px;font-size:13px}
.privacy-help summary{cursor:pointer;font-weight:600}
.privacy-help p{margin:10px 0 0}
.auto-languages button{background:var(--tint);color:var(--accent-text);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600}
.api-usage{font-size:11px;line-height:1.5;color:var(--muted);margin:6px 0 0}
.api-url-note{font-size:11px;line-height:1.5;color:var(--muted);margin:8px 0 0}
