:root{--navy: #16233F;--navy-2: #1F3159;--navy-3: #2A4174;--teal: #0E7C86;--teal-dark: #0B646C;--teal-light: #E3F3F3;--amber: #B9762A;--amber-light: #FBEEDD;--brick: #A93E3E;--brick-light: #FAEAEA;--green: #2F7D5E;--green-light: #E7F5EE;--bg: #F4F5F9;--surface: #FFFFFF;--text: #1E2333;--muted: #6B7280;--border: #E7E8F0}*{box-sizing:border-box}html{direction:rtl}body{margin:0;background:var(--bg);color:var(--text);font-family:Tajawal,sans-serif;font-size:14px}h1,h2,h3,.brand,.nav-group-title,.kpi-label{font-family:Cairo,sans-serif}.mono{font-family:IBM Plex Mono,monospace;letter-spacing:.2px}.app{display:flex;min-height:100vh}.sidebar{width:250px;flex:0 0 250px;background:linear-gradient(180deg,var(--navy) 0%,#101B33 100%);color:#edeff6;padding:20px 14px;display:flex;flex-direction:column;gap:6px}.brand{display:flex;align-items:center;gap:10px;padding:6px 8px 22px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:14px}.brand-mark{width:36px;height:36px;border-radius:8px;background:var(--teal);display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff;font-family:Cairo,sans-serif;font-size:16px}.brand-text{font-size:14.5px;font-weight:700;line-height:1.5;color:#fff}.brand-text span{display:block;font-size:11px;font-weight:500;color:#9aa6c4;font-family:Tajawal,sans-serif}.nav-group-title{font-size:11px;color:#8b96b8;font-weight:700;margin:14px 10px 6px;letter-spacing:.3px}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;color:#c9d1e8;text-decoration:none;font-size:13.5px;font-weight:500;cursor:pointer}.nav-item:hover{background:#ffffff0f;color:#fff}.nav-item.active,.nav-item.router-link-exact-active{background:var(--teal);color:#fff;font-weight:700}.main{flex:1;display:flex;flex-direction:column;min-width:0}.topbar{height:60px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 22px;position:sticky;top:0;z-index:5}.crumb{font-size:13px;color:var(--muted)}.crumb b{color:var(--text);font-weight:700}.top-actions{display:flex;align-items:center;gap:14px}.avatar{width:34px;height:34px;border-radius:50%;background:var(--navy-3);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;font-family:Cairo,sans-serif;cursor:pointer}.logout-btn{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:8px;padding:7px 12px;font-size:12.5px;cursor:pointer;font-family:Tajawal,sans-serif}.logout-btn:hover{color:var(--brick);border-color:var(--brick)}.content{padding:24px 26px 60px;overflow-x:hidden}.page-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:10px}.page-head h1{margin:0 0 4px;font-size:21px;font-weight:800}.page-head p{margin:0;color:var(--muted);font-size:13px}.btn{border:none;border-radius:8px;padding:9px 16px;font-family:Cairo,sans-serif;font-weight:700;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.btn-primary{background:var(--teal);color:#fff}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{background:var(--surface);color:var(--text);border:1px solid var(--border)}.btn-danger{background:var(--brick);color:#fff}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}thead th{background:var(--bg);text-align:right;padding:11px 14px;font-weight:700;font-family:Cairo,sans-serif;font-size:12px;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap}tbody td{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:#fafbfd}.avatar-sm{width:28px;height:28px;border-radius:50%;background:var(--teal-light);color:var(--teal-dark);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;font-family:Cairo,sans-serif;margin-left:8px;vertical-align:middle}.badge{padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600}.badge.active{background:var(--green-light);color:var(--green)}.badge.leave{background:var(--amber-light);color:var(--amber)}.badge.done,.badge.ended,.badge.transferred,.badge.resigned{background:#eee;color:var(--muted)}.badge.stopped{background:var(--brick-light);color:var(--brick)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.filters select,.filters input{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:9px 12px;font-size:12.5px;color:var(--text);font-family:Tajawal,sans-serif}.filters input{width:220px}.row-actions{display:flex;gap:10px;justify-content:flex-end}.row-actions a{color:var(--teal-dark);font-weight:700;text-decoration:none;font-size:12.5px;cursor:pointer}.row-actions a.danger{color:var(--brick)}.proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media (max-width: 1024px){.proj-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 760px){.proj-grid{grid-template-columns:1fr}}.proj-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px}.proj-card .top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.proj-card h4{margin:0 0 3px;font-size:14.5px;font-weight:700}.proj-card .code{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--muted)}.proj-card .meta{display:flex;justify-content:space-between;font-size:11.5px;color:var(--muted);margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.proj-card .desc{font-size:12px;color:var(--text);margin:6px 0;line-height:1.7}.proj-card .sub{font-size:12.5px;color:var(--muted)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f14238c;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:var(--surface);border-radius:14px;width:100%;max-width:520px;max-height:88vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0000004d}.modal-head{background:var(--navy);color:#fff;padding:16px 20px;display:flex;justify-content:space-between;align-items:center}.modal-head h3{margin:0;font-size:15px;font-weight:700}.modal-close{background:#ffffff1f;border:none;color:#fff;width:28px;height:28px;border-radius:7px;cursor:pointer;font-size:14px}.modal-body{padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.m-field{display:flex;flex-direction:column;gap:5px}.m-field label{font-size:12px;font-weight:700;color:var(--text)}.m-field label .req{color:var(--brick)}.m-field input,.m-field select,.m-field textarea{border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-size:13px;font-family:Tajawal,sans-serif;background:var(--bg);color:var(--text)}.m-field textarea{resize:vertical;min-height:64px}.m-field.error input,.m-field.error select{border-color:var(--brick);background:var(--brick-light)}.m-error-msg{font-size:11px;color:var(--brick)}.modal-foot{padding:14px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:10px}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%) translateY(10px);z-index:200;background:var(--navy);color:#fff;padding:11px 22px;border-radius:9px;font-size:13px;font-weight:600;opacity:0;pointer-events:none;transition:.25s;display:flex;align-items:center;gap:8px}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.toast.error{background:var(--brick)}.empty-state{text-align:center;padding:30px;color:var(--muted);font-size:12.5px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px 16px 14px;position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:4px;background:var(--accent, var(--teal))}.kpi-label{font-size:12px;color:var(--muted);font-weight:600;margin-bottom:8px}.kpi-value{font-size:26px;font-weight:800;font-family:Cairo,sans-serif}.kpi-sub{font-size:11.5px;color:var(--muted);margin-top:4px}.kpi-sub.up{color:var(--green)}.kpi-sub.warn{color:var(--amber)}.kpi-sub.down{color:var(--brick)}.grid-2{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;margin-bottom:20px;align-items:start}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:18px}.card h3{margin:0 0 14px;font-size:15px;font-weight:700}.chart{display:flex;align-items:flex-end;gap:10px;height:150px;padding-top:10px}.chart .bar-group{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px}.bar-pair{display:flex;align-items:flex-end;gap:3px;height:120px}.bar{width:10px;border-radius:3px 3px 0 0}.bar.in{background:var(--teal)}.bar.out{background:var(--amber)}.bar-label{font-size:10.5px;color:var(--muted)}.legend{display:flex;gap:16px;font-size:11.5px;color:var(--muted);margin-top:10px}.legend span{display:inline-flex;align-items:center;gap:5px}.legend i{width:9px;height:9px;border-radius:2px;display:inline-block}.alert-list{display:flex;flex-direction:column;gap:10px}.alert-item{display:flex;align-items:flex-start;gap:10px;padding:10px;border-radius:9px;background:var(--bg)}.alert-icon{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:13px;flex:0 0 28px}.alert-icon.warn{background:var(--amber-light);color:var(--amber)}.alert-icon.danger{background:var(--brick-light);color:var(--brick)}.alert-icon.info{background:var(--teal-light);color:var(--teal-dark)}.alert-text b{display:block;font-size:12.5px;font-weight:700}.alert-text span{font-size:11.5px;color:var(--muted)}@media (max-width: 1024px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}}@media (max-width: 760px){.kpi-grid{grid-template-columns:repeat(2,1fr);gap:10px}.kpi-card{padding:12px 12px 10px}.kpi-value{font-size:21px}.card{padding:14px}}@media (max-width: 760px){.app{display:block}.sidebar{position:fixed;inset-inline-start:0;top:0;bottom:0;z-index:40;width:80vw;max-width:290px;flex:none;transform:translate(100%);transition:transform .25s ease;box-shadow:-8px 0 24px #00000040}.sidebar.open{transform:translate(0)}.sidebar-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0e1a80;z-index:35}.sidebar-backdrop.open{display:block}.menu-toggle{display:block!important}.content{padding:14px 12px 40px}.page-head{flex-direction:column;align-items:flex-start}}.menu-toggle{display:none;width:34px;height:34px;border-radius:8px;border:1px solid var(--border);background:var(--surface);font-size:15px;cursor:pointer;flex:0 0 34px}.doc-tabs{display:flex;gap:8px;margin-bottom:18px}.doc-tab{padding:8px 18px;border-radius:8px;font-family:Cairo,sans-serif;font-weight:700;font-size:13px;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--muted)}.doc-tab.active{background:var(--navy);color:#fff;border-color:var(--navy)}.stamp{display:inline-flex;align-items:center;justify-content:center;padding:4px 12px;border-radius:5px;font-size:11px;font-weight:700;border:1.5px dashed;transform:rotate(-3deg);letter-spacing:.3px;background:transparent;font-family:Cairo,sans-serif}.stamp.approved{color:var(--green);border-color:var(--green);background:var(--green-light)}.stamp.pendingapproval,.stamp.draft{color:var(--muted);border-color:#c7cbd8;background:#f1f2f6}.stamp.cancelled{color:var(--brick);border-color:var(--brick);background:var(--brick-light)}.field-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 18px;margin-bottom:4px}.field-grid .m-field{margin-bottom:0}.items-table{width:100%;border-collapse:collapse;font-size:12.5px}.items-table th{background:var(--bg);padding:9px 10px;font-family:Cairo,sans-serif;font-size:11.5px;color:var(--muted);text-align:right}.items-table td{padding:8px 6px;border-bottom:1px solid var(--border);vertical-align:middle}.items-table input,.items-table select{border:1px solid var(--border);border-radius:6px;padding:7px 8px;font-size:12.5px;width:100%;font-family:Tajawal,sans-serif;background:var(--bg);color:var(--text)}.print-area{display:none}@media print{body *{visibility:hidden}.print-area,.print-area *{visibility:visible}.print-area{display:block!important;position:absolute;top:0;right:0;left:0;width:100%;padding:24px}}.items-table .remove-btn{background:var(--brick-light);color:var(--brick);border:none;border-radius:6px;width:26px;height:26px;cursor:pointer}
