:root{--color-bg-primary:#020B1F;--color-bg-secondary:#03142C;--color-surface-primary:#F8FCFD;--color-surface-card:#FFFFFF;--color-surface-alt:#EEF9FC;--color-surface-highlight:#F3FBFD;--color-accent-primary:#00B8DB;--color-accent-hover:#00A8CF;--color-accent-glow:#38D6F4;--color-accent-soft:rgba(0,184,219,0.15);--color-text-light-primary:#101828;--color-text-light-secondary:#4a5565;--color-text-dark-primary:#FFFFFF;--color-text-dark-secondary:rgba(255,255,255,0.85);--color-divider-light:#E4EEF3;--color-divider-dark:rgba(255,255,255,0.08);color-scheme:light;--bg:var(--color-surface-primary);--surface:var(--color-surface-card);--surface-alt:var(--color-surface-alt);--ink:var(--color-text-light-primary);--muted:var(--color-text-light-secondary);--line:var(--color-divider-light);--line-strong:#D0D5DD;--brand:var(--color-accent-primary);--brand-hover:var(--color-accent-hover);--brand-soft:var(--color-accent-soft);--ok:#10b981;--warn:#f59e0b;--danger:#ef4444;--info:#3b82f6;--sidebar:#F8FCFD;--sidebar-text:#101828;--sidebar-muted:#4a5565;--sidebar-border:#E4EEF3;--sidebar-hover:rgba(0,184,219,0.08);--sidebar-active-bg:#00B8DB;--sidebar-active-text:#FFFFFF;--table-head:#F3FBFD;--input-bg:#FFFFFF;--chip-bg:#FFFFFF;--badge-bg:#EEF9FC;--shadow:0 1px 2px rgba(15,23,42,0.03),0 8px 24px -6px rgba(15,23,42,0.06);--radius:12px;--font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}:root[data-theme=dark],html[data-theme=dark]{color-scheme:dark;--bg:var(--color-bg-primary);--surface:#0A1A33;--surface-alt:#03142C;--ink:var(--color-text-dark-primary);--muted:var(--color-text-dark-secondary);--line:rgba(0,184,219,0.28);--line-strong:rgba(0,184,219,0.55);--brand-soft:rgba(0,184,219,0.2);--table-head:rgba(255,255,255,0.04);--input-bg:#0A1A33;--chip-bg:#0A1A33;--badge-bg:rgba(0,184,219,0.12);--shadow:0 1px 2px rgba(0,0,0,0.25),0 12px 32px -8px rgba(0,0,0,0.55);--sidebar:#020B1F;--sidebar-text:rgba(255,255,255,0.85);--sidebar-muted:rgba(255,255,255,0.55);--sidebar-border:rgba(0,184,219,0.12);--sidebar-hover:rgba(0,184,219,0.16);--sidebar-active-bg:#00B8DB;--sidebar-active-text:#FFFFFF}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100vh}body{font-family:var(--font);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.011em}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit}.shell{display:flex;min-height:100vh}.sidebar{position:fixed;top:0;bottom:0;left:0;width:240px;background:var(--sidebar);border-right:1px solid var(--sidebar-border);display:flex;flex-direction:column;z-index:50;overflow-y:auto;transition:transform .2s ease}.sidebar-top{padding:24px 20px 20px;border-bottom:1px solid var(--sidebar-border)}.brand-logo{font-size:20px;font-weight:800;letter-spacing:-.02em;color:var(--ink);display:flex;align-items:center;gap:8px}.brand-logo span.accent{color:var(--brand)}.brand-logo-image img{display:block;width:min(330px,88vw);height:auto;max-height:142px;object-fit:contain;padding:12px 18px;border:1px solid rgba(0,184,219,.24);border-radius:12px;background:linear-gradient(145deg,#ffffff,#f4fbfd);box-shadow:0 10px 24px rgba(0,105,130,.12)}.sidebar-top .brand-logo-image{justify-content:center}.sidebar-top .brand-logo-image img{width:min(210px,100%);height:104px;max-height:104px;padding:10px 14px;border-radius:12px}.sidebar-top .brand-tag{text-align:center;margin-top:8px}.login-brand-name{margin-top:10px;color:var(--ink);font-size:22px;font-weight:800;letter-spacing:.01em;text-align:center}.brand-tag{font-size:11px;font-weight:600;color:var(--muted);margin-top:3px;letter-spacing:.02em}.sidebar-nav{padding:18px 14px;display:flex;flex-direction:column;gap:6px;flex:1 1}.sidebar-nav a{position:relative;display:flex;align-items:center;gap:12px;margin:0;padding:12px 14px 12px 18px;border-radius:12px;font-size:13.5px;font-weight:600;color:var(--sidebar-text);transition:background .2s ease,color .2s ease,box-shadow .2s ease}.sidebar-nav a:hover{background:rgba(0,184,219,.08);color:var(--brand)}.sidebar-nav a.active{background:rgba(224,247,252,.95);color:#0891b2!important;font-weight:700;border-radius:12px;box-shadow:inset 0 0 0 1px rgba(0,184,219,.22),0 8px 18px -10px rgba(0,184,219,.55)}.sidebar-nav a.active:before{content:"";position:absolute;top:7px;bottom:7px;inset-inline-start:6px;width:4px;border-radius:999px;background:#00b8db;box-shadow:0 0 0 3px rgba(0,184,219,.16)}html[dir=rtl] .sidebar-nav a,html[dir=rtl] .sidebar-nav a.active{border-radius:10px;margin:0;padding:10px 16px 10px 14px}.sidebar-nav a.active .nav-svg-icon,.sidebar-nav a.active .nav-svg-icon svg,.sidebar-nav a.active i,.sidebar-nav a.active span{color:#0891b2!important;stroke:#0891b2}:root[data-theme=dark] .sidebar-nav a.active,html[data-theme=dark] .sidebar-nav a.active{background:rgba(0,184,219,.16);color:#67e8f9!important;box-shadow:inset 0 0 0 1px rgba(0,184,219,.28),0 8px 18px -10px rgba(0,184,219,.45)}:root[data-theme=dark] .sidebar-nav a.active .nav-svg-icon,:root[data-theme=dark] .sidebar-nav a.active .nav-svg-icon svg,:root[data-theme=dark] .sidebar-nav a.active i,:root[data-theme=dark] .sidebar-nav a.active span,html[data-theme=dark] .sidebar-nav a.active .nav-svg-icon,html[data-theme=dark] .sidebar-nav a.active .nav-svg-icon svg,html[data-theme=dark] .sidebar-nav a.active i,html[data-theme=dark] .sidebar-nav a.active span{color:#67e8f9!important;stroke:#67e8f9}.sidebar-nav a i{font-style:normal;font-size:16px;width:20px;text-align:center;display:inline-block;opacity:.85}.sidebar-bottom{padding:16px 14px 24px;border-top:1px solid var(--sidebar-border)}.logout-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;background:#00B8DB;color:#FFFFFF;border:none;border-radius:6px;padding:10px 16px;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s ease}.logout-btn:hover{background:var(--brand-hover)}.main{margin-left:240px;flex:1 1;width:calc(100% - 240px);padding:24px 32px 60px;max-width:1440px}.topbar{gap:12px;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap}.topbar,.topbar-left{display:flex;align-items:flex-start}.topbar-left{gap:10px;min-width:0;flex:1 1 220px}.topbar-left h2{margin:0;font-size:22px;font-weight:700;color:var(--ink);letter-spacing:-.03em;line-height:1.2}.topbar-left p{margin:6px 0 0;color:var(--muted);font-size:13px;font-weight:450;letter-spacing:-.01em}.topbar-right{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.topbar-select{height:38px;box-sizing:border-box;display:inline-flex;align-items:center;border-radius:6px;border:1px solid rgba(0,184,219,.65);background:var(--surface);color:var(--ink);font-size:13px;font-weight:600;padding:0 12px;cursor:pointer;outline:none;transition:all .15s ease;box-shadow:0 1px 2px rgba(0,0,0,.03)}.topbar-select:focus,.topbar-select:hover{border-color:var(--brand)}.lang-toggle,.theme-toggle{height:36px;width:36px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid rgba(241,245,249,.9);background:var(--surface);color:var(--ink);font-size:13px;font-weight:600;cursor:pointer;outline:none;transition:background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease;box-shadow:0 1px 2px rgba(15,23,42,.04)}.lang-toggle:hover,.theme-toggle:hover{border-color:rgba(0,184,219,.35);color:var(--brand);background:rgba(236,254,255,.7);box-shadow:0 2px 8px rgba(0,184,219,.1)}.theme-toggle svg{width:16px;height:16px;stroke:currentColor;stroke-width:2}.user-chip{height:36px;box-sizing:border-box;gap:8px;border-radius:999px;border:1px solid rgba(241,245,249,.9);background:var(--surface);color:var(--ink);font-size:13px;font-weight:500;padding:0 12px 0 4px;white-space:nowrap;box-shadow:0 1px 2px rgba(15,23,42,.04)}.user-avatar,.user-chip{display:inline-flex;align-items:center}.user-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(145deg,#00b8db,#0284c7);color:#fff;justify-content:center;font-size:11px;font-weight:800;letter-spacing:.02em;flex-shrink:0}.user-chip-meta{display:inline-flex;align-items:baseline;gap:4px;min-width:0}.user-chip-name{overflow:hidden;text-overflow:ellipsis;max-width:140px}.user-chip-role{color:var(--muted);font-weight:500;font-size:12px}.dash-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px;margin-bottom:20px;align-items:stretch}.dash-kpi-grid>a{flex-direction:column;text-decoration:none}.dash-kpi-grid>a,.kpi-card{display:flex;height:100%;min-width:0}.kpi-card{border-radius:20px;padding:26px 26px 26px 28px;color:var(--ink);background:var(--surface);border:1px solid rgba(226,232,240,.55);flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:16px;box-shadow:0 1px 1px rgba(15,23,42,.04),0 10px 18px -8px rgba(15,23,42,.1),0 28px 48px -20px rgba(15,23,42,.16);position:relative;overflow:hidden;box-sizing:border-box;min-height:148px;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s cubic-bezier(.22,1,.36,1),border-color .35s ease}.kpi-info{display:flex;flex-direction:column;justify-content:center;gap:6px;min-width:0;flex:1 1}.kpi-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);white-space:normal;line-height:1.25;margin:0}.kpi-val{font-size:34px;line-height:1;color:var(--ink);letter-spacing:-.04em;margin:2px 0 0}.kpi-val,.kpi-val-text{font-weight:800;white-space:nowrap}.kpi-val-text{font-size:18px;line-height:1.2;letter-spacing:-.02em}.kpi-badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;background:rgba(0,184,219,.1);color:#0e7490;font-size:10.5px;font-weight:600;width:-moz-fit-content;width:fit-content;white-space:nowrap;margin-top:2px}.kpi-ring{width:58px;height:58px;flex-shrink:0;position:relative;display:grid;place-items:center;align-self:center}.kpi-ring svg{width:58px;height:58px;transform:rotate(-90deg)}.kpi-ring-track{fill:none;stroke:#e2e8f0;stroke-width:3.25}.kpi-ring-value{fill:none;stroke:var(--brand);stroke-width:3.25;stroke-linecap:round;stroke-dasharray:0 var(--ring-total,97.39);animation:kpi-ring-draw 1.25s cubic-bezier(.16,1,.3,1) .45s forwards}.kpi-card:before{content:"";position:absolute;inset-block:14px;inset-inline-start:0;width:4px;border-radius:0 6px 6px 0;background:var(--brand)}html[dir=rtl] .kpi-card:before{border-radius:6px 0 0 6px}.kpi-card.tone-cyan:before{background:#00b8db}.kpi-card.tone-amber:before{background:#f59e0b}.kpi-card.tone-emerald:before{background:#10b981}.kpi-card.tone-rose:before{background:#f43f5e}.kpi-card.tone-amber .kpi-badge{background:rgba(245,158,11,.12);color:#b45309}.kpi-card.tone-emerald .kpi-badge{background:rgba(16,185,129,.12);color:#047857}.kpi-card.tone-rose .kpi-badge{background:rgba(244,63,94,.12);color:#be123c}.kpi-card.tone-amber .kpi-ring-value{stroke:#f59e0b}.kpi-card.tone-emerald .kpi-ring-value{stroke:#10b981}.kpi-card.tone-rose .kpi-ring-value{stroke:#f43f5e}.kpi-ring-label{position:absolute;inset:0;display:grid;place-items:center;font-size:12px;font-weight:800;color:var(--ink);letter-spacing:-.03em}:root[data-theme=dark] .kpi-card,html[data-theme=dark] .kpi-card{background:#0f172a;border-color:rgba(148,163,184,.14);box-shadow:0 1px 1px rgba(0,0,0,.35),0 16px 28px -12px rgba(0,0,0,.55),0 32px 56px -24px rgba(0,0,0,.7)}:root[data-theme=dark] .kpi-ring-track,html[data-theme=dark] .kpi-ring-track{stroke:rgba(148,163,184,.2)}:root[data-theme=dark] .kpi-badge,html[data-theme=dark] .kpi-badge{background:rgba(0,184,219,.16);color:#7dd3fc}html[data-theme=dark] .kpi-card.tone-amber .kpi-badge{background:rgba(245,158,11,.18);color:#fcd34d}html[data-theme=dark] .kpi-card.tone-emerald .kpi-badge{background:rgba(16,185,129,.18);color:#6ee7b7}html[data-theme=dark] .kpi-card.tone-rose .kpi-badge{background:rgba(244,63,94,.18);color:#fda4af}.dash-enter-item{min-width:0;height:100%;display:flex}.dash-enter-item>.panel-card{flex:1 1;width:100%;height:100%}.panel-card{background:var(--surface);border:1px solid rgba(226,232,240,.55);border-radius:20px;padding:28px;box-shadow:0 1px 1px rgba(15,23,42,.04),0 10px 18px -8px rgba(15,23,42,.1),0 28px 48px -20px rgba(15,23,42,.16);margin-bottom:0;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s cubic-bezier(.22,1,.36,1),border-color .35s ease;will-change:transform,box-shadow}.panel-card:hover{transform:translateY(-6px);box-shadow:0 2px 4px rgba(15,23,42,.05),0 18px 32px -12px rgba(15,23,42,.14),0 36px 64px -24px rgba(0,184,219,.2);border-color:rgba(0,184,219,.22)}:root[data-theme=dark] .panel-card,html[data-theme=dark] .panel-card{border-color:rgba(148,163,184,.14);box-shadow:0 1px 1px rgba(0,0,0,.35),0 16px 28px -12px rgba(0,0,0,.55),0 32px 56px -24px rgba(0,0,0,.7)}:root[data-theme=dark] .panel-card:hover,html[data-theme=dark] .panel-card:hover{border-color:rgba(0,184,219,.28);box-shadow:0 2px 6px rgba(0,0,0,.4),0 22px 40px -14px rgba(0,0,0,.65)}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px;gap:14px}.panel-title{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1}.panel-title h2{font-size:17px;font-weight:800;margin:0;color:var(--ink);letter-spacing:-.03em;line-height:1.2}.panel-title p{font-size:12px;color:var(--muted);margin:0;font-weight:500;line-height:1.35}.panel-btn{position:relative;background:transparent;color:#0891b2;border:none;padding:6px 2px 8px;border-radius:0;font-size:12px;font-weight:700;cursor:pointer;letter-spacing:.02em;white-space:nowrap;align-self:flex-start;margin-top:2px}.panel-btn:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1.5px;background:#00b8db;transform:scaleX(.35);transform-origin:left center;transition:transform .22s ease;border-radius:2px}.panel-btn:hover{color:#0e7490;background:transparent}.panel-btn:hover:after{transform:scaleX(1)}:root[data-theme=dark] .panel-btn,html[data-theme=dark] .panel-btn{background:transparent;color:#67e8f9}:root[data-theme=dark] .panel-btn:after,html[data-theme=dark] .panel-btn:after{background:#67e8f9}:root[data-theme=dark] .panel-btn:hover,html[data-theme=dark] .panel-btn:hover{background:transparent;color:#a5f3fc}.dash-grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px;margin-bottom:20px}.table-wrap{width:100%;overflow-x:auto}table.portal-table{width:100%;border-collapse:collapse;font-size:12.5px}table.portal-table thead tr{background:transparent;border-bottom:1px solid rgba(241,245,249,.95)}table.portal-table th{padding:0 10px 8px;text-align:left;font-size:11px;font-weight:600;color:rgba(148,163,184,.95);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}table.portal-table td{padding:12px 10px;border-bottom:1px solid rgba(241,245,249,.7);color:var(--ink);white-space:nowrap;font-weight:500}table.portal-table tbody tr:last-child td{border-bottom:none}table.portal-table tbody tr:hover{background:rgba(248,250,252,.8)}:root[data-theme=dark] table.portal-table td,:root[data-theme=dark] table.portal-table thead tr,html[data-theme=dark] table.portal-table td,html[data-theme=dark] table.portal-table thead tr{border-bottom-color:rgba(148,163,184,.14)}:root[data-theme=dark] table.portal-table th,html[data-theme=dark] table.portal-table th{color:rgba(148,163,184,.8)}:root[data-theme=dark] table.portal-table tbody tr:hover,html[data-theme=dark] table.portal-table tbody tr:hover{background:rgba(0,184,219,.06)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:48px 20px;text-align:center;color:#94a3b8;background:linear-gradient(180deg,rgba(248,250,252,.55),transparent);border-radius:12px}.empty-state-icon{width:72px;height:72px;border-radius:0;display:grid;place-items:center;background:transparent;border:none;box-shadow:none;color:var(--brand)}.empty-state-icon svg{width:72px;height:72px;opacity:1}.empty-state-text{margin:0;font-size:13.5px;font-weight:500;color:#94a3b8;max-width:260px;line-height:1.5;letter-spacing:-.01em}:root[data-theme=dark] .empty-state,html[data-theme=dark] .empty-state{background:linear-gradient(180deg,rgba(15,23,42,.45),transparent)}:root[data-theme=dark] .empty-state-icon,html[data-theme=dark] .empty-state-icon{background:rgba(15,23,42,.8);border-color:rgba(148,163,184,.16);box-shadow:0 8px 20px -8px rgba(0,0,0,.5)}:root[data-theme=dark] .lang-toggle,:root[data-theme=dark] .theme-toggle,:root[data-theme=dark] .user-chip,html[data-theme=dark] .lang-toggle,html[data-theme=dark] .theme-toggle,html[data-theme=dark] .user-chip{border-color:rgba(148,163,184,.18);box-shadow:0 1px 2px rgba(0,0,0,.25)}:root[data-theme=dark] .lang-toggle:hover,:root[data-theme=dark] .theme-toggle:hover,html[data-theme=dark] .lang-toggle:hover,html[data-theme=dark] .theme-toggle:hover{background:rgba(0,184,219,.12);border-color:rgba(0,184,219,.35)}.status-pill{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:500;text-transform:lowercase;line-height:1.4}.status-pill.active,.status-pill.approved,.status-pill.done,.status-pill.present{background:#d1fae5;color:#065f46}.status-pill.in_progress,.status-pill.late,.status-pill.pending{background:#fef3c7;color:#92400e}.status-pill.absent,.status-pill.rejected{background:#fee2e2;color:#991b1b}.status-pill.cyan,.status-pill.leave{background:#e0f2fe;color:#0369a1}.code-pill{font-family:monospace;font-size:11.5px;font-weight:700;padding:2px 7px;border-radius:4px;background:rgba(0,184,219,.1);color:#008fa8}.form-field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}.form-field label{font-size:12px;font-weight:700;color:var(--muted)}.form-field input,.form-field select,.form-field textarea{background:var(--input-bg);border:1px solid var(--line);border-radius:6px;padding:9px 12px;font-size:13px;color:var(--ink);outline:none;transition:border .15s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--brand)}.btn-primary{background:#00B8DB;color:#FFFFFF;border:none;border-radius:6px;padding:10px 18px;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s ease}.btn-primary:hover{background:var(--brand-hover)}.error-box{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b;border-radius:8px}.error-box,.success-box{padding:12px 16px;font-size:13px;margin-bottom:16px}.success-box{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46;border-radius:8px}.mobile-menu-btn{display:none}@media (max-width:900px){.sidebar{transform:translateX(-100%)}.sidebar.open{transform:translateX(0);box-shadow:0 0 30px rgba(0,0,0,.25)}.main{margin-left:0;width:100%;padding:18px 16px 40px}.mobile-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;background:var(--surface);border:1px solid var(--line);border-radius:6px;cursor:pointer;font-size:18px;color:var(--ink)}.dash-kpi-grid{grid-template-columns:repeat(2,1fr)}.dash-grid-2{grid-template-columns:1fr}}@media (max-width:500px){.dash-kpi-grid{grid-template-columns:1fr}}.pagination-btn{min-width:30px;height:30px;padding:0 6px;border-radius:6px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.pagination-btn:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.pagination-btn.active{background:#00B8DB!important;color:#FFFFFF!important;border-color:#00B8DB!important;font-weight:700}.pagination-btn:disabled{opacity:.35;cursor:not-allowed}.nav-svg-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.nav-svg-icon svg{width:18px;height:18px;stroke:currentColor}.clickable-card{cursor:pointer;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s cubic-bezier(.22,1,.36,1),border-color .35s ease}.clickable-card:hover{transform:translateY(-6px)!important;box-shadow:0 2px 4px rgba(15,23,42,.05),0 18px 32px -12px rgba(15,23,42,.14),0 36px 64px -24px rgba(0,184,219,.2)!important;border-color:rgba(0,184,219,.22)}:root[data-theme=dark] .clickable-card:hover,html[data-theme=dark] .clickable-card:hover{box-shadow:0 2px 4px rgba(0,0,0,.25),0 14px 32px -8px rgba(0,0,0,.5);border-color:rgba(0,184,219,.22)}html[dir=rtl] body{text-align:right;direction:rtl}html[dir=rtl] .sidebar{left:auto;right:0;border-right:none;border-left:1px solid var(--sidebar-border)}html[dir=rtl] .main{margin-left:0;margin-right:240px}html[dir=rtl] .kpi-card,html[dir=rtl] .table-wrap table,html[dir=rtl] .table-wrap td,html[dir=rtl] .table-wrap th{text-align:right}@media (max-width:900px){html[dir=rtl] .sidebar{left:auto;right:0;transform:translateX(105%)}html[dir=rtl] .sidebar.open{transform:translateX(0)}html[dir=rtl] .main{margin-right:0}}@keyframes dash-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes kpi-ring-draw{to{stroke-dasharray:var(--ring-len,0) var(--ring-total,97.39)}}@keyframes empty-fade{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.dash-grid-2>.dash-enter-item,.dash-kpi-grid>a{opacity:0;animation:dash-enter .75s cubic-bezier(.16,1,.3,1) both;will-change:opacity,transform}.dash-kpi-grid>a:first-child{animation-delay:.06s}.dash-kpi-grid>a:nth-child(2){animation-delay:.14s}.dash-kpi-grid>a:nth-child(3){animation-delay:.22s}.dash-kpi-grid>a:nth-child(4){animation-delay:.3s}.dash-kpi-grid+.dash-grid-2>.dash-enter-item:first-child{animation-delay:.38s}.dash-kpi-grid+.dash-grid-2>.dash-enter-item:nth-child(2){animation-delay:.46s}.dash-kpi-grid+.dash-grid-2+.dash-grid-2>.dash-enter-item:first-child{animation-delay:.54s}.dash-kpi-grid+.dash-grid-2+.dash-grid-2>.dash-enter-item:nth-child(2){animation-delay:.62s}.empty-state{animation:empty-fade .7s cubic-bezier(.16,1,.3,1) .7s both}.kpi-ring-label{animation:empty-fade .6s cubic-bezier(.16,1,.3,1) .7s both}.panel-btn{transition:color .2s ease}.panel-btn:hover{transform:none;box-shadow:none}.panel-btn:active{transform:none}.sidebar-nav a{transition:background .2s ease,color .2s ease,transform .2s ease}.sidebar-nav a:hover{transform:translateX(2px)}html[dir=rtl] .sidebar-nav a:hover{transform:translateX(-2px)}.sidebar-nav a.active:hover{transform:none}.lang-toggle,.theme-toggle{transition:background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}.lang-toggle:hover,.theme-toggle:hover{transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.dash-grid-2>.dash-enter-item,.dash-kpi-grid>a,.empty-state,.kpi-ring-label{animation:none!important;opacity:1!important;transform:none!important}.kpi-ring-value{animation:none!important;stroke-dasharray:var(--ring-len,0) var(--ring-total,97.39)!important}.clickable-card:hover,.lang-toggle:hover,.panel-btn:hover,.panel-card:hover,.sidebar-nav a:hover,.theme-toggle:hover{transform:none!important}}.admin-card-hover{transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1),border-color .22s ease!important;will-change:transform,box-shadow}.admin-card-hover:hover{transform:translateY(-3px)!important;box-shadow:0 14px 28px -4px rgba(0,184,219,.12),0 8px 16px -4px rgba(0,0,0,.06)!important;border-color:rgba(0,184,219,.45)!important}:root[data-theme=dark] .admin-card-hover:hover{transform:translateY(-4px)!important;box-shadow:0 16px 36px -4px rgba(0,184,219,.25),0 8px 18px -4px rgba(0,0,0,.6)!important;border-color:rgba(0,184,219,.65)!important}.admin-action-pill-hover{transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1),border-color .22s ease!important;will-change:transform,box-shadow}.admin-action-pill-hover:hover{transform:translateY(-3px)!important;box-shadow:0 10px 22px -3px rgba(0,184,219,.16),0 4px 10px -3px rgba(0,0,0,.05)!important;border-color:rgba(0,184,219,.5)!important}:root[data-theme=dark] .admin-action-pill-hover:hover{transform:translateY(-3px)!important;box-shadow:0 12px 26px -3px rgba(0,184,219,.3),0 6px 14px -3px rgba(0,0,0,.5)!important;border-color:rgba(0,184,219,.7)!important}.modal-backdrop,.modal-overlay,.portal-modal-overlay{position:fixed;inset:0;background:rgba(2,11,31,.72);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;animation:modalFadeIn .2s cubic-bezier(.16,1,.3,1)}.modal-card,.modal-content,.portal-modal-card{background:var(--surface,#FFFFFF);border:1px solid var(--line,#e4eef3);border-radius:16px;width:100%;max-width:580px;max-height:calc(100vh - 40px);overflow-y:auto;box-shadow:0 24px 48px -12px rgba(2,11,31,.28),0 0 0 1px rgba(0,184,219,.12);padding:24px 28px;box-sizing:border-box;animation:modalZoomIn .22s cubic-bezier(.16,1,.3,1)}.modal-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line,#e4eef3);padding-bottom:14px;margin-bottom:18px}.modal-header h2,.modal-header h3,.modal-title{margin:0;font-size:16.5px;font-weight:700;color:var(--ink,#101828);letter-spacing:-.01em}.modal-close-btn{background:transparent;border:none;font-size:20px;color:var(--muted,#64748b);cursor:pointer;border-radius:6px;padding:4px 8px;transition:all .15s ease;line-height:1}.modal-close-btn:hover{background:rgba(0,184,219,.08);color:var(--brand,#00B8DB)}.modal-body{display:flex;flex-direction:column;gap:14px}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;border-top:1px solid var(--line,#e4eef3);padding-top:16px;margin-top:20px}.emp-input,.form-control,.portal-input,input[type=date],input[type=datetime-local],input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],select,textarea{width:100%;padding:9px 13px;font-size:13px;font-family:inherit;color:var(--ink,#101828);background:var(--surface,#FFFFFF);border:1px solid var(--line,#cbd5e1);border-radius:8px;box-sizing:border-box;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;outline:none;line-height:1.5}.emp-input:focus,.form-control:focus,.portal-input:focus,input:focus,select:focus,textarea:focus{border-color:var(--brand,#00B8DB)!important;box-shadow:0 0 0 3px rgba(0,184,219,.18)!important;background:var(--surface,#FFFFFF)}input:hover,select:hover,textarea:hover{border-color:#94a3b8}input::placeholder,textarea::placeholder{color:var(--muted,#94a3b8);opacity:.85}.field-label,label{display:block;font-size:12px;font-weight:600;color:var(--ink,#101828);margin-bottom:5px}.search-box-wrap,.search-input-wrap{position:relative;display:flex;align-items:center;width:100%;border-radius:8px;background:var(--surface-alt,#EEF9FC);border:1px solid var(--line,#e4eef3);padding:0 12px;transition:all .2s ease;box-sizing:border-box}.search-box-wrap:focus-within,.search-input-wrap:focus-within{border-color:var(--brand,#00B8DB)!important;background:var(--surface,#FFFFFF)!important;box-shadow:0 0 0 3px rgba(0,184,219,.15)!important}.search-box-wrap svg,.search-input-wrap svg{color:var(--muted,#64748b);flex-shrink:0;margin-right:8px}.search-box-wrap input,.search-input-wrap input{border:none!important;background:transparent!important;padding:8px 0!important;box-shadow:none!important;width:100%;outline:none!important}:root[data-theme=dark] .modal-card,:root[data-theme=dark] .modal-content,:root[data-theme=dark] .portal-modal-card{background:#0A1A33!important;border-color:rgba(0,184,219,.32)!important;color:#FFFFFF!important;box-shadow:0 24px 50px -12px rgba(0,0,0,.65),0 0 0 1px rgba(0,184,219,.22)!important}:root[data-theme=dark] .emp-input,:root[data-theme=dark] .form-control,:root[data-theme=dark] .portal-input,:root[data-theme=dark] input[type=date],:root[data-theme=dark] input[type=email],:root[data-theme=dark] input[type=number],:root[data-theme=dark] input[type=password],:root[data-theme=dark] input[type=search],:root[data-theme=dark] input[type=tel],:root[data-theme=dark] input[type=text],:root[data-theme=dark] select,:root[data-theme=dark] textarea{background:#03142C!important;color:#FFFFFF!important;border-color:rgba(0,184,219,.28)!important}:root[data-theme=dark] .emp-input:focus,:root[data-theme=dark] .form-control:focus,:root[data-theme=dark] .portal-input:focus,:root[data-theme=dark] input:focus,:root[data-theme=dark] select:focus,:root[data-theme=dark] textarea:focus{border-color:#00B8DB!important;box-shadow:0 0 0 3px rgba(0,184,219,.3)!important;background:#0A1A33!important}:root[data-theme=dark] .field-label,:root[data-theme=dark] label{color:rgba(255,255,255,.9)!important}:root[data-theme=dark] .modal-header h2,:root[data-theme=dark] .modal-header h3,:root[data-theme=dark] .modal-title{color:#FFFFFF!important}:root[data-theme=dark] .search-box-wrap,:root[data-theme=dark] .search-input-wrap{background:#03142C!important;border-color:rgba(0,184,219,.28)!important}:root[data-theme=dark] .search-box-wrap:focus-within,:root[data-theme=dark] .search-input-wrap:focus-within{background:#0A1A33!important;border-color:#00B8DB!important}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalZoomIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}