/* Neutral light/dark tokens shared by the application, login and administration. */
:root,[data-theme=light]{--bg:#fff;--sidebar:#f9f9f9;--surface:#fff;--soft:#f4f4f4;--hover:#ececec;--border:#e5e5e5;--text:#0d0d0d;--secondary:#666;--dim:#777;--button:#0d0d0d;--button-text:#fff;--selected:#eaeaea;--warning-bg:#fff6e5;--warning-text:#79551d;--danger:#b42318;--ink:var(--text);--muted:var(--secondary);--line:var(--border);--green:var(--text);--accent:var(--text);color-scheme:light}
[data-theme=dark]{--bg:#212121;--sidebar:#171717;--surface:#212121;--soft:#2f2f2f;--hover:#383838;--border:#424242;--text:#ececec;--secondary:#b4b4b4;--dim:#aaa;--button:#ececec;--button-text:#181818;--selected:#303030;--warning-bg:#3a3123;--warning-text:#ebc88c;--danger:#ff9b92;color-scheme:dark}
html,body,main,#main-content,.chat-view,.content-view,.auth,.auth-panel{background:var(--bg)!important;color:var(--text)!important}
.sidebar,.mobile-layout #shell .sidebar,.intro{background:var(--sidebar)!important;color:var(--text)!important;border-color:var(--border)!important}
header,#main-content header,.shell:has(#view-chat:not([hidden])) header,.mobile-layout #shell #main-content header{background:var(--bg)!important;color:var(--text)!important;border-color:var(--border)!important}
.brand,.sidebar .brand,.intro .brand,.intro h1,.auth-card h2,.welcome h1,h1,h2,h3,#view-title,.sidebar-bottom strong,.sidebar .nav,.sidebar .history button,.sidebar .new-chat,.message.assistant .message-label,.mobile-model-title,.mobile-layout #chat-form .mobile-model-title{color:var(--text)!important}
.logo,.brand .logo{background:var(--text)!important;color:var(--bg)!important;box-shadow:none!important}
.brand .cloud,.sidebar .cloud,.workspace-name,.sidebar .workspace-name,.sidebar-tools>summary,.sidebar .history-heading,.sidebar .history-empty,.history-search::placeholder,.muted,small,.fine,.composer-caption,.welcome>p,.page-heading p,.eyebrow,.page-heading .eyebrow,.metric p,.credit-balance>strong,.status,.composer textarea::placeholder,.auth-card .tag,.auth-card .fine,.intro p,.intro-footer,.sample-label,.sample-answer,.login-policy,.service-row span,.message-actions button,.message-sources,.response-notice,p{color:var(--secondary)!important}
.sidebar .nav.active,.sidebar .history button.current,nav button.active{background:var(--selected)!important;color:var(--text)!important;box-shadow:none!important}
.sidebar .nav:hover,.sidebar .new-chat:hover,.sidebar .history button:hover,.sidebar-tools>summary:hover,.sidebar-bottom>button:hover,.history-heading:hover,.icon-button:hover,.secondary:hover,.message-actions button:hover,#header-new-chat:hover,.mobile-layout #chat-form .mobile-model-picker:hover{background:var(--hover)!important;color:var(--text)!important}
.sidebar-bottom,.token-pricing-settings,.document-row,.event-row,.recharge-record,.service-row,.source-chunk{border-color:var(--border)!important}
.sidebar-bottom .avatar,.avatar{background:var(--soft)!important;color:var(--text)!important}
#sidebar-toggle,.sidebar-bottom>button,.header-actions button,.sidebar-reopen,#mobile-menu{color:var(--secondary)!important}
.primary,.primary:not(:disabled):hover,.mobile-layout #send,.composer-bottom #send,.mobile-layout .mobile-sheet-done,.danger-action{background:var(--button)!important;color:var(--button-text)!important;box-shadow:none!important;border-color:var(--button)!important}
.primary:hover{opacity:.88}.primary:disabled{opacity:.4}
.secondary,.suggestion,.chat-start .suggestion,.mobile-layout .suggestion,.tabs button,.tabs button.active,.theme-select,button:not(.primary){color:var(--text);border-color:var(--border)}
.secondary,.suggestion,.chat-start .suggestion,.mobile-layout .suggestion{background:var(--surface)!important;border-color:var(--border)!important;color:var(--text)!important}
.suggestion:hover,.chat-start .suggestion:hover,.mobile-layout .suggestion:hover{background:var(--hover)!important;border-color:var(--border)!important;box-shadow:none!important}
.suggestion .icon,.message-label::before,.upload-icon,.file-badge,.state,.state.ready,.pill,.task-status,.task-schedule-summary,#task-badge{background:var(--soft)!important;color:var(--secondary)!important;box-shadow:none!important}
.suggestion .icon{background:transparent!important}
.message.user,.mobile-layout .message.user{background:var(--soft)!important;color:var(--text)!important}
.message-body,.rich,.rich p,.rich li,.rich strong,.rich h1,.rich h2,.rich h3{color:var(--text)!important}
.message-body pre,.message-body code,.code-block,.code-bar,.rich th,.rich td{background:var(--soft)!important;border-color:var(--border)!important;color:var(--text)!important}
.citation,.citation:hover{background:var(--soft)!important;border-color:var(--border)!important;color:var(--text)!important}
.composer-area,.mobile-layout .composer-area,.mobile-layout .chat-start .composer-area{background:var(--bg)!important}
.composer,.composer:focus-within,.mobile-layout #chat-form{background:var(--soft)!important;border-color:var(--border)!important;box-shadow:none!important}
.composer textarea,.mobile-layout #question{background:transparent!important;color:var(--text)!important}
#composer-options .chat-controls select,#composer-options .chat-controls #chat-model,.chat-controls,.chat-controls label,.web-search-control,.composer-bottom #attach-file{color:var(--secondary)!important;background:transparent!important}
#composer-options .chat-controls select:hover{background:var(--hover)!important}
input,select,textarea,.sidebar .history-search{background:var(--surface)!important;border-color:var(--border)!important;color:var(--text)!important;accent-color:var(--text)}
input::placeholder,textarea::placeholder{color:var(--dim)!important}
input:focus,select:focus,textarea:focus{border-color:var(--secondary)!important;box-shadow:none!important}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--secondary)!important;outline-offset:3px}
.card,.metric,.panel,.document-list,.settings-grid .card,.sample,.billing-plan,.attachment-tile{background:var(--surface)!important;border-color:var(--border)!important;color:var(--text)!important;box-shadow:none!important}
.credit-balance,.upload-box,.index-panel,.plan-card,.task-banner,.sample-answer,.wallet-pricing,.wallet-recipient{background:var(--soft)!important;border-color:var(--border)!important;color:var(--text)!important;box-shadow:none!important}
.document-row:hover,tbody tr:hover{background:var(--soft)!important}
.tabs button.active,.recharge-amounts button:hover{background:var(--selected)!important;border-color:var(--border)!important;color:var(--text)!important}
.event-row,.event-row strong,.recharge-record strong,.metric strong,.service-row strong,th,td,label{color:var(--text)!important}
th{background:var(--soft)!important}th,td,.table-wrap{border-color:var(--border)!important}
.notice,#notice{background:var(--warning-bg)!important;color:var(--warning-text)!important;border-color:transparent!important}
.notice button{color:inherit!important}.danger,.error,#create-user-error{color:var(--danger)!important}
.state.failed{background:var(--warning-bg)!important;color:var(--danger)!important}
dialog,.mobile-layout .mobile-sheet[open]{background:var(--surface)!important;color:var(--text)!important;border-color:var(--border)!important}
dialog::backdrop,.mobile-sheet::backdrop{background:#0009!important}
.status-dot,.status-dot.ready{background:var(--soft)!important;color:var(--secondary)!important}
.status-dot.ready::before{background:var(--secondary)!important;box-shadow:none!important}
.metric progress{accent-color:var(--secondary)}.metric progress::-webkit-progress-bar{background:var(--soft)!important}.metric progress::-webkit-progress-value{background:var(--secondary)!important}
a,.text-button,.doc-actions a,.sample-answer span,header a,.code-bar button{color:var(--text)!important}
.history,.messages{scrollbar-color:var(--border) transparent}
.theme-select{width:auto;max-width:116px;border:1px solid var(--border);border-radius:9px;padding:7px 10px;font-size:12px;cursor:pointer;background:var(--surface);color:var(--text)}
.appearance-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.appearance-card h3{margin-bottom:6px}.appearance-card p{margin:0;font-size:12px}.appearance-card select{width:auto;min-width:130px}
.auth-card{position:relative}.auth-theme{display:block;margin:0 0 30px auto}.auth-card .remember-login input{accent-color:var(--text)}
body>header .theme-select{margin-left:auto}body>header a:last-child{margin-left:0}
.mobile-layout .theme-select{font-size:11px;max-width:100px;padding:7px 6px}.mobile-layout #main-content header .header-actions{gap:2px}.mobile-layout .appearance-card{align-items:flex-start;flex-direction:column}
@media(max-width:420px){#mode-badge{display:none}.header-actions{gap:3px}}

.language-select{width:auto;max-width:110px;padding:7px 9px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);font-size:12px}.auth-language{display:flex;justify-content:flex-end;margin-bottom:12px}.auth-theme{margin-bottom:24px}.mobile-layout .language-select{max-width:76px;padding:7px 5px;font-size:11px}.mobile-layout #header-new-chat{width:36px}.appearance-card .language-select{min-width:120px}html[lang=en] .sidebar .nav{font-size:12px}html[lang=en] .suggestion{padding:9px 12px}html[lang=en] .composer-caption{font-size:10px}@media(max-width:700px){html[lang=en] .page-heading{flex-wrap:wrap}html[lang=en] #view-title{font-size:15px}.header-actions{gap:4px}html[lang=en] .mobile-chat-title{font-size:15px}.language-select{flex-shrink:0}}
.mobile-layout #main-content header>div:not(.header-actions){flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-layout #main-content header .header-actions{flex:0 0 auto}.mobile-layout #view-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
