:root{
  --bg:#f6f8fb; --surface:#ffffff; --surface-2:#f0f4f8; --text:#18212b; --muted:#718096;
  --line:#e5eaf0; --primary:#185adb; --primary-dark:#1147ad; --accent:#0ea97a;
  --warning:#a46a00; --warning-bg:#fff5d9; --danger:#b62b2b; --danger-bg:#fff0f0;
  --success:#087a57; --success-bg:#eaf9f3; --shadow:0 14px 40px rgba(29,45,66,.07);
}
*{box-sizing:border-box}
html{background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{margin:0;min-height:100vh;background:linear-gradient(180deg,#f8fafc 0%,#f4f7fa 100%)}
a{color:inherit}
.topbar{height:72px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(229,234,240,.9);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:20}
.brand-wrap{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#185adb,#3c7cf1);color:#fff;display:grid;place-items:center;font-weight:800;font-size:15px;box-shadow:0 7px 18px rgba(24,90,219,.25)}
.brand{font-weight:800;letter-spacing:-.03em;font-size:17px}.brand span{font-size:10px;color:#93a0b1;margin-left:7px;letter-spacing:.08em}
.topbar nav{display:flex;align-items:center;gap:7px}.topbar a{color:#617083;text-decoration:none;font-size:13px;font-weight:600;padding:9px 11px;border-radius:9px}.topbar a:hover{background:#f1f5f9;color:var(--text)}
.container{max-width:1180px;margin:0 auto;padding:36px 22px 72px}.section{margin-top:28px}.hero{padding:8px 0 22px}.hero.compact{max-width:780px}.hero h1{font-size:44px;line-height:1.04;letter-spacing:-.04em;margin:0 0 10px}.hero .sub{max-width:710px}
.eyebrow{font-size:11px;font-weight:800;letter-spacing:.12em;color:#8a97a8;margin:0 0 8px;text-transform:uppercase}.sub{color:var(--muted);font-size:16px;line-height:1.6;margin:0}
.card{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
.form{max-width:760px;padding:24px;display:grid;gap:18px}.form.narrow{max-width:540px}.form label{display:grid;gap:7px;font-weight:700;font-size:14px}.form input,.form select{width:100%;border:1px solid #d5dde7;background:#fff;border-radius:11px;padding:13px 14px;font-size:15px;color:var(--text);outline:none;transition:.18s}.form input:focus,.form select:focus{border-color:#88aef8;box-shadow:0 0 0 4px rgba(24,90,219,.08)}
.form small{font-weight:500;color:var(--muted)}.muted{color:#8a97a8;font-weight:500}.center{text-align:center}.camera-box{padding:27px 22px;border:1.5px dashed #b7c3d1;background:#fbfcfe;border-radius:15px;text-align:center;align-items:center;cursor:pointer;transition:.18s}.camera-box:hover{border-color:#7ea5ef;background:#f8fbff}.camera-box input{padding:0;border:0;max-width:100%;font-weight:500}.camera-icon{width:48px;height:48px;border-radius:14px;background:#eaf1ff;color:var(--primary);display:grid;place-items:center;font-size:23px;margin:0 auto 11px}.camera-box strong{display:block;font-size:15px}.camera-box small{display:block;margin-top:5px}
.primary,.danger,.button,.secondary{border-radius:11px;padding:12px 16px;font-size:14px;font-weight:750;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;cursor:pointer;transition:.18s;border:1px solid transparent}.primary{background:var(--primary);color:#fff;box-shadow:0 8px 18px rgba(24,90,219,.18)}.primary:hover{background:var(--primary-dark)}.secondary{background:#fff;border-color:#d8e0e9;color:#344254}.secondary:hover{background:#f7f9fc}.danger{background:#fff;border-color:#e8b5b5;color:var(--danger)}.danger:hover{background:var(--danger-bg)}.button.small{padding:9px 12px;font-size:13px}
.flash,.notice{max-width:900px;margin-bottom:14px;padding:13px 15px;border-radius:12px;font-size:13px;border:1px solid var(--line);background:#fff}.flash.success{background:var(--success-bg);color:var(--success);border-color:#c9ecdf}.flash.error{background:var(--danger-bg);color:var(--danger);border-color:#f2cccc}.notice{background:var(--warning-bg);color:var(--warning);border-color:#f1db99;margin:0}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{padding:18px 18px 16px}.stat span{display:block;color:#7c899a;font-size:12px;font-weight:650}.stat strong{display:block;margin-top:7px;font-size:27px;letter-spacing:-.03em}.stat .meta{margin-top:8px;font-size:11px;color:#9aa6b5}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:28px 0 14px}.toolbar h2{margin:0;font-size:19px;letter-spacing:-.02em}.toolbar .actions{margin:0}.toolbar-left{display:flex;align-items:center;gap:12px}.mini-actions{display:flex;gap:8px;flex-wrap:wrap}
.receipt-list{display:grid;gap:10px}.receipt-row{padding:15px 17px;display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:inherit}.receipt-row:hover{border-color:#c9d5e4;transform:translateY(-1px)}.receipt-row{transition:.15s}.merchant-block,.amount-block{display:grid;gap:5px}.merchant-block strong{font-size:14px}.merchant-block span,.amount-block span{color:#7b8898;font-size:12px}.amount-block{text-align:right}.status{font-size:11px;font-weight:800;display:inline-block;width:max-content;padding:5px 8px;border-radius:999px;background:#edf1f5;color:#667384}.status.pending{background:#fff1c9;color:#875d00}.status.approved{background:#e5f7ef;color:#176b50}.status.rejected{background:#fdeaea;color:#9a3030}.status.draft{background:#edf2ff;color:#3d5eae}.status.large{font-size:12px;margin-top:16px;padding:7px 10px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mini-panel{padding:20px}.mini-panel .toolbar{margin:0 0 14px}.simple-list{display:grid;gap:8px}.simple-list>div{padding:11px 12px;border:1px solid #edf0f4;border-radius:12px;display:flex;justify-content:space-between;gap:12px;align-items:center}.simple-list span{color:#8793a3;font-size:12px;text-align:right}.inline-form{display:flex;gap:8px}.inline-form input{flex:1;border:1px solid #d5dde7;border-radius:10px;padding:11px 12px;font-size:14px}.empty{padding:40px;text-align:center;color:#7b8898}.tip{padding:15px 17px;background:#edf4ff;border:1px solid #d8e6ff;color:#45618b;border-radius:13px;font-size:13px;margin-top:16px;max-width:760px}
.detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:16px}.detail-grid>.card{padding:18px}.receipt-image{width:100%;max-height:760px;object-fit:contain;border-radius:12px;background:#f4f6f9}.detail-row{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #eef1f4;font-size:13px}.detail-row span{color:#7b8898}.detail-row strong{text-align:right}.actions{display:flex;gap:9px;margin-top:18px}.receipt-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px}.receipt-summary>div{padding:14px;background:#f6f8fb;border-radius:12px;display:grid;gap:5px}.label{font-size:11px;color:#7f8b9c;text-transform:uppercase;letter-spacing:.04em;font-weight:750}.raw-text{margin-top:14px;padding:17px}.raw-text summary{font-weight:750;cursor:pointer;font-size:13px}.raw-text pre{white-space:pre-wrap;color:#667384;font-size:12px;line-height:1.55}
.review-shell{max-width:980px}.review-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}.review-layout{display:grid;grid-template-columns:1.02fr .98fr;gap:16px}.review-preview{padding:18px}.review-preview .receipt-image{max-height:680px}.review-form{padding:20px}.review-form h2{margin:0 0 5px;font-size:20px;letter-spacing:-.02em}.review-form .helper{margin:0 0 18px;color:var(--muted);font-size:13px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:11px;color:#748196;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.field input,.field select{width:100%;border:1px solid #d5dde7;background:#fff;border-radius:10px;padding:11px 12px;font-size:14px;outline:none}.review-submit{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #edf0f4}.review-submit p{margin:0;color:#8793a3;font-size:12px;max-width:420px}.empty-state{padding:35px}.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:99px;background:#eef3ff;color:#315eb4;font-size:11px;font-weight:800}
@media(max-width:860px){.stats{grid-template-columns:repeat(2,1fr)}.grid-2,.detail-grid,.review-layout{grid-template-columns:1fr}.review-preview{order:2}.review-form{order:1}}
@media(max-width:640px){.topbar{padding:0 14px;height:64px}.brand span{display:none}.topbar nav{gap:0}.topbar a{font-size:12px;padding:8px}.container{padding:24px 14px 50px}.hero h1{font-size:34px}.hero{padding-bottom:17px}.form{padding:17px}.stats{gap:9px}.stat{padding:14px}.stat strong{font-size:23px}.toolbar{align-items:flex-start}.receipt-row{align-items:flex-start;gap:12px}.amount-block{white-space:nowrap}.receipt-summary{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.review-head{flex-direction:column}.mini-panel{padding:16px}.inline-form{flex-direction:column}.simple-list>div{align-items:flex-start;flex-direction:column}.simple-list span{text-align:left}}
.dashboard-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.hero-actions{display:flex;gap:9px;align-items:center}.hero-actions form{margin:0}.dashboard-stats .stat:first-child{border-color:#c9dafe;box-shadow:0 14px 40px rgba(24,90,219,.08)}
.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.insights-panel{padding:20px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.panel-head h2{margin:0;font-size:18px;letter-spacing:-.02em}.bar-list{display:grid;gap:16px}.bar-row{display:grid;gap:7px}.bar-label{display:flex;justify-content:space-between;gap:14px;align-items:baseline}.bar-label strong{font-size:13px}.bar-label span{font-size:11px;color:#8793a3;text-align:right}.bar-track{height:8px;border-radius:999px;background:#edf2f7;overflow:hidden}.bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#185adb,#70a0ff);min-width:2px}.bar-fill.alt{background:linear-gradient(90deg,#0e9b73,#72d7ba)}.compact-empty{padding:20px 8px}.filter-panel{padding:20px}.filter-form{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto auto;gap:9px}.filter-form input,.filter-form select{width:100%;border:1px solid #d5dde7;background:#fff;border-radius:10px;padding:11px 12px;font-size:14px;color:var(--text);outline:none}.filter-form input:focus,.filter-form select:focus{border-color:#88aef8;box-shadow:0 0 0 4px rgba(24,90,219,.08)}.subtle{background:#f8fafc}.section-tight{margin-top:24px;margin-bottom:12px}.section-tight h2{margin:0;font-size:19px}.receipt-main-line{display:flex;align-items:center;gap:8px}.receipt-main-line .status{margin-left:2px}.receipt-row .amount-block span{color:#7f8b9c}
@media(max-width:980px){.dashboard-grid{grid-template-columns:1fr}.filter-form{grid-template-columns:1fr 1fr 1fr}.filter-form input{grid-column:1/-1}}
@media(max-width:640px){.dashboard-hero{flex-direction:column;align-items:flex-start}.hero-actions{width:100%}.hero-actions>*{flex:1}.filter-form{grid-template-columns:1fr}.filter-form input{grid-column:auto}.bar-label{flex-direction:column;gap:3px}.bar-label span{text-align:left}}
.topbar-right{display:flex;align-items:center;gap:16px}.language-switch{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:800;letter-spacing:.04em;color:#8a97a8}.language-switch a{padding:5px 2px;color:#8a97a8;text-decoration:none}.language-switch a.active{color:var(--primary)}
@media(max-width:640px){.topbar-right{gap:8px}.language-switch{font-size:11px}.topbar nav a{padding-left:6px;padding-right:6px}}


/* Dark mode */
html[data-theme="dark"]{
  --bg:#0f141b; --surface:#171d25; --surface-2:#202834; --text:#edf2f7; --muted:#9aa8b8;
  --line:#2c3643; --primary:#5d91ff; --primary-dark:#4779df; --accent:#36c59b;
  --warning:#e2b35c; --warning-bg:#332a17; --danger:#ff7b7b; --danger-bg:#321d20;
  --success:#58d2ad; --success-bg:#173229; --shadow:0 16px 40px rgba(0,0,0,.22);
}
html[data-theme="dark"] body{background:linear-gradient(180deg,#11171f 0%,#0d1218 100%)}
html[data-theme="dark"] .topbar{background:rgba(23,29,37,.92);border-bottom-color:rgba(44,54,67,.9)}
html[data-theme="dark"] .topbar a{color:#aab6c5}
html[data-theme="dark"] .topbar a:hover{background:#202834;color:var(--text)}
html[data-theme="dark"] .brand{color:var(--text)}
html[data-theme="dark"] .card,
html[data-theme="dark"] .flash,
html[data-theme="dark"] .filter-form input,
html[data-theme="dark"] .filter-form select,
html[data-theme="dark"] .field input,
html[data-theme="dark"] .field select,
html[data-theme="dark"] .inline-form input{background:var(--surface);border-color:var(--line);color:var(--text)}
html[data-theme="dark"] .secondary{background:var(--surface);border-color:var(--line);color:var(--text)}
html[data-theme="dark"] .secondary:hover{background:#202834}
html[data-theme="dark"] .receipt-row:hover{border-color:#465366}
html[data-theme="dark"] .simple-list>div{border-color:var(--line)}
html[data-theme="dark"] .receipt-summary>div{background:var(--surface-2)}
html[data-theme="dark"] .bar-track{background:#2a3340}
html[data-theme="dark"] .tip{background:#1c2b40;border-color:#2d4363;color:#a9c2e7}
html[data-theme="dark"] .subtle{background:#121821}
html[data-theme="dark"] .notice{background:var(--warning-bg);border-color:#5b4725;color:var(--warning)}
html[data-theme="dark"] .raw-text{background:var(--surface)}
html[data-theme="dark"] .receipt-image{background:#10161d}
html[data-theme="dark"] ::selection{background:#315ea8;color:#fff}
.topbar-tools{display:flex;align-items:center;gap:14px}
.theme-switch{display:flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);background:var(--surface-2);border-radius:10px}
.theme-btn{width:29px;height:27px;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer;font-size:15px;line-height:1}
.theme-btn:hover{color:var(--text);background:rgba(127,143,161,.12)}
.theme-btn.active{background:var(--surface);color:var(--text);box-shadow:0 2px 8px rgba(0,0,0,.08)}
@media(max-width:640px){.topbar-tools{gap:7px}.theme-switch{padding:2px}.theme-btn{width:27px;height:25px}.language-switch{font-size:11px}}
.trend-panel{padding:20px}.trend-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;align-items:end;height:190px}.trend-item{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px;min-width:0}.trend-bar-wrap{height:125px;width:100%;display:flex;align-items:flex-end;justify-content:center}.trend-bar{width:70%;max-width:44px;min-height:4px;border-radius:9px 9px 4px 4px;background:linear-gradient(180deg,#6c9df5,#185adb)}.trend-item strong{font-size:11px}.trend-item span{font-size:10px;color:#8793a3}.duplicate-row{border-color:#efd9a6}.status.duplicate{background:#fff4d6;color:#8a6100}
@media(max-width:1100px){.filter-form{grid-template-columns:1.8fr 1fr 1fr 1fr 1fr 1fr auto auto}}
@media(max-width:980px){.trend-grid{grid-template-columns:repeat(3,1fr);height:270px}.trend-item{height:125px}.filter-form{grid-template-columns:1fr 1fr 1fr}.filter-form input[name="q"]{grid-column:1/-1}.filter-form input[type="date"]{grid-column:auto}}
@media(max-width:640px){.trend-grid{grid-template-columns:repeat(2,1fr);height:300px}.filter-form{grid-template-columns:1fr}.filter-form input[name="q"]{grid-column:auto}}

/* Export menu */
.export-menu{position:relative}
.export-menu summary{list-style:none}.export-menu summary::-webkit-details-marker{display:none}
.export-popover{position:absolute;right:0;top:calc(100% + 9px);width:300px;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 50px rgba(24,35,50,.16);z-index:30}
.export-popover a{display:flex;flex-direction:column;gap:3px;padding:11px 12px;border-radius:10px;text-decoration:none;color:var(--text)}
.export-popover a:hover{background:var(--surface-2)}.export-popover strong{font-size:13px}.export-popover span{font-size:11px;color:var(--muted)}
.print-report{max-width:1180px;margin:0 auto}.print-toolbar{display:flex;justify-content:space-between;gap:10px;margin-bottom:25px}.report-header{display:flex;justify-content:space-between;gap:30px;align-items:flex-start;margin-bottom:25px}.report-header h1{margin:0 0 8px;font-size:34px}.report-header p{margin:0;color:var(--muted)}.report-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.report-kpis>div{min-width:130px;padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.report-kpis span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;font-weight:800;letter-spacing:.05em}.report-kpis strong{display:block;margin-top:6px;font-size:19px}.report-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);font-size:12px}.report-table th,.report-table td{padding:10px 11px;text-align:left;border-bottom:1px solid var(--line)}.report-table th{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--surface-2)}.report-empty{text-align:center;padding:28px!important;color:var(--muted)}
html[data-theme="dark"] .export-popover{box-shadow:0 18px 50px rgba(0,0,0,.35)}
@media(max-width:720px){.report-header{flex-direction:column}.report-kpis{grid-template-columns:1fr 1fr}.export-popover{right:-40px;width:280px}}
@media print{.no-print{display:none!important}html,body{background:#fff!important;color:#111!important}.topbar{display:none!important}.container{padding:0!important;max-width:none!important}.print-report{max-width:none}.card,.report-table{box-shadow:none!important}.report-table{font-size:10px}.report-table th,.report-table td{padding:6px 7px}}


/* V1 expense controls */
textarea.field, textarea{font:inherit} .field textarea{width:100%;border:1px solid #d5dde7;background:#fff;border-radius:10px;padding:11px 12px;font-size:14px;color:var(--text);outline:none;resize:vertical}.field textarea:focus{border-color:#88aef8;box-shadow:0 0 0 4px rgba(24,90,219,.08)}
.reimbursement-panel{display:block}.reimbursement-panel .panel-total{font-size:18px}.card-inner{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.section-mini-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.line-items-list{display:grid;gap:7px}.line-items-list>div{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}.line-items-list>div:last-child{border-bottom:0}.note-box,.reimbursement-box{margin-top:18px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.note-box p{margin:7px 0 0;color:var(--muted);line-height:1.5}.reimbursement-box{display:flex;justify-content:space-between;align-items:center;gap:14px}.reimbursement-box strong{display:block;margin-top:4px}.reimbursement-box form{margin:0}.detail-card .raw-text{margin-top:18px}.receipt-preview-card{position:sticky;top:84px;align-self:start}
html[data-theme="dark"] .field textarea{background:var(--surface);border-color:var(--line);color:var(--text)}
@media(max-width:860px){.receipt-preview-card{position:static}.reimbursement-box{align-items:flex-start;flex-direction:column}}

/* V1.3 — polished theme controls and brand system */
:root{
  --input-bg:#ffffff;
  --input-text:#18212b;
  --input-border:#d5dde7;
  --placeholder:#98a3b2;
  --camera-bg:#fbfcfe;
  --camera-border:#b7c3d1;
  --surface-hover:#f7f9fc;
}

.brand-logo{width:38px;height:38px;display:block;flex:0 0 auto;filter:drop-shadow(0 7px 14px rgba(24,90,219,.16))}

/* Keep every form control readable in both themes. */
.form input,
.form select,
.form textarea,
.field input,
.field select,
.field textarea,
.filter-form input,
.filter-form select,
.inline-form input{
  background:var(--input-bg);
  color:var(--input-text);
  border-color:var(--input-border);
}

input::placeholder,
textarea::placeholder{color:var(--placeholder);opacity:1}

input[type="date"],
input[type="time"],
input[type="datetime-local"]{color-scheme:light}

select option{background:#fff;color:#18212b}

.camera-box{background:var(--camera-bg);border-color:var(--camera-border)}
.camera-box:hover{background:var(--surface-hover)}
.camera-box input[type="file"]{background:transparent;color:var(--input-text)}
.camera-box input[type="file"]::file-selector-button{border:1px solid var(--input-border);background:var(--surface);color:var(--text);border-radius:8px;padding:8px 10px;margin-right:8px;cursor:pointer}

html[data-theme="dark"]{
  --input-bg:#111820;
  --input-text:#f2f6fb;
  --input-border:#344151;
  --placeholder:#7f8da0;
  --camera-bg:#111820;
  --camera-border:#3b4858;
  --surface-hover:#202a36;
  color-scheme:dark;
}
html[data-theme="dark"] body{color-scheme:dark}
html[data-theme="dark"] .form input,
html[data-theme="dark"] .form select,
html[data-theme="dark"] .form textarea,
html[data-theme="dark"] .field input,
html[data-theme="dark"] .field select,
html[data-theme="dark"] .field textarea,
html[data-theme="dark"] .filter-form input,
html[data-theme="dark"] .filter-form select,
html[data-theme="dark"] .inline-form input{
  background:var(--input-bg) !important;
  color:var(--input-text) !important;
  border-color:var(--input-border) !important;
}
html[data-theme="dark"] select option{background:#111820;color:#f2f6fb}
html[data-theme="dark"] input[type="date"],
html[data-theme="dark"] input[type="time"],
html[data-theme="dark"] input[type="datetime-local"]{color-scheme:dark}
html[data-theme="dark"] .camera-box{background:var(--camera-bg);border-color:var(--camera-border)}
html[data-theme="dark"] .camera-box:hover{background:#17212c}
html[data-theme="dark"] .camera-box input[type="file"]::file-selector-button{background:#202a36;color:#f2f6fb;border-color:#465466}
html[data-theme="dark"] .topbar nav a{color:#aeb9c8}
html[data-theme="dark"] .language-switch,
html[data-theme="dark"] .language-switch a{color:#8997aa}
html[data-theme="dark"] .language-switch a.active{color:var(--primary)}
html[data-theme="dark"] .theme-switch{background:#151c24}
html[data-theme="dark"] .theme-btn.active{background:#263141}
html[data-theme="dark"] .brand-logo{filter:drop-shadow(0 7px 16px rgba(82,142,255,.28))}

/* Better focus states for keyboard/touch users. */
.form input:focus,
.form select:focus,
.form textarea:focus,
.field input:focus,
.field select:focus,
.field textarea:focus,
.filter-form input:focus,
.filter-form select:focus,
.inline-form input:focus{
  border-color:#88aef8;
  box-shadow:0 0 0 4px rgba(24,90,219,.10);
}

/* Branding utility classes for future products: keep the mark independent from the product wordmark. */
.product-wordmark{font-weight:800;letter-spacing:-.035em}
.product-wordmark .accent{color:#2c79f6}

@media(max-width:640px){
  .brand-logo{width:34px;height:34px}
}
