:root{
  --navy:#071f38;--navy2:#0b2f4f;--green:#0b6b3a;--green2:#118249;--deepgreen:#074d2c;
  --maroon:#87262d;--maroon2:#9d3137;--blue:#1584d6;--orange:#e97800;--gold:#c99822;--red:#bd2c2c;
  --bg:#f3f6f8;--card:#fff;--line:#dfe7ec;--text:#162330;--muted:#6a7885;--soft:#eef3f6;
  --shadow:0 10px 26px rgba(7,31,56,.08);--radius:14px;
}
*{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:rtl}.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:rtl;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:right}.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:rtl}.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:
  linear-gradient(180deg,rgba(41,39,32,.12),rgba(41,39,32,.62)),
  url('/brand/zoya-interior.jpg') center/cover no-repeat;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}

/* Real Zoya logo 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}
}

/* ===== ZOYA HOUSE v4 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}}


/* ===== ZOYA HOUSE v5 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}
