:root{--bg:#f7f5f2;--surface:#fff;--surface-2:#f3f0eb;--surface-3:#e8e3db;--border:#e7e2da;--border-strong:#d6cfc4;--text:#2a2522;--text-muted:#766e66;--accent:#7a1f2b;--accent-hover:#631822;--accent-contrast:#fff;--accent-soft:#f6e8ea;--gold:#c9a227;--gold-soft:#fbf3da;--secondary:#1f3a5f;--secondary-soft:#e7ecf3;--success:#1f7a4d;--success-soft:#e4f3ea;--warning:#9a6b00;--warning-soft:#fbf0d9;--danger:#b3261e;--danger-soft:#fbe7e5;--focus:#2f6fed;--ring:#7a1f2b29;--radius:14px;--radius-sm:10px;--shadow-sm:0 1px 2px #2a25220d;--shadow:0 1px 2px #2a25220a, 0 10px 28px -16px #2a252238;--shadow-lg:0 24px 60px -24px #2a252259}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#16181c;--surface:#1e2126;--surface-2:#262a30;--surface-3:#30353c;--border:#30353c;--border-strong:#434a53;--text:#eceae7;--text-muted:#a09a93;--accent:#e28f98;--accent-hover:#eaa5ac;--accent-contrast:#2a1216;--accent-soft:#3a2226;--gold:#e4c766;--gold-soft:#3a320f;--secondary:#8fadd6;--secondary-soft:#1e2a3b;--success:#5cb884;--success-soft:#163326;--warning:#d9a441;--warning-soft:#332a12;--danger:#e2867f;--danger-soft:#3a1e1c;--focus:#7fa8ff;--ring:#e28f9833;--shadow-sm:0 1px 2px #0000004d;--shadow:0 1px 2px #0000004d, 0 10px 28px -16px #0009;--shadow-lg:0 24px 60px -24px #000000b3}}:root[data-theme=dark]{--bg:#16181c;--surface:#1e2126;--surface-2:#262a30;--surface-3:#30353c;--border:#30353c;--border-strong:#434a53;--text:#eceae7;--text-muted:#a09a93;--accent:#e28f98;--accent-hover:#eaa5ac;--accent-contrast:#2a1216;--accent-soft:#3a2226;--gold:#e4c766;--gold-soft:#3a320f;--secondary:#8fadd6;--secondary-soft:#1e2a3b;--success:#5cb884;--success-soft:#163326;--warning:#d9a441;--warning-soft:#332a12;--danger:#e2867f;--danger-soft:#3a1e1c;--focus:#7fa8ff;--ring:#e28f9833;--shadow-sm:0 1px 2px #0000004d;--shadow:0 1px 2px #0000004d, 0 10px 28px -16px #0009;--shadow-lg:0 24px 60px -24px #000000b3}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Almarai,Segoe UI,Tahoma,sans-serif;font-size:14.5px;line-height:1.65}h1,h2,h3,h4,.brand,.nav-label,.btn,th{font-family:Cairo,Almarai,sans-serif}h1,h2,h3,h4{text-wrap:balance;letter-spacing:-.005em;margin:0 0 4px}.mono{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,monospace}a{color:var(--secondary)}button{font:inherit}.svg-ic{flex:none;display:block}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--surface-3);background-clip:padding-box;border:2px solid #0000;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong);background-clip:padding-box;border:2px solid #0000}#app{flex-direction:column;min-height:100vh;display:flex}.app-body{flex:1;min-height:0;display:flex}.sidebar{background:var(--surface);border-inline-end:1px solid var(--border);flex-direction:column;flex:0 0 268px;gap:2px;width:268px;height:100vh;padding:20px 14px 16px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{border-bottom:1px solid var(--border);align-items:center;gap:12px;margin-bottom:6px;padding:4px 8px 20px;display:flex}.brand img.logo{object-fit:contain;flex:none;width:44px;height:44px}.brand-text b{font-size:15.5px;font-weight:800;line-height:1.3;display:block}.brand-text span{color:var(--accent);font-size:12px;font-weight:700;display:block}.nav-group{margin-top:16px}.nav-group-title{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;padding:4px 12px 6px;font-size:11px;font-weight:800}.nav-item{border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--text);text-align:start;background:0 0;border:none;align-items:center;gap:12px;padding:9px 12px;font-size:13.5px;font-weight:700;transition:background .15s,color .15s;display:flex;position:relative}.nav-item:hover{background:var(--surface-2)}.nav-item .ic{color:var(--text-muted);transition:color .15s;display:flex}.nav-item:hover .ic{color:var(--text)}.nav-item.active{background:var(--accent-soft);color:var(--accent)}.nav-item.active .ic{color:var(--accent)}.nav-item.active:before{content:"";inset-inline-start:-13px;background:var(--gold);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px}[dir=rtl] .nav-item.active:before{border-radius:3px 0 0 3px}.sidebar-foot{border-top:1px solid var(--border);color:var(--text-muted);margin-top:auto;padding:14px 12px 0;font-size:11.5px;line-height:1.7}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{z-index:5;background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:12px 28px;display:flex;position:sticky;top:0}.topbar h2{font-size:19px;font-weight:800}.topbar .sub{color:var(--text-muted);font-size:12px;font-weight:400}.who{align-items:center;gap:10px;display:flex}.who .btn span{font-size:12.5px}.who-sep{background:var(--border);width:1px;height:26px;margin:0 4px}.who .avatar{background:linear-gradient(135deg,var(--accent),color-mix(in srgb, var(--accent) 65%, var(--gold)));width:36px;height:36px;color:var(--accent-contrast);box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:800;display:flex}.who-meta{text-align:start;line-height:1.3}.who-meta b{font-size:13px;display:block}.who-meta span{color:var(--text-muted);font-size:11.5px}.content{flex:1;width:100%;max-width:1440px;margin:0 auto;padding:26px 28px 48px}.site-footer{border-top:1px solid var(--border);background:var(--surface);text-align:center;color:var(--text-muted);padding:14px 22px;font-size:12px}.site-footer b{color:var(--text);font-weight:800}.btn{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-sm);align-items:center;gap:7px;padding:8px 15px;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,box-shadow .15s,transform 50ms;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn:active{transform:translateY(1px)}.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible,.nav-item:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-gold{background:var(--gold);border-color:var(--gold);color:#241d02}.btn-ghost{box-shadow:none;background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-2)}.btn-sm{border-radius:8px;padding:5px 10px;font-size:12px}.btn-danger{color:var(--danger)}.btn[disabled]{opacity:.45;cursor:not-allowed}.btn-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:20px}.card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:16px 20px;display:flex}.card-head h3{font-size:15px}.card-head .hint{color:var(--text-muted);margin-top:2px;font-size:12px;font-weight:400}.grid{gap:18px;display:grid}.kpis{grid-template-columns:repeat(4,1fr)}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}@media (width<=1100px){.g3{grid-template-columns:repeat(2,1fr)}}@media (width<=1000px){.kpis{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.g2,.g3{grid-template-columns:1fr}}@media (width<=520px){.kpis{grid-template-columns:1fr}}.kpi{padding:18px 20px;position:relative;overflow:hidden}.kpi:before{content:"";inset-inline-start:0;background:var(--kc,var(--secondary));border-radius:0 3px 3px 0;width:3px;position:absolute;top:16px;bottom:16px}[dir=rtl] .kpi:before{border-radius:3px 0 0 3px}.kpi-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.kpi .lbl{color:var(--text-muted);font-size:12.5px;font-weight:700}.kpi-ic{width:38px;height:38px;color:var(--kc,var(--secondary));background:color-mix(in srgb, var(--kc,var(--secondary)) 12%, transparent);border-radius:11px;flex:none;justify-content:center;align-items:center;display:flex}.kpi .val{letter-spacing:-.02em;margin-top:6px;font-family:IBM Plex Mono,monospace;font-size:clamp(20px,1.7vw,26px);font-weight:700;line-height:1.25}.kpi .delta{color:var(--text-muted);margin-top:8px;font-size:11.5px;font-weight:700}.pill{border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:11.5px;font-weight:800;display:inline-flex}.pill-ok{background:var(--success-soft);color:var(--success)}.pill-warn{background:var(--warning-soft);color:var(--warning)}.pill-bad{background:var(--danger-soft);color:var(--danger)}.pill-mute{background:var(--surface-3);color:var(--text-muted)}.pill-info{background:var(--secondary-soft);color:var(--secondary)}.dot{background:currentColor;border-radius:50%;flex:none;width:7px;height:7px}table{border-collapse:collapse;width:100%;font-size:13px}.tbl-wrap{overflow-x:auto}th{background:var(--surface-2);text-align:start;color:var(--text-muted);letter-spacing:.03em;border-bottom:1px solid var(--border);white-space:nowrap;padding:11px 14px;font-size:11.5px;font-weight:800;position:sticky;top:0}th:first-child{border-start-start-radius:8px}th:last-child{border-start-end-radius:8px}td{border-bottom:1px solid var(--border);white-space:nowrap;padding:11px 14px}tbody tr{transition:background .12s}tbody tr:hover{background:var(--surface-2)}tbody tr:last-child td{border-bottom:none}td.num,th.num{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,monospace}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--text-muted);font-size:12.5px;font-weight:800}.field .req{color:var(--danger)}input,select,textarea{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font:inherit;color:var(--text);width:100%;padding:9px 12px;transition:border-color .15s,box-shadow .15s}input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--border-strong))}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring);outline:none}input::placeholder,textarea::placeholder{color:color-mix(in srgb, var(--text-muted) 70%, transparent)}textarea{resize:vertical;min-height:70px}input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}input[type=radio]{accent-color:var(--accent)}fieldset{border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb, var(--surface-2) 40%, transparent);margin:0;padding:18px}legend{color:var(--accent);padding:0 10px;font-family:Cairo,sans-serif;font-size:13.5px;font-weight:800}.form-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (width<=860px){.form-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.form-grid{grid-template-columns:1fr}}.form-grid.c2{grid-template-columns:repeat(2,1fr)}.form-grid.c4{grid-template-columns:repeat(4,1fr)}.stack{flex-direction:column;gap:16px;display:flex}.repeat-row{border:1px dashed var(--border-strong);border-radius:var(--radius-sm);grid-template-columns:1fr 1fr 1fr 1fr auto;align-items:end;gap:10px;margin-bottom:8px;padding:12px;display:grid}.tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:4px;margin-bottom:18px;display:flex}.tab{cursor:pointer;color:var(--text-muted);border:1px solid #0000;border-bottom:none;border-radius:10px 10px 0 0;margin-bottom:-1px;padding:10px 16px;font-size:13px;font-weight:800;transition:color .15s,background .15s}.tab:hover{color:var(--text)}.tab.active{color:var(--accent);background:var(--surface);border-color:var(--border);box-shadow:inset 0 2px 0 var(--gold)}.search-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.search-row input,.search-row select{width:auto;min-width:160px}.empty{text-align:center;color:var(--text-muted);padding:44px 20px}.empty .ic{color:var(--text-muted);opacity:.7;justify-content:center;margin-bottom:10px;font-size:30px;display:flex}.empty .ic.ok{color:var(--success);opacity:1}.badge-role{background:var(--secondary-soft);color:var(--secondary);border-radius:999px;padding:2px 8px;font-size:10.5px;font-weight:800}.help{color:var(--text-muted);font-size:12px}.warn-box{background:var(--danger-soft);color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 25%, transparent);border-radius:var(--radius-sm);align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;font-weight:700;display:flex}.info-box{background:var(--secondary-soft);color:var(--secondary);border:1px solid color-mix(in srgb, var(--secondary) 18%, transparent);border-radius:var(--radius-sm);align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;display:flex}.perm-table td,.perm-table th{text-align:center}.perm-table td:first-child,.perm-table th:first-child{text-align:start}.receipt{border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-2);max-width:420px;padding:20px}.receipt h4{text-align:center}.receipt .row{border-bottom:1px dotted var(--border-strong);justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.idcard{width:330px;box-shadow:var(--shadow);border:1px solid var(--border);border-radius:16px;overflow:hidden}.idcard .top{background:linear-gradient(120deg,var(--accent),var(--accent-hover));color:var(--accent-contrast);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.idcard .body{background:var(--surface);gap:12px;padding:14px 16px;display:flex}.idcard .ph{background:var(--surface-3);width:60px;height:74px;color:var(--text-muted);border-radius:8px;flex:none;justify-content:center;align-items:center;font-weight:800;display:flex}.bars{flex-direction:column;gap:10px;display:flex}.bar-row{grid-template-columns:150px 1fr 60px;align-items:center;gap:10px;font-size:12.5px;display:grid}.bar-track{background:var(--surface-3);border-radius:5px;height:8px;overflow:hidden}.bar-fill{background:linear-gradient(90deg,var(--secondary),color-mix(in srgb, var(--secondary) 70%, var(--accent)));border-radius:5px;height:100%}.link-btn{color:var(--accent);cursor:pointer;font-weight:800;font:inherit;background:0 0;border:none;padding:0}.link-btn:hover{text-decoration:underline}.lang-toggle{top:16px;z-index:60;background:var(--surface);border:1px solid var(--border-strong);color:var(--text);cursor:pointer;box-shadow:var(--shadow);border-radius:999px;padding:6px 16px;font-size:12.5px;font-weight:800;position:fixed;inset-inline-end:16px}.lang-toggle:hover{background:var(--surface-2)}.toast{bottom:22px;background:var(--text);color:var(--bg);z-index:50;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;border-radius:12px;padding:11px 18px;font-size:13px;font-weight:700;transition:all .25s;position:fixed;inset-inline-start:22px;transform:translateY(8px)}.toast.show{opacity:1;transform:translateY(0)}.chip-toggle{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);display:inline-flex;overflow:hidden}.chip-toggle button{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:7px 14px;font-size:12.5px;font-weight:800;transition:background .15s,color .15s}.chip-toggle button.on{background:var(--accent);color:var(--accent-contrast)}.login-split{grid-template-columns:minmax(380px,5fr) 6fr;min-height:100vh;display:grid}.login-hero{color:#fff;background:radial-gradient(700px 420px at 15% 0,#c9a22747,#0000 65%),radial-gradient(600px 500px at 100% 100%,#00000059,#0000 60%),linear-gradient(155deg,#8a2433 0%,#6a1823 55%,#4a101a 100%);flex-direction:column;justify-content:space-between;padding:48px 52px;display:flex;position:relative;overflow:hidden}.login-hero:after{content:"";pointer-events:none;background:repeating-linear-gradient(135deg,#ffffff09 0 1px,#0000 1px 22px);position:absolute;inset:0}.hero-inner{z-index:1;text-align:start;margin:auto 0;position:relative}.hero-logo{background:#fff;border-radius:26px;justify-content:center;align-items:center;width:104px;height:104px;margin-bottom:28px;display:flex;box-shadow:0 18px 40px -16px #0000008c}.hero-logo img{object-fit:contain;width:76px;height:76px}.login-hero h1{color:#fff;margin:0 0 6px;font-size:30px;font-weight:800;line-height:1.25}.hero-sub{color:#ffffffd1;margin:0;font-size:15.5px}.hero-branch{color:#f1d98a;letter-spacing:.02em;border:1px solid #e4c76699;border-radius:999px;margin-top:22px;padding:6px 16px;font-size:13px;font-weight:800;display:inline-block}.hero-chairman{z-index:1;color:#ffffffb3;font-size:12.5px;line-height:1.8;position:relative}.hero-chairman b{color:#fff;font-size:14.5px;display:block}.login-wrap{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-split .login-wrap{min-height:auto}.login-card{width:100%;max-width:440px;box-shadow:var(--shadow-lg);padding:32px}.login-logo{justify-content:center;margin-bottom:10px;display:flex}.login-logo img{object-fit:contain;width:88px;height:88px}.login-title{text-align:start;margin-bottom:2px;font-size:23px;font-weight:800}.login-branch{text-align:start;color:var(--text-muted);margin-bottom:22px;font-size:13px;font-weight:700}.btn-google{background:var(--surface);border-color:var(--border-strong);width:100%;color:var(--text);border-radius:var(--radius-sm);justify-content:center;padding:11px;font-size:14px;font-weight:800}.btn-google:hover{background:var(--surface-2)}.divider-or{color:var(--text-muted);align-items:center;gap:10px;margin:18px 0;font-size:12px;display:flex}.divider-or:before,.divider-or:after{content:"";background:var(--border);flex:1;height:1px}.login-submit{background:var(--accent);width:100%;color:var(--accent-contrast);border-radius:var(--radius-sm);cursor:pointer;box-shadow:0 8px 18px -10px var(--accent);border:none;margin-top:6px;padding:12px;font-family:Cairo,Almarai,sans-serif;font-size:14px;font-weight:800;transition:background .15s}.login-submit:hover{background:var(--accent-hover)}.login-footlinks{justify-content:space-between;margin-top:14px;font-size:12.5px;display:flex}.login-secure{color:var(--text-muted);border-top:1px solid var(--border);align-items:flex-start;gap:8px;margin-top:22px;padding-top:16px;font-size:11.5px;line-height:1.6;display:flex}.login-secure .svg-ic{margin-top:2px}.pending-box{text-align:center;padding:34px 20px}.pending-box .login-title,.pending-box h3{text-align:center}@media (width<=900px){.login-split{grid-template-columns:1fr}.login-hero{flex-direction:row;align-items:center;gap:16px;padding:28px 24px}.hero-inner{flex-wrap:wrap;align-items:center;gap:16px;margin:0;display:flex}.hero-logo{border-radius:16px;width:64px;height:64px;margin:0}.hero-logo img{width:46px;height:46px}.login-hero h1{font-size:20px}.hero-sub{font-size:13px}.hero-branch{margin-top:6px;padding:3px 12px;font-size:12px}.hero-chairman{display:none}.login-wrap{align-items:flex-start;min-height:auto;padding:20px 16px 40px}}@media (width<=1100px){.sidebar{flex-basis:72px;align-items:center;width:72px;padding:16px 10px}.brand{justify-content:center;padding:4px 0 14px}.brand-text,.nav-text,.nav-group-title,.sidebar-foot{display:none}.nav-group{width:100%;margin-top:10px}.nav-item{justify-content:center;padding:11px 0}.nav-item.active:before{inset-inline-start:-10px}.topbar{padding:12px 18px}.content{padding:20px 18px 40px}}@media (width<=700px){.sidebar{flex-basis:56px;width:56px;padding:12px 6px}.brand img.logo{width:34px;height:34px}.who-meta,.who .btn span,.who-sep,.topbar .sub{display:none}.topbar{padding:10px 12px}.topbar h2{font-size:16px}.content{padding:14px 12px 32px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media print{.sidebar,.topbar,.site-footer,.no-print,.lang-toggle{display:none!important}.content{max-width:100%;padding:0}body{background:#fff}.card{box-shadow:none;border:1px solid #ccc}}
