/* v308 — FinMate AI Aurora Ledger: white enterprise finance theme */
:root{
  --p:#0b6bcb;--pm:#095eaf;--pl:#2f80d4;--pp:#edf6ff;
  --acc:#d98816;--cyan:#0f8f9d;--nav:#ffffff;--nav2:#f8fafc;
  --bg:#f4f7fb;--card:#ffffff;--text:#14243a;--t2:#526176;--t3:#7c899a;
  --brd:#e5e7eb;--brd2:#eef1f4;--ok:#16805e;--ok2:#eaf8f4;
  --warn:#a86400;--warn2:#fff5e6;--err:#dc2626;--err2:#fff1f2;
  --info:#0b6bcb;--info2:#edf6ff;--violet:#6953c5;--violet2:#f3f0ff;
  --sh:0 1px 3px rgba(15,23,42,.06);--shadow-hover:0 8px 22px rgba(31,49,78,.08);
  --sw:224px;--radius-card:12px;--radius-control:8px
}

html,body{background:var(--bg);color:var(--text)}
body{letter-spacing:0}
#zh-boot-cover .zh-boot-logo{overflow:hidden;padding:0;background:transparent;border:0}
#zh-boot-cover .zh-boot-logo img{display:block;width:100%;height:100%}
button,[onclick],.sb-item,.tab,.fchip,.vq-chip,.abq-chip,.op-tab,.vt-radio{cursor:pointer}
:focus-visible{outline:2px solid #5ba0df;outline-offset:2px}
::selection{background:#cfe6fb;color:#0b3f77}
::-webkit-scrollbar{width:7px;height:7px}
::-webkit-scrollbar-thumb{background:#cbd5e1;border:2px solid transparent;background-clip:padding-box;border-radius:999px}
::-webkit-scrollbar-track{background:transparent}

/* Login: the only full glass/aurora scene in the product. */
html body .login-screen{
  position:relative;isolation:isolate;overflow:auto;padding:28px;
  background:
    radial-gradient(circle at 12% 17%,rgba(55,170,210,.26),transparent 28%),
    radial-gradient(circle at 84% 10%,rgba(86,111,210,.23),transparent 27%),
    radial-gradient(circle at 74% 82%,rgba(41,167,135,.20),transparent 27%),
    linear-gradient(145deg,#f8fbff 0%,#f4f8fc 52%,#f7f6ff 100%);
  background-size:145% 145%;animation:zhAuroraCanvas 9s ease-in-out infinite alternate
}
html body .login-screen:before{
  content:"";position:absolute;inset:-18%;z-index:-2;pointer-events:none;opacity:.82;
  background:
    radial-gradient(circle at 25% 35%,rgba(42,168,199,.25),transparent 19%),
    radial-gradient(circle at 70% 28%,rgba(64,119,216,.23),transparent 21%),
    radial-gradient(circle at 66% 72%,rgba(117,90,204,.19),transparent 20%);
  filter:blur(32px);animation:zhAuroraDrift 10s ease-in-out infinite alternate
}
html body .login-screen:after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.27;
  background-image:linear-gradient(rgba(91,123,158,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(91,123,158,.09) 1px,transparent 1px);
  background-size:48px 48px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.56),transparent 86%)
}
html body .login-aurora-field{position:absolute;inset:-20%;z-index:0;pointer-events:none;overflow:hidden;filter:saturate(118%);animation:zhAuroraField 7s ease-in-out infinite alternate}
html body .login-aurora-field span{position:absolute;display:block;border-radius:50%;filter:blur(40px);will-change:transform}
html body .login-aurora-field span:nth-child(1){top:5%;left:-8%;width:66%;height:28%;opacity:.55;background:linear-gradient(105deg,transparent 4%,rgba(28,126,220,.48) 30%,rgba(36,184,188,.42) 64%,transparent 94%);animation:zhAuroraBlue 7s cubic-bezier(.45,.05,.55,.95) infinite alternate}
html body .login-aurora-field span:nth-child(2){top:12%;right:-9%;width:58%;height:34%;opacity:.46;background:linear-gradient(112deg,transparent 3%,rgba(103,79,201,.46) 40%,rgba(46,135,214,.36) 72%,transparent 96%);animation:zhAuroraViolet 9s cubic-bezier(.45,.05,.55,.95) infinite alternate}
html body .login-aurora-field span:nth-child(3){left:18%;bottom:1%;width:70%;height:30%;opacity:.43;background:linear-gradient(96deg,transparent 2%,rgba(26,169,128,.43) 34%,rgba(52,167,205,.38) 65%,transparent 96%);animation:zhAuroraTeal 11s cubic-bezier(.45,.05,.55,.95) infinite alternate}
@keyframes zhAuroraCanvas{0%{background-position:0% 15%,100% 0%,78% 100%,0% 50%}50%{background-position:18% 4%,82% 18%,60% 82%,50% 50%}100%{background-position:5% 28%,96% 8%,88% 70%,100% 50%}}
@keyframes zhAuroraField{0%{transform:translate3d(-5%,-3%,0) rotate(-1deg)}100%{transform:translate3d(7%,5%,0) rotate(2deg)}}
@keyframes zhAuroraDrift{0%{transform:translate3d(-2%,-1%,0) scale(1)}55%{transform:translate3d(5%,3%,0) scale(1.08)}100%{transform:translate3d(-2%,6%,0) scale(1.03)}}
@keyframes zhAuroraBlue{0%{transform:translate3d(-10%,-7%,0) rotate(-11deg) scale(1)}50%{transform:translate3d(15%,15%,0) rotate(-1deg) scale(1.12)}100%{transform:translate3d(30%,2%,0) rotate(9deg) scale(.94)}}
@keyframes zhAuroraViolet{0%{transform:translate3d(9%,-11%,0) rotate(15deg) scale(1.05)}52%{transform:translate3d(-21%,12%,0) rotate(3deg) scale(.91)}100%{transform:translate3d(-8%,25%,0) rotate(-9deg) scale(1.12)}}
@keyframes zhAuroraTeal{0%{transform:translate3d(-14%,14%,0) rotate(-9deg) scale(.93)}48%{transform:translate3d(13%,-13%,0) rotate(2deg) scale(1.12)}100%{transform:translate3d(24%,-3%,0) rotate(10deg) scale(.98)}}
html body .login-stage{position:relative;z-index:1;width:min(1180px,96vw);min-height:600px;grid-template-columns:minmax(420px,1fr) 400px;gap:68px}
html body .login-hero{color:var(--text);text-shadow:none;padding:34px 0 34px 10px}
html body .login-brand-lockup{display:flex;align-items:center;gap:20px;margin-bottom:36px}
html body .login-brand-mark{width:78px;height:78px;flex:0 0 78px;margin:0;border-radius:21px;background:transparent;box-shadow:0 14px 32px rgba(20,36,58,.15);overflow:hidden}
html body .login-brand-mark img,html body .login-logo .icon img,html body .sb-icon img{display:block;width:100%;height:100%}
html body .brand-wordmark{display:flex;align-items:center;gap:15px;color:#14243a;line-height:1;white-space:nowrap}
html body .brand-wordmark strong{font-size:30px;font-weight:700;letter-spacing:-.04em}
html body .brand-wordmark i{width:1px;height:26px;background:#cbd5e1}
html body .brand-wordmark b{font-family:var(--font-data);font-size:30px;font-weight:600;letter-spacing:-.035em}
html body .login-kicker{color:#0b6bcb;font-size:11px;letter-spacing:.12em;margin-bottom:14px}
html body .login-hero h1{max-width:650px;font-size:48px;line-height:1.16;font-weight:700;color:#14243a;letter-spacing:-.045em}
html body .login-hero h1 em{font-style:normal;color:#0b6bcb}
html body .login-hero p{max-width:590px;margin-top:19px;color:#5f7086;font-size:15px;line-height:1.8}
html body .login-metrics{gap:10px;margin-top:30px}
html body .login-metrics span{min-width:128px;padding:11px 14px;border:1px solid rgba(255,255,255,.85);border-radius:11px;background:rgba(255,255,255,.55);backdrop-filter:blur(16px);box-shadow:var(--sh);color:#65758a}
html body .login-metrics b{color:#21354e;font-size:13px;font-weight:700}
html body .login-box{width:400px;border:1px solid rgba(255,255,255,.88);border-radius:18px;padding:32px;background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(248,251,255,.72) 62%,rgba(246,244,255,.66));backdrop-filter:blur(28px) saturate(135%);box-shadow:0 24px 64px rgba(31,49,78,.14),inset 0 1px rgba(255,255,255,.9)}
html body .login-logo{text-align:left;margin-bottom:24px}
html body .login-logo-lockup{display:flex;align-items:center;gap:13px}
html body .login-logo .icon{width:46px;height:46px;flex:0 0 46px;margin:0;border:0;border-radius:12px;background:transparent;box-shadow:0 7px 18px rgba(20,36,58,.10);overflow:hidden}
html body .login-logo h1{font-size:20px;font-weight:700;color:#14243a;letter-spacing:-.02em}
html body .login-logo p{font-size:11px;color:#78869a;margin-top:5px}
html body .login-box .fl{font-weight:600;color:#405168}
html body .login-box .fi{height:42px;border-radius:9px;background:rgba(255,255,255,.86)}
html body .login-box .btn-primary{height:42px;border-radius:9px;background:#0b6bcb;border-color:#0b6bcb;box-shadow:0 4px 12px rgba(11,107,203,.18)}
html body .login-box .btn-primary:hover{background:#095eaf;border-color:#095eaf;transform:translateY(-1px);box-shadow:0 8px 18px rgba(11,107,203,.22)}
html body #login-demo{color:#718096}

/* White application shell. */
html body .sidebar{position:relative;background:#fff;border-right:1px solid var(--brd);box-shadow:none;color:var(--text)}
html body .sidebar:before{display:none}
html body .sb-logo{height:66px;padding:14px 16px;background:#fff;border-bottom:1px solid var(--brd)}
html body .sb-icon{width:36px;height:36px;border-radius:10px;background:#edf6ff;color:#0b6bcb;border:1px solid #cfe3f7;box-shadow:none}
html body .sb-icon{padding:0;border:0;background:transparent;overflow:hidden}
html body .sb-name h2{color:#14243a;font-size:16px;font-weight:700}
html body .sb-name p{font-family:var(--font-data);color:#8491a3;font-size:10px;font-weight:600;letter-spacing:-.01em}
html body .sb-nav{padding:10px 9px 16px}
html body .sb-sec{padding:14px 10px 6px;margin:0;color:#9aa5b5;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:transparent;border-radius:0}
html body .sidebar .sb-nav .sb-sec:first-child{color:#9aa5b5;background:transparent;margin:0;padding:14px 10px 6px}
html body .sb-item{min-height:38px;margin-bottom:3px;padding:8px 10px;border:1px solid transparent;border-radius:9px;color:#4b5b71;font-weight:500;transition:background .16s,border-color .16s,color .16s,box-shadow .16s}
html body .sb-item i{color:#7b899c;font-size:13px}
html body .sb-item:hover{background:#f8fafc;border-color:#eef1f5;color:#14243a}
html body .sb-item:hover i{color:#3f6f9e}
html body .sb-item.active{background:#edf6ff;border-color:#d5e8fb;color:#095cae;font-weight:700;box-shadow:inset 3px 0 #0b6bcb}
html body .sb-item.active i{color:#0b6bcb}
html body .sb-item.active:before{display:none}
html body .sb-badge{background:#fff0e5;color:#a85d00;border-radius:6px}
html body .sb-set-picker{background:#f8fafc;border:1px solid #e5e7eb;color:#526176;box-shadow:none;border-radius:9px}
html body .sb-set-picker:hover,html body .sb-set-picker.open{background:#edf6ff;border-color:#cfe3f7}
html body .sb-set-picker .ssp-top{color:#718096}
html body .sb-set-picker .ssp-name{color:#253a52}
html body .sb-set-picker .ssp-meta{color:#8794a5}
html body .sb-footer{background:#fff;border-top:1px solid var(--brd)}
html body .sb-user{border-radius:9px}
html body .sb-user:hover{background:#f6f8fb}
html body .sb-av{border-radius:9px!important;background:#14243a!important;color:#fff!important}
html body .sb-utxt h5{color:#253a52}
html body .sb-utxt p{color:#8b97a8}
html body .main{background:var(--bg)}
html body .mobile-nav-toggle{display:none;width:38px;height:38px;flex:0 0 38px;align-items:center;justify-content:center;border:1px solid var(--brd);border-radius:9px;background:#fff;color:#405168;transition:background .16s,border-color .16s,color .16s,transform .16s}
html body .mobile-nav-toggle:hover{background:#edf6ff;border-color:#cfe3f7;color:#0b6bcb}
html body .mobile-nav-toggle:active{transform:scale(.96)}
html body .mobile-nav-scrim{display:none}
html body .topbar{height:66px;position:relative;z-index:1200;padding:0 20px;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--brd);box-shadow:none}
html body .tb-info h3{font-size:15px;font-weight:700;color:#26384f}
html body .tb-info p{font-size:10px;color:#8a96a7}
html body .tb-av{width:38px;height:38px;border:1px solid var(--brd);border-radius:9px;background:#fff;color:#607086}
html body .tb-av:hover{background:#edf6ff;border-color:#cfe3f7;color:#0b6bcb;transform:translateY(-1px)}
html body .content{padding:18px 20px 34px;background:radial-gradient(circle at 96% 0%,rgba(116,91,207,.055),transparent 26%),radial-gradient(circle at 35% -12%,rgba(64,165,210,.07),transparent 30%),var(--bg)}
html body .ph{margin-bottom:14px;padding:2px 0}
html body .ph-title h1{font-size:22px;font-weight:700;letter-spacing:-.025em;color:#14243a}
html body .ph-title p{font-size:11px;color:#7c899a}

/* Shared cards, panels and summary surfaces. */
html body .card,html body .kpi,html body .acct-card,html body .recon-side,html body .nv-att,
html body .voucher-query,html body .voucher-table-card,html body .acctbal-query,html body .opening-workbench,
html body .aux-kpi,html body .txn-filter-card,html body .zh-panel,html body .zh-op-panel,
html body .aux-import-modern>*,html body .aux-imp-preview,html body .aux-imp-editor-wrap{
  border:1px solid var(--brd);border-radius:var(--radius-card);background:#fff;box-shadow:var(--sh)
}
html body .content .card{border:1px solid var(--brd)!important}
html body .card:hover,html body .kpi:hover,html body .acct-card:hover,html body .aux-kpi:hover{border-color:var(--brd);box-shadow:var(--shadow-hover);transform:none}
html body .ch{min-height:46px;padding:10px 14px;border-bottom:1px solid #edf0f4;background:linear-gradient(90deg,rgba(237,246,255,.68),rgba(255,255,255,.96) 42%)}
html body .ch h3{font-size:13px;font-weight:700;color:#1d3048}
html body .cb{padding:13px 14px}
html body .kpi{min-height:94px;padding:13px 14px;border-top:1px solid var(--brd);border-radius:12px;transition:border-color .16s,box-shadow .16s}
html body .kpi.blue{background:linear-gradient(145deg,#fff 62%,#f0f7ff)}
html body .kpi.green{background:linear-gradient(145deg,#fff 62%,#eefaf7)}
html body .kpi.orange{background:linear-gradient(145deg,#fff 62%,#fff8ed)}
html body .kpi.red{background:linear-gradient(145deg,#fff 62%,#fff2f2)}
html body .kpi.purple{background:linear-gradient(145deg,#fff 62%,#f5f2ff)}
html body .kpi.teal{background:linear-gradient(145deg,#fff 62%,#eefafa)}
html body .kpi.blue,
html body .kpi.green,
html body .kpi.orange,
html body .kpi.red,
html body .kpi.purple,
html body .kpi.teal{border-color:var(--brd)}
html body .kpi .ki{border:1px solid rgba(205,224,243,.86);box-shadow:none}
html body .kpi .kv{font-size:21px;font-weight:700;letter-spacing:-.025em;color:#14243a}
html body .kpi .kl{font-size:11px;color:#758397}
html body .stat-strip{border:1px solid var(--brd);border-radius:12px;background:linear-gradient(90deg,#f1f8ff,#fff 58%,#f3fbf8);box-shadow:var(--sh)}
html body .stat-strip .ssi b{color:#174f86}
html body .bigbal{color:#174f86}

/* Tables: dense, calm and scannable. */
html body .tw,html body .op-table-wrap{overflow:auto}
html body table{color:var(--text)}
html body thead th,html body .rt th{height:36px;padding:7px 11px;background:#f8fafc;color:#5c6c81;font-size:11px;font-weight:700;border-color:var(--brd);letter-spacing:0}
html body tbody td,html body .rt td{height:38px;padding:7px 11px;border-color:#eef1f4;color:#34465d}
html body tbody tr{transition:background .14s}
html body tbody tr:hover td,html body .tbl-click tbody tr:hover td{background:#f4f9fd}
html body .rt tr.rsu td{background:#edf8f5;color:#16684f}
html body .rt tr.rsec td{background:#f8fafc;color:#536278}
html body .voucher-table th{height:34px;background:#f8fafc;border-color:#dde4ed;color:#384a61}
html body .voucher-table td{height:38px;border-color:#edf0f4;color:#34465d}
html body .voucher-table .voucher-detail-row td{background:#fbfdff}
html body .voucher-empty{color:#8c99aa}
html body .opening-table th{background:#f8fafc;border-color:#dce3ec;color:#34465d;box-shadow:0 1px #dce3ec}
html body .opening-table td{border-color:#e7ebf0;color:#34465d}
html body .op-total-row td{background:#fff9ed!important;border-top-color:#e8d7b7}

/* Controls and buttons. */
html body .fi,html body .fs,html body .si-wrap,html body .vq-input,html body .vq-select,
html body .abq-input,html body .abq-select,html body .op-input,html body .op-select{
  border:1px solid #d5dce5;border-radius:var(--radius-control);background:#fff;color:#34465d;box-shadow:none
}
html body .fi:hover,html body .fs:hover,html body .vq-input:hover,html body .vq-select:hover,
html body .abq-input:hover,html body .abq-select:hover,html body .op-input:hover,html body .op-select:hover{border-color:#b9c4d2}
html body .fi:focus,html body .fs:focus,html body .si-wrap:focus-within,html body .vq-input:focus,html body .vq-select:focus,
html body .abq-input:focus,html body .abq-select:focus,html body .op-input:focus,html body .op-select:focus{outline:0;border-color:#72a9df;box-shadow:0 0 0 3px rgba(11,107,203,.10)}
html body input::placeholder,html body textarea::placeholder{color:#9aa6b5}
html body .btn,html body .vt-btn,html body .op-btn,html body .vq-icon-btn,html body .nv-mini,html body .mc-btn{
  border-radius:8px;font-weight:600;transition:background .16s,border-color .16s,color .16s,box-shadow .16s,transform .16s
}
html body .btn:hover,html body .vt-btn:hover,html body .op-btn:hover,html body .vq-icon-btn:hover,html body .nv-mini:hover,html body .mc-btn:hover{transform:translateY(-1px)}
html body .btn:active,html body .vt-btn:active,html body .op-btn:active,html body .vq-icon-btn:active,html body .nv-mini:active,html body .mc-btn:active{transform:translateY(0) scale(.98)}
html body .btn-primary,html body .vt-btn.primary,html body .op-btn.primary,html body .vq-icon-btn.primary{background:#0b6bcb;border-color:#0b6bcb;color:#fff;box-shadow:0 2px 5px rgba(11,107,203,.16)}
html body .btn-primary:hover,html body .vt-btn.primary:hover,html body .op-btn.primary:hover,html body .vq-icon-btn.primary:hover{background:#095eaf;border-color:#095eaf;color:#fff;box-shadow:0 6px 14px rgba(11,107,203,.20)}
html body .btn-outline,html body .vt-btn,html body .op-btn{background:#fff;border-color:#d5dce5;color:#405168;box-shadow:none}
html body .btn-outline:hover,html body .vt-btn:hover,html body .op-btn:hover{background:#f3f8fd;border-color:#b8d2eb;color:#0b65bd}
html body .btn-danger{background:#dc2626;border-color:#dc2626;color:#fff}
html body .btn-danger:hover{background:#b91c1c;border-color:#b91c1c;color:#fff}
html body .btn-accent{background:#b97313;border-color:#b97313;color:#fff}
html body .mc-btn{background:#f6f8fb;color:#708096}
html body .mc-btn:hover{background:#fff1f2;color:#c81e35}

/* Navigation tabs, filters and status chips. */
html body .tabbar{padding:7px 12px 0;background:#f8fafc;border-bottom:1px solid var(--brd)}
html body .tab{border-radius:8px 8px 0 0;color:#637287}
html body .tab:hover{background:#edf6ff;color:#0b65bd}
html body .tab.active{background:#fff;border-color:#dbe3ec;color:#0b65bd;box-shadow:none}
html body .tab.active:after{height:2px;background:#0b6bcb}
html body .fchip,html body .vq-chip,html body .abq-chip,html body .zh-tabchip{border-color:#d8e0e9;border-radius:7px;background:#fff;color:#526176}
html body .fchip:hover,html body .vq-chip:hover,html body .abq-chip:hover,html body .zh-tabchip:hover{background:#f5f9fd;color:#0b65bd}
html body .fchip.on,html body .vq-chip.on,html body .abq-chip.on,html body .zh-tabchip.on{background:#edf6ff;border-color:#c7def3;color:#0b65bd;font-weight:700}
html body .badge{border-radius:999px;font-weight:600}
html body .badge.ok,html body .mt-ok{background:#eaf8f4;color:#16805e}
html body .badge.warn,html body .mt-no{background:#fff5e6;color:#a86400}
html body .badge.info{background:#edf6ff;color:#0b65bd}
html body .badge.err{background:#fff1f2;color:#c9253b}
html body .badge.gray{background:#f1f4f7;color:#66758a}

/* Business-specific filter panels retain density but share the same material. */
html body .voucher-query,html body .acctbal-query,html body .opening-workbench{border-color:var(--brd);border-radius:12px;box-shadow:var(--sh)}
html body .ledger-query-panel{min-width:0!important}
html body .vq-main{padding:12px 14px 10px}
html body .vq-input,html body .vq-select{height:32px}
html body .vq-chips,html body .abq-chips{border-color:#d5dce5;border-radius:8px}
html body .vq-tags{background:#fbfdff;border-color:#edf0f4}
html body .vq-tag{border-color:#dfe5ec;border-radius:7px;background:#fff}
html body .vt-toolbar{height:50px;border-color:#e5e7eb;background:#fff}
html body .vt-radio.on .vt-dot{border-color:#0b6bcb}
html body .vt-radio.on .vt-dot:after{background:#0b6bcb}
html body .abq-tabs{background:#f8fafc;border-color:#e5e7eb}
html body .abq-tab.on:after{background:#0b6bcb}
html body .op-query,html body .op-summary{background:#f8fafc;border-color:#e5e7eb}
html body .op-tabs,html body .op-toolbar{border-color:#e5e7eb}
html body .op-tab.on:after{background:#0b6bcb}
html body .op-book,html body .vq-book{background:#fffdf4;border-color:#d7c99b}
html body .op-search{background:#344a62}
html body .op-search:hover{background:#23384f}
html body .nv-row-h{background:#edf6ff;color:#155b9e}
html body .nv-grid-wrap,html body .nv-att{border-color:#dfe5ec;border-radius:11px}
html body .nv-foot{background:#f8fafc}
html body .acp-dd,html body .nv-aux-dd,html body .txn-acct-panel,html body .set-dd{border-color:#dfe5ec;border-radius:12px;box-shadow:0 18px 50px rgba(31,49,78,.15)}
html body .acp-item:hover,html body .acp-item.hl,html body .nv-aux-item:hover,html body .nv-aux-item.hl{background:#edf6ff}

/* Modal, dropdown and feedback surfaces use restrained glass. */
html body .mo{background:rgba(35,52,74,.34);backdrop-filter:blur(7px)}
html body .modal{border:1px solid rgba(255,255,255,.88);border-radius:14px;background:rgba(255,255,255,.97);box-shadow:0 24px 70px rgba(31,49,78,.20)}
html body .mh{border-color:#edf0f4}
html body .mh h2{font-weight:700;color:#1e3149}
html body .mf{border-color:#edf0f4;background:#fbfcfe}
html body .set-dd{background:rgba(255,255,255,.98)}
html body .sd-chip.on{background:#0b6bcb;border-color:#0b6bcb}
html body .sdi:hover,html body .sdi.cur{background:#edf6ff}
html body .toast,html body .cmb-sync-panel,html body .zh-op-panel{border:1px solid #dfe5ec;border-radius:11px;background:#fff;box-shadow:0 16px 42px rgba(31,49,78,.15)}
html body .toast{border-left:3px solid var(--ok)}
html body .cmb-sync-bar,html body .zh-op-bar{background:linear-gradient(90deg,#0b6bcb,#0f8f9d)}

/* Charts and semantic accents. */
html body .hbar-t{background:#eef1f4}
html body .rrow.matched{background:#f1faf7}
html body .rrow.unmatched{background:#fffaf0}
html body .pay-step.cur .pay-dot{background:#d98816;box-shadow:0 0 0 4px #fff2d8}
html body .donut-ct b{color:#174f86}
html body .aux-tab.on{background:#0b6bcb;border-color:#0b6bcb}
html body .aux-kpi{border-radius:12px}

@media(max-width:1500px){
  html body .ledger-query-grid{grid-template-columns:repeat(12,minmax(0,1fr))!important}
  html body .ledger-query-field{grid-row:auto!important}
  html body .ledger-query-field.book{grid-column:span 3!important}
  html body .ledger-query-field.period{grid-column:span 9!important}
  html body .ledger-query-field.vouchers{grid-column:span 3!important}
  html body .ledger-query-field.counterpart{grid-column:span 2!important}
  html body .ledger-query-field.display-option{grid-column:span 3!important}
  html body .ledger-query-field.sort-option{grid-column:span 4!important}
  html body .ledger-query-field.date{grid-column:span 5!important}
  html body .ledger-query-field.subject{grid-column:span 7!important}
  html body .ledger-query-field.level,html body .ledger-query-field.level.wide{grid-column:span 7!important}
}
@media(max-width:920px){
  html body .sidebar{position:fixed;left:-225px;top:0;bottom:0;height:100dvh;z-index:1600;box-shadow:12px 0 34px rgba(31,49,78,.14);transition:left .2s ease}
  html body .sidebar.show{left:0}
  html body .mobile-nav-toggle{display:inline-flex}
  html body .mobile-nav-scrim{position:fixed;inset:0;z-index:1500;background:rgba(35,52,74,.34);backdrop-filter:blur(3px)}
  html body .mobile-nav-scrim.show{display:block}
  html body .main{width:100%;min-width:0}
  html body .ledger-query-grid{grid-template-columns:1fr!important}
  html body .ledger-query-field.book,html body .ledger-query-field.period,html body .ledger-query-field.vouchers,
  html body .ledger-query-field.counterpart,html body .ledger-query-field.display-option,html body .ledger-query-field.sort-option,
  html body .ledger-query-field.date,html body .ledger-query-field.subject,html body .ledger-query-field.level,
  html body .ledger-query-field.level.wide{grid-column:1!important;grid-row:auto!important}
  html body .ledger-period-control,html body .ledger-account-line{flex-wrap:wrap!important}
  html body .login-screen{align-items:flex-start;padding:24px}
  html body .login-stage{grid-template-columns:1fr;gap:22px;min-height:auto;padding:24px 0}
  html body .login-hero{display:block;padding:8px 4px}
  html body .login-brand-lockup{margin-bottom:24px}
  html body .login-brand-mark{width:62px;height:62px;flex-basis:62px;border-radius:17px}
  html body .brand-wordmark strong,html body .brand-wordmark b{font-size:26px}
  html body .login-hero h1{font-size:36px;max-width:560px}
  html body .login-hero p{font-size:13px;margin-top:12px}
  html body .login-metrics{margin-top:18px}
  html body .login-box{width:min(430px,100%);margin:0 auto}
}
@media(max-width:680px){
  html body .login-screen{padding:16px}
  html body .login-stage{padding:14px 0;gap:15px}
  html body .login-brand-lockup{gap:12px;margin-bottom:21px}
  html body .login-brand-mark{width:58px;height:58px;flex-basis:58px;border-radius:16px}
  html body .brand-wordmark{gap:9px}
  html body .brand-wordmark strong,html body .brand-wordmark b{font-size:21px}
  html body .brand-wordmark i{height:20px}
  html body .login-hero h1{font-size:30px}
  html body .login-hero p{display:block;font-size:13px;margin-top:13px}
  html body .login-metrics{display:none}
  html body .login-box{padding:24px 20px}
  html body .sidebar{position:fixed;left:-225px;top:0;bottom:0;height:100dvh;z-index:1600;box-shadow:12px 0 34px rgba(31,49,78,.14);transition:left .2s ease}
  html body .sidebar.show{left:0}
  html body .mobile-nav-toggle{display:inline-flex}
  html body .mobile-nav-scrim{position:fixed;inset:0;z-index:1500;background:rgba(35,52,74,.34);backdrop-filter:blur(3px)}
  html body .mobile-nav-scrim.show{display:block}
  html body .main{width:100%;min-width:0}
  html body .topbar{height:60px;padding:0 10px;gap:7px}
  html body .topbar>.btn{display:none}
  html body .tb-info{min-width:0}
  html body .tb-info h3{max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
  html body .tb-info p{display:none}
  html body #tb-period-control{padding:4px 7px;font-size:10px;white-space:nowrap}
  html body .notif-wrap{display:none}
  html body .tabbar{overflow-x:auto;white-space:nowrap}
  html body .content{padding:14px 12px 28px}
  html body .ph-title h1{font-size:19px}
  html body .modal{max-width:calc(100vw - 20px)}
  html body .nv-head{grid-template-columns:1fr}
  html body .nv-grid-wrap{overflow-x:auto}
  html body .nv-row{min-width:760px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
