@font-face{font-family:inter;src:url(../media/InterVariable-s.p.2c0y96ae70xfx.woff2)format("woff2");font-display:swap;font-weight:100 900;font-style:normal}@font-face{font-family:inter;src:url(../media/InterVariable_Italic-s.p.1x53smi1ekt97.woff2)format("woff2");font-display:swap;font-weight:100 900;font-style:italic}@font-face{font-family:inter Fallback;src:local(Arial);ascent-override:89.79%;descent-override:22.36%;line-gap-override:0.0%;size-adjust:107.89%}.inter_5e4f0670-module__yomiQq__className{font-family:inter,inter Fallback}.inter_5e4f0670-module__yomiQq__variable{--font-inter:"inter", "inter Fallback"}

:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-primary-contrast:#fff;--color-primary-light:#eff6ff;--color-primary-mid:#dbeafe;--color-accent-soft:#2563eb1f;--color-bg:#f8fafc;--color-bg-subtle:#f1f5f9;--color-surface:#fff;--color-surface-elevated:#fff;--color-surface-overlay:#fffffff2;--color-surface-subtle:var(--color-bg-subtle);--color-surface-hover:color-mix(in srgb, var(--color-text) 6%, transparent);--color-sidebar:#0c1526;--color-sidebar-hover:#ffffff12;--color-sidebar-text:#94a3b8;--color-sidebar-text-muted:#94a3b88c;--color-sidebar-active:#3b82f6;--color-sidebar-border:#ffffff12;--color-text:#0f172a;--color-text-primary:var(--color-text);--color-text-secondary:#64748b;--color-text-tertiary:#94a3b8;--color-text-muted:var(--color-text-secondary);--color-text-inverted:#fff;--color-border:#e8edf5;--color-border-subtle:color-mix(in srgb, var(--color-text) 8%, transparent);--color-border-strong:#cbd5e1;--color-border-focus:#2563eb;--color-bg-strong:#0f172a;--color-error:#dc2626;--color-error-bg:#fef2f2;--color-error-border:#dc262633;--color-error-text:#991b1b;--color-danger:var(--color-error);--color-danger-border:var(--color-error-border);--color-success:#16a34a;--color-success-bg:#f0fdf4;--color-success-border:#16a34a33;--color-success-text:#166534;--color-warning:#d97706;--color-warning-bg:#fffbeb;--color-warning-border:#d9770633;--color-warning-text:#92400e;--color-info:#0ea5e9;--color-info-bg:#f0f9ff;--color-info-border:#0ea5e933;--color-info-text:#075985;--gradient-primary:linear-gradient(135deg, #2563eb 0%, #4f46e5 100%);--gradient-primary-soft:linear-gradient(135deg, #3b82f6 0%, #6366f1 100%);--gradient-hero:linear-gradient(135deg, #0c1526 0%, #0f2040 50%, #130f2a 100%);--gradient-card-hover:linear-gradient(180deg, #2563eb06 0%, transparent 70%);--gradient-surface:linear-gradient(180deg, #fff 0%, #fafbff 100%);--gradient-sidebar-brand:linear-gradient(135deg, #3b82f640 0%, #6366f11a 100%);--status-draft:#94a3b8;--status-draft-bg:#f8fafc;--status-in-review:#d97706;--status-in-review-bg:#fffbeb;--status-accepted:#16a34a;--status-accepted-bg:#f0fdf4;--status-rejected:#dc2626;--status-rejected-bg:#fef2f2;--font-family:var(--font-inter,"Inter"), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-2xs:.6875rem;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--space-1:var(--spacing-xs);--space-2:var(--spacing-sm);--space-3:.75rem;--space-4:var(--spacing-md);--space-5:1.25rem;--space-6:var(--spacing-lg);--radius-xs:.25rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.25rem;--radius-3xl:1.5rem;--radius-full:9999px;--radius-pill:var(--radius-full);--font-size-md:var(--font-size-base);--border-subtle:var(--color-border-subtle);--border-strong:var(--color-border-strong);--surface-muted:var(--color-surface-subtle);--surface-subtle:var(--color-surface-subtle);--surface-secondary:var(--color-bg-subtle);--surface-raised:var(--color-surface);--surface-selected:var(--color-primary-light);--color-surface-muted:var(--color-surface-subtle);--text-primary:var(--color-text-primary);--text-secondary:var(--color-text-secondary);--color-primary-400:var(--color-primary);--color-primary-500:var(--color-primary);--color-primary-600:var(--color-primary-hover);--color-success-500:var(--color-success);--color-success-600:var(--color-success);--color-success-700:var(--color-success-text);--color-warning-500:var(--color-warning);--color-warning-600:var(--color-warning);--color-warning-700:var(--color-warning-text);--color-danger-500:var(--color-error);--color-danger-600:var(--color-error);--color-danger-700:var(--color-error-text);--color-danger-bg:var(--color-error-bg);--color-danger-text:var(--color-error-text);--bg-secondary:var(--color-bg-subtle);--border:var(--color-border);--border-color:var(--color-border);--danger:var(--color-error);--warning:var(--color-warning);--success:var(--color-success);--shadow-xs:0 1px 1px #1b1f2a0a;--shadow-sm:0 1px 2px #1b1f2a0f;--shadow-md:0 6px 18px -8px #1b1f2a2e;--shadow-lg:0 18px 40px -16px #1b1f2a38;--shadow-xl:0 24px 60px #0f172a24, 0 10px 24px #0f172a12;--shadow-primary:0 6px 20px #2563eb61;--shadow-primary-sm:0 3px 10px #2563eb47;--shadow-inset:inset 0 2px 4px #0f172a0f;--control-height-sm:32px;--control-height-md:38px;--control-height-lg:44px;--transition-fast:.12s cubic-bezier(.4, 0, .2, 1);--transition-base:.18s cubic-bezier(.4, 0, .2, 1);--transition-slow:all .35s cubic-bezier(.4, 0, .2, 1);--sidebar-width:256px;--sidebar-width-collapsed:72px;--topbar-height:56px;--content-max-width:1180px}[data-theme=dark],.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-primary-contrast:#020617;--color-primary-light:#1e3a5f;--color-primary-mid:#1e3a5f;--color-accent-soft:#818cf82e;--color-bg:#060c18;--color-bg-subtle:#0c1526;--color-surface:#0f1f38;--color-surface-elevated:#162035;--color-surface-overlay:#0f1f38f5;--color-surface-subtle:var(--color-bg-subtle);--color-surface-hover:color-mix(in srgb, var(--color-text) 8%, transparent);--color-sidebar:#030d1e;--color-sidebar-hover:#ffffff12;--color-sidebar-text:#94a3b8;--color-sidebar-text-muted:#94a3b873;--color-sidebar-active:#3b82f6;--color-sidebar-border:#ffffff12;--color-text:#e2e8f0;--color-text-primary:var(--color-text);--color-text-secondary:#94a3b8;--color-text-tertiary:#64748b;--color-text-muted:var(--color-text-secondary);--color-border:#1a2d4a;--color-border-subtle:color-mix(in srgb, var(--color-text) 9%, transparent);--color-border-strong:#243a5e;--color-border-focus:#3b82f6;--color-bg-strong:#020617;--color-error:#f87171;--color-error-bg:#2d0c0c;--color-error-border:#f8717133;--color-error-text:#fecaca;--color-danger:var(--color-error);--color-danger-border:var(--color-error-border);--color-success:#34d399;--color-success-bg:#052e16;--color-success-border:#34d3993d;--color-success-text:#bbf7d0;--color-warning:#fbbf24;--color-warning-bg:#451a03;--color-warning-border:#fbbf243d;--color-warning-text:#fde68a;--color-info:#38bdf8;--color-info-bg:#082f49;--color-info-border:#38bdf83d;--color-info-text:#bae6fd;--gradient-primary:linear-gradient(135deg, #3b82f6 0%, #6366f1 100%);--gradient-hero:linear-gradient(135deg, #020617 0%, #0f172a 50%, #0c0a1a 100%);--gradient-card-hover:linear-gradient(180deg, #3b82f60f 0%, transparent 60%);--status-draft:#64748b;--status-in-review:#fbbf24;--status-accepted:#34d399;--status-rejected:#f87171;--shadow-xs:0 1px 1px #00000059;--shadow-sm:0 1px 2px #00000073;--shadow-md:0 6px 18px -8px #0000008c;--shadow-lg:0 18px 40px -16px #000000a6;--shadow-xl:0 20px 50px #000c, 0 8px 20px #0009;--shadow-primary:0 4px 14px #3b82f666;--shadow-primary-sm:0 2px 8px #3b82f64d}@media (prefers-color-scheme:dark){[data-theme=system]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-primary-contrast:#020617;--color-primary-light:#1e3a5f;--color-primary-mid:#1e3a5f;--color-accent-soft:#818cf82e;--color-bg:#0f172a;--color-bg-subtle:#0c1526;--color-surface:#1e293b;--color-surface-elevated:#162035;--color-surface-overlay:#0f1f38f5;--color-surface-subtle:var(--color-bg-subtle);--color-surface-hover:color-mix(in srgb, var(--color-text) 8%, transparent);--color-sidebar:#020617;--color-sidebar-hover:#ffffff12;--color-sidebar-text:#94a3b8;--color-sidebar-text-muted:#94a3b873;--color-sidebar-active:#3b82f6;--color-sidebar-border:#ffffff12;--color-text:#e2e8f0;--color-text-primary:var(--color-text);--color-text-secondary:#94a3b8;--color-text-tertiary:#64748b;--color-text-muted:var(--color-text-secondary);--color-border:#334155;--border-color:var(--color-border);--color-border-subtle:color-mix(in srgb, var(--color-text) 9%, transparent);--color-border-strong:#475569;--color-bg-strong:#020617;--color-error:#ef4444;--color-error-bg:#450a0a;--color-error-border:#ef44443d;--color-error-text:#fecaca;--color-danger:var(--color-error);--color-danger-border:var(--color-error-border);--color-success:#22c55e;--color-success-bg:#052e16;--color-success-border:#22c55e3d;--color-success-text:#bbf7d0;--color-warning:#f59e0b;--color-warning-bg:#451a03;--color-warning-border:#f59e0b3d;--color-warning-text:#fde68a;--color-info:#38bdf8;--color-info-bg:#082f49;--color-info-border:#38bdf83d;--color-info-text:#bae6fd;--status-draft:#64748b;--status-in-review:#f59e0b;--status-accepted:#22c55e;--status-rejected:#ef4444;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 6px -1px #0006}}
.theme-toggle-group{margin:var(--spacing-xs) var(--spacing-lg);border-radius:var(--radius-md);background:#ffffff0f;border:1px solid #ffffff14;align-items:center;gap:2px;padding:3px;display:flex}.theme-toggle-option{border-radius:calc(var(--radius-md) - 2px);color:var(--color-sidebar-text);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;padding:6px 0;font-size:1rem;line-height:1;transition:all .2s;display:flex}.theme-toggle-option:hover{background:#ffffff1a}.theme-toggle-option--active{background:var(--color-sidebar-active);color:#fff;box-shadow:0 1px 3px #0000004d}.theme-toggle-icon{justify-content:center;align-items:center;width:18px;height:18px;font-size:.9rem;display:flex}
:root{--safe-area-top:env(safe-area-inset-top,0px);--safe-area-right:env(safe-area-inset-right,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-left:env(safe-area-inset-left,0px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{min-height:100dvh;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;line-height:1.6}.app-shell{min-height:100dvh;display:flex;overflow-x:hidden}.sidebar{width:var(--sidebar-width);background:var(--color-sidebar);color:var(--color-sidebar-text);top:var(--safe-area-top);left:var(--safe-area-left);bottom:var(--safe-area-bottom);z-index:100;scrollbar-width:thin;scrollbar-color:#ffffff14 transparent;border-right:1px solid var(--color-sidebar-border);flex-direction:column;display:flex;position:fixed;overflow:hidden auto}.sidebar-brand{padding:1.125rem var(--spacing-lg);border-bottom:1px solid var(--color-sidebar-border);background:var(--gradient-sidebar-brand);align-items:center;gap:.75rem;display:flex;position:relative;overflow:hidden}.sidebar-brand:after{content:"";pointer-events:none;background:radial-gradient(circle,#3b82f626 0%,#0000 70%);border-radius:50%;width:100px;height:100px;position:absolute;top:-20px;right:-30px}.sidebar-brand h2{color:#fff;letter-spacing:-.03em;background:linear-gradient(135deg,#fff 0%,#93c5fd 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.1rem;font-weight:800}.sidebar-nav{flex:1;padding:.625rem 0}.nav-link{padding:.45rem var(--spacing-md) .45rem 1.125rem;color:var(--color-sidebar-text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:0;align-items:center;gap:.5rem;width:100%;font-family:inherit;font-size:.845rem;text-decoration:none;transition:background .15s cubic-bezier(.4,0,.2,1),color .15s cubic-bezier(.4,0,.2,1);display:flex}.nav-link-icon{opacity:.6;flex-shrink:0;transition:opacity .15s}.nav-link:hover .nav-link-icon,.nav-link.active .nav-link-icon{opacity:1}.nav-link-text{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.nav-badge{color:#fff;background:#ef4444;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.65rem;font-weight:700;line-height:1;display:inline-flex}.nav-link:hover{background:var(--color-sidebar-hover);color:#fff}.nav-link.active{color:#fff;background:#3b82f629;font-weight:500;position:relative}.nav-link.active:before{content:"";background:var(--color-primary);border-radius:0 2px 2px 0;width:3px;position:absolute;top:0;bottom:0;left:0}.nav-divider{background:var(--color-sidebar-border);height:1px;margin:var(--spacing-xs) var(--spacing-md)}.sidebar-footer{padding:var(--spacing-sm) 0;border-top:1px solid var(--color-sidebar-border)}.logout-btn{color:var(--color-error)!important}.main-content{margin-left:var(--sidebar-width);padding:1.25rem var(--spacing-xl);max-width:calc(var(--sidebar-width)+var(--content-max-width));flex:1;overflow-x:hidden}
.login-page{background:var(--gradient-hero);justify-content:center;align-items:center;min-height:100dvh;display:flex}.login-page-v2{--login-bg:#060d1a;--login-dot:#94a3b816;--login-glow-1:#2563eb1a;--login-glow-2:#6366f112;--login-fg-strong:#f8fafc;--login-fg:#94a3b8d9;--login-fg-muted:#64748be6;--login-fg-muted-strong:#f1f5f9b3;--login-border:#ffffff0d;--login-panel-bg:#ffffff04;--login-input-bg:#ffffff0a;--login-input-bg-hover:#ffffff0d;--login-input-bg-focus:#ffffff0f;--login-input-border:#ffffff17;--login-input-border-hover:#ffffff29;--login-placeholder:#475569b3;--login-overlay-bg:#060d1ab8;--login-card-bg:#0f1f38;--login-card-border:#ffffff14;background:var(--login-bg);min-height:100dvh;padding:var(--safe-area-top) var(--safe-area-right) var(--safe-area-bottom) var(--safe-area-left);align-items:stretch;display:flex;position:relative;overflow:hidden}[data-theme=light] .login-page-v2{--login-bg:#eef2f8;--login-dot:#0f172a0f;--login-glow-1:#2563eb1f;--login-glow-2:#6366f11a;--login-fg-strong:#0f172a;--login-fg:#475569;--login-fg-muted:#64748b;--login-fg-muted-strong:#0f172aa8;--login-border:#0f172a14;--login-panel-bg:#ffffff8c;--login-input-bg:#fff;--login-input-bg-hover:#fff;--login-input-bg-focus:#fff;--login-input-border:#0f172a24;--login-input-border-hover:#0f172a3d;--login-placeholder:#4755698c;--login-overlay-bg:#e2e8f0c7;--login-card-bg:#fff;--login-card-border:#0f172a14}.login-page-v2__centered-panel{z-index:1;justify-content:center;align-items:center;width:100%;padding:2rem;display:flex;position:relative}.login-theme-toggle{top:calc(var(--safe-area-top) + 1rem);right:calc(var(--safe-area-right) + 1rem);z-index:3;position:absolute}.login-dot-bg{background-image:radial-gradient(var(--login-dot) 1px,transparent 1px);pointer-events:none;background-size:28px 28px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(72% 100% at 26%,#000 30%,#0000 100%);mask-image:radial-gradient(72% 100% at 26%,#000 30%,#0000 100%)}.login-edge-glow{pointer-events:none;filter:blur(120px);border-radius:50%;position:absolute}.login-edge-glow--left{background:radial-gradient(circle,var(--login-glow-1) 0%,transparent 70%);width:640px;height:640px;top:0;left:-240px}.login-edge-glow--right{background:radial-gradient(circle,var(--login-glow-2) 0%,transparent 70%);width:500px;height:500px;bottom:-120px;right:0}.login-split{width:100%;min-height:calc(100dvh - var(--safe-area-top) - var(--safe-area-bottom));display:flex}.login-brand-panel{flex-direction:column;flex:1;justify-content:space-between;padding:2.75rem 3rem;display:none;position:relative}@media (min-width:900px){.login-brand-panel{display:flex}}.login-brand-content{max-width:420px;padding-top:1.5rem}.login-wordmark{align-items:center;gap:.5rem;margin-bottom:3.75rem;display:inline-flex}.login-wordmark-icon{border-radius:7px;flex-shrink:0;width:28px;height:28px;display:flex;overflow:hidden;box-shadow:0 2px 10px #2563eb66}.login-wordmark-icon img{object-fit:cover;width:100%;height:100%}.login-wordmark-text{letter-spacing:-.02em;color:var(--login-fg-strong);font-size:.9375rem;font-weight:700}.login-brand-headline{letter-spacing:-.04em;flex-direction:column;gap:.06em;margin-bottom:1.25rem;font-size:clamp(2.25rem,3.5vw,3.125rem);font-weight:800;line-height:1.08;display:flex}.login-brand-headline span:first-child{color:var(--login-fg-strong)}.login-brand-headline span:nth-child(2){color:var(--login-fg-muted-strong);font-style:italic}.login-brand-headline span:nth-child(3){background:linear-gradient(90deg,#3b82f6 0%,#818cf8 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.login-brand-tagline{color:var(--login-fg-muted);max-width:340px;margin-bottom:2rem;font-size:.9rem;line-height:1.7}.login-feature-list{flex-direction:column;gap:.625rem;margin:0;padding:0;list-style:none;display:flex}.login-feature-list li{color:var(--login-fg);-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;align-items:center;gap:.625rem;padding:0;font-size:.875rem;transition:color .15s;display:flex}.login-feature-list li:hover{color:var(--login-fg-strong);background:0 0;border-color:#0000}.login-feature-list li svg{color:#16a34a;opacity:1;flex-shrink:0}.login-brand-footer{flex-direction:column;gap:1rem;padding-top:2rem;display:flex}.login-brand-copyright{color:var(--login-fg-muted);margin:0;font-size:.75rem}.login-brand-footer-sep{display:none}.login-legal-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin-top:.75rem;font-size:.75rem;display:flex}.login-legal-link{min-height:2.25rem;font:inherit;cursor:pointer;color:var(--login-fg-muted);background:0 0;border:none;align-items:center;padding:.25rem .4rem;font-size:.75rem;text-decoration:none;display:inline-flex}.login-legal-link:hover{color:#3b82f6;text-decoration:underline}.login-legal-sep{color:var(--login-fg-muted)}.login-legal-content{white-space:pre-wrap;color:var(--color-text);max-height:60vh;font-size:.9rem;line-height:1.65;overflow-y:auto}.login-form-panel{justify-content:center;align-items:center;width:100%;max-width:100%;padding:2rem;display:flex;position:relative}@media (min-width:900px){.login-form-panel{border-left:1px solid var(--login-border);background:var(--login-panel-bg);max-width:520px}}.login-form-card{width:100%;max-width:380px}.login-form-card--wide{max-width:420px}.login-form-inner{width:100%;max-width:360px}.login-form-header{margin-bottom:1.875rem}.login-form-icon{border-radius:var(--radius-lg);background:var(--gradient-primary);color:#fff;width:44px;height:44px;box-shadow:var(--shadow-primary-sm);justify-content:center;align-items:center;margin-bottom:1.25rem;display:flex}.login-form-header h1{letter-spacing:-.025em;color:var(--login-fg-strong);margin-bottom:.3rem;font-size:1.5rem;font-weight:700}.login-form-header p{color:var(--login-fg-muted);font-size:.875rem}.login-form{gap:var(--spacing-md);flex-direction:column;display:flex}.login-form-card .form-field label,.login-form-inner .form-field label{color:var(--login-fg-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:600}.login-form-card .form-field input,.login-form-inner .form-field input{background:var(--login-input-bg);border-color:var(--login-input-border);color:var(--login-fg-strong);border-radius:var(--radius-md);padding:.7rem var(--spacing-md);font-size:.9375rem}.login-form-card .form-field input:hover,.login-form-inner .form-field input:hover{border-color:var(--login-input-border-hover);background:var(--login-input-bg-hover)}.login-form-card .form-field input:focus,.login-form-inner .form-field input:focus{background:var(--login-input-bg-focus);border-color:#3b82f6a6;box-shadow:0 0 0 3px #3b82f624}.login-form-card .form-field input::placeholder,.login-form-inner .form-field input::placeholder{color:var(--login-placeholder);font-size:.875rem}.login-submit-btn{justify-content:center;width:100%;margin-top:.25rem;padding:.75rem;font-size:.9375rem}.login-error{color:#dc2626;padding:.75rem var(--spacing-md);border-radius:var(--radius-md);background:#ef444412;border:1px solid #ef44442e;align-items:flex-start;gap:.5rem;font-size:.8375rem;line-height:1.5;display:flex}.login-error svg{flex-shrink:0;margin-top:2px}.login-mfa-summary{border-radius:var(--radius-md);color:var(--login-fg);background:#2563eb14;border:1px solid #60a5fa2e;align-items:flex-start;gap:.625rem;padding:.8rem .9rem;font-size:.8125rem;line-height:1.55;display:flex}.login-mfa-summary svg{color:#3b82f6;flex-shrink:0;margin-top:1px}.login-form-note{text-align:center;color:var(--login-fg-muted);flex-direction:column;align-items:center;gap:.35rem;margin-top:1.5rem;font-size:.75rem;line-height:1.5;display:flex}.login-form-note__link{color:#3b82f6;border-radius:999px;justify-content:center;align-items:center;min-height:2.75rem;padding:.5rem .75rem;text-decoration:none;display:inline-flex}.login-form-note__link:hover{text-decoration:underline}.login-form-note__hint{display:block}.login-success-overlay{z-index:5;background:var(--login-overlay-bg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);justify-content:center;align-items:center;padding:2rem;display:flex;position:absolute;inset:0}.login-success-card{text-align:center;border-radius:var(--radius-lg);background:var(--login-card-bg);border:1px solid var(--login-card-border);box-shadow:var(--shadow-lg);flex-direction:column;align-items:center;gap:.5rem;max-width:340px;padding:2rem 2.5rem;display:flex}.login-success-icon{color:#16a34a;background:#16a34a1f;border-radius:999px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:.25rem;display:flex}.login-success-title{color:var(--login-fg-strong);margin:0;font-size:1.0625rem;font-weight:700}.login-success-subtitle{color:var(--login-fg-muted);margin:0;font-size:.875rem}.login-card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-xl);width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:var(--spacing-xl)}.login-header h1{font-size:var(--font-size-2xl);color:var(--color-primary);font-weight:700}.login-header p{color:var(--color-text-secondary);margin-top:var(--spacing-xs)}
@keyframes spin-icon{to{transform:rotate(360deg)}}.spin-icon{animation:.8s linear infinite spin-icon}.form-field{gap:var(--spacing-xs);flex-direction:column;display:flex}.form-field label{font-size:var(--font-size-sm);color:var(--color-text);font-weight:500}.form-field input{padding:.625rem var(--spacing-md);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--color-surface);color:var(--color-text);width:100%;font-family:inherit;transition:border-color .15s,box-shadow .2s,background .15s}.form-field input:hover:not(:focus){border-color:var(--color-border-strong)}.form-field input:focus{border-color:var(--color-primary);background:var(--color-surface);outline:none;box-shadow:0 0 0 3px #2563eb1a,0 0 0 1px #2563eb4d}.form-field input::placeholder{color:var(--color-text-secondary);opacity:.7}.btn-primary{background:var(--gradient-primary);color:var(--color-primary-contrast);padding:.625rem var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;box-shadow:var(--shadow-primary-sm);letter-spacing:.01em;white-space:nowrap;border:none;align-items:center;gap:.4rem;font-family:inherit;font-weight:600;transition:opacity .15s,box-shadow .2s,transform .12s cubic-bezier(.34,1.56,.64,1);display:inline-flex;position:relative;overflow:hidden}.btn-primary:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff2e,#0000);width:60%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%;transform:skew(-20deg)}.btn-primary:hover:not(:disabled):after{left:150%}.btn-primary:hover:not(:disabled){opacity:.93;box-shadow:var(--shadow-primary);transform:translateY(-1px)}.btn-primary:active:not(:disabled){opacity:1;box-shadow:var(--shadow-primary-sm);transform:translateY(0)scale(.99)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.dashboard-page h1{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-lg);font-weight:700}.dashboard-welcome{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-xl)}.dashboard-welcome h2{font-size:var(--font-size-lg);font-weight:600}.dashboard-welcome p{color:var(--color-text-secondary);margin-top:var(--spacing-xs)}.dashboard-grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));display:grid}
.dashboard-card{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);cursor:pointer;transition:box-shadow .2s,transform .15s cubic-bezier(.34,1.56,.64,1),border-color .2s;position:relative;overflow:hidden}.dashboard-card:before{content:"";background:var(--gradient-card-hover);opacity:0;pointer-events:none;transition:opacity .2s;position:absolute;inset:0}.dashboard-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong);transform:translateY(-3px)}.dashboard-card:hover:before{opacity:1}.dashboard-card h3{font-size:var(--font-size-base);margin-bottom:var(--spacing-sm);font-weight:600}.dashboard-card p{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.status-badge{border-radius:var(--radius-full);font-size:var(--font-size-xs);letter-spacing:.01em;white-space:nowrap;align-items:center;gap:.3rem;padding:.2rem .6rem;font-weight:600;display:inline-flex}.status-badge--draft{color:var(--status-draft);background:#f1f5f9;border:1px solid #94a3b84d}.status-badge--in-review{background:var(--color-warning-bg);color:var(--status-in-review);border:1px solid #d9770633}.status-badge--accepted{background:var(--color-success-bg);color:var(--status-accepted);border:1px solid #16a34a33}.status-badge--rejected{background:var(--color-error-bg);color:var(--status-rejected);border:1px solid #dc262633}
.page-header{margin-bottom:var(--spacing-xl);justify-content:space-between;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.page-header h1{letter-spacing:-.03em;color:var(--color-text);font-size:1.625rem;font-weight:800;line-height:1.2}.page-actions{align-items:center;gap:var(--spacing-sm);display:flex}.card{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);margin-bottom:var(--spacing-md);transition:box-shadow .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),transform .15s cubic-bezier(.4,0,.2,1)}.card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong)}.card h3{font-size:var(--font-size-base);margin-bottom:var(--spacing-md);color:var(--color-text);letter-spacing:-.01em;font-weight:600}.form-row{align-items:flex-end;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.select-field{padding:.5rem 2.25rem .5rem var(--spacing-md);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--color-surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2364748b' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right .75rem center;color:var(--color-text);cursor:pointer;appearance:none;min-width:140px;font-family:inherit;transition:border-color .15s,box-shadow .2s}.search-input{padding:.5rem var(--spacing-md);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--color-surface);color:var(--color-text);min-width:220px;font-family:inherit;transition:border-color .15s,box-shadow .2s}.search-input:focus,.select-field:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2563eb1f}.checkbox-label{align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);cursor:pointer;-webkit-user-select:none;user-select:none;min-height:2.25rem;display:flex}.checkbox-label input[type=checkbox]{appearance:none;border:2px solid var(--color-border);cursor:pointer;vertical-align:middle;border-radius:.25rem;flex-shrink:0;width:1.1rem;height:1.1rem;transition:border-color .15s,background .15s,box-shadow .15s;position:relative}.checkbox-label input[type=radio]{cursor:pointer;vertical-align:middle;flex-shrink:0;width:1.1rem;height:1.1rem;margin:0}.checkbox-label input[type=checkbox]:hover{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.checkbox-label input[type=checkbox]:checked{background:var(--color-primary);border-color:var(--color-primary)}.checkbox-label input[type=checkbox]:checked:after{content:"";border:2px solid #fff;border-top:none;border-left:none;width:5px;height:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-58%)rotate(45deg)}.checkbox-label input[type=checkbox]:focus-visible{box-shadow:0 0 0 3px var(--color-primary-light);border-color:var(--color-primary);outline:none}.settings-toggle{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);align-items:flex-start;min-height:4rem;padding:.8rem .9rem}.settings-toggle input[type=checkbox]{margin-top:.15rem}.settings-toggle__content{flex-direction:column;gap:.28rem;min-width:0;display:flex}.settings-toggle__title{color:var(--color-text);align-items:center;gap:.45rem;font-weight:600;display:inline-flex}.settings-toggle__hint{color:var(--color-text-secondary);font-size:.78rem;line-height:1.45}.settings-toggle__hint code{font-size:.74rem}.setup-advanced{padding:1rem}.setup-advanced>summary{cursor:pointer;color:var(--color-text);font-weight:600;list-style:none}.setup-advanced>summary::-webkit-details-marker{display:none}.setup-advanced__summary{align-items:flex-start;gap:.6rem;display:flex}.setup-advanced__summary>svg{color:var(--color-text-secondary);flex-shrink:0;margin-top:.15rem}.setup-advanced__summary-text{flex-direction:column;gap:.2rem;display:flex}.setup-advanced__title{font-weight:600}.setup-advanced__hint{color:var(--color-text-secondary);font-size:.85rem;font-weight:400}.setup-advanced[open]>summary{margin-bottom:1rem}.setup-advanced__body{border-top:1px solid var(--color-border);padding-top:1rem}.assessment-textareas .form-field{gap:.42rem;display:grid}.assessment-textareas .form-field label{font-weight:600;display:block}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1.5px solid var(--color-border);padding:.625rem var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;align-items:center;gap:.4rem;font-family:inherit;font-weight:500;transition:background .15s,border-color .15s,box-shadow .15s,transform .12s cubic-bezier(.34,1.56,.64,1);display:inline-flex}.btn-secondary:hover{background:var(--color-bg);border-color:var(--color-border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-secondary:active{box-shadow:none;transform:translateY(0)}.btn-small{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.btn-danger{background:var(--color-error);color:#fff;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;border:none;font-family:inherit;font-weight:500;transition:background .15s,box-shadow .15s,transform .1s;box-shadow:0 1px 3px #dc26264d}.btn-danger:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #dc26264d}.btn-danger:active:not(:disabled){transform:translateY(0)}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.btn-link{color:var(--color-primary);font-size:var(--font-size-sm);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;text-decoration:underline}.data-table-wrapper{overflow-x:auto}
.data-table{border-collapse:collapse;background:var(--color-surface);border-radius:var(--radius-xl);width:100%;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow:hidden}.data-table th{background:var(--color-bg);padding:.7rem var(--spacing-md);text-align:left;font-size:var(--font-size-xs);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);white-space:nowrap;letter-spacing:.06em;text-transform:uppercase;font-weight:700}.data-table td{padding:.75rem var(--spacing-md);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);vertical-align:middle;color:var(--color-text)}.data-table tbody tr{transition:background .1s}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:#2563eb08}.data-table code{background:var(--color-bg);border-radius:var(--radius-sm);padding:2px 6px;font-size:.8rem}.row-inactive{opacity:.5}.cell-name{font-weight:500}.role-badges{flex-wrap:wrap;gap:4px;display:flex}.role-badge{background:var(--color-primary-light);color:var(--color-primary);border-radius:9999px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-block}.status-dot{font-size:var(--font-size-sm);align-items:center;gap:4px;display:inline-flex}.status-dot:before{content:"";border-radius:50%;width:8px;height:8px}.status-dot.active:before{background:var(--color-success)}
.status-dot.inactive:before{background:var(--color-text-secondary)}.week-list{gap:var(--spacing-sm);flex-direction:column;display:flex}.week-card{gap:var(--spacing-sm);flex-direction:column;transition:box-shadow .2s;display:flex}.week-card:hover{box-shadow:var(--shadow-md)}.week-header{justify-content:space-between;align-items:center;display:flex}.week-title{font-size:var(--font-size-lg);font-weight:600}.week-meta{gap:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex}.week-actions{gap:var(--spacing-sm);padding-top:var(--spacing-xs);display:flex}.notification-list{gap:var(--spacing-sm);flex-direction:column;display:flex}.notification-card{cursor:pointer;border-left:3px solid #0000;transition:box-shadow .2s,border-left-color .2s;position:relative}.notification-card.unread{border-left-color:var(--color-primary);background:#2563eb05}.notification-header{margin-bottom:var(--spacing-xs);justify-content:space-between;align-items:center;display:flex}.notification-title{font-weight:600;font-size:var(--font-size-base)}.notification-body{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.unread-dot{top:var(--spacing-md);right:var(--spacing-md);background:var(--color-primary);border-radius:50%;width:8px;height:8px;position:absolute}.settings-card{max-width:700px}.settings-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.settings-actions{padding-top:var(--spacing-lg);align-items:center;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.settings-actions>*{flex:none}.save-success{color:var(--color-success);font-size:var(--font-size-sm);font-weight:500}.license-info{gap:var(--spacing-sm);flex-direction:column;display:flex}.license-status{font-weight:700;font-size:var(--font-size-lg)}.license-status.valid{color:var(--color-success)}.license-status.warning{color:var(--color-warning)}.license-status.invalid{color:var(--color-error)}.license-details p{font-size:var(--font-size-sm);margin-bottom:var(--spacing-xs)}.program-list{gap:var(--spacing-md);flex-direction:column;display:flex}.program-header{justify-content:space-between;align-items:flex-start;display:flex}.program-dates{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.sections-list{margin-top:var(--spacing-md);border-top:1px solid var(--color-border);padding-top:var(--spacing-md)}.sections-list h4{font-size:var(--font-size-sm);margin-bottom:var(--spacing-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.section-item{gap:var(--spacing-lg);padding:var(--spacing-xs) 0;font-size:var(--font-size-sm);display:flex}.section-name{min-width:120px;font-weight:500}.filter-bar{margin-bottom:var(--spacing-lg)}.settings-personal-theme{gap:var(--spacing-sm);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border);display:grid}.settings-personal-theme .theme-toggle-topbar{width:max-content;max-width:100%}
.text-secondary{color:var(--color-text-secondary)}.text-error{color:var(--color-error)}.text-sm{font-size:var(--font-size-sm)}.loading,.empty-state{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary)}.create-form{border:2px dashed var(--color-border);background:#2563eb05}.auth-source-badge{white-space:nowrap;border-radius:9999px;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-flex}.auth-source-badge.local{background:var(--color-bg-subtle);color:var(--color-text-secondary)}.auth-source-badge.ldap{background:var(--color-primary-light);color:var(--color-primary)}.year-grid{gap:var(--spacing-sm);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.year-cell{background:var(--color-surface);border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-md);box-shadow:var(--shadow-sm);transition:box-shadow .15s}.year-cell:hover{box-shadow:var(--shadow-md)}.year-cell--clickable:hover{border-color:var(--color-primary);transition:all .12s;transform:translateY(-1px);box-shadow:0 0 0 2px #2563eb2e}.year-cell--outside{opacity:.4}.year-cell-cw{font-weight:600;font-size:var(--font-size-sm);margin-bottom:2px}.year-cell-status{color:var(--color-text-secondary);font-size:.75rem}.stats-grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.stat-card{text-align:center;padding:var(--spacing-xl) var(--spacing-lg)!important}.stat-value{color:var(--color-primary);font-size:2rem;font-weight:700;line-height:1.2}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--spacing-xs)}.stat-bar{background:var(--color-bg);height:6px;margin-top:var(--spacing-sm);border-radius:3px;overflow:hidden}.stat-bar-fill{border-radius:3px;height:100%;transition:width .3s}.stat-bar-company{background:var(--color-primary)}.stat-bar-school{background:var(--color-success)}.absence-grid{gap:var(--spacing-sm);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.absence-item{padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border);justify-content:space-between;display:flex}.absence-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.absence-value{font-weight:600;font-size:var(--font-size-sm)}.knowledge-quickstart{gap:var(--spacing-lg);flex-direction:column;display:flex}.knowledge-quickstart__header{align-items:flex-start;gap:var(--spacing-md);display:flex}.knowledge-quickstart__header h2,.knowledge-documents__header h2{font-size:var(--font-size-xl);margin:0}.knowledge-quickstart__title-row{align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.knowledge-quickstart__header p,.knowledge-documents__header p{color:var(--color-text-secondary);margin:.3rem 0 0;line-height:1.55}.knowledge-quickstart__icon{width:2.75rem;height:2.75rem;color:var(--color-primary);background:var(--color-primary-light);border-radius:var(--radius-md);flex:0 0 2.75rem;justify-content:center;align-items:center;display:inline-flex}.knowledge-quickstart__tabs{gap:var(--spacing-xs);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}.knowledge-quickstart__tab{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);min-height:2.5rem;color:var(--color-text-secondary);background:var(--color-surface);font:inherit;font-size:var(--font-size-sm);cursor:pointer;padding:.45rem .85rem;font-weight:600}.knowledge-quickstart__tab:hover{color:var(--color-text);border-color:var(--color-primary)}.knowledge-quickstart__tab[aria-selected=true]{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-light)}.knowledge-quickstart__tab:focus-visible,.knowledge-quickstart__step:focus-visible{outline:3px solid var(--color-border-focus);outline-offset:2px}.knowledge-quickstart__panel{gap:var(--spacing-md);flex-direction:column;display:flex}.knowledge-quickstart__summary{max-width:74ch;color:var(--color-text-secondary);margin:0;line-height:1.6}.knowledge-quickstart__steps{gap:var(--spacing-sm);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.knowledge-quickstart__step{align-items:center;gap:var(--spacing-sm);height:100%;min-height:5.25rem;padding:var(--spacing-md);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-subtle);grid-template-columns:auto minmax(0,1fr) auto;text-decoration:none;display:grid}.knowledge-quickstart__step:hover{border-color:var(--color-primary);background:var(--color-surface)}.knowledge-quickstart__step>svg{color:var(--color-text-secondary)}.knowledge-quickstart__number{width:1.75rem;height:1.75rem;color:var(--color-primary);background:var(--color-primary-light);font-size:var(--font-size-sm);border-radius:999px;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.knowledge-quickstart__step-copy{flex-direction:column;gap:.2rem;min-width:0;display:flex}.knowledge-quickstart__step-copy span{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:1.45}.knowledge-documents{gap:var(--spacing-md);flex-direction:column;display:flex}.knowledge-documents .search-input{width:min(100%,36rem)}@media (max-width:720px){.knowledge-quickstart__steps{grid-template-columns:1fr}.knowledge-quickstart__step{min-height:auto}}.template-list{gap:var(--spacing-sm);flex-direction:column;display:flex}.template-card{transition:box-shadow .2s}.template-card:hover{box-shadow:var(--shadow-md)}.template-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.template-name{font-weight:600;font-size:var(--font-size-lg)}.template-shared-badge{margin-left:var(--spacing-sm);background:var(--color-primary-light);color:var(--color-primary);border-radius:9999px;padding:1px 6px;font-size:.75rem;display:inline-block}.template-meta{gap:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--color-text-secondary);flex-wrap:wrap;display:flex}.template-content{margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:pre-wrap;max-height:120px;overflow:hidden}textarea.input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-base);resize:vertical;font-family:inherit;transition:border-color .15s}textarea.input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.nav-section{margin-bottom:var(--spacing-xs)}.nav-section-title{padding:.6rem var(--spacing-md) .25rem 1.125rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-sidebar-text-muted);-webkit-user-select:none;user-select:none;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;min-height:2.5rem;margin-top:.125rem;font-family:inherit;font-size:.6rem;font-weight:700;display:flex}
.nav-section-title:hover{color:#ffffff8c}.nav-section-chevron{color:#ffffff4d;align-items:center;display:flex}.mobile-header{background:var(--color-sidebar);color:#fff;height:56px;padding:0 var(--spacing-md);z-index:200;justify-content:space-between;align-items:center;display:none;position:fixed;top:0;left:0;right:0}.mobile-menu-btn,.mobile-notifications-btn{color:#fff;cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;padding:0;font-size:1.5rem;line-height:1;text-decoration:none;display:inline-flex}.mobile-menu-btn:hover,.mobile-menu-btn:focus-visible,.mobile-notifications-btn:hover,.mobile-notifications-btn:focus-visible{background:#ffffff14;outline:none}.mobile-header-title{font-weight:700;font-size:var(--font-size-lg)}.sidebar-overlay{display:none}@media (max-width:768px){.mobile-header{display:flex}.sidebar{z-index:300;visibility:hidden;pointer-events:none;width:280px;transition:transform .25s;transform:translate(-100%)}.sidebar--open{visibility:visible;pointer-events:auto;transform:translate(0)}.sidebar-overlay{z-index:250;background:#00000080;display:block;position:fixed;inset:0}.sidebar-close-btn{display:inline-flex}.main-content{padding:calc(56px + var(--spacing-md) + var(--safe-area-top)) calc(var(--spacing-md) + var(--safe-area-right)) calc(var(--spacing-md) + var(--safe-area-bottom)) calc(var(--spacing-md) + var(--safe-area-left));margin-left:0}.page-header{align-items:flex-start;gap:var(--spacing-sm);flex-direction:column}.page-header h1{font-size:var(--font-size-lg)}.template-list{grid-template-columns:1fr}.card{padding:var(--spacing-md)}.template-header{gap:var(--spacing-sm);flex-direction:column;align-items:flex-start}.stats-grid{grid-template-columns:1fr}.nav-section-title{min-height:2.75rem;padding-top:.7rem;padding-bottom:.35rem}.checkbox-label{gap:.75rem;min-height:2.75rem}.checkbox-label input[type=checkbox],.checkbox-label input[type=radio]{width:1.5rem;height:1.5rem}.checkbox-label input[type=checkbox]:checked:after{width:6px;height:11px;top:50%;left:50%;transform:translate(-50%,-58%)rotate(45deg)}.form-field input,.form-field select,.form-field textarea,input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],input[type=tel],input[type=url],input[type=date],input[type=time],input[type=datetime-local],select,.input,.select-field,.search-input{min-height:2.75rem}textarea,.form-field textarea,textarea.input{min-height:6rem}.notification-header{align-items:flex-start;gap:.75rem}.settings-actions{align-items:flex-start}}@media (pointer:coarse){.checkbox-label{gap:.75rem;min-height:2.75rem}.checkbox-label input[type=checkbox],.checkbox-label input[type=radio]{width:1.5rem;height:1.5rem}.checkbox-label input[type=checkbox]:checked:after{width:6px;height:11px;top:50%;left:50%;transform:translate(-50%,-58%)rotate(45deg)}}@media (max-width:480px){.main-content{padding:calc(56px + var(--spacing-sm) + var(--safe-area-top)) calc(var(--spacing-sm) + var(--safe-area-right)) calc(var(--spacing-sm) + var(--safe-area-bottom)) calc(var(--spacing-sm) + var(--safe-area-left))}.form-input,input.form-input,textarea.form-input{font-size:16px}}textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-base);resize:vertical;background:var(--color-surface);color:var(--color-text);box-sizing:border-box;width:100%;font-family:inherit;transition:border-color .15s}textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.messenger-page{flex-direction:column;height:calc(100vh - 80px);display:flex;overflow:hidden}.messenger-container{flex:1;display:flex;overflow:hidden;border-radius:var(--radius-lg)!important;padding:0!important}.messenger-sidebar{border-right:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;width:340px;min-width:300px;max-width:380px;display:flex}.messenger-sidebar-header{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);position:relative}
.messenger-user-dropdown{background:var(--color-surface);border:1px solid var(--color-border);border-radius:0 0 var(--radius-md) var(--radius-md);z-index:100;max-height:250px;box-shadow:var(--shadow-lg);border-top:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.template-dropdown{top:calc(100%4px);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:240px;max-width:320px;box-shadow:var(--shadow-lg);z-index:200;position:absolute;right:0;overflow:hidden}.template-dropdown-item{text-align:left;border:none;border-bottom:1px solid var(--color-border);cursor:pointer;width:100%;color:var(--color-text);background:0 0;padding:.6rem .875rem;font-family:inherit;transition:background .1s;display:block}.template-dropdown-item:last-child{border-bottom:none}.template-dropdown-item:hover{background:var(--color-bg)}.messenger-user-item{width:100%;color:var(--color-text);text-align:left;background:var(--color-surface);border:0;border-bottom:1px solid var(--color-border);cursor:pointer;font:inherit;align-items:center;gap:.5rem;padding:.5rem .75rem;transition:background .15s;display:flex}.messenger-user-item:last-child{border-bottom:none}.messenger-user-item:hover{background:var(--color-surface-hover)}.messenger-user-item:focus-visible,.messenger-conv-item:focus-visible{z-index:1;outline:3px solid var(--color-primary);outline-offset:-3px;position:relative}.messenger-user-avatar{background:var(--color-primary-light);width:32px;height:32px;color:var(--color-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.messenger-user-copy{min-width:0}.messenger-user-copy .u-strong{text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;display:block;overflow:hidden}.messenger-user-copy .u-text-secondary{font-size:.75rem}.messenger-sidebar-state,.messenger-sidebar-loading{color:var(--color-text-secondary);text-align:center;padding:.75rem;font-size:.875rem}.messenger-sidebar-loading{padding:1.5rem}.messenger-new-badge{color:var(--color-primary);flex-shrink:0;font-size:.75rem;font-weight:600}.messenger-group-create{width:100%;margin-bottom:var(--spacing-sm);justify-content:center}.messenger-conv-list{flex:1;overflow-y:auto}.messenger-section-label{padding:var(--spacing-sm) var(--spacing-md);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary);background:var(--color-bg);font-size:.7rem;font-weight:600}.messenger-empty-convs{text-align:center;color:var(--color-text-secondary);padding:3rem 1.5rem;font-size:.9rem}.messenger-empty-convs p{margin:0}.messenger-empty-convs__hint{font-size:.8rem;margin-top:.25rem!important}.messenger-conv-item{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;color:var(--color-text);text-align:left;font:inherit;border:0;border-bottom:1px solid var(--color-border);background:0 0;transition:background .15s;display:flex}.messenger-conv-item:hover{background:var(--color-surface-hover)}.messenger-conv-item--active{background:var(--color-primary-light);border-left:3px solid var(--color-primary)}.messenger-conv-avatar{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1rem;font-weight:700;display:flex}.messenger-conv-avatar--group{background:var(--color-primary-light);color:var(--color-primary);border-radius:12px;overflow:hidden}.messenger-conv-avatar img,.messenger-chat-avatar img{object-fit:cover;width:100%;height:100%}.messenger-conv-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.9rem;overflow:hidden}.messenger-conv-copy{flex:1;min-width:0}.messenger-conv-heading{justify-content:space-between;align-items:center;gap:var(--spacing-sm);display:flex}.messenger-conv-pagination{padding:.75rem .75rem 0}.messenger-conv-meta{color:var(--color-text-secondary);margin-top:2px;font-size:.72rem}.messenger-unread-badge{background:var(--color-primary);color:#fff;border-radius:9999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:.7rem;font-weight:700;display:inline-flex}.messenger-conv-preview{color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:.8rem;overflow:hidden}.messenger-chat{background:var(--color-bg);flex-direction:column;flex:1;min-width:0;display:flex}.messenger-chat-empty{color:var(--color-text-secondary);padding:var(--spacing-xl);flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.messenger-chat-empty__icon{opacity:.75;margin-bottom:.875rem}.messenger-chat-empty__title,.messenger-chat-empty__hint{margin:0}.messenger-chat-empty__title{color:var(--color-text);font-size:1.05rem;font-weight:650}.messenger-chat-empty__hint{margin-top:.3rem;font-size:.875rem}.messenger-chat-header{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);background:var(--color-surface);display:flex}.messenger-chat-avatar{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;font-weight:700;display:flex}.messenger-chat-avatar--group{background:var(--color-primary-light);color:var(--color-primary);border-radius:10px;overflow:hidden}.messenger-chat-header__title{flex-direction:column;min-width:0;display:flex}.messenger-chat-header__title .u-strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.messenger-chat-header__title small{color:var(--color-text-secondary);font-size:.75rem}.messenger-chat-header__action{flex-shrink:0;margin-left:auto}.messenger-back-btn{cursor:pointer;padding:var(--spacing-xs);color:var(--color-text);background:0 0;border:none;justify-content:center;align-items:center;display:none}.messenger-load-older{justify-content:center;padding:.5rem 0 1rem;display:flex}.messenger-message-state{color:var(--color-text-secondary);text-align:center;padding:2rem;font-size:.9rem}.messenger-message-row{justify-content:flex-start;display:flex}.messenger-message-row--own{justify-content:flex-end}.messenger-messages{padding:var(--spacing-md) var(--spacing-lg);gap:var(--spacing-sm);flex-direction:column;flex:1;display:flex;overflow-y:auto}.messenger-bubble{border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border);word-break:break-word;max-width:70%;box-shadow:var(--shadow-sm);padding:.7rem 1rem;font-size:.9rem}.messenger-bubble--own{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.messenger-bubble-content{white-space:pre-wrap;margin:0;line-height:1.45}.messenger-bubble-time{opacity:.7;text-align:left;margin-top:4px;font-size:.7rem;display:block}.messenger-bubble--own .messenger-bubble-time{text-align:right}.messenger-bubble-sender{color:var(--color-primary);margin-bottom:.25rem;font-size:.75rem;display:block}.messenger-input-bar{padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid var(--color-border);background:var(--color-surface)}.messenger-input-bar--new{background:var(--color-primary-light)}.messenger-compose-hint{color:var(--color-text-secondary);margin:0 0 .5rem;font-size:.85rem}.messenger-compose-input{resize:vertical;min-height:44px;max-height:140px;line-height:1.35}.messenger-send-button{flex-shrink:0;align-self:stretch}.messenger-group-dialog__footer{justify-content:space-between;align-items:center;gap:var(--spacing-md);width:100%;display:flex}.messenger-group-dialog__section-head{justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-sm);display:flex}.messenger-group-dialog__section-head h3,.messenger-group-dialog__section-head p{margin:0}.messenger-group-dialog__section-head h3{font-size:.95rem}.messenger-group-dialog__section-head p{color:var(--color-text-secondary);margin-top:2px;font-size:.78rem}.messenger-group-dialog__count{border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:999px;align-items:center;gap:.3rem;padding:.3rem .55rem;font-size:.75rem;font-weight:600;display:inline-flex}.messenger-group-image-editor{align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);display:flex}.messenger-group-image-editor__preview{border:1px solid var(--color-border);background:var(--color-primary-light);width:72px;height:72px;color:var(--color-primary);border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.messenger-group-image-editor__preview img{object-fit:cover;width:100%;height:100%}.messenger-group-image-editor__actions{gap:var(--spacing-xs);flex-direction:column;flex:1;min-width:0;display:flex}.messenger-group-image-editor__actions small{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.messenger-group-image-editor__actions .form-error{margin:0}.messenger-group-dialog__search{align-items:center;gap:var(--spacing-sm);padding:0 var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:flex}.messenger-group-dialog__search:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.messenger-group-dialog__search input{width:100%;height:42px;color:var(--color-text);font:inherit;outline:0;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;padding:0!important}.messenger-group-dialog__results{max-height:190px;margin-top:var(--spacing-xs);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-md);overflow-y:auto}.messenger-group-dialog__results>p{padding:var(--spacing-md);color:var(--color-text-secondary);text-align:center;margin:0;font-size:.85rem}.messenger-group-dialog__results button{justify-content:space-between;align-items:center;gap:var(--spacing-sm);width:100%;padding:.65rem var(--spacing-sm);border:0;border-bottom:1px solid var(--color-border);color:var(--color-text);text-align:left;cursor:pointer;font:inherit;background:0 0;display:flex}.messenger-group-dialog__results button:last-child{border-bottom:0}.messenger-group-dialog__results button:hover,.messenger-group-dialog__results button:focus-visible{background:var(--color-surface-hover)}.messenger-group-dialog__results button span,.messenger-group-dialog__member>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.messenger-group-dialog__results small,.messenger-group-dialog__member small{color:var(--color-text-secondary);font-size:.73rem}.messenger-group-dialog__members{max-height:280px;margin-top:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow-y:auto}.messenger-group-dialog__member{align-items:center;gap:var(--spacing-sm);min-height:54px;padding:.55rem var(--spacing-sm);border-bottom:1px solid var(--color-border);display:flex}.messenger-group-dialog__member:last-child{border-bottom:0}.messenger-group-dialog__member>span:nth-child(2){flex:1}.messenger-group-dialog__member--owner{background:var(--color-primary-light)}.messenger-group-dialog__avatar{background:var(--color-bg);width:32px;height:32px;color:var(--color-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.messenger-group-dialog__empty{padding:var(--spacing-md);color:var(--color-text-secondary);text-align:center;margin:0;font-size:.85rem}@media (max-width:768px){.messenger-page{height:calc(100vh - 70px)}.messenger-sidebar{width:100%;min-width:0;max-width:none}.messenger-sidebar--hidden,.messenger-chat{display:none}.messenger-chat--visible{z-index:50;background:var(--color-bg);display:flex;position:absolute;inset:0}.messenger-back-btn{display:inline-flex}.messenger-bubble{max-width:85%}.messenger-group-dialog__footer{flex-direction:column-reverse;align-items:stretch}.messenger-group-dialog__footer>.ui-inline,.messenger-group-dialog__footer>button{width:100%}.messenger-group-dialog__footer .btn-primary,.messenger-group-dialog__footer .btn-secondary{flex:1}.messenger-group-image-editor{align-items:flex-start}.messenger-group-image-editor__preview{border-radius:15px;width:60px;height:60px}.data-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.data-table{min-width:34rem}.create-form [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr!important}}
.edit-inline-field{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.settings-branding-preview img{object-fit:contain;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:4rem;height:4rem}.edit-inline-field input,.edit-inline-field select{flex:1;min-width:120px}.edit-actions{align-items:center;gap:.375rem;display:flex}.btn-icon{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;transition:all .15s;display:inline-flex}.btn-icon:hover{background:var(--color-bg);border-color:var(--color-primary)}.main-topbar{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.theme-toggle-topbar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);box-shadow:var(--shadow-sm);align-items:center;gap:.4rem;padding:0 .25rem 0 .65rem;display:inline-flex}.theme-toggle-topbar .theme-toggle-select{width:auto;max-width:9rem;min-height:2.25rem;box-shadow:none;color:var(--color-text);cursor:pointer;background:0 0;border:none;padding:0 1.7rem 0 0;font-family:inherit;font-size:.8rem;font-weight:500}@media (max-width:768px){.theme-toggle-topbar .theme-toggle-select{min-height:2.75rem}.btn-icon{width:2.75rem;height:2.75rem}.btn-small{min-height:2.75rem}.btn-link{align-items:center;min-height:2.75rem;padding:.35rem .125rem;display:inline-flex}}.user-cards-list{flex-direction:column;gap:.625rem;display:flex}.user-card{transition:box-shadow .15s;padding:.875rem 1rem!important}.user-card:hover{box-shadow:var(--shadow-md)}.user-card--inactive{opacity:.6}.user-card-main{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.user-card-identity{flex:1;align-items:center;gap:.75rem;min-width:200px;display:flex}.user-card-avatar{background:linear-gradient(135deg,var(--color-primary),#7c3aed);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1rem;font-weight:700;display:flex}.user-card-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.625rem;display:flex}.user-card-actions{border-top:1px solid var(--color-border);flex-wrap:wrap;gap:.375rem;margin-top:.625rem;padding-top:.625rem;display:flex}
@keyframes skeleton-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{background:linear-gradient(90deg,var(--color-border) 25%,var(--color-bg) 50%,var(--color-border) 75%);border-radius:var(--radius-md);background-size:800px 100%;animation:1.4s ease-in-out infinite skeleton-shimmer;display:block}.skeleton-text{border-radius:4px;height:.875rem;margin-bottom:.5rem}.skeleton-title{border-radius:4px;width:60%;height:1.25rem;margin-bottom:.75rem}.skeleton-avatar{border-radius:50%;width:40px;height:40px}.empty-state{padding:3rem var(--spacing-xl);text-align:center;color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state-icon{border-radius:var(--radius-xl);background:var(--color-bg-subtle);border:1px solid var(--color-border);width:60px;height:60px;margin-bottom:var(--spacing-lg);color:var(--color-text-tertiary);box-shadow:var(--shadow-xs);justify-content:center;align-items:center;display:flex}.empty-state h3{font-size:var(--font-size-lg);color:var(--color-text);margin-bottom:var(--spacing-xs);font-weight:600}.empty-state p{font-size:var(--font-size-sm);max-width:400px;margin-bottom:var(--spacing-lg);line-height:1.6}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.topbar-page-title{font-size:var(--font-size-sm);color:var(--color-text);opacity:.85;font-weight:600}.kpi-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);align-items:flex-start;gap:var(--spacing-md);transition:box-shadow .2s,transform .15s;display:flex}.kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.kpi-icon{border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.kpi-icon--blue{color:#2563eb;background:#2563eb1a}.kpi-icon--green{color:#16a34a;background:#16a34a1a}.kpi-icon--amber{color:#d97706;background:#d977061a}.kpi-icon--red{color:#dc2626;background:#dc26261a}.kpi-icon--purple{color:#7c3aed;background:#7c3aed1a}.kpi-body{flex:1;min-width:0}.kpi-label{font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.25rem;font-weight:600}.kpi-value{font-size:var(--font-size-2xl);letter-spacing:-.02em;color:var(--color-text);font-weight:700;line-height:1.1}.kpi-delta{font-size:var(--font-size-xs);align-items:center;gap:.2em;margin-top:.25rem;font-weight:500;display:inline-flex}.kpi-delta--up{color:var(--color-success)}.kpi-delta--down{color:var(--color-error)}.section-title{font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border);font-weight:700}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.error-banner{justify-content:space-between;align-items:center;gap:var(--spacing-sm);color:var(--color-error);padding:.75rem var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);font-size:var(--font-size-sm);background:#dc262614;border:1px solid #dc262633;display:flex}.error-banner svg{opacity:.8;flex-shrink:0}.error-banner-dismiss{cursor:pointer;color:inherit;opacity:.6;border-radius:var(--radius-sm);background:0 0;border:none;flex-shrink:0;align-items:center;padding:2px;transition:opacity .15s;display:flex}.error-banner-dismiss:hover{opacity:1}.info-banner{align-items:flex-start;gap:var(--spacing-sm);color:var(--color-primary);padding:.75rem var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);font-size:var(--font-size-sm);background:#2563eb0f;border:1px solid #2563eb2e;display:flex}.success-banner{align-items:center;gap:var(--spacing-sm);color:var(--color-success);padding:.625rem var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:#16a34a14;border:1px solid #16a34a33;display:flex}.feedback-my-page{max-width:72rem}.feedback-request-list{gap:var(--space-4);display:grid}.feedback-request-card{gap:var(--space-4);padding:var(--space-5);display:grid}.feedback-request-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.feedback-request-card__header h2,.feedback-request-card__questions h3,.feedback-response-form h3,.feedback-response-form p,.feedback-request-card__deployment-period{margin:0}.feedback-request-card__header h2{font-size:var(--font-size-lg)}.feedback-request-card__meta{margin-top:var(--space-2);color:var(--text-secondary);font-size:var(--font-size-sm)}.feedback-request-card__meta span{align-items:center;gap:var(--space-1);display:inline-flex}.feedback-request-card__deployment-period{padding:var(--space-2) var(--space-3);border-left:3px solid var(--color-primary);color:var(--text-secondary);background:var(--surface-subtle);font-size:var(--font-size-sm)}.feedback-request-card__questions{gap:var(--space-2);display:grid}.feedback-request-card__questions h3,.feedback-response-form h3{font-size:var(--font-size-md)}.feedback-request-card__questions ol{gap:var(--space-2);margin:0;padding-left:1.3rem;display:grid}.feedback-request-card__action{justify-self:start}.feedback-response-form{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-subtle);display:grid}.feedback-response-form>div:first-child{gap:var(--space-1);display:grid}.feedback-response-form p{color:var(--text-secondary);font-size:var(--font-size-sm)}@media (max-width:520px){.feedback-request-card__header{flex-direction:column;align-items:stretch}.feedback-request-card__action,.feedback-response-form .btn-primary,.feedback-response-form .btn-secondary{justify-content:center;width:100%}}.info-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);border-left:4px solid var(--color-primary);margin-bottom:var(--spacing-md)}.warning-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);border-left:4px solid var(--color-warning);margin-bottom:var(--spacing-md)}.danger-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);border-left:4px solid var(--color-error);margin-bottom:var(--spacing-md)}.modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;padding:var(--spacing-lg);background:#02061780;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--color-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);border:1px solid var(--color-border);padding:var(--spacing-xl);width:100%;max-width:520px;max-height:90vh;overflow-y:auto}.modal-card h3{font-size:var(--font-size-lg);margin:0 0 var(--spacing-lg);color:var(--color-text);font-weight:700}.modal-header{margin-bottom:var(--spacing-lg);justify-content:space-between;align-items:center;display:flex}.modal-header h3{font-size:var(--font-size-lg);margin:0;font-weight:700}.modal-footer{gap:var(--spacing-sm);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);justify-content:flex-end;display:flex}.progress-bar{background:var(--color-border);border-radius:9999px;height:8px;overflow:hidden}.progress-fill{background:var(--gradient-primary);border-radius:9999px;height:100%;transition:width .4s}.progress-fill--success{background:var(--color-success)}.progress-fill--warning{background:var(--color-warning)}.progress-fill--danger{background:var(--color-error)}.progress-header{font-size:var(--font-size-sm);justify-content:space-between;align-items:center;margin-bottom:.4rem;display:flex}.page-description{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--spacing-lg);line-height:1.6}.grid-2col{gap:var(--spacing-md);grid-template-columns:1fr 1fr;display:grid}.grid-auto{gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.page-title-icon{align-items:center;gap:.5rem;line-height:1;display:flex}.action-row{gap:var(--spacing-sm);flex-wrap:wrap;align-items:center;display:flex}.review-panel{margin-top:var(--spacing-md);border-top:1px solid var(--color-border);padding-top:var(--spacing-md)}.review-panel textarea{width:100%;margin-bottom:var(--spacing-sm);padding:.625rem var(--spacing-md);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:var(--font-size-sm);background:var(--color-surface);color:var(--color-text);resize:vertical;transition:border-color .15s}.review-panel textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2563eb1f}.create-form{border:1.5px solid var(--color-border);border-top:3px solid var(--color-primary);background:var(--color-surface)}.meta-row{font-size:var(--font-size-xs);color:var(--color-text-secondary);flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.meta-item{align-items:center;gap:.3em;display:inline-flex}.avatar{background:var(--gradient-primary);color:#fff;letter-spacing:-.02em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:.9rem;font-weight:700;display:flex}.avatar--sm{width:30px;height:30px;font-size:.75rem}.avatar--lg{width:48px;height:48px;font-size:1.1rem}.input{padding:.5rem var(--spacing-md);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--color-surface);color:var(--color-text);width:100%;font-family:inherit;transition:border-color .15s,box-shadow .2s}.input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2563eb1a,0 0 0 1px #2563eb40}.btn-danger{background:var(--color-error);color:#fff;padding:.5rem var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;border:none;align-items:center;gap:.4rem;font-family:inherit;font-weight:600;transition:opacity .15s,transform .1s;display:inline-flex}.btn-danger:hover{opacity:.88;transform:translateY(-1px)}.btn-danger:active{transform:translateY(0)}.btn-danger:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-small{font-size:var(--font-size-xs);border-radius:var(--radius-sm);cursor:pointer;border:1.5px solid var(--color-border);background:var(--color-surface);color:var(--color-text);white-space:nowrap;align-items:center;gap:.3rem;padding:.35rem .75rem;font-family:inherit;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.btn-small:hover{background:var(--color-bg);border-color:var(--color-border-strong)}.btn-small.btn-success{color:var(--color-success);background:#16a34a1a;border-color:#16a34a4d}.btn-small.btn-success:hover{background:#16a34a2e}.btn-small.btn-danger{color:var(--color-error);background:#dc262614;border-color:#dc262640}.btn-small.btn-danger:hover{background:#dc262626}.btn-small.btn-primary{background:var(--gradient-primary);color:var(--color-primary-contrast);box-shadow:var(--shadow-primary-sm);border-color:#0000}textarea.input{resize:vertical;min-height:80px}.card-header{justify-content:space-between;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border);display:flex}.card-header h3{font-size:var(--font-size-base);color:var(--color-text);margin:0;font-weight:600}.loading{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary);font-size:var(--font-size-sm);justify-content:center;align-items:center;gap:var(--spacing-sm);display:flex}@media (max-width:768px){.user-card-main{flex-direction:column;gap:.5rem}.user-card-meta{justify-content:flex-start}}.status-dot{white-space:nowrap;align-items:center;gap:4px;font-size:.8rem;font-weight:500;display:inline-flex}.status-dot.active{color:var(--color-success)}.status-dot.inactive{color:var(--color-text-secondary)}
@media (max-width:768px){.main-topbar{margin-bottom:.5rem}}.license-gate{min-height:100vh;padding:var(--spacing-lg);background:linear-gradient(135deg,#0f172a 0%,#1e3a5f 100%);justify-content:center;align-items:center;display:flex}.license-gate-card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-xl);text-align:center;width:100%;max-width:480px}.license-gate-icon{margin-bottom:.75rem;font-size:3rem}.license-gate-card h1{font-size:var(--font-size-2xl);color:var(--color-primary);margin-bottom:var(--spacing-md);font-weight:700}.license-gate-detail{color:var(--color-error);font-size:var(--font-size-sm);margin-bottom:var(--spacing-sm)}.license-gate-technical{text-align:left;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);margin:0 0 var(--spacing-md);padding:.65rem .75rem}.license-gate-technical summary{cursor:pointer;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:700}.license-gate-technical p{color:var(--color-text-secondary);font-size:var(--font-size-sm);word-break:break-word;margin:.5rem 0 0}.license-gate-message{color:var(--color-text-secondary);margin-bottom:var(--spacing-md);line-height:1.6}.license-gate-contact{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-top:var(--spacing-sm)}.license-gate-contact a{color:var(--color-primary)}.license-gate-upload{margin-top:var(--spacing-lg)}.license-gate-upload-msg{margin-top:var(--spacing-sm);font-size:var(--font-size-sm)}.license-gate-btn{margin-top:var(--spacing-md);justify-content:center;align-items:center;gap:.45rem;display:inline-flex}.license-page-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;display:grid}.license-feature-list{margin:0;padding:0;list-style:none}.license-feature-row{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:var(--spacing-sm);padding:.45rem 0;display:flex}.license-feature-row:last-child{border-bottom:0}.license-feature-name{align-items:center;gap:.25rem;min-width:0;display:flex}.license-technical-details{margin-top:var(--spacing-sm);border-top:1px solid var(--color-border);color:var(--color-text-secondary);font-size:var(--font-size-sm);padding:.65rem 0}.license-technical-details summary{cursor:pointer;color:var(--color-text);font-weight:700}.license-technical-details ul{margin:.5rem 0 0;padding-left:1rem}.license-usage-bar+.license-usage-bar{margin-top:1rem}.license-usage-bar__meta{justify-content:space-between;gap:var(--spacing-sm);margin-bottom:.25rem;font-size:.85rem;display:flex}.license-usage-bar__track{background:var(--color-border);border-radius:var(--radius-full);height:8px;overflow:hidden}.license-usage-bar__value{height:100%;width:var(--license-usage-width);background:var(--license-usage-color);border-radius:var(--radius-full);transition:width .3s}.license-grace-banner{background:var(--color-warning-bg);color:var(--color-warning-text);border-bottom:1px solid var(--color-warning);padding:.5rem var(--spacing-lg);font-size:var(--font-size-sm);text-align:center}.license-grace-banner a{color:inherit;font-weight:600;text-decoration:underline}.sidebar-brand-sub{color:#94a3b899;letter-spacing:.04em;margin-top:2px;font-size:.68rem}@keyframes badge-ping{0%{opacity:.75;transform:scale(1)}75%,to{opacity:0;transform:scale(1.9)}}
.nav-badge{position:relative}.nav-badge--ping:before{content:"";background:#ef4444;border-radius:9999px;animation:1.5s ease-in-out infinite badge-ping;position:absolute;inset:0}.sidebar-user-card{margin:0 var(--spacing-sm) var(--spacing-sm);border-radius:var(--radius-xl);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff14;align-items:center;gap:.625rem;padding:.625rem .75rem;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.sidebar-user-card:hover{background:#ffffff17}.sidebar-user-avatar{background:var(--gradient-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.75rem;font-weight:700;display:flex;box-shadow:0 2px 6px #2563eb59}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{color:#e2e8f0;white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:600;line-height:1.3;overflow:hidden}.sidebar-user-role{color:#94a3b8a6;white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:.65rem;overflow:hidden}.greeting-banner{border-radius:var(--radius-2xl);padding:var(--spacing-xl) var(--spacing-xl);color:#fff;justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);background:linear-gradient(135deg,#1d4ed8 0%,#2563eb 35%,#4f46e5 100%);display:flex;position:relative;overflow:hidden;box-shadow:0 8px 32px #2563eb52,0 2px 8px #2563eb33}.greeting-banner:after{content:"";pointer-events:none;background:#ffffff14;border-radius:50%;width:220px;height:220px;position:absolute;top:-50px;right:-60px}.greeting-banner:before{content:"";pointer-events:none;background:#ffffff0a;border-radius:50%;width:280px;height:280px;position:absolute;bottom:-80px;right:60px}.greeting-text h2{font-size:var(--font-size-xl);letter-spacing:-.025em;margin-bottom:.3rem;font-weight:700}.greeting-text p{font-size:var(--font-size-sm);opacity:.88;line-height:1.5}.greeting-badge{border-radius:var(--radius-xl);padding:var(--spacing-sm) var(--spacing-lg);text-align:center;-webkit-backdrop-filter:blur(8px);background:#ffffff26;border:1px solid #ffffff38;flex-shrink:0}.greeting-badge-value{font-size:var(--font-size-xl);letter-spacing:-.03em;font-weight:800;line-height:1}.greeting-badge-label{opacity:.8;white-space:nowrap;margin-top:2px;font-size:.68rem}.progress-ring{justify-content:center;align-items:center;display:inline-flex;position:relative}.progress-ring svg{transform:rotate(-90deg)}.progress-ring-track{fill:none;stroke:var(--color-border);stroke-width:7px}.progress-ring-fill{fill:none;stroke:var(--color-primary);stroke-width:7px;stroke-linecap:round;transition:stroke-dashoffset .7s cubic-bezier(.34,1.56,.64,1)}.progress-ring-fill--success{stroke:var(--color-success)}.progress-ring-fill--warning{stroke:var(--color-warning)}.progress-ring-fill--danger{stroke:var(--color-error)}.progress-ring-label{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute}.progress-ring-pct{color:var(--color-text);letter-spacing:-.03em;font-size:1.35rem;font-weight:800;line-height:1}.progress-ring-sub{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;margin-top:2px;font-size:.6rem;font-weight:600}.quick-action-grid{gap:var(--spacing-md);margin-bottom:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.quick-action-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-md) var(--spacing-lg);align-items:flex-start;gap:var(--spacing-sm);color:inherit;cursor:pointer;flex-direction:column;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative;overflow:hidden}.quick-action-card:before{content:"";background:var(--gradient-card-hover);opacity:0;pointer-events:none;transition:opacity .18s;position:absolute;inset:0}.quick-action-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong);transform:translateY(-3px)}.quick-action-card:hover:before{opacity:1}.qa-icon{border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.qa-icon--blue{color:#2563eb;background:#2563eb1a}.qa-icon--green{color:#16a34a;background:#16a34a1a}.qa-icon--amber{color:#d97706;background:#d977061a}.qa-icon--red{color:#dc2626;background:#dc26261a}.qa-icon--purple{color:#7c3aed;background:#7c3aed1a}.qa-icon--teal{color:#0d9488;background:#14b8a61a}.qa-title{font-size:var(--font-size-sm);color:var(--color-text);font-weight:600;line-height:1.3}.qa-desc{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.5}.card-accent{border-top:3px solid var(--color-primary)}.card-accent--success{border-top-color:var(--color-success)}.card-accent--warning{border-top-color:var(--color-warning)}.card-accent--danger{border-top-color:var(--color-error)}.card-accent--purple{border-top-color:#7c3aed}.pill{font-size:var(--font-size-xs);white-space:nowrap;border-radius:9999px;align-items:center;gap:.25rem;padding:.15rem .55rem;font-weight:600;display:inline-flex}.pill--primary{background:var(--color-primary-light);color:var(--color-primary)}.pill--success{background:var(--color-success-bg);color:var(--color-success)}.pill--warning{background:var(--color-warning-bg);color:var(--color-warning)}.pill--danger{background:var(--color-error-bg);color:var(--color-error)}.pill--neutral{background:var(--color-bg);color:var(--color-text-secondary);border:1px solid var(--color-border)}.stat-mini{padding:var(--spacing-md) var(--spacing-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);text-align:center;flex-direction:column;align-items:center;gap:.2rem;transition:transform .15s,box-shadow .15s;display:flex}.stat-mini:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-mini-value{letter-spacing:-.03em;font-size:1.75rem;font-weight:800;line-height:1}.stat-mini-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:500}.timeline{flex-direction:column;gap:0;display:flex;position:relative}.timeline:before{content:"";background:var(--color-border);width:2px;position:absolute;top:0;bottom:0;left:.875rem}.timeline-item{gap:var(--spacing-md);padding-bottom:var(--spacing-md);display:flex;position:relative}.timeline-dot{z-index:1;background:var(--color-surface);border:2px solid var(--color-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;margin-top:.125rem;display:flex;position:relative}.timeline-dot--accepted{border-color:var(--color-success);color:var(--color-success)}.timeline-dot--rejected{border-color:var(--color-error);color:var(--color-error)}.timeline-dot--in-review{border-color:var(--color-warning);color:var(--color-warning)}.timeline-content{min-width:0;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border);flex:1}.timeline-item:last-child .timeline-content{border-bottom:none}.topbar-page-title{font-size:var(--font-size-sm);color:var(--color-text);letter-spacing:-.01em;font-weight:600}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm);transition:outline-offset .1s}.week-card-status-bar{border-radius:2px;flex-shrink:0;align-self:stretch;width:4px}.week-card-body{flex:1;min-width:0}.week-card-enhanced{gap:var(--spacing-md);align-items:stretch;display:flex}.review-item{border-left:4px solid var(--color-warning);transition:border-color .2s}.review-item:hover{border-left-color:var(--color-primary)}.stats-row{gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-wrap:wrap;display:flex}.stats-row .stat-mini{flex:1;min-width:80px}.kpi-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-lg);align-items:flex-start;gap:var(--spacing-md);transition:box-shadow .2s,transform .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.kpi-card:before{content:"";background:var(--gradient-card-hover);opacity:0;pointer-events:none;transition:opacity .2s;position:absolute;inset:0}.kpi-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong);transform:translateY(-2px)}.kpi-card:hover:before{opacity:1}.kpi-icon{border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.kpi-icon--blue{color:#2563eb;background:#2563eb1f}.kpi-icon--green{color:#16a34a;background:#16a34a1f}.kpi-icon--amber{color:#d97706;background:#d977061f}.kpi-icon--red{color:#dc2626;background:#dc26261f}.kpi-icon--purple{color:#7c3aed;background:#7c3aed1f}.kpi-body{flex:1;min-width:0}.kpi-label{font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.3rem;font-weight:600}.kpi-value{letter-spacing:-.03em;color:var(--color-text);font-size:1.625rem;font-weight:800;line-height:1.1}.section-header{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.section-header h3{font-size:var(--font-size-base);color:var(--color-text);align-items:center;gap:.375rem;font-weight:600;display:flex}.section-header a{font-size:var(--font-size-xs);color:var(--color-primary);font-weight:500;text-decoration:none}.section-header a:hover{text-decoration:underline}.tab-nav{border-bottom:2px solid var(--color-border);margin-bottom:var(--spacing-lg);gap:0;display:flex}.tab-nav-item{padding:.625rem var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;font-family:inherit;font-weight:500;transition:color .15s,border-color .15s}.tab-nav-item:hover{color:var(--color-text)}.tab-nav-item--active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.table-action-btn{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;justify-content:center;align-items:center;padding:0;font-size:.8rem;transition:all .15s;display:inline-flex}.table-action-btn:hover{background:var(--color-bg);border-color:var(--color-primary);color:var(--color-primary)}kbd{border-radius:var(--radius-sm);background:var(--color-bg);border:1px solid var(--color-border);font-family:var(--font-family);color:var(--color-text-secondary);box-shadow:0 1px 0 var(--color-border);align-items:center;padding:.1rem .4rem;font-size:.72rem;font-weight:600;display:inline-flex}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.5}}.pulse-dot{background:var(--color-primary);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse-dot;display:inline-block}.nav-link.active{color:#fff;box-shadow:inset 3px 0 0 var(--color-primary);background:#2563eb26;border-right:none;font-weight:500}@media (max-width:768px){.greeting-banner{padding:var(--spacing-md);flex-direction:column;align-items:flex-start}.quick-action-grid{grid-template-columns:repeat(2,1fr)}.stats-row{flex-wrap:wrap}.stats-row .stat-mini{flex:1 1 calc(50% - var(--spacing-sm))}}
.trainee-record-page{width:min(100%,88rem);margin-inline:auto}.trainee-record__subtitle-separator{color:var(--color-text-tertiary);margin-inline:.45rem}.trainee-record-kpis{gap:var(--spacing-sm);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.trainee-record-grid{gap:var(--spacing-md);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.trainee-record-grid--wide{grid-template-columns:repeat(2,minmax(0,1fr))}.trainee-record-card{flex-direction:column;min-width:0;min-height:15rem;display:flex}.trainee-record-card--program{min-height:17rem}.trainee-record-program{min-width:0}.trainee-record-card__content{flex:1;min-width:0}.trainee-record-card h3{color:var(--color-text-primary);margin:.2rem 0 0;font-size:1.05rem;line-height:1.35}.trainee-record-card__eyebrow{color:var(--color-text-tertiary);letter-spacing:.065em;text-transform:uppercase;font-size:.72rem;font-weight:700;line-height:1.3;display:block}.trainee-record-card__icon{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);width:2.25rem;height:2.25rem;color:var(--color-text-secondary);background:var(--color-bg-subtle);place-items:center;display:grid}.trainee-record-card__metric{color:var(--color-text-primary);letter-spacing:-.035em;margin:0;font-size:2rem;font-weight:700;line-height:1}.trainee-record-card__footer{padding-top:var(--spacing-md);color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-top:auto;line-height:1.45}.trainee-record-card__link{padding-top:var(--spacing-md);color:var(--color-primary);font-size:var(--font-size-sm);align-self:flex-start;align-items:center;gap:.25rem;margin-top:auto;font-weight:600;text-decoration:none;display:inline-flex}.trainee-record-card__link:hover{text-underline-offset:.2em;text-decoration:underline}.trainee-record-card__link:focus-visible,.trainee-record-attention:focus-visible{outline:3px solid color-mix(in srgb,var(--color-primary) 45%,transparent);outline-offset:3px}.trainee-record-stat-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.trainee-record-stat-row>div{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-bg-subtle);flex-direction:column;gap:.1rem;min-width:0;padding:.6rem;display:flex}.trainee-record-stat-row strong{color:var(--color-text-primary);font-size:1.1rem}.trainee-record-stat-row span{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.trainee-record-objective{justify-content:space-between;align-items:center;gap:var(--spacing-sm);border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-primary);font-size:var(--font-size-sm);padding-block:.3rem;display:flex}.trainee-record-objective:last-child{border-bottom:0}.trainee-record-objective>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trainee-record-attention{justify-content:space-between;align-items:center;gap:var(--spacing-md);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);color:var(--color-text-primary);background:var(--color-surface);padding:.8rem .9rem;text-decoration:none;transition:border-color .12s,box-shadow .12s,transform .12s;display:flex}a.trainee-record-attention:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.trainee-record-attention__main{min-width:0}.trainee-record-attention__main>svg{color:var(--color-warning);flex:none;margin-top:.1rem}.trainee-record-attention__main p{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:.15rem 0 0;line-height:1.4}@media (max-width:72rem){.trainee-record-kpis,.trainee-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:45rem){.trainee-record-kpis,.trainee-record-grid,.trainee-record-grid--wide{grid-template-columns:1fr}.trainee-record-card{min-height:0}.trainee-record-program,.trainee-record-attention{align-items:flex-start}}@media (max-width:28rem){.trainee-record-program{flex-direction:column}.trainee-record-stat-row{grid-template-columns:1fr}.trainee-record-stat-row span{white-space:normal}.trainee-record-attention{padding:.75rem}}@media (prefers-reduced-motion:reduce){.trainee-record-attention{transition:none}a.trainee-record-attention:hover{transform:none}}
.deployments-page{max-width:92rem}.deployment-kpis{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.deployment-kpi{min-height:5rem;padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-raised);justify-content:space-between;align-items:center;display:flex}.deployment-kpi span,.deployment-area-row .u-text-secondary{color:var(--text-secondary)}.deployment-kpi strong{font-variant-numeric:tabular-nums;font-size:1.75rem}.deployment-area-create,.deployment-area-row,.deployment-filters{gap:var(--space-3);grid-template-columns:minmax(12rem,2fr) minmax(7rem,.6fr) auto auto;align-items:end;display:grid}.deployment-area-list,.deployment-plan-list,.deployment-requirement-list{gap:var(--space-3);display:grid}.deployment-requirement-form{gap:var(--space-3);grid-template-columns:minmax(13rem,1.6fr) minmax(11rem,1.2fr) minmax(9rem,.8fr) minmax(8rem,.7fr) auto;align-items:end;display:grid}.deployment-requirement-form__actions{min-height:2.75rem}.deployment-requirement-row{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-raised);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.deployment-requirement-row__body{gap:var(--space-1);min-width:0;display:grid}.deployment-requirement-row__body>span{color:var(--text-secondary);font-size:var(--font-size-sm)}.deployment-requirement-row .btn-icon--danger{color:var(--color-danger,var(--status-rejected))}.deployment-objective-field{gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-subtle);margin:0;display:grid}.deployment-objective-field legend{padding:0 var(--space-2);font-weight:700}.deployment-objective-field__hint,.deployment-objective-field__toolbar,.deployment-requirement-coverage__heading span,.deployment-requirement-coverage__open>span{color:var(--text-secondary);font-size:var(--font-size-sm)}.deployment-objective-field__hint{margin:0}.deployment-objective-field__toolbar,.deployment-objective-field__toolbar>div,.deployment-requirement-coverage__heading{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.deployment-objective-options{gap:var(--space-2);max-height:22rem;padding:var(--space-1);overscroll-behavior:contain;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow-y:auto}.deployment-objective-option{align-items:start;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-raised);cursor:pointer;grid-template-columns:auto minmax(0,1fr);display:grid}.deployment-objective-option:hover,.deployment-objective-option:focus-within{border-color:var(--color-primary)}.deployment-objective-option:has(input:checked){border-color:var(--color-primary);background:var(--color-accent-soft)}.deployment-objective-option input{accent-color:var(--color-primary);margin-top:.2rem}.deployment-objective-option>span{gap:var(--space-1);min-width:0;display:grid}.deployment-objective-option small,.deployment-requirement-row__objectives small,.deployment-requirement-coverage__open small,.training-deployment-progress__objectives small{color:var(--text-secondary);font-size:var(--font-size-xs);letter-spacing:.02em;font-weight:700}.deployment-requirement-coverage{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-raised);display:grid}.deployment-requirement-coverage__heading>div{gap:var(--space-1);display:grid}.deployment-requirement-coverage progress{border-radius:var(--radius-full);background:var(--border-color);width:100%;height:.5rem;accent-color:var(--color-primary);border:0;overflow:hidden}.deployment-requirement-coverage__open{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border-color);display:grid}.deployment-requirement-coverage__open ul,.deployment-requirement-row__objectives,.training-deployment-progress__objectives ul{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.deployment-requirement-coverage__open li,.deployment-requirement-row__objectives li,.training-deployment-progress__objectives li{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-1) var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-full);background:var(--surface-subtle);font-size:var(--font-size-sm);display:inline-flex}.deployment-requirement-row__objectives{margin-top:var(--space-2)}.deployment-requirement-row__objectives .is-historical{color:var(--text-secondary);border-style:dashed}.deployment-requirement-row__objectives em{font-size:var(--font-size-xs);font-style:normal}.training-deployment-progress-list{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));display:grid}.training-deployment-progress{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-raised);display:grid}.training-deployment-progress__heading,.training-deployment-progress__values{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.training-deployment-progress__heading>div{gap:var(--space-1);display:grid}.training-deployment-progress__heading span,.training-deployment-progress__values span{color:var(--text-secondary);font-size:var(--font-size-sm)}.training-deployment-progress__values{font-variant-numeric:tabular-nums;align-items:baseline}.training-deployment-progress__meter{border-radius:var(--radius-full);background:var(--border-color);appearance:none;border:0;width:100%;height:.5rem;overflow:hidden}.training-deployment-progress__meter::-webkit-progress-bar{border-radius:var(--radius-full);background:var(--border-color)}.training-deployment-progress__meter::-webkit-progress-value{border-radius:var(--radius-full);background:var(--color-warning)}.training-deployment-progress__meter::-moz-progress-bar{border-radius:var(--radius-full);background:var(--color-warning)}.training-deployment-progress__meter--target_met::-webkit-progress-value{background:var(--color-success)}.training-deployment-progress__meter--target_met::-moz-progress-bar{background:var(--color-success)}.training-deployment-progress__meter--over_target::-webkit-progress-value{background:var(--color-info,var(--color-primary))}.training-deployment-progress__meter--over_target::-moz-progress-bar{background:var(--color-info,var(--color-primary))}.training-deployment-progress__objectives{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border-color);display:grid}.training-deployment-progress__objectives>span{color:var(--text-secondary);font-size:var(--font-size-sm)}.training-deployment-progress__objectives li{border-radius:var(--radius-md)}.deployment-area-row{padding:var(--space-3) 0;border-top:1px solid var(--border-color)}.deployment-filters{grid-template-columns:repeat(3,minmax(10rem,1fr))}.deployment-capacity-meter{justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-muted);display:flex}.deployment-section-heading,.deployment-batch-row{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.deployment-section-heading h2,.deployment-section-heading h3,.deployment-batch-row strong,.deployment-batch-row span{margin:0}.deployment-rotation-trainees{padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-md);margin:0}.deployment-rotation-trainees legend{padding:0 var(--space-2);font-weight:700}.deployment-choice-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));display:grid}.deployment-choice{align-items:center;gap:var(--space-2);min-height:2.75rem;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-raised);cursor:pointer;display:flex}.deployment-choice:has(input:checked){border-color:var(--color-primary);background:var(--surface-selected,var(--surface-muted))}.deployment-choice:focus-within{outline:2px solid var(--color-primary);outline-offset:2px}.deployment-phase-list,.deployment-batch-list,.deployment-rotation-preview{gap:var(--space-3);margin-top:var(--space-3);display:grid}.deployment-phase-row{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-muted);grid-template-columns:2rem minmax(12rem,1.4fr) minmax(8rem,.5fr) minmax(12rem,1fr) auto;align-items:end;display:grid}.deployment-phase-row>strong{width:2rem;height:2rem;color:var(--text-secondary);background:var(--surface-raised);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;margin-bottom:.45rem;display:grid}.deployment-phase-row__description{grid-column:2/5}.deployment-phase-row>.btn-icon{grid-area:1/5}.deployment-preview-table-wrap{border:1px solid var(--border-color);border-radius:var(--radius-md);overflow-x:auto}.deployment-preview-table-wrap .data-table{margin:0}.deployment-batch-row{padding:var(--space-3) var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-raised);align-items:center}.deployment-batch-row>div:first-child{gap:var(--space-1);display:grid}.deployment-batch-row>div:first-child span{color:var(--text-secondary);font-size:var(--font-size-sm)}.deployment-batch-row__actions{flex-wrap:wrap;justify-content:flex-end}.my-deployments-page{max-width:72rem}.team-deployments-page{max-width:86rem}.team-deployment-filters{gap:var(--space-3);grid-template-columns:minmax(16rem,1.6fr) repeat(3,minmax(10rem,1fr));align-items:end;display:grid}.team-deployment-filters .input-with-icon{display:block;position:relative}.team-deployment-filters .input-with-icon svg{top:50%;left:var(--space-3);color:var(--text-secondary);pointer-events:none;position:absolute;transform:translateY(-50%)}.team-deployment-filters .input-with-icon input{width:100%;padding-left:2.35rem}.team-deployment-filter-summary,.team-deployment-section-heading{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.team-deployment-filter-summary{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--font-size-sm)}.team-deployment-filter-summary .btn-link,.team-deployment-card__record-link{align-items:center;gap:var(--space-1);display:inline-flex}.team-deployment-card__feedback{align-items:center;gap:var(--space-2);min-height:2.25rem;margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-color);color:var(--text-secondary);display:flex}.team-deployment-card__feedback>div{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;flex:1;display:flex}.team-deployment-section-heading{margin-bottom:var(--space-3);align-items:baseline}.team-deployment-section-heading h2{font-size:var(--font-size-lg);margin:0}.team-deployment-section-heading span{color:var(--text-secondary);font-size:var(--font-size-sm)}.team-deployment-list{gap:var(--space-3);display:grid}.team-deployment-card{gap:var(--space-5);padding:var(--space-5);grid-template-columns:minmax(11rem,.42fr) minmax(0,1.58fr);display:grid}.team-deployment-card__period,.team-deployment-card__body,.team-deployment-card__heading>div{align-content:start;gap:var(--space-1);display:grid}.team-deployment-card__period{padding-right:var(--space-5);border-right:1px solid var(--border-color)}.team-deployment-card__period span,.team-deployment-card__heading span,.team-deployment-card__meta{color:var(--text-secondary)}.team-deployment-card__heading{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.team-deployment-card__heading h3,.team-deployment-card__body p{margin:0}.team-deployment-card__heading h3 .btn-link{font-size:inherit;font-weight:700}.team-deployment-card__meta{gap:var(--space-2) var(--space-4);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.team-deployment-card__meta span,.team-deployment-card__warning{align-items:center;gap:var(--space-1);display:inline-flex}.team-deployment-card__scope{margin-top:var(--space-2)}.team-deployment-card__warning{padding:var(--space-1) var(--space-2);border:1px solid var(--color-warning-border);border-radius:var(--radius-md);color:var(--color-warning-text);background:var(--color-warning-bg);font-size:var(--font-size-sm);font-weight:600}.team-deployment-card__record-link{margin-top:var(--space-2);justify-self:start}.my-deployments-section-heading{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.my-deployments-section-heading h2{font-size:var(--font-size-lg);margin:0}.my-deployments-section-heading span{color:var(--text-secondary);font-size:var(--font-size-sm)}.my-deployments-timeline{gap:var(--space-3);padding-left:var(--space-5);border-left:2px solid var(--border-color);display:grid}.my-deployment-card{gap:var(--space-5);padding:var(--space-5);grid-template-columns:minmax(10rem,.45fr) minmax(0,1.55fr);display:grid;position:relative}.my-deployment-card:before{top:2rem;left:calc(-1 * var(--space-5) - .45rem);border:2px solid var(--surface-raised);background:var(--color-primary);content:"";border-radius:50%;width:.75rem;height:.75rem;position:absolute}.my-deployment-card__period,.my-deployment-card__body,.my-deployment-card__heading>div{align-content:start;gap:var(--space-1);display:grid}.my-deployment-card__period span,.my-deployment-card__heading span,.my-deployment-card__meta{color:var(--text-secondary)}.my-deployment-card__heading{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.my-deployment-card__heading h3,.my-deployment-card__body p{margin:0}.my-deployment-card__meta{gap:var(--space-2) var(--space-4);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.my-deployment-card__meta span{align-items:center;gap:var(--space-1);display:inline-flex}.my-deployment-card__feedback{align-items:center;gap:var(--space-3);margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-subtle);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.my-deployment-card__feedback--pending{border-color:var(--color-warning-border);background:var(--color-warning-bg)}.my-deployment-card__feedback>div{gap:var(--space-1);display:grid}.my-deployment-card__feedback span{color:var(--text-secondary);font-size:var(--font-size-sm)}.deployment-self-planning__heading,.deployment-self-planning__request-heading,.deployment-self-planning-admin__request,.deployment-self-planning-admin__request-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.deployment-self-planning__heading h2,.deployment-self-planning__heading p,.deployment-self-planning__request p,.deployment-self-planning-admin__request p,.deployment-self-planning-admin__reason p{margin:0}.deployment-self-planning__heading>div,.deployment-self-planning__request-heading>div,.deployment-self-planning-admin__request-heading>div,.deployment-self-planning__decision,.deployment-self-planning-admin__request-main,.deployment-self-planning-admin__reason{gap:var(--space-1);min-width:0;display:grid}.deployment-self-planning__heading p,.deployment-self-planning__request-heading span,.deployment-self-planning-admin__request-heading span,.deployment-self-planning-admin__period,.deployment-self-planning-admin__request small,.deployment-self-planning__decision span,.deployment-self-planning__decision small{color:var(--text-secondary)}.deployment-self-planning__list,.deployment-self-planning-admin__list{gap:var(--space-3);display:grid}.deployment-self-planning__request,.deployment-self-planning-admin__request{padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-subtle)}.deployment-self-planning__request{gap:var(--space-3);display:grid}.deployment-self-planning__request-heading strong{align-items:center;gap:var(--space-2);display:inline-flex}.deployment-self-planning__decision,.deployment-self-planning-admin__reason{padding:var(--space-3);border-left:3px solid var(--color-primary);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--surface-raised)}.deployment-self-planning__cancel{justify-self:start}.deployment-self-planning-admin__filters{gap:var(--space-3);grid-template-columns:minmax(10rem,.7fr) minmax(16rem,1.5fr) auto;align-items:end;display:grid}.deployment-self-planning-admin__filters .input-with-icon{display:block;position:relative}.deployment-self-planning-admin__filters .input-with-icon svg{top:50%;left:var(--space-3);color:var(--text-secondary);pointer-events:none;position:absolute;transform:translateY(-50%)}.deployment-self-planning-admin__filters .input-with-icon input{width:100%;padding-left:2.35rem}.deployment-self-planning-admin__request{align-items:center}.deployment-self-planning-admin__request-main{gap:var(--space-2);flex:1}.deployment-self-planning-admin__period,.deployment-self-planning-admin__request small{font-size:var(--font-size-sm)}@media (max-width:800px){.deployment-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.deployment-area-create,.deployment-area-row,.deployment-requirement-form,.deployment-filters{grid-template-columns:1fr;align-items:stretch}.deployment-objective-options{grid-template-columns:1fr}.deployment-capacity-meter{flex-direction:column}.deployment-phase-row{grid-template-columns:2rem 1fr auto}.deployment-phase-row .form-field{grid-column:2}.deployment-phase-row>.btn-icon{grid-area:1/3}.deployment-batch-row,.deployment-section-heading{flex-direction:column;align-items:stretch}.deployment-batch-row__actions{justify-content:flex-start}.my-deployment-card{gap:var(--space-3);grid-template-columns:1fr}.team-deployment-filters,.team-deployment-card{grid-template-columns:1fr}.team-deployment-card{gap:var(--space-3)}.team-deployment-card__period{padding-right:0;padding-bottom:var(--space-3);border-right:0;border-bottom:1px solid var(--border-color);grid-template-columns:auto auto auto auto;justify-content:start;align-items:baseline}.my-deployment-card__feedback{grid-template-columns:auto minmax(0,1fr)}.my-deployment-card__feedback .btn-primary,.my-deployment-card__feedback .btn-secondary{grid-column:1/-1;justify-content:center}.deployment-self-planning__heading,.deployment-self-planning-admin__request{flex-direction:column;align-items:stretch}.deployment-self-planning__heading .btn-primary,.deployment-self-planning-admin__request .btn-primary{justify-content:center;width:100%}.deployment-self-planning-admin__filters{grid-template-columns:1fr;align-items:stretch}}@media (max-width:520px){.deployment-requirement-row{grid-template-columns:1fr auto}.deployment-objective-field__toolbar,.deployment-requirement-coverage__heading{flex-direction:column;align-items:stretch}.deployment-objective-field__toolbar>div{flex-wrap:wrap;justify-content:flex-start}.deployment-requirement-row>.ui-status{grid-column:1/-1;justify-self:start}.training-deployment-progress-list{grid-template-columns:1fr}.team-deployment-filter-summary,.team-deployment-section-heading,.team-deployment-card__heading{flex-direction:column;align-items:stretch}.team-deployment-card__period{grid-template-columns:1fr}.team-deployment-card__period span[aria-hidden=true]{display:none}.deployment-self-planning__request-heading,.deployment-self-planning-admin__request-heading{flex-direction:column;align-items:stretch}}
