*{box-sizing:border-box}
[hidden]{display:none!important}
:root{--ink:#1d1935;--purple:#5c2f91;--line:#d8d9e8;--muted:#77728b;--paper:#fff;--canvas:#f3f3f8}
body{margin:0;background:var(--canvas);color:var(--ink);font:15px Arial,"Noto Sans Arabic",sans-serif}
button,.upload{cursor:pointer;font:700 14px Arial,"Noto Sans Arabic",sans-serif;border:0;border-radius:9px;background:var(--purple);color:white;padding:11px 17px}
button:hover,.upload:hover{filter:brightness(.95)}
.topbar{height:60px;background:#1e1935;color:#fff;display:flex;align-items:center;padding:0 24px;gap:16px}
.brand{font-weight:700;font-size:19px}.top-subtitle{font-size:14px;color:#d7d0e5;margin-left:auto}
.account{display:flex;align-items:center;gap:17px;font-size:13px}.text-button{padding:0;background:transparent;text-decoration:underline;font-weight:400}.light{background:#fff;color:#30274b;padding:7px 13px}
.shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:calc(100vh - 60px)}
.sidebar{background:#fff;border-left:1px solid #e1e1eb;padding:14px 12px;display:flex;flex-direction:column;gap:4px}
.new-request{width:100%;margin-bottom:7px;font-size:15px}.nav-item{width:100%;background:transparent;color:#27213f;text-align:right;display:flex;align-items:center;gap:12px;padding:11px 12px;font-weight:400}
.nav-item span{width:20px;text-align:center;font-size:17px;color:#69627f}.nav-item:hover,.nav-item.selected{background:#f0eaf7;color:var(--purple)}.nav-item.selected{font-weight:700}
.nav-group{border-top:1px solid #e6e4ed;margin-top:7px;padding-top:9px}.nav-caption{display:block;color:#746e84;font-size:12px;padding:5px 12px 8px}
.workspace{padding:26px 30px 45px;min-width:0;max-width:1600px;width:100%;margin:0 auto}
.page-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 17px}.page-heading h1{font-size:25px;margin:0}.page-heading p{color:var(--muted);font-size:13px;margin:7px 0 0}
.filters{display:grid;grid-template-columns:minmax(420px,1fr) 170px auto;gap:12px;align-items:center;margin:15px 0 16px}
.periods{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;min-height:42px}
.periods button{background:transparent;color:#6d6880;border-radius:0;padding:11px 12px;font-weight:400;white-space:nowrap}.periods button.active{background:#201b37;color:#fff;font-weight:700}
select,input{border:1px solid var(--line);border-radius:8px;padding:11px;font-size:14px;background:#fff;color:var(--ink)}.filters select{width:100%;height:43px}.date-range{font-size:12px;color:#716b85;white-space:nowrap}
.cards{display:grid;gap:12px}.six-cards{grid-template-columns:repeat(6,minmax(120px,1fr))}.metric{background:#fff;border:1px solid var(--line);border-right:4px solid #5c2f91;border-radius:12px;padding:15px 14px;min-height:124px;display:flex;flex-direction:column;gap:5px}.metric small{font-size:13px;color:#554b68}.metric strong{font-size:30px;line-height:1.1;color:#15122c}.metric span{font-size:12px;color:#756e87}.metric.green{border-right-color:#197852}.metric.purple{border-right-color:#6934a1}.metric.violet{border-right-color:#653198}.metric.red{border-right-color:#bb302d}.metric.amber{border-right-color:#a96b00}.metric.slate{border-right-color:#aaaebe}
.approved-strip{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-right:4px solid #211a39;border-radius:12px;padding:14px 18px;margin:12px 0 15px}.approved-strip b{font-size:13px;color:#706a84}.approved-strip strong{font-size:24px}.approved-strip span{font-size:12px;color:#817b94}
.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;margin:14px 0}.panel h2{font-size:17px;margin:0 0 10px}.panel-note{font-size:13px;font-weight:700;margin:0 0 16px}.subnote{font-size:12px;color:#77728b;margin:15px 0 0}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:600px}th,td{text-align:right;padding:12px;border-bottom:1px solid #e7e5ed;font-size:13px}th{color:#79738b;font-weight:500}tbody tr:last-child td{border-bottom:0}.badge{border-radius:20px;padding:5px 9px;background:#fff0d6;color:#98610e;white-space:nowrap}.badge.ok{background:#e7f5ee;color:#21805c}.badge.bad{background:#fde8e7;color:#a83734}.actions{display:flex;gap:5px}.actions button{padding:6px 9px;font-size:12px}.panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.panel-title h2{margin:0}.panel-title span{font-size:12px;color:var(--muted)}.outline{background:#fff;color:var(--purple);border:1px solid #d7cde4;padding:7px 12px}
.status-chart{height:25px;display:flex;overflow:hidden;border-radius:5px;background:#ece9f1;margin:15px 0 10px}.status-chart span{display:block;height:100%;min-width:3px}.chart-legend{display:flex;flex-wrap:wrap;gap:18px;font-size:12px;color:#706a84}.legend-item{display:flex;align-items:center;gap:6px}.legend-dot{width:9px;height:9px;border-radius:50%}
.box{background:#fff;border:1px solid #e5e1ed;border-radius:13px;padding:22px;margin:15px 0}.login{min-height:100vh;display:grid;place-items:center;padding:18px}.login-box{width:min(420px,100%)}.login h1{font-size:24px;margin:0 0 6px}.login p,.box p{color:#7f7896;font-size:13px}.login label{display:grid;gap:7px;margin:14px 0;font-size:13px;color:#625b75}.login input{width:100%}small{color:#857d99}#loginMsg,#importState,#passwordMsg{display:block;margin-top:10px;color:#a33;font-size:13px}
.upload{display:inline-block}.shade{position:fixed;inset:0;background:#17132b88;display:grid;place-items:center;padding:14px;z-index:20}.modal{width:min(480px,100%);position:relative}.close{float:left;padding:5px 10px;background:#eee;color:#333}.modal button[type=submit]{margin-top:10px}
@media(max-width:1250px){.six-cards{grid-template-columns:repeat(3,minmax(140px,1fr))}.filters{grid-template-columns:1fr 150px}.date-range{grid-column:1/-1}}
@media(max-width:780px){.topbar{padding:0 12px}.top-subtitle{display:none}.account{gap:9px}.shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:5;display:flex;flex-direction:row;overflow:auto;padding:7px;gap:4px;border-left:0;border-bottom:1px solid #e1e1eb}.new-request{min-width:120px;margin:0}.nav-group{display:contents}.nav-caption{display:none}.nav-item{width:auto;min-width:max-content;white-space:nowrap;padding:10px}.nav-item span{display:none}.workspace{padding:17px 12px 30px}.filters{grid-template-columns:1fr}.periods{overflow:auto}.periods button{padding:10px 8px}.date-range{grid-column:auto}.six-cards{grid-template-columns:repeat(2,minmax(125px,1fr))}.metric{min-height:110px}.approved-strip{gap:9px;padding:12px}.approved-strip strong{font-size:20px}.panel{padding:13px}.account span:nth-child(2){display:none}}
