@font-face{font-family:Almarai;src:url(/Almarai-Regular.ttf)format("truetype");font-weight:100 900;font-display:swap}:root{--bg:#eef0ec;--ink:#15201c;--ink-2:#3f4d48;--ink-3:#56665f;--ink-4:#86a097;--line:#dce1dc;--line-2:#edf0ec;--line-input:#c3cbc6;--brand:#0f5b4e;--brand-dark:#0a3f36;--side:#0e2a24;--side-2:#17423a;--side-ink:#c9d6d1;--gold:#c9a24e;--cream:#f3ebda;--sand:#f7f2e6;--head:#f7f8f6;--warn:#9a3412;--danger:#8a1c2b;--font:"Almarai", sans-serif;--mono:ui-monospace, Consolas, "Courier New", monospace;--display:var(--font)}body{background:var(--bg);font-family:var(--font);color:var(--ink);margin:0}a{color:var(--brand)}a:hover{color:var(--brand-dark)}h1,h2,h3{font-family:var(--display);margin:0}h1{font-size:26px;font-weight:600}h2{font-size:17px;font-weight:600}h3{font-size:14px;font-weight:600}label{color:var(--ink-2);font-size:13px;font-weight:600}.app{flex-wrap:wrap;min-height:100vh;display:flex}.side{background:var(--side);color:#fff;box-sizing:border-box;flex-direction:column;flex:248px;gap:4px;max-width:100%;padding:20px 14px;display:flex}.brand{border-bottom:1px solid #ffffff1a;align-items:center;gap:12px;padding:4px 8px 18px;display:flex}.brand b{font-family:var(--display);font-size:15px;font-weight:600;display:block}.brand span{color:var(--ink-4);font-size:12px}.nav{flex-direction:column;gap:2px;display:flex}.nav a{color:var(--side-ink);border-radius:8px;justify-content:space-between;align-items:center;min-height:24px;padding:10px 14px;font-size:14px;text-decoration:none;display:flex}.nav a:hover{color:#fff;background:#ffffff12}.nav a.on{background:var(--cream);color:var(--side);font-weight:600}.nav .badge{background:var(--gold);color:#1b1405}.grp{color:var(--ink-4);padding:18px 14px 6px;font-size:11px;font-weight:600}.side-foot{border-top:1px solid #ffffff1a;align-items:center;gap:10px;margin-top:auto;padding:14px 8px 0;display:flex}.side-foot .who{min-width:0;color:inherit;font:inherit;text-align:right;cursor:pointer;background:0 0;border:0;flex:1;padding:0}.side-foot .who b{font-size:14px;display:block}.side-foot .who span{color:var(--ink-4);font-size:12px}.side-foot .out{font:inherit;color:var(--side-ink);cursor:pointer;background:0 0;border:0;font-size:12px;text-decoration:underline}.side-av{background:#1e4a40;border-radius:50%;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-weight:600;display:flex}.content{box-sizing:border-box;flex-direction:column;flex:999 560px;gap:22px;min-width:0;padding:28px 32px 40px;display:flex}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.page-head p{color:var(--ink-3);margin:4px 0 0;font-size:14px}.page-head .actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.crumbs{color:var(--ink-3);font-size:13px}.split{flex-wrap:wrap;align-items:flex-start;gap:22px;display:flex}.split>.grow{flex:999 560px;min-width:0}.split>.aside{flex:320px;min-width:0}.col{flex-direction:column;gap:22px;display:flex}.card{border:1px solid var(--line);background:#fff;border-radius:12px}.card.pad{flex-direction:column;gap:18px;padding:22px 24px;display:flex}.card.flush{overflow:hidden}.card-h{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;display:flex}.card-h p{color:var(--ink-3);margin:4px 0 0;font-size:13px}.card.warn-edge{border-color:#e7b9a3}.btn{font:inherit;color:var(--ink);cursor:pointer;box-sizing:border-box;background:#fff;border:1px solid #c9d0cb;border-radius:8px;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-size:14px;text-decoration:none;display:inline-flex}.btn:hover{color:var(--ink);background:#f7f8f6}.btn.pri{background:var(--brand);border-color:var(--brand);color:#fff}.btn.pri:hover{background:var(--brand-dark)}.btn.warn{background:var(--warn);border-color:var(--warn);color:#fff}.btn.danger-text{color:var(--danger)}.btn.block{justify-content:center}.btn.grow{flex:1;justify-content:center}.btn:disabled{opacity:.55;cursor:not-allowed}.tag{white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.t-new{color:#1d4e89;background:#e3ecf7}.t-rev{color:#7a5300;background:#fbf0d9}.t-ret{color:#9a3412;background:#fbe4da}.t-ok{color:#155b3a;background:#ddefe6}.t-no{color:#8a1c2b;background:#f1e1e4}.t-int{color:#3f4d48;background:#e6e8e6}.chip{color:var(--side);background:#e8efeb;border:0;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:500;display:inline-flex}.chip.add{cursor:pointer;background:0 0;border:1px dashed #9fb3aa}.chip button{cursor:pointer;color:var(--ink-3);font:inherit;background:0 0;border:0;padding:0}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:right;color:var(--ink-3);border-bottom:1px solid var(--line);background:var(--head);white-space:nowrap;padding:12px 16px;font-size:12px;font-weight:600}td{border-bottom:1px solid var(--line-2);white-space:nowrap;padding:14px 16px}.tbl-wrap{overflow-x:auto}tr.sel td{background:var(--sand)}tr.click{cursor:pointer}tr.click:hover td{background:#fbfaf6}tr.sel.click:hover td{background:var(--sand)}.sub-line{color:var(--ink-3);font-size:12px}.mx td,.mx th{text-align:center;padding:12px 14px}.mx td:first-child,.mx th:first-child{text-align:right}.mx input{width:20px;height:20px;accent-color:var(--brand)}.yes{color:#155b3a;font-weight:600}.no{color:#8c9893}.num{font-family:var(--mono);white-space:nowrap;direction:ltr;unicode-bidi:isolate}.input,.select,textarea.input{font:inherit;border:1px solid var(--line-input);color:var(--ink);box-sizing:border-box;background:#fff;border-radius:8px;width:100%;min-height:44px;padding:10px 12px;font-size:14px}textarea.input{resize:vertical}.input:focus,.select:focus{border-color:var(--brand);outline:2px solid #0f5b4e40}.field{flex-direction:column;gap:8px;display:flex}.field .err{color:var(--danger);font-size:12px;font-weight:500}.field .hint{color:var(--ink-3);font-size:12px}.field.has-err .input,.field.has-err .select{border-color:var(--danger)}.filters{flex-wrap:wrap;gap:10px;display:flex}.sw{border-bottom:1px solid var(--line-2);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:14px;font-weight:500;display:flex}.sw:last-child{border:0}.sw input{width:20px;height:20px;accent-color:var(--brand)}.radios{border:0;flex-wrap:wrap;align-items:center;gap:20px;margin:0;padding:0;display:flex}.radios legend{color:var(--ink-2);margin-bottom:8px;padding:0;font-size:13px;font-weight:600}.radios label{align-items:center;gap:8px;font-weight:500;display:flex}.radios input{width:18px;height:18px;accent-color:var(--brand)}.seg{background:#e2e6e1;border-radius:10px;gap:2px;padding:4px;display:inline-flex}.seg button{font:inherit;color:#46554f;cursor:pointer;background:0 0;border:0;border-radius:7px;min-height:36px;padding:8px 14px;font-size:13px}.seg button.on{color:var(--side);background:#fff;font-weight:600;box-shadow:0 1px 2px #00000014}.tabs{border-bottom:1px solid #d3d9d4;gap:4px;display:flex;overflow-x:auto}.tabs a,.tabs button{color:var(--ink-3);font-size:14px;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:8px;margin-bottom:-1px;padding:12px 18px;text-decoration:none;display:inline-flex}.tabs .on{color:var(--side);border-color:var(--gold);font-weight:600}.stat{flex-direction:column;gap:10px;padding:18px 20px;display:flex}.stat .val{text-align:right;font-size:32px}.bar{background:var(--line-2);border-radius:3px;height:6px}.bar>div{border-radius:3px;height:100%}.stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.dist{background:var(--line-2);border-radius:7px;gap:2px;height:14px;display:flex;overflow:hidden}.todo{color:var(--ink);border-radius:10px;justify-content:space-between;align-items:center;padding:14px;text-decoration:none;display:flex}.todo:hover{color:var(--ink);filter:brightness(.98)}.todo b{font-size:14px;display:block}.todo small{color:var(--ink-3);font-size:12px}.todo .num{font-size:22px}.kv{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px 24px;margin:0;display:grid}.kv dt{color:var(--ink-3);margin-bottom:4px;font-size:12px}.kv dd{margin:0;font-size:15px;font-weight:500}.files{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.files h3{color:var(--ink-3);font-size:13px}.file{word-break:break-all;border:1px solid #e1e5e1;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;text-decoration:none;display:flex}.rev-item{background:#fbf7f4;border-radius:10px;flex-wrap:wrap;align-items:flex-start;gap:10px;padding:12px;display:flex}.timeline{margin:0;padding:0;list-style:none}.ev{border-right:2px solid #e1e5e1;padding:0 22px 22px 0;position:relative}.ev:last-child{border-color:#0000}.dot{border:2px solid var(--brand);background:#fff;border-radius:50%;width:12px;height:12px;position:absolute;top:2px;right:-7px}.ev .note{color:var(--ink-2);background:#f4f5f3;border-radius:8px;margin:0;padding:8px 10px;font-size:13px}.diff{border-bottom:1px solid var(--line-2);grid-template-columns:110px minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8px;padding:10px 0;font-size:13px;display:grid}.diff:last-child{border:0}.diff.head{color:var(--ink-3);font-size:12px;font-weight:600}.old{color:#6b7a74;text-decoration:line-through}.new{background:#fbf0d9;border-radius:4px;padding:2px 6px;font-weight:600}.doc{border:1px solid #e1e5e1;border-radius:10px;align-items:center;gap:12px;padding:14px;display:flex}.emp{color:var(--ink);width:100%;font:inherit;text-align:right;cursor:pointer;box-sizing:border-box;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}.emp:hover{color:var(--ink);background:#f7f8f6}.emp.on{background:var(--cream)}.emp b{font-size:14px;display:block}.emp small{color:var(--ink-3);font-size:12px}.av{width:38px;height:38px;color:var(--side);background:#dce5e0;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:600;display:flex}.av.lg{width:56px;height:56px;font-size:20px}.row-line{border-bottom:1px solid var(--line-2);justify-content:space-between;gap:12px;padding:10px 0;font-size:13px;display:flex}.row-line:last-child{border:0}.note-box{background:var(--sand);color:#5c4710;border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;line-height:1.7;display:flex}.note-box.bad{color:#6e1622;background:#f6e9eb}.auth{flex-wrap:wrap;min-height:100vh;display:flex}.auth-art{background:var(--side);color:#fff;box-sizing:border-box;flex-direction:column;flex:420px;justify-content:space-between;gap:40px;padding:56px;display:flex}.auth-art h1{font-size:40px;font-weight:600;line-height:1.35}.auth-art p{color:#a9bdb6;margin:16px 0 0;font-size:16px;line-height:1.8}.auth-art .ver{color:var(--ink-4);align-items:center;gap:10px;font-size:13px;display:flex}.auth-art .ver span{background:var(--gold);width:28px;height:2px}.auth-form{box-sizing:border-box;flex:480px;justify-content:center;align-items:center;padding:48px 24px;display:flex}.auth-form form{flex-direction:column;gap:20px;width:100%;max-width:420px;display:flex}.auth-form h2{font-size:28px}.auth-form .input{border-color:var(--line-input);border-radius:10px;min-height:48px;padding:12px 14px;font-size:15px}.auth-form .btn.pri{border-radius:10px;justify-content:center;min-height:50px;font-size:15px;font-weight:600}.muted{color:var(--ink-3)}.small{font-size:13px}.stack{flex-direction:column;gap:16px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.grid-2{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pager{color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;font-size:13px;display:flex}.pager .pages{gap:6px;display:flex}.spinner{border:2.5px solid var(--line);border-top-color:var(--brand);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin;display:inline-block}.spinner.sm{border-width:2px;width:14px;height:14px}.btn.pri .spinner,.btn.warn .spinner{border-color:#fff #ffffff59 #ffffff59}@keyframes spin{to{transform:rotate(360deg)}}.state{text-align:center;color:var(--ink-3);white-space:normal;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:40px 20px;font-size:14px;display:flex}.state b{color:var(--ink);font-size:15px}.state.err b{color:var(--danger)}table.is-fetching tbody{opacity:.55;transition:opacity .2s}.overlay{z-index:50;background:#0e2a2473;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dialog{background:#fff;border-radius:14px;flex-direction:column;width:100%;max-width:520px;max-height:calc(100vh - 32px);display:flex;box-shadow:0 20px 50px #0003}.dialog.lg{max-width:720px}.dialog.sm{max-width:420px}.dlg-h{justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 22px 0;display:flex}.dlg-h p{color:var(--ink-3);margin:4px 0 0;font-size:13px}.dlg-h .x{cursor:pointer;color:var(--ink-3);background:0 0;border:0;padding:4px;font-size:22px;line-height:1}.dlg-b{flex-direction:column;gap:16px;padding:18px 22px;display:flex;overflow-y:auto}.dlg-f{flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:0 22px 20px;display:flex}.toasts{z-index:60;flex-direction:column;gap:8px;max-width:calc(100vw - 40px);display:flex;position:fixed;bottom:20px;left:20px}.toast{background:var(--side);color:#fff;border-radius:10px;align-items:center;gap:10px;min-width:260px;padding:12px 14px;font-size:14px;display:flex;box-shadow:0 10px 30px #0003}.toast.success{background:#155b3a}.toast.error{background:var(--danger)}.toast span{flex:1}.toast button{color:inherit;cursor:pointer;opacity:.8;background:0 0;border:0;font-size:18px;line-height:1}.gps{background:#e4eae6;border-radius:10px;width:100%;height:150px;display:block}.gps circle{fill:var(--brand);stroke:#fff;stroke-width:1.5px}.gps circle.last{fill:var(--danger)}.checks{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px 16px;display:grid}.checks label{align-items:center;gap:8px;font-size:13px;font-weight:500;display:flex}.checks input{width:18px;height:18px;accent-color:var(--brand)}.menu-btn{display:none}@media (width<=860px){.menu-btn{z-index:30;min-height:40px;padding:8px 12px;display:inline-flex;position:fixed;top:12px;left:12px}.side{z-index:40;width:270px;max-width:85vw;transition:transform .2s;position:fixed;inset:0 0 0 auto;overflow-y:auto;transform:translate(100%)}.side.open{transform:none}.side-scrim{z-index:35;background:#00000059;position:fixed;inset:0}.content{padding:64px 16px 32px}}
