@import "https://fonts.googleapis.com/css2?family=Tajawal:wght@300;400;500;700;800;900&display=swap";.app-btn[data-v-23ba15e0]{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-body);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:1px solid #0000;font-weight:600;text-decoration:none;display:inline-flex}.app-btn[data-v-23ba15e0]:disabled{opacity:.65;cursor:not-allowed;box-shadow:none!important;transform:none!important}.app-btn--sm[data-v-23ba15e0]{padding:6px var(--space-3);font-size:var(--text-xs)}.app-btn--md[data-v-23ba15e0]{padding:10px var(--space-5);font-size:var(--text-sm)}.app-btn--lg[data-v-23ba15e0]{padding:var(--space-4) var(--space-8);font-size:var(--text-base)}.app-btn--primary[data-v-23ba15e0]{background:linear-gradient(135deg, var(--color-accent), #1a8a80);color:#fff;border-color:#0000}.app-btn--primary[data-v-23ba15e0]:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 4px 20px #26a09552}.app-btn--secondary[data-v-23ba15e0]{background:var(--color-surface);color:var(--color-text-muted);border-color:var(--color-border-strong)}.app-btn--secondary[data-v-23ba15e0]:not(:disabled):hover{border-color:var(--color-text-muted);color:var(--color-text)}.app-btn--outline[data-v-23ba15e0]{color:var(--color-accent);border-color:var(--color-accent);background:0 0}.app-btn--outline[data-v-23ba15e0]:not(:disabled):hover{background:#26a09514}.app-btn--danger[data-v-23ba15e0]{color:#dc2626;background:0 0;border-color:#ef44444d}.app-btn--danger[data-v-23ba15e0]:not(:disabled):hover{background:#ef444412}.app-btn--ghost[data-v-23ba15e0]{color:var(--color-text-muted);background:0 0;border-color:#0000}.app-btn--ghost[data-v-23ba15e0]:not(:disabled):hover{background:var(--color-surface-soft);color:var(--color-text)}.app-btn__spinner[data-v-23ba15e0]{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.7s linear infinite btn-spin-23ba15e0}.app-btn--secondary .app-btn__spinner[data-v-23ba15e0],.app-btn--outline .app-btn__spinner[data-v-23ba15e0],.app-btn--ghost .app-btn__spinner[data-v-23ba15e0]{border-color:var(--color-border-strong);border-top-color:var(--color-accent)}@keyframes btn-spin-23ba15e0{to{transform:rotate(360deg)}}.loading-state[data-v-596f25e0]{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-16);flex-direction:column;display:flex}.spinner[data-v-596f25e0]{border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin-596f25e0}.label[data-v-596f25e0]{font-size:var(--text-sm);color:var(--color-text-muted)}@keyframes spin-596f25e0{to{transform:rotate(360deg)}}.app-badge[data-v-172d6c0a]{border-radius:var(--radius-full);text-transform:capitalize;white-space:nowrap;border:1px solid #0000;align-items:center;gap:4px;font-weight:600;display:inline-flex}.app-badge--sm[data-v-172d6c0a]{padding:2px var(--space-2);font-size:.65rem}.app-badge--md[data-v-172d6c0a]{padding:3px var(--space-3);font-size:.68rem}.app-badge--brand[data-v-172d6c0a]{color:var(--color-brand);background:#3a498414;border-color:#3a498424}.app-badge--accent[data-v-172d6c0a]{color:var(--color-accent);background:#26a0951a;border-color:#26a0952e}.app-badge--success[data-v-172d6c0a]{color:#059669;background:#10b9811a;border-color:#10b9812e}.app-badge--warning[data-v-172d6c0a]{color:#d97706;background:#f59e0b1a;border-color:#f59e0b2e}.app-badge--danger[data-v-172d6c0a]{color:#dc2626;background:#ef444417;border-color:#ef444429}.app-badge--info[data-v-172d6c0a]{color:#2563eb;background:#3b82f617;border-color:#3b82f629}.app-badge--neutral[data-v-172d6c0a]{background:var(--color-surface-soft);color:var(--color-text-muted);border-color:var(--color-border)}.app-input-wrap[data-v-f0c72d03]{gap:var(--space-2);flex-direction:column;display:flex}.app-input-label[data-v-f0c72d03]{font-size:var(--text-sm);color:var(--color-text);font-weight:600}.required[data-v-f0c72d03]{color:#dc2626;margin-inline-start:2px}.app-input[data-v-f0c72d03]{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:var(--font-body);background:var(--color-surface);color:var(--color-text);transition:border-color var(--transition-fast);outline:none}.app-input[data-v-f0c72d03]:focus{border-color:var(--color-accent)}.app-input[data-v-f0c72d03]:disabled{opacity:.6;cursor:not-allowed}.app-input--error[data-v-f0c72d03],.app-input--error[data-v-f0c72d03]:focus{border-color:#dc2626}.app-input-error[data-v-f0c72d03]{font-size:var(--text-xs);color:#dc2626}.app-input-hint[data-v-f0c72d03]{font-size:var(--text-xs);color:var(--color-text-muted)}.app-select-wrap[data-v-5d60945c]{gap:var(--space-2);flex-direction:column;display:flex}.app-select-label[data-v-5d60945c]{font-size:var(--text-sm);color:var(--color-text);font-weight:600}.required[data-v-5d60945c]{color:#dc2626;margin-inline-start:2px}.app-select-inner[data-v-5d60945c]{align-items:center;display:flex;position:relative}.app-select[data-v-5d60945c]{appearance:none;width:100%;padding:var(--space-3) var(--space-10) var(--space-3) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:var(--font-body);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:border-color var(--transition-fast);outline:none}.app-select[data-v-5d60945c]:focus{border-color:var(--color-accent)}.app-select[data-v-5d60945c]:disabled{opacity:.6;cursor:not-allowed}.app-select--error[data-v-5d60945c]{border-color:#dc2626}.app-select-chevron[data-v-5d60945c]{pointer-events:none;color:var(--color-text-muted);position:absolute;inset-inline-end:var(--space-3)}.app-select-error[data-v-5d60945c]{font-size:var(--text-xs);color:#dc2626}.app-textarea-wrap[data-v-f05eb55d]{gap:var(--space-2);flex-direction:column;display:flex}.app-textarea-label[data-v-f05eb55d]{font-size:var(--text-sm);color:var(--color-text);font-weight:600}.required[data-v-f05eb55d]{color:#dc2626;margin-inline-start:2px}.app-textarea[data-v-f05eb55d]{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:var(--font-body);background:var(--color-surface);color:var(--color-text);resize:vertical;transition:border-color var(--transition-fast);outline:none;line-height:1.6}.app-textarea[data-v-f05eb55d]:focus{border-color:var(--color-accent)}.app-textarea[data-v-f05eb55d]:disabled{opacity:.6;cursor:not-allowed}.app-textarea--error[data-v-f05eb55d]{border-color:#dc2626}.app-textarea-error[data-v-f05eb55d]{font-size:var(--text-xs);color:#dc2626}.app-textarea-hint[data-v-f05eb55d]{font-size:var(--text-xs);color:var(--color-text-muted)}.app-empty[data-v-d574fb5f]{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-16) var(--space-8);text-align:center;flex-direction:column;display:flex}.app-empty__icon[data-v-d574fb5f]{color:var(--color-muted);margin-bottom:var(--space-2)}.app-empty__message[data-v-d574fb5f]{font-size:var(--text-sm);color:var(--color-text-muted);font-weight:600}.app-empty__hint[data-v-d574fb5f]{font-size:var(--text-xs);color:var(--color-text-muted);max-width:360px;line-height:1.6}.pagination[data-v-8a09ec79]{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.pagination__range[data-v-8a09ec79]{font-size:var(--text-xs);color:var(--color-text-muted)}.pagination__controls[data-v-8a09ec79]{align-items:center;gap:var(--space-1);margin-inline-start:auto;display:flex}.pagination__btn[data-v-8a09ec79]{min-width:34px;height:34px;padding:0 var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);transition:all var(--transition-fast);justify-content:center;align-items:center;font-weight:600;display:inline-flex}.pagination__btn[data-v-8a09ec79]:hover:not(:disabled):not(.is-active){border-color:var(--color-accent);color:var(--color-accent)}.pagination__btn[data-v-8a09ec79]:disabled{opacity:.4;cursor:not-allowed}.pagination__btn.is-active[data-v-8a09ec79]{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.pagination__gap[data-v-8a09ec79]{padding:0 var(--space-1);color:var(--color-text-muted);font-size:var(--text-sm)}.toast-stack[data-v-ebe72131]{top:var(--space-6);z-index:9999;gap:var(--space-3);max-width:min(420px, calc(100vw - var(--space-8)));pointer-events:none;flex-direction:column;display:flex;position:fixed;inset-inline-end:var(--space-6)}.toast[data-v-ebe72131]{pointer-events:auto;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--color-surface);border:1px solid var(--color-border-strong);font-size:var(--text-sm);color:var(--color-text);display:flex;box-shadow:0 8px 30px #0000001f}.toast--success[data-v-ebe72131]{border-inline-start:3px solid #10b981}.toast--success .toast__icon[data-v-ebe72131]{color:#10b981}.toast--error[data-v-ebe72131]{border-inline-start:3px solid #ef4444}.toast--error .toast__icon[data-v-ebe72131]{color:#ef4444}.toast--info[data-v-ebe72131]{border-inline-start:3px solid var(--color-accent)}.toast--info .toast__icon[data-v-ebe72131]{color:var(--color-accent)}.toast__icon[data-v-ebe72131]{flex-shrink:0;margin-top:1px}.toast__msg[data-v-ebe72131]{flex:1;line-height:1.5}.toast__close[data-v-ebe72131]{color:var(--color-text-muted);border-radius:var(--radius-sm);flex-shrink:0;padding:2px}.toast__close[data-v-ebe72131]:hover{color:var(--color-text)}.toast-enter-active[data-v-ebe72131],.toast-leave-active[data-v-ebe72131]{transition:all .25s}.toast-enter-from[data-v-ebe72131],.toast-leave-to[data-v-ebe72131]{opacity:0;transform:translate(20px)}.toast-move[data-v-ebe72131]{transition:transform .25s}@media (width<=640px){.toast-stack[data-v-ebe72131]{top:auto;bottom:var(--space-6);inset-inline:var(--space-4);max-width:none}}:root{--font-body:"Tajawal", sans-serif;--font-display:"Tajawal", sans-serif;--text-xs:clamp(.75rem, .7rem + .25vw, .875rem);--text-sm:clamp(.875rem, .8rem + .35vw, 1rem);--text-base:clamp(1rem, .95rem + .25vw, 1.125rem);--text-lg:clamp(1.125rem, 1rem + .75vw, 1.5rem);--text-xl:clamp(1.5rem, 1.2rem + 1.25vw, 2.25rem);--text-2xl:clamp(2rem, 1.2rem + 2.5vw, 3.5rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--color-brand:#3a4984;--color-accent:#26a095;--color-dark:#0f1031;--color-muted:#d1d3d4;--color-bg:#f4f6f8;--color-surface:#fff;--color-surface-soft:#f8fafc;--color-text:#111827;--color-text-muted:#6b7280;--color-border:#0f10311a;--color-border-strong:#0f103129;--color-sidebar-bg:#0f1031;--color-sidebar-active-bg:#26a09524;--color-sidebar-active-border:#26a095;--color-sidebar-hover-bg:#ffffff0e;--color-topbar-bg:#fffffff5;--color-card-bg:#fff;--color-card-shadow:0 1px 3px #0f10310f, 0 4px 16px #0f10310f;--color-card-shadow-lg:0 4px 6px #0f10310a, 0 16px 40px #0f10311a;--stat-brand-bg:#3a498414;--stat-brand-color:#3a4984;--stat-accent-bg:#26a0951a;--stat-accent-color:#26a095;--stat-info-bg:#3b82f617;--stat-info-color:#3b82f6;--stat-warn-bg:#f59e0b1a;--stat-warn-color:#d97706;--kanban-col-bg:#f4f6f9;--kanban-col-border:#0f103117;--kanban-card-bg:#fff;--kanban-card-shadow:0 1px 3px #0f103112, 0 4px 12px #0f10310f;--color-success:#10b981;--color-warning:#f59e0b;--color-danger:#ef4444;--color-info:#3b82f6;--radius-sm:.75rem;--radius-md:1rem;--radius-lg:1.25rem;--radius-xl:1.5rem;--radius-2xl:1.75rem;--radius-full:9999px;--shadow-xs:0 1px 2px #0f10310d, 0 1px 6px #0f10310a;--shadow-sm:0 1px 3px #0f10310f, 0 4px 16px #0f10310f;--shadow-md:0 4px 8px #0f103112, 0 12px 28px #0f103117;--shadow-lg:0 8px 16px #0f103114, 0 24px 48px #0f10311f;--shadow-inset:inset 0 1px 2px #0f10310f;--transition-fast:.18s cubic-bezier(.16, 1, .3, 1);--transition-base:.26s cubic-bezier(.16, 1, .3, 1);--transition-slow:.42s cubic-bezier(.16, 1, .3, 1);--container-width:1280px}[data-theme=dark]{--color-bg:#0b0d24;--color-surface:#ffffff0f;--color-surface-soft:#ffffff0a;--color-text:#f8fafc;--color-text-muted:#ffffffb3;--color-border:#ffffff1a;--color-border-strong:#ffffff2e}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);min-height:100vh;line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,select,textarea{font-family:inherit;font-size:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-muted);border-radius:var(--radius-full)}.container{max-width:var(--container-width);padding:0 var(--space-6);margin:0 auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:fadeIn var(--transition-base) both}.animate-slide-up{animation:slideUp var(--transition-base) both}.animate-slide-down{animation:slideDown var(--transition-base) both}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}:root{--rtl-flip:1}[dir=rtl]{--rtl-flip:-1}[dir=rtl] .icon-directional{transform:scaleX(-1)}
