:root{
  --navy:#073f48;--navy2:#0a5964;--green:#0b5963;--green2:#167783;--deepgreen:#05363d;
  --maroon:#8f4d3d;--maroon2:#a65c49;--blue:#258596;--orange:#b87436;--gold:#c49a55;--red:#b64a48;
  --bg:#f4f1eb;--card:#fffdf8;--line:#ded8cc;--text:#183238;--muted:#708085;--soft:#edf2f0;
  --shadow:0 14px 34px rgba(5,57,65,.09);--radius:16px;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,"Segoe UI",Tahoma,Arial,sans-serif;font-variant-numeric:tabular-nums}button,input,select{font:inherit}.hidden{display:none!important}
.boot{position:fixed;inset:0;display:grid;place-items:center;align-content:center;gap:10px;background:linear-gradient(145deg,#061a2f,#0a2d4b);color:#fff;z-index:9999}.boot b{letter-spacing:.8px}.boot span{color:#bed0dd;font-size:12px}.spinner{width:38px;height:38px;border-radius:50%;border:4px solid rgba(255,255,255,.18);border-top-color:#2ca565;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.login-view{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 20%,rgba(18,131,75,.18),transparent 34%),linear-gradient(140deg,#04172a 0%,#082944 58%,#0b3b32 100%)}.login-shell{width:min(960px,96vw);display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden;border-radius:24px;background:#fff;box-shadow:0 34px 80px rgba(0,0,0,.3);position:relative}.login-brand{position:absolute;top:24px;right:28px;display:flex;gap:12px;align-items:center;color:#fff;z-index:2}.brand-mark{width:58px;height:58px;border-radius:14px;background:linear-gradient(145deg,#0b6b3a,#0d4d2e);border:1px solid rgba(255,255,255,.25);display:grid;place-items:center;color:#fff;font-size:24px;font-weight:900;box-shadow:inset 0 0 0 3px rgba(255,255,255,.05)}.brand-mark.sm{width:42px;height:42px;font-size:18px;border-radius:11px}.login-brand strong{display:block;font-size:18px}.login-brand span{display:block;font-size:10px;color:#b9cad7;margin-top:3px}.login-copy{min-height:520px;padding:145px 54px 50px;color:#fff;background:linear-gradient(165deg,#071f38 0%,#0a2f50 56%,#0b6b3a 160%);position:relative;overflow:hidden}.login-copy:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;border:54px solid rgba(255,255,255,.035);left:-100px;bottom:-100px}.secure-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:6px 10px;font-size:11px;color:#d5e5ef;background:rgba(255,255,255,.05)}.login-copy h1{font-size:34px;margin:22px 0 10px}.login-copy p{max-width:440px;color:#c8d7e2;line-height:1.9;font-size:14px}.login-form{padding:130px 50px 44px;display:flex;flex-direction:column;gap:18px;direction:ltr}.login-form label,.form-stack label{display:grid;gap:7px;color:#4d5b68;font-size:12px;font-weight:700}.login-form input,.form-stack input,.form-stack select{border:1px solid #cfdbe3;border-radius:10px;padding:13px 12px;background:#fff;outline:none;direction:ltr}.login-form input:focus,.form-stack input:focus,.form-stack select:focus{border-color:#0b6b3a;box-shadow:0 0 0 3px rgba(11,107,58,.1)}.primary-btn{border:0;border-radius:10px;background:var(--green);color:#fff;padding:12px 15px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}.primary-btn:hover{background:#075b31}.primary-btn:disabled{opacity:.55;cursor:not-allowed}.form-error{min-height:18px;color:#b1222c;font-size:11px}.login-foot{position:absolute;left:40px;bottom:24px;color:#8a98a3;font-size:10px}
.app{min-height:100vh;display:grid;grid-template-columns:236px minmax(0,1fr);direction:ltr}.app.sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)}.sidebar{height:100vh;position:sticky;top:0;background:var(--navy);color:#fff;z-index:40;display:flex;flex-direction:column;direction:ltr;box-shadow:2px 0 18px rgba(0,0,0,.08)}.side-brand{height:88px;padding:16px 14px;display:flex;align-items:center;gap:11px;border-bottom:1px solid rgba(255,255,255,.09)}.brand-text b{display:block;font-size:15px}.brand-text small{display:block;color:#a8bdcc;font-size:9px;margin-top:4px}.sidebar-collapsed .brand-text,.sidebar-collapsed .nav-item b,.sidebar-collapsed .side-user,.sidebar-collapsed .logout-btn{display:none}.sidebar-collapsed .side-brand{justify-content:center}.sidebar nav{padding:14px 9px;flex:1}.nav-item{width:100%;height:52px;border:0;border-radius:11px;background:transparent;color:#d5e1ea;display:flex;align-items:center;gap:13px;padding:0 15px;cursor:pointer;margin:4px 0;text-align:left}.nav-item span{width:24px;flex:0 0 24px;text-align:center;font-size:20px}.nav-item b{font-size:13px;white-space:nowrap}.nav-item:hover,.nav-item.active{color:#fff;background:rgba(255,255,255,.105)}.nav-item.active{box-shadow:inset -3px 0 var(--green2)}.side-bottom{padding:12px 10px 15px;border-top:1px solid rgba(255,255,255,.08);display:grid;gap:8px}.collapse-btn,.logout-btn{border:0;background:rgba(255,255,255,.08);color:#fff;border-radius:10px;padding:10px;cursor:pointer}.collapse-btn{width:44px;justify-self:center}.side-user{padding:8px 10px;font-size:10px;color:#b9c9d5}.side-user b{display:block;color:#fff;font-size:12px;margin-bottom:3px}.logout-btn{font-size:11px;color:#d8e4ec}
.main{min-width:0;direction:ltr}.topbar{height:88px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:25}.top-title{display:flex;align-items:center;gap:12px}.top-title h1{margin:0;color:var(--navy);font-size:20px}.top-title p{margin:5px 0 0;color:var(--muted);font-size:10px;direction:ltr}.top-actions{display:flex;align-items:center;gap:8px;direction:ltr}.dataset-badge{font-size:10px;color:#54636f;background:#f5f8fa;border:1px solid var(--line);border-radius:999px;padding:8px 11px;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ghost-btn{border:1px solid var(--line);background:#fff;color:#304151;border-radius:9px;padding:8px 11px;font-weight:700;font-size:11px;cursor:pointer}.ghost-btn:hover{background:#f5f8fa}.mobile-menu{display:none;border:0;background:transparent;font-size:22px;color:var(--navy)}.page{display:none;padding:18px 22px 30px}.page.active{display:block}.no-data-banner{margin:16px 22px 0;border:1px solid #f0d79b;background:#fff8e5;color:#6f5205;border-radius:12px;padding:13px 15px;font-size:12px;line-height:1.7}
.filter-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 14px;margin-bottom:16px;display:flex;align-items:end;gap:12px;flex-wrap:wrap}.filter-panel.compact{box-shadow:none;margin-top:12px}.filter-group{min-width:132px}.filter-group.wide{flex:1;min-width:320px}.filter-group label{display:block;font-size:10px;color:var(--muted);font-weight:800;margin-bottom:6px}.filter-group select{width:100%;border:1px solid var(--line);border-radius:9px;padding:8px 10px;background:#fff;direction:ltr}.month-chips{display:flex;gap:5px;flex-wrap:wrap;direction:ltr}.month-chip{border:1px solid #d8e2e8;background:#fff;color:#2a3b4a;border-radius:7px;padding:7px 10px;font-size:10px;cursor:pointer}.month-chip.active{background:var(--navy);border-color:var(--navy);color:#fff}.filter-note{font-size:10px;color:#62717c;padding:8px 10px;border-radius:8px;background:#f6f9fa;border:1px solid var(--line)}
.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(135px,1fr));gap:11px;margin-bottom:14px}.kpi-grid.four{grid-template-columns:repeat(4,minmax(160px,1fr))}.kpi-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px 15px 13px;box-shadow:var(--shadow);min-height:112px;position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;top:0;right:0;left:0;height:4px;background:var(--accent,var(--green))}.kpi-card .klabel{font-size:11px;color:#687681;font-weight:800}.kpi-card .kvalue{margin-top:16px;font-size:23px;line-height:1;font-weight:900;color:var(--navy);direction:ltr;text-align:right}.kpi-card .ksub{margin-top:9px;font-size:9px;color:#86929b}.kpi-card.positive .kvalue{color:#0a6d3b}.kpi-card.negative .kvalue{color:#a62931}
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:14px}.panel-head{min-height:52px;padding:12px 15px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-head h3{margin:0;color:var(--navy);font-size:12px}.panel-head span{display:block;color:var(--muted);font-size:9px;margin-top:3px}.panel-body{padding:14px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.two-col.wide-left{grid-template-columns:1.35fr .8fr}.two-col.equal{grid-template-columns:1fr 1fr}.three-col{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.chart-holder{min-height:250px}.chart-svg{display:block;width:100%;height:240px;overflow:visible}.chart-grid{stroke:#e7edf1;stroke-width:1}.chart-axis{stroke:#cbd7df;stroke-width:1}.chart-label{fill:#687782;font-size:9px}.chart-value{fill:#50616e;font-size:8px}.legend{display:flex;gap:15px;align-items:center;direction:ltr;margin-bottom:6px;color:#65747f;font-size:9px}.legend i{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:4px}
.bar-list{display:grid;gap:10px}.bar-row{display:grid;grid-template-columns:minmax(110px,170px) 1fr 76px;gap:9px;align-items:center;font-size:10px}.bar-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-track{height:18px;background:#eef3f6;border-radius:6px;overflow:hidden}.bar-fill{height:100%;border-radius:6px;background:var(--maroon)}.bar-value{direction:ltr;text-align:left;font-weight:800;color:#324251}.insights{display:grid;gap:9px}.insight{background:#f8fbfc;border:1px solid var(--line);border-right:4px solid var(--green);border-radius:9px;padding:10px 11px;font-size:10px;line-height:1.65}.insight.warn{border-right-color:var(--orange)}.insight.loss{border-right-color:var(--red)}.profit-row{display:grid;grid-template-columns:48px 1fr 74px;gap:8px;align-items:center;margin:9px 0;font-size:10px;direction:ltr}.profit-row .track{height:14px;border-radius:5px;background:#edf2f5;position:relative;overflow:hidden}.profit-row .fill{height:100%;background:#0f7c45;border-radius:5px}.profit-row.neg .fill{background:#b4383f}.data-health{display:grid;gap:8px}.health-item{display:flex;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fafcfd;font-size:10px}.health-item b{direction:ltr}
.toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px;flex-wrap:wrap}.toolbar-right{display:flex;gap:7px}.segmented{display:flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff;direction:ltr}.segmented button{border:0;border-right:1px solid var(--line);background:#fff;padding:8px 12px;font-size:10px;cursor:pointer}.segmented button:last-child{border-right:0}.segmented button.active{background:var(--navy);color:#fff}.mini-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;margin-bottom:12px}.mini-kpi{background:#fff;border:1px solid var(--line);border-radius:11px;padding:10px 12px;text-align:center}.mini-kpi span{display:block;color:var(--muted);font-size:9px;margin-bottom:5px}.mini-kpi b{display:block;color:var(--navy);font-size:16px;direction:ltr}.matrix-panel{overflow:visible}.powerbi-head{border-top:4px solid var(--green)}.table-scroll{overflow:auto;background:#fff}.report-table{border-collapse:collapse;width:100%;min-width:920px;font-size:10px;direction:rtl}.report-table th{background:#113b59;color:#fff;padding:9px 8px;white-space:nowrap;text-align:center;position:sticky;top:0;z-index:3}.report-table td{padding:8px 9px;border-bottom:1px solid #e7edf1;text-align:center;direction:ltr;white-space:nowrap}.report-table th.account-col,.report-table td.account-col{position:sticky;right:0;z-index:4;text-align:right;direction:rtl;min-width:320px;max-width:420px}.report-table th.account-col{background:#113b59}.report-table tr.level-main td{background:#0b5f37;color:#fff;font-weight:900}.report-table tr.level-main td.account-col{background:#0b5f37}.report-table tr.level-sub td{background:#e9f5ef;color:#075b34;font-weight:800}.report-table tr.level-sub td.account-col{background:#e9f5ef}.report-table tr.level-account td{background:#fff;color:#33434f}.report-table tr.level-account:nth-child(even) td{background:#fbfcfd}.report-table tr.level-account td.account-col{background:inherit}.report-table tr.total-line td{background:#064b2c!important;color:#fff!important;font-weight:900}.tree-label{display:flex;align-items:center;gap:7px;min-width:0}.tree-indent-1{padding-right:24px}.tree-indent-2{padding-right:50px}.tree-toggle{width:24px;height:24px;flex:0 0 24px;border:1px solid #b6c8d1;border-radius:5px;background:#fff;color:#173b54;font-weight:900;display:grid;place-items:center;cursor:pointer;font-size:15px;line-height:1}.level-main .tree-toggle{border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.12);color:#fff}.tree-spacer{width:24px;flex:0 0 24px}.account-text{overflow:hidden;text-overflow:ellipsis}.amount-neg{color:#a12b32}.level-main .amount-neg{color:#fff}.no-rows{padding:40px;text-align:center;color:#78858f}
.report-banner{display:flex;align-items:center;gap:16px;padding:10px 18px;border:2px solid #1584d6;border-bottom-width:3px;background:#fff;margin-bottom:0}.report-banner .report-logo{width:72px;height:72px;display:grid;place-items:center;background:#123e27;color:#fff;font-size:24px;font-weight:900;border:1px solid #2d6b48}.report-banner h2{margin:0;font-size:27px;color:var(--maroon);letter-spacing:.2px}.report-banner p{margin:6px 0 0;color:#666;font-size:11px;direction:ltr;text-align:right}.section-bar{color:#fff;font-size:11px;font-weight:800;text-align:center;padding:6px 10px}.section-bar.maroon{background:var(--maroon)}.section-bar.green{background:#087737}.expense-banner{border-color:#1584d6}.comparison-banner h2{font-size:24px}.donut-layout{display:flex;align-items:center;justify-content:center;gap:26px;min-height:230px;direction:ltr}.donut-chart{width:190px;height:190px;border-radius:50%;position:relative;flex:0 0 190px}.donut-chart:after{content:"";position:absolute;inset:42px;border-radius:50%;background:#fff}.donut-center{position:absolute;inset:42px;z-index:2;border-radius:50%;display:grid;place-items:center;align-content:center;text-align:center;color:var(--navy)}.donut-center span{font-size:9px;color:var(--muted)}.donut-center b{font-size:15px;margin-top:3px;direction:ltr}.donut-legend{display:grid;gap:8px;font-size:9px;min-width:190px;direction:rtl}.donut-legend div{display:grid;grid-template-columns:12px 1fr auto;gap:6px;align-items:center}.donut-legend i{width:9px;height:9px;border-radius:50%}.donut-legend b{direction:ltr}.compact-table .report-table{min-width:660px}.compact-table .report-table th.account-col,.compact-table .report-table td.account-col{min-width:230px}
.data-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}.dropzone{border:2px dashed #aebfca;border-radius:14px;background:#f8fbfc;min-height:210px;display:grid;place-items:center;align-content:center;gap:9px;text-align:center;padding:20px;cursor:pointer}.dropzone:hover{border-color:var(--green);background:#f3faf6}.upload-icon{font-size:42px;color:var(--green)}.dropzone b{font-size:15px;color:var(--navy)}.dropzone small{max-width:500px;color:#71808b;line-height:1.6;font-size:10px}.progress{margin-top:15px;border:1px solid var(--line);border-radius:10px;padding:10px;position:relative;overflow:hidden}.progress>div{position:absolute;right:0;top:0;bottom:0;width:0;background:rgba(11,107,58,.12);transition:.2s}.progress span{position:relative;font-size:10px}.validation-card{margin-top:14px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.validation-head{padding:10px 12px;background:#f5f8fa;display:flex;justify-content:space-between;align-items:center}.validation-head b{font-size:12px}.validation-status{font-size:9px;border-radius:999px;padding:5px 8px;background:#e7f5ed;color:#0a6a3a}.validation-status.warn{background:#fff3d7;color:#7a5800}.validation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px}.validation-metric{border:1px solid var(--line);border-radius:8px;padding:9px}.validation-metric span{display:block;font-size:8px;color:var(--muted)}.validation-metric b{display:block;font-size:12px;margin-top:4px;direction:ltr}.issues{padding:0 12px 12px;display:grid;gap:5px}.issue{font-size:9px;padding:7px 8px;border-radius:7px;background:#fff7e4;color:#715000}.publish-row{padding:0 12px 12px;display:flex;justify-content:flex-start;gap:8px}.dataset-card{border:1px solid var(--line);border-radius:10px;padding:10px 11px;margin-bottom:8px;background:#fbfcfd;font-size:10px}.dataset-card.active{border-right:4px solid var(--green);background:#f4faf6}.dataset-card b{display:block;color:var(--navy);font-size:11px;margin-bottom:5px}.dataset-meta{color:#72808b;line-height:1.7}.form-stack{display:grid;gap:12px}.user-action{display:flex;gap:5px;justify-content:center}.tiny-btn{border:1px solid var(--line);border-radius:6px;background:#fff;padding:5px 7px;font-size:9px;cursor:pointer}.tiny-btn.danger{color:#a62d34;border-color:#ecc7ca}.role-pill{display:inline-block;padding:4px 7px;border-radius:999px;font-size:8px;background:#eaf5ef;color:#076136}.role-pill.admin{background:#e8eef6;color:#173f65}
.modal{position:fixed;inset:0;background:rgba(4,19,34,.78);display:grid;place-items:center;z-index:1000;padding:20px}.modal-card{width:min(460px,96vw);background:#fff;border-radius:18px;padding:26px;box-shadow:0 28px 80px rgba(0,0,0,.35)}.modal-card h2{margin:14px 0 8px;color:var(--navy)}.modal-card p{font-size:11px;color:var(--muted);line-height:1.7}.toast{position:fixed;left:24px;bottom:24px;background:#102c44;color:#fff;border-radius:10px;padding:11px 14px;font-size:10px;box-shadow:var(--shadow);transform:translateY(30px);opacity:0;pointer-events:none;transition:.2s;z-index:1200}.toast.show{transform:none;opacity:1}.toast.error{background:#8f2930}
@media print{.sidebar,.topbar,.filter-panel,.toolbar,.no-data-banner{display:none!important}.app{display:block}.page{display:none!important;padding:0}.page.active{display:block!important}.panel{box-shadow:none;break-inside:avoid}.report-table th{position:static}.report-table th.account-col,.report-table td.account-col{position:static}}
@media(max-width:1250px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.kpi-grid.four{grid-template-columns:repeat(2,1fr)}.three-col{grid-template-columns:1fr 1fr}.three-col>.panel:last-child{grid-column:1/-1}.report-banner h2{font-size:22px}}
@media(max-width:900px){.app,.app.sidebar-collapsed{display:block}.sidebar{position:fixed;right:0;top:0;width:246px;transform:translateX(105%);transition:.25s}.sidebar.mobile-open{transform:none}.sidebar-collapsed .brand-text,.sidebar-collapsed .nav-item b,.sidebar-collapsed .side-user,.sidebar-collapsed .logout-btn{display:block}.sidebar-collapsed .side-brand{justify-content:flex-start}.mobile-menu{display:block}.topbar{height:auto;min-height:76px;padding:12px 14px}.top-title h1{font-size:16px}.top-actions{gap:5px}.dataset-badge{display:none}.page{padding:14px}.two-col,.two-col.wide-left,.two-col.equal,.three-col,.data-layout{grid-template-columns:1fr}.kpi-grid,.kpi-grid.four{grid-template-columns:repeat(2,1fr)}.mini-kpis{grid-template-columns:repeat(2,1fr)}.report-banner{padding:9px 11px}.report-banner .report-logo{width:52px;height:52px}.report-banner h2{font-size:17px}.report-banner p{font-size:9px}.filter-group.wide{min-width:100%}.validation-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.login-shell{grid-template-columns:1fr}.login-copy{min-height:260px;padding:105px 28px 28px}.login-copy h1{font-size:26px}.login-form{padding:30px 28px 58px}.login-brand{top:22px;right:24px}.login-foot{left:28px}.top-actions .ghost-btn{display:none}.kpi-grid,.kpi-grid.four{grid-template-columns:1fr 1fr}.kpi-card{min-height:102px;padding:13px 12px}.kpi-card .kvalue{font-size:18px}.two-col,.three-col{display:block}.panel{margin-bottom:12px}.page{padding:10px}.filter-panel{padding:10px}.filter-group{min-width:110px}.month-chip{padding:6px 8px}.mini-kpis{grid-template-columns:1fr 1fr}.report-table th.account-col,.report-table td.account-col{min-width:245px}.report-banner h2{font-size:14px}.report-banner .report-logo{width:44px;height:44px;font-size:16px}.donut-layout{display:grid;justify-items:center}.validation-grid{grid-template-columns:1fr 1fr}}

/* Password visibility toggle */
.password-wrap{position:relative;display:block;width:100%}
.password-wrap input{width:100%;padding-right:44px!important;box-sizing:border-box}
.password-eye{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:8px;background:transparent;display:grid;place-items:center;cursor:pointer;font-size:17px;line-height:1;color:#61717e}
.password-eye:hover{background:#eef4f1;color:#0b6b3a}
.password-eye.showing{background:#e5f4eb;color:#0b6b3a}
.login-form .password-wrap input,.form-stack .password-wrap input{direction:ltr}

/* ===== ZOYA HOUSE BRAND REFRESH v3 ===== */
:root{
  --navy:#30352e;--navy2:#3c473d;--green:#607354;--green2:#78886a;--deepgreen:#42513f;
  --maroon:#8a5e43;--maroon2:#9d6a4b;--blue:#6e8790;--orange:#bd8754;--gold:#a87d49;--red:#a84f4f;
  --bg:#f3efe8;--card:#fffdf9;--line:#e3ddd3;--text:#2e312e;--muted:#74766f;--soft:#eee9e1;
  --shadow:0 10px 26px rgba(62,51,39,.08);
}
html,body{background:var(--bg)}
.boot{background:linear-gradient(145deg,#292e28,#465142);color:#f7f1e7}.boot span{color:#d8d0c5}.spinner{border-top-color:#c8a77c}

/* Login cover: English only + restaurant visual identity */
.login-view{direction:ltr;background:#e9e2d7;padding:24px}
.login-shell{width:min(1120px,96vw);min-height:650px;grid-template-columns:.88fr 1.12fr;direction:ltr;border-radius:28px;background:#f8f4ed;box-shadow:0 34px 90px rgba(53,43,33,.28);border:1px solid rgba(116,91,62,.12)}
.login-copy{grid-column:2;grid-row:1;min-height:650px;padding:0;background:
  radial-gradient(circle at 70% 15%,rgba(196,154,85,.24),transparent 32%),
  linear-gradient(145deg,#062f36,#0b5963 58%,#0e6972);position:relative;color:#fff}
.login-copy:after{display:none}
.login-brand{position:absolute;top:34px;left:38px;right:auto;display:flex;gap:14px;align-items:center;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.25)}
.login-brand .brand-logo{width:74px;height:74px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.72);box-shadow:0 8px 24px rgba(0,0,0,.22);background:#efe7da}
.login-brand strong{font-size:22px;letter-spacing:1.2px}.login-brand span{font-size:12px;color:#f0e9df;margin-top:4px;letter-spacing:.35px}
.login-copy-text{position:absolute;left:42px;right:42px;bottom:48px;padding:26px 28px;border-radius:18px;background:rgba(45,41,35,.52);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2)}
.login-copy-text h1{font-size:38px;margin:0 0 8px;letter-spacing:.3px}.login-copy-text p{font-size:14px;margin:0;color:#f2ece4;line-height:1.6}
.login-form{grid-column:1;grid-row:1;padding:96px 62px 70px;direction:ltr;display:flex;justify-content:center;flex-direction:column;gap:18px;background:#f8f4ed}
.form-heading{display:flex;align-items:center;gap:14px;margin-bottom:18px;color:#5f503e}.form-heading img{width:70px;height:70px;border-radius:50%;object-fit:cover;border:1px solid #d6c9b8;background:#eee6d9}.form-heading strong{display:block;font-size:21px;letter-spacing:1px;color:#4f4437}.form-heading span{display:block;margin-top:4px;font-size:12px;color:#8c7b68}
.login-form label{direction:ltr;text-align:left;color:#675c4f;font-size:12px;letter-spacing:.1px}
.login-form input{background:#fffdf9;border-color:#d8cfc3;padding:14px 13px;font-size:14px}
.login-form input:focus{border-color:#8a7358;box-shadow:0 0 0 3px rgba(138,115,88,.12)}
.login-form .primary-btn{background:#5d6f54;border-radius:11px;padding:14px 16px;font-size:14px;letter-spacing:.2px}.login-form .primary-btn:hover{background:#4d6147}
.login-form .form-error{font-size:11px;line-height:1.55;color:#a34242;text-align:left;min-height:34px}
.login-foot{left:62px;bottom:28px;color:#8c8275;font-size:10px;direction:ltr}
.password-eye{right:7px;left:auto}.password-eye:hover,.password-eye.showing{background:#eee9df;color:#5d6f54}

/* Brand mark throughout the app */
.brand-mark.logo-mark{background:#efe8dc;overflow:hidden;border-color:rgba(198,177,149,.45);box-shadow:none}.brand-mark.logo-mark img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.side-brand{height:92px;border-bottom-color:rgba(255,255,255,.1)}
.sidebar{background:linear-gradient(180deg,#30352e 0%,#263028 100%)}
.brand-text small{color:#c6c9bf}.nav-item{color:#e0e1da}.nav-item.active{box-shadow:inset -3px 0 #b99a72;background:rgba(255,255,255,.11)}
.topbar{background:#fffdf9}.dataset-badge{background:#f4efe7}
.month-chip.active{background:#3d493e;border-color:#3d493e}
.kpi-card,.panel,.filter-panel{background:#fffdf9}
.report-table th,.report-table th.account-col{background:#41483f}.report-table tr.level-main td,.report-table tr.level-main td.account-col{background:#607354}.report-table tr.level-sub td,.report-table tr.level-sub td.account-col{background:#edf0e9;color:#40523f}.report-table tr.total-line td{background:#455644!important}.powerbi-head{border-top-color:#a87d49}
.report-banner{border-color:#cdb99c;background:#fffdf9}.report-banner .report-logo{width:72px;height:72px;background:#efe7da;border:1px solid #d2c1aa;border-radius:50%;overflow:hidden}.report-banner .report-logo img{width:100%;height:100%;object-fit:cover}.report-banner h2{color:#79533d}.section-bar.green{background:#607354}.section-bar.maroon{background:#8a5e43}
.primary-btn{background:#607354}.primary-btn:hover{background:#4f6348}

@media(max-width:900px){
  .login-shell{grid-template-columns:1fr;min-height:0}
  .login-copy{grid-column:1;grid-row:1;min-height:330px}
  .login-form{grid-column:1;grid-row:2;padding:44px 42px 66px}
  .login-brand{top:22px;left:24px}.login-copy-text{left:24px;right:24px;bottom:24px}.login-copy-text h1{font-size:30px}.login-foot{left:42px;bottom:24px}
}
@media(max-width:560px){
  .login-view{padding:0}.login-shell{width:100vw;border-radius:0;border:0}
  .login-copy{min-height:285px}.login-brand .brand-logo{width:58px;height:58px}.login-brand strong{font-size:18px}.login-copy-text{padding:18px}.login-copy-text h1{font-size:25px}
  .login-form{padding:34px 26px 66px}.form-heading img{width:58px;height:58px}.form-heading strong{font-size:18px}.login-foot{left:26px}
}

/* ===== LOGIN + REPORT POLISH ===== */
.login-brand .brand-logo,.form-heading img,.brand-mark.logo-mark img,.report-banner .report-logo img{object-fit:contain!important;background:#ece6db!important}
.login-brand .brand-logo,.form-heading img{border-radius:18px!important}
.brand-mark.logo-mark,.report-banner .report-logo{border-radius:14px!important}
.login-copy-text{max-width:520px}
.login-copy-text h1{font-weight:650;letter-spacing:.8px}
.login-copy-text p{font-size:13px}
.account-picker-block{display:grid;gap:9px}
.account-picker-title{font-size:12px;font-weight:800;color:#675c4f;letter-spacing:.1px}
.login-accounts{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.login-account{appearance:none;border:1px solid #d7cec2;background:#fffdf9;color:#4f4437;border-radius:12px;padding:11px 12px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;min-width:0;transition:.15s ease}
.login-account:hover{border-color:#9b856b;background:#f7f1e7;transform:translateY(-1px)}
.login-account.active{border-color:#617457;background:#eef2e9;box-shadow:0 0 0 3px rgba(96,115,84,.12)}
.login-account-avatar{width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:#ded4c5;color:#745b40;display:grid;place-items:center;font-weight:900;font-size:12px;text-transform:uppercase}
.login-account.active .login-account-avatar{background:#607354;color:#fff}
.login-account-copy{min-width:0;display:grid;gap:2px}.login-account-copy b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.login-account-copy span{font-size:9px;color:#948575;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.login-account-loading{grid-column:1/-1;padding:18px;border:1px dashed #d7cec2;border-radius:12px;color:#8c8275;text-align:center;font-size:11px}
.login-form input:disabled{background:#eee9e1;color:#9a948b;cursor:not-allowed}
.login-form .primary-btn:disabled{background:#a9b0a4}
.nav-item b{display:grid;gap:2px;line-height:1.05}.nav-item b small{font-size:8px;font-weight:500;color:#bfc5bc}.nav-item.active b small{color:#e8e9e4}
.report-table tr.calc-line td{background:#f1eee7!important;color:#4c5149!important;font-weight:900;border-top:1px solid #d9d0c4;border-bottom:1px solid #d9d0c4}
.report-table tr.calc-margin td{background:#faf7f1!important;color:#6d665c!important;font-weight:800}
.report-table tr.net-line td{background:#455644!important;color:#fff!important;font-weight:900}
.report-table tr.net-margin td{background:#dfe8dc!important;color:#354533!important;font-weight:900}
.filter-group .quick-select.quick-q1,.filter-group .quick-select.quick-q2,.filter-group .quick-select.quick-q3,.filter-group .quick-select.quick-q4{border-color:#9c876c;background:#faf6f0}
.data-warning{margin:8px 0;padding:9px 10px;border-radius:8px;background:#fff5e5;border:1px solid #ead5ad;color:#745a29;font-size:10px;line-height:1.55}
.data-ok{margin:8px 0;padding:9px 10px;border-radius:8px;background:#edf6ed;border:1px solid #c9dfc7;color:#476142;font-size:10px;line-height:1.55}
@media(max-width:560px){.login-accounts{grid-template-columns:1fr}.login-account{padding:10px}.account-picker-title{font-size:11px}}


/* ===== PRIVATE ACCOUNT SELECTOR ===== */
.account-picker-block,.account-picker-title,.login-accounts,.login-account,.login-account-loading{display:none!important}
.account-select-label{display:grid!important;gap:8px!important;color:#675c4f!important;font-size:12px!important;font-weight:800!important;text-align:left!important}
.account-select-wrap{position:relative;width:100%}
.account-select-wrap:after{content:'⌄';position:absolute;right:14px;top:50%;transform:translateY(-54%);pointer-events:none;color:#6d655c;font-size:18px}
.account-select-wrap select{appearance:none;-webkit-appearance:none;width:100%;box-sizing:border-box;background:#fffdf9;border:1px solid #d8cfc3;border-radius:10px;padding:14px 42px 14px 13px;font:700 14px/1.2 inherit;color:#4f4437;outline:none;cursor:pointer}
.account-select-wrap select:focus{border-color:#8a7358;box-shadow:0 0 0 3px rgba(138,115,88,.12)}
.account-select-wrap select:disabled{background:#eee9e1;color:#9a948b;cursor:not-allowed}


/* ===== MOBILE RESPONSIVE LAYOUT ===== */
.mobile-backdrop,.mobile-bottom-nav{display:none}

@media (max-width:900px){
  html,body{max-width:100%;overflow-x:hidden}
  body.mobile-menu-open{overflow:hidden;touch-action:none}
  .app,.app.sidebar-collapsed{display:block;min-height:100dvh}
  .main{min-height:100dvh;padding-bottom:calc(72px + env(safe-area-inset-bottom));overflow-x:hidden}
  .sidebar{position:fixed;right:0;left:auto;top:0;width:min(86vw,320px);height:100dvh;max-height:100dvh;transform:translateX(105%);transition:transform .22s ease;box-shadow:-14px 0 40px rgba(25,29,25,.26);z-index:70;overflow:hidden}
  .sidebar.mobile-open{transform:translateX(0)}
  .sidebar nav{overflow-y:auto;overscroll-behavior:contain;padding-bottom:18px}
  .sidebar .side-bottom{padding-bottom:calc(14px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(38,48,40,.92),#263028)}
  .collapse-btn{display:none}
  .mobile-backdrop{display:block;position:fixed;inset:0;border:0;background:rgba(29,30,27,.48);backdrop-filter:blur(2px);opacity:0;visibility:hidden;pointer-events:none;transition:.2s ease;z-index:60}
  .mobile-backdrop.show{opacity:1;visibility:visible;pointer-events:auto}
  .mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:45;display:grid;grid-template-columns:repeat(5,1fr);gap:2px;padding:7px max(7px,env(safe-area-inset-left)) calc(7px + env(safe-area-inset-bottom)) max(7px,env(safe-area-inset-right));background:rgba(255,253,249,.96);border-top:1px solid #ddd4c8;box-shadow:0 -10px 28px rgba(62,51,39,.12);backdrop-filter:blur(12px)}
  .mobile-bottom-item{appearance:none;border:0;background:transparent;color:#746d63;border-radius:12px;min-height:54px;padding:5px 3px;display:grid;place-items:center;align-content:center;gap:3px;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .mobile-bottom-item span{font-size:20px;line-height:1}.mobile-bottom-item small{font-size:9px;font-weight:800;white-space:nowrap}
  .mobile-bottom-item.active{background:#edf1e9;color:#4f6348}.mobile-bottom-item.active span{transform:translateY(-1px)}
  .mobile-more{color:#6d5e4d}
  .mobile-menu{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#f4efe7;border:1px solid #ddd4c8;font-size:20px;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .topbar{height:auto;min-height:72px;padding:10px 12px;gap:8px;top:0;z-index:30;padding-top:calc(10px + env(safe-area-inset-top))}
  .top-title{min-width:0;gap:9px}.top-title>div{min-width:0}.top-title h1{font-size:15px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:58vw}.top-title p{font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:58vw}
  .top-actions{flex:0 0 auto}.dataset-badge{display:none}.top-actions .ghost-btn{padding:9px 10px;font-size:10px}
  .page{padding:12px 10px 22px}.no-data-banner{margin:12px 10px 0}
  .two-col,.two-col.wide-left,.two-col.equal,.three-col,.data-layout{grid-template-columns:1fr}
  .three-col>.panel:last-child{grid-column:auto}
  .panel{border-radius:12px;margin-bottom:12px}.panel-head{padding:10px 11px;min-height:48px}.panel-head h3{font-size:11px;line-height:1.35}.panel-body{padding:11px}
  .chart-holder{min-height:220px}.chart-svg{height:220px;min-width:560px}.chart-holder{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
  .kpi-grid,.kpi-grid.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.kpi-card{min-width:0;min-height:100px;padding:12px 11px}.kpi-card .klabel{font-size:9.5px;line-height:1.3}.kpi-card .kvalue{font-size:clamp(17px,5vw,22px);margin-top:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-card .ksub{font-size:8px;line-height:1.35}
  .mini-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mini-kpi{min-width:0}.mini-kpi b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .filter-panel,.filter-panel.compact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:9px;padding:10px;margin-bottom:12px;margin-top:0;border-radius:12px}
  .filter-group{min-width:0;width:100%}.filter-group.wide{min-width:0;grid-column:1/-1}.filter-note{grid-column:1/-1;font-size:9px;line-height:1.45}
  .filter-group select{min-height:42px;font-size:12px}.month-chips{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:6px;padding:2px 1px 5px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none}.month-chips::-webkit-scrollbar{display:none}.month-chip{flex:0 0 auto;min-width:54px;min-height:40px;padding:8px 10px;font-size:10px;scroll-snap-align:start;touch-action:manipulation}
  .toolbar{gap:8px}.segmented{flex:1;min-width:0}.segmented button{flex:1;min-height:42px;padding:8px 9px}.toolbar-right{display:grid;grid-template-columns:1fr 1fr;gap:7px;flex:1}.toolbar-right .ghost-btn{min-height:42px;padding:8px}
  .table-scroll{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin}.report-table{min-width:760px;font-size:9.5px}.report-table th,.report-table td{padding:8px 7px}.report-table th.account-col,.report-table td.account-col{min-width:220px;max-width:240px}.report-table td.account-col{white-space:normal;line-height:1.35}.account-text{white-space:normal;overflow:visible;text-overflow:clip}.tree-toggle{width:32px;height:32px;flex:0 0 32px;font-size:18px}.tree-spacer{width:32px;flex:0 0 32px}.tree-indent-1{padding-right:14px}.tree-indent-2{padding-right:30px}
  .report-banner{padding:10px 11px;border-radius:12px;margin-bottom:10px}.report-banner .report-logo{width:48px;height:48px;flex:0 0 48px}.report-banner h2{font-size:15px;line-height:1.25}.report-banner p{font-size:8.5px;line-height:1.35}
  .section-bar{font-size:10px;padding:9px 11px}
  .validation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dropzone{min-height:180px}
  .modal{padding:18px;padding-bottom:calc(18px + env(safe-area-inset-bottom));align-items:flex-end}.modal-card{width:100%;max-width:520px;max-height:88dvh;overflow-y:auto;border-radius:22px 22px 14px 14px;padding:22px 18px}.form-stack input,.form-stack select{min-height:44px}
}

@media (max-width:640px){
  .login-view{padding:0;display:block;min-height:100dvh;background:#f3eee6}
  .login-shell{width:100%;min-height:100dvh;border:0;border-radius:0;box-shadow:none;grid-template-columns:1fr;display:grid;grid-template-rows:190px auto auto;background:#f8f4ed}
  .login-copy{grid-column:1;grid-row:1;min-height:190px;height:190px;padding:0;border-radius:0;background:linear-gradient(180deg,rgba(41,39,32,.16),rgba(41,39,32,.48)),radial-gradient(circle at 25% 25%,rgba(196,154,85,.18),transparent 36%),linear-gradient(145deg,#062f36,#0b5963 58%,#0e6972)}
  .login-brand{top:calc(18px + env(safe-area-inset-top));left:18px;right:auto}.login-brand .brand-logo{width:54px;height:54px}.login-brand strong{font-size:17px}.login-brand span{font-size:10px}
  .login-copy-text{left:18px;right:18px;bottom:16px;padding:12px 14px;border-radius:13px;max-width:none}.login-copy-text h1{font-size:22px;margin:0 0 3px}.login-copy-text p{font-size:10px;line-height:1.4}
  .login-form{grid-column:1;grid-row:2;padding:24px 20px 18px;gap:13px;justify-content:start}.form-heading{display:none}.account-select-wrap select,.login-form input{min-height:48px;font-size:15px}.login-form .primary-btn{min-height:50px;font-size:14px}.login-form .form-error{min-height:24px}
  .login-foot{position:static;grid-column:1;grid-row:3;padding:0 20px calc(16px + env(safe-area-inset-bottom));text-align:center;color:#8c8275}
}

@media (max-width:560px){
  .top-actions .ghost-btn{display:none}
  .top-title h1,.top-title p{max-width:72vw}.top-title h1{font-size:14px}.top-title p{font-size:8px}
  .page{padding:9px 8px 18px}.no-data-banner{margin:9px 8px 0}
  .panel-body{padding:9px}.panel-head{padding:9px 10px}.panel-head h3{font-size:10.5px}
  .report-table{min-width:690px}.report-table th.account-col,.report-table td.account-col{min-width:195px;max-width:210px}
  .toolbar{display:grid;grid-template-columns:1fr}.toolbar-right{width:100%}.segmented{width:100%}
  .bar-row{grid-template-columns:minmax(0,1fr) auto;gap:5px 8px}.bar-label{grid-column:1;grid-row:1}.bar-value{grid-column:2;grid-row:1;text-align:left}.bar-track{grid-column:1/-1;grid-row:2;height:14px}
  .donut-layout{display:grid;justify-items:center}.legend{flex-wrap:wrap;gap:8px}
  .chart-svg{min-width:520px;height:210px}
}

@media (max-width:420px){
  .kpi-grid,.kpi-grid.four{grid-template-columns:1fr}.kpi-card{min-height:92px}.kpi-card .kvalue{font-size:21px}
  .mini-kpis{grid-template-columns:1fr 1fr}.mini-kpi{padding:9px 7px}.mini-kpi span{font-size:8px}.mini-kpi b{font-size:13px}
  .filter-panel,.filter-panel.compact{grid-template-columns:1fr}.filter-group.wide,.filter-note{grid-column:1}.month-chip{min-width:50px}
  .mobile-bottom-item small{font-size:8px}.mobile-bottom-item span{font-size:18px}.mobile-bottom-item{min-height:52px}
  .report-banner h2{font-size:13px}.report-banner p{display:none}.report-banner .report-logo{width:42px;height:42px;flex-basis:42px}
}

@media (orientation:landscape) and (max-height:520px) and (max-width:900px){
  .mobile-bottom-nav{padding-top:4px}.mobile-bottom-item{min-height:44px}.mobile-bottom-item small{display:none}.main{padding-bottom:calc(55px + env(safe-area-inset-bottom))}
  .login-shell{grid-template-columns:.85fr 1.15fr;grid-template-rows:1fr;min-height:100dvh}.login-copy{grid-column:2;grid-row:1;height:100dvh;min-height:100dvh}.login-form{grid-column:1;grid-row:1;padding:24px 20px}.login-foot{display:none}.login-copy-text{display:none}
}


/* ===== SULTAN BALIK FINANCIAL INTELLIGENCE ===== */
body{background:linear-gradient(180deg,#f8f6f1 0,#f2efe8 100%)}
.boot{background:radial-gradient(circle at 30% 20%,rgba(196,154,85,.18),transparent 28%),linear-gradient(145deg,#062f36,#0b5963)}
.spinner{border-top-color:var(--gold)}
.login-view{background:radial-gradient(circle at 18% 18%,rgba(196,154,85,.22),transparent 32%),linear-gradient(135deg,#042f36,#0b5963 58%,#0d6873)}
.login-shell{background:#fffdf8;box-shadow:0 38px 90px rgba(4,47,54,.34)}
.login-copy{background:radial-gradient(circle at 84% 15%,rgba(196,154,85,.26),transparent 26%),radial-gradient(circle at 15% 78%,rgba(255,255,255,.07),transparent 26%),linear-gradient(150deg,#062f36 0%,#0b5963 55%,#103c43 100%)}
.login-copy:before{content:"";position:absolute;inset:0;background-image:linear-gradient(30deg,rgba(255,255,255,.025) 12%,transparent 12.5%,transparent 87%,rgba(255,255,255,.025) 87.5%),linear-gradient(150deg,rgba(255,255,255,.025) 12%,transparent 12.5%,transparent 87%,rgba(255,255,255,.025) 87.5%);background-size:52px 90px;opacity:.65}
.login-copy:after{border-color:rgba(196,154,85,.08)}
.login-brand{right:auto;left:28px;direction:ltr}.login-brand span{color:#d9e3df}
.brand-logo,.form-heading img{background:#fffaf0!important;border:1px solid rgba(196,154,85,.45)!important;object-fit:contain!important}
.login-copy-text{position:absolute;left:54px;right:54px;bottom:52px;z-index:2}.login-copy-text h1{font-size:42px;line-height:1.06;margin:18px 0 12px;letter-spacing:-.8px}.login-copy-text p{font-size:13px;line-height:1.7;max-width:480px;color:#d8e5e1}.secure-pill{border-color:rgba(214,185,128,.45);color:#f0dfbd;background:rgba(196,154,85,.08);letter-spacing:.9px;font-weight:800}
.login-branch-pills{display:flex;gap:8px;margin-top:18px}.login-branch-pills span{border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:7px 11px;color:#fff;font-size:10px;font-weight:800;letter-spacing:.8px;background:rgba(255,255,255,.06)}
.login-form{background:#fffdf8}.form-heading strong{color:#173b40}.form-heading span{color:#8b7d68}.login-form label,.account-select-label{color:#5c5448!important}.login-form input,.account-select-wrap select{background:#fffaf3;border-color:#dcd1bf}.login-form input:focus,.account-select-wrap select:focus{border-color:#b68b4c;box-shadow:0 0 0 3px rgba(196,154,85,.14)}.login-form .primary-btn{background:#0b5963}.login-form .primary-btn:hover{background:#074a53}.login-foot{color:#968873}
.sidebar{background:linear-gradient(180deg,#073f48 0%,#052f35 100%)}.side-brand{border-bottom-color:rgba(255,255,255,.1)}.brand-mark.logo-mark{background:#fff8e8;border-color:rgba(196,154,85,.4)}.brand-text small{color:#b9d0cf}.nav-item{color:#d8e8e6}.nav-item:hover,.nav-item.active{background:rgba(255,255,255,.09)}.nav-item.active{box-shadow:inset 3px 0 var(--gold)}.side-user{color:#b9cecc}.side-bottom{border-top-color:rgba(255,255,255,.1)}
.topbar{background:rgba(255,253,248,.96);backdrop-filter:blur(12px)}.top-title h1{color:#0b4650}.dataset-badge{background:#f4f0e7;color:#675f52;border-color:#ddd5c8}
.hero-strip{margin-bottom:14px;padding:24px 28px;border-radius:18px;background:radial-gradient(circle at 80% 10%,rgba(196,154,85,.22),transparent 28%),linear-gradient(120deg,#073f48,#0b5963);color:#fff;display:flex;align-items:center;justify-content:space-between;box-shadow:0 16px 34px rgba(7,63,72,.15);overflow:hidden;position:relative}.hero-strip:after{content:"";position:absolute;width:240px;height:240px;border:44px solid rgba(255,255,255,.045);border-radius:50%;right:-80px;bottom:-140px}.hero-strip>div{position:relative;z-index:1}.hero-strip span{font-size:9px;font-weight:900;letter-spacing:1.4px;color:#e2c48e}.hero-strip h2{margin:6px 0 3px;font-size:28px;letter-spacing:-.3px}.hero-strip p{margin:0;color:#d7e6e4;font-size:11px}.hero-branches{display:flex;align-items:center;gap:10px}.hero-branches span{border:1px solid rgba(255,255,255,.22);color:#fff;border-radius:999px;padding:8px 12px;letter-spacing:.8px}.hero-branches i{width:22px;height:1px;background:#d7b77a;display:block}
.filter-panel{background:#fffdf8}.month-chip.active{background:#0b5963;border-color:#0b5963}.ghost-btn:hover{background:#f5f1e8}.primary-btn{background:#0b5963}.primary-btn:hover{background:#074a53}
.kpi-card,.panel,.filter-panel{background:#fffdf8}.kpi-card:before{height:3px}.kpi-card .kvalue{color:#0a4650}.panel-head h3{color:#0a4650}.section-bar.green{background:#0b5963}.section-bar.gold{background:#a47d3e}.section-bar.maroon{background:#8f4d3d}.powerbi-head{border-top:4px solid #c49a55}
.report-table th,.report-table th.account-col{background:#083f47}.report-table tr.level-main td,.report-table tr.level-main td.account-col{background:#0b5963}.report-table tr.level-sub td,.report-table tr.level-sub td.account-col{background:#e7f0ef;color:#17464b}.report-table tr.net-line td{background:#063e47!important}.report-table tr.net-margin td{background:#dceae7!important;color:#163f44!important}.report-table tr.calc-line td{background:#f0ede5!important;color:#4a514f!important}.report-table tr.calc-margin td{background:#faf7f0!important;color:#5f655f!important}
.report-banner{border-color:#d6c8ae;background:linear-gradient(105deg,#fffdf8,#f8f2e7)}.report-banner h2{color:#0b5963}.report-banner .report-logo{background:#fff7e7;border-color:#d8c39e}
.branch-snapshot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.branch-snapshot-card{background:linear-gradient(145deg,#f9f5ec,#fffdf8);border:1px solid #ded3bf;border-radius:14px;padding:15px;box-shadow:0 6px 18px rgba(7,63,72,.05)}.branch-name{font-size:12px;font-weight:900;color:#0b5963;letter-spacing:.5px;margin-bottom:10px}.branch-stat{display:flex;justify-content:space-between;gap:8px;padding:7px 0;border-top:1px solid #eee6d9}.branch-stat span{font-size:9px;color:#7b7f7a}.branch-stat b{font-size:12px;color:#173d42}.negative-text{color:#b64a48!important}
.branch-scorecards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0}.branch-scorecard{background:#fffdf8;border:1px solid #ddd4c5;border-radius:16px;box-shadow:var(--shadow);padding:18px}.branch-score-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid #ece5d9}.branch-score-head span:first-child{font-size:8px;letter-spacing:1.2px;color:#9b8a6d;font-weight:900}.branch-score-head h3{margin:3px 0 0;color:#0b5963;font-size:20px}.branch-margin{border-radius:999px;background:#e4efec;color:#0b5963;padding:8px 10px;font-weight:900;font-size:12px}.branch-margin.bad{background:#f5e6e3;color:#a64c48}.branch-score-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.branch-score-grid div{background:#f7f4ed;border-radius:10px;padding:12px}.branch-score-grid span{display:block;color:#7d817d;font-size:9px}.branch-score-grid b{display:block;margin-top:6px;color:#153d42;font-size:15px;direction:ltr;text-align:left}.branch-charts .panel{min-width:0}
.account-select-wrap:after{color:#0b5963}.password-eye:hover,.password-eye.showing{background:#e9f0ed;color:#0b5963}
.data-ok{background:#e9f2ef;border-color:#bfd8d2;color:#225950}.data-warning{background:#fff5e5;border-color:#ead5ad;color:#745a29}
.mobile-bottom-item.active{background:#e2eeeb;color:#0b5963}.mobile-menu{background:#f3efe6;border-color:#ded6c9;color:#0b5963}.mobile-bottom-nav{background:rgba(255,253,248,.97);border-top-color:#ddd5c8}
@media(max-width:900px){.sidebar .side-bottom{background:linear-gradient(180deg,rgba(5,47,53,.94),#052f35)}.branch-scorecards{grid-template-columns:1fr}.hero-strip{padding:18px}.hero-strip h2{font-size:22px}.hero-branches{display:none}}
@media(max-width:640px){.login-view{background:#f5f1e8}.login-copy{background:radial-gradient(circle at 72% 18%,rgba(196,154,85,.24),transparent 34%),linear-gradient(145deg,#062f36,#0b5963)}.login-copy-text{bottom:14px}.login-copy-text h1{font-size:24px}.login-copy-text p{font-size:10px}.login-branch-pills{margin-top:10px}.hero-strip{border-radius:14px}.branch-score-grid{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.branch-score-grid{grid-template-columns:1fr}.hero-strip h2{font-size:19px}}
