@charset "UTF-8";:root{--brand-50: #ecfdfa;--brand-100: #d0f7ee;--brand-200: #a3ecdd;--brand-300: #6ddac8;--brand-400: #38bfad;--brand-500: #14a394;--brand-600: #0d8377;--brand-700: #0f6a61;--brand-800: #12554f;--brand-900: #123f3b;--brand-ink: #0a2b28;--accent-400: #f4b740;--accent-500: #ef9f2b;--accent-600: #d9821a;--success: #12805c;--warning: #c77b0a;--danger: #c8362f;--info: #2563a8;--n-0: #ffffff;--n-25: #fbfaf8;--n-50: #f5f4f1;--n-100:#ecebe6;--n-200:#dcdad3;--n-300:#c3c0b6;--n-400:#9a968a;--n-500:#726e63;--n-600:#565349;--n-700:#403d36;--n-800:#2b2925;--n-900:#1a1917;--surface: var(--n-0);--surface-raised: var(--n-0);--surface-sunken: var(--n-25);--canvas: var(--n-25);--border: var(--n-200);--border-strong: var(--n-300);--text: var(--n-900);--text-muted: var(--n-600);--text-subtle: var(--n-500);--text-on-brand: #ffffff;--link: var(--brand-600);--font-latin: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-arabic: "Tajawal", "Plus Jakarta Sans", system-ui, sans-serif;--font-sans: var(--font-latin);--font-numeric: "Plus Jakarta Sans", ui-monospace, monospace;--fs-xs: .75rem;--fs-sm: .8125rem;--fs-md: .9375rem;--fs-lg: 1.0625rem;--fs-xl: 1.375rem;--fs-2xl: 1.875rem;--fs-3xl: 2.5rem;--lh-tight: 1.2;--lh-normal: 1.55;--r-sm: 6px;--r-md: 10px;--r-lg: 16px;--r-xl: 22px;--r-pill: 999px;--shadow-xs: 0 1px 2px rgba(16, 40, 37, .06);--shadow-sm: 0 2px 6px rgba(16, 40, 37, .08);--shadow-md: 0 8px 24px rgba(16, 40, 37, .1);--shadow-lg: 0 20px 48px rgba(16, 40, 37, .16);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--header-h: 64px;--sidebar-w: 264px;--sidebar-w-collapsed: 76px;--focus-ring: 0 0 0 3px rgba(20, 163, 148, .35);--transition: .18s cubic-bezier(.4, 0, .2, 1)}:root[data-theme=dark]{--surface: #14201e;--surface-raised: #1a2a27;--surface-sunken: #0f1917;--canvas: #0c1513;--border: #263834;--border-strong: #33504a;--text: #eef3f1;--text-muted: #a9b8b3;--text-subtle: #839791;--link: var(--brand-300)}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font-sans);font-size:var(--fs-md);line-height:var(--lh-normal);color:var(--text);background:var(--canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}html[dir=rtl] body{font-family:var(--font-arabic)}h1,h2,h3,h4{margin:0 0 var(--space-3);line-height:var(--lh-tight);font-weight:700;letter-spacing:-.01em;color:var(--text)}h1{font-size:var(--fs-3xl)}h2{font-size:var(--fs-2xl)}h3{font-size:var(--fs-xl)}p{margin:0 0 var(--space-4)}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm)}::selection{background:var(--brand-200);color:var(--brand-900)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--r-pill);border:2px solid transparent;background-clip:content-box}img{max-width:100%;display:block}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.btn{--_bg: var(--brand-600);--_fg: var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:inherit;font-size:var(--fs-md);font-weight:600;padding-block:.65rem;padding-inline:1.15rem;border:1px solid transparent;border-radius:var(--r-md);background:var(--_bg);color:var(--_fg);cursor:pointer;transition:transform var(--transition),box-shadow var(--transition),background var(--transition);box-shadow:var(--shadow-xs)}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--block{width:100%}.btn--lg{padding-block:.85rem;font-size:var(--fs-lg)}.btn--accent{--_bg: var(--accent-600)}.btn--ghost{--_bg: transparent;--_fg: var(--text);border-color:var(--border-strong);box-shadow:none}.btn--ghost:hover:not(:disabled){background:var(--surface-sunken)}.btn--danger{--_bg: var(--danger)}.card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card__body{padding:var(--space-5)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-4)}.field__label{font-size:var(--fs-sm);font-weight:600;color:var(--text-muted)}.input{font-family:inherit;font-size:var(--fs-md);color:var(--text);padding-block:.7rem;padding-inline:.9rem;background:var(--surface);border:1.5px solid var(--border-strong);border-radius:var(--r-md);transition:border-color var(--transition),box-shadow var(--transition);width:100%}.input::placeholder{color:var(--text-subtle)}.input:focus{border-color:var(--brand-500);box-shadow:var(--focus-ring);outline:none}.input[aria-invalid=true]{border-color:var(--danger)}.badge{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-xs);font-weight:600;line-height:1;padding:5px 10px;border-radius:var(--r-pill);background:var(--brand-50);color:var(--brand-700)}.badge--warn{background:#fdf3e0;color:var(--warning)}.badge--danger{background:#fbeae9;color:var(--danger)}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--r-md);font-size:var(--fs-sm);border:1px solid transparent}.alert--error{background:#fbeae9;color:var(--danger);border-color:#f2c9c6}.muted{color:var(--text-muted)}.text-center{text-align:center}.voice-wrap{position:relative;display:block}.voice-wrap>input,.voice-wrap>textarea{width:100%;padding-inline-end:2.2rem}.voice-btn{position:absolute;inset-inline-end:6px;top:6px;width:26px;height:26px;line-height:1;padding:0;border:1px solid var(--border, #d0d5dd);border-radius:999px;background:var(--surface, #fff);cursor:pointer;font-size:13px;opacity:.75;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.voice-btn:hover{opacity:1}.voice-btn--on{background:var(--danger, #e5484d);color:#fff;border-color:var(--danger, #e5484d);opacity:1;animation:voicePulse 1s infinite}@keyframes voicePulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--danger, #e5484d) 55%,transparent)}50%{box-shadow:0 0 0 5px transparent}}
