*,*:before,*:after{box-sizing:border-box}*{margin:0}html,body{height:100%}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:0;padding:0;cursor:pointer}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid currentColor;outline-offset:2px}table{border-collapse:collapse;border-spacing:0;width:100%}ul[role=list],ol[role=list]{list-style:none;padding:0}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{color-scheme:light dark}:root{--brand-hue: 220;--brand-sat: 90%;--brand-700: hsl(var(--brand-hue) var(--brand-sat) 32%);--brand-600: hsl(var(--brand-hue) var(--brand-sat) 42%);--brand-500: hsl(var(--brand-hue) var(--brand-sat) 52%);--brand-400: hsl(var(--brand-hue) var(--brand-sat) 62%);--brand-50: hsl(var(--brand-hue) 100% 97%);--bg: #ffffff;--fg: #0f172a;--muted: #475569;--surface: #f8fafc;--surface-2: #eef2f7;--border: #e5e7eb;--success: hsl(150 55% 40%);--warning: hsl(40 95% 52%);--danger: hsl(0 80% 50%);--font-sans: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Inter, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--step--2: clamp(.69rem, .68rem + .07vw, .74rem);--step--1: clamp(.83rem, .8rem + .15vw, .92rem);--step-0: clamp(1rem, .96rem + .24vw, 1.15rem);--step-1: clamp(1.2rem, 1.12rem + .36vw, 1.38rem);--step-2: clamp(1.44rem, 1.3rem + .52vw, 1.66rem);--step-3: clamp(1.73rem, 1.51rem + .71vw, 2rem);--step-4: clamp(2.07rem, 1.74rem + .96vw, 2.4rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--radius: 16px;--radius-lg: 24px;--radius-sm: 10px;--shadow-sm: 0 1px 2px rgba(2, 6, 23, .06);--shadow: 0 8px 24px rgba(2, 6, 23, .12);--shadow-lg: 0 16px 40px rgba(2, 6, 23, .18);--container: 1200px;--container-pad: 24px}:root[data-theme=dark]{--bg: #0b1220;--fg: #e5e7eb;--muted: #9aa3b2;--surface: #0f172a;--surface-2: #111827;--border: #1f2937;--brand-500: hsl(var(--brand-hue) 85% 60%);--shadow-sm: 0 1px 2px rgba(0,0,0,.25);--shadow: 0 8px 24px rgba(0,0,0,.35);--shadow-lg: 0 16px 40px rgba(0,0,0,.45)}@media (prefers-color-scheme: dark){:root:not([data-theme]){--bg: #0b1220;--fg: #e5e7eb;--muted: #9aa3b2;--surface: #0f172a;--surface-2: #111827;--border: #1f2937;--brand-500: hsl(var(--brand-hue) 85% 60%);--shadow-sm: 0 1px 2px rgba(0,0,0,.25);--shadow: 0 8px 24px rgba(0,0,0,.35);--shadow-lg: 0 16px 40px rgba(0,0,0,.45)}}:root[data-palette=pastel]:not([data-theme=dark]){--tint-50: hsl(var(--brand-hue) 90% 97%);--tint-100: hsl(var(--brand-hue) 85% 95%);--tint-200: hsl(var(--brand-hue) 70% 92%);--bg: color-mix(in oklab, #ffffff 88%, var(--tint-50) 12%);--surface: color-mix(in oklab, #f8fafc 70%, var(--tint-50) 30%);--surface-2: color-mix(in oklab, #eef2f7 55%, var(--tint-100) 45%);--border: color-mix(in oklab, #e5e7eb 60%, var(--tint-200) 40%);--brand-sat: 70%;--brand-500: hsl(var(--brand-hue) var(--brand-sat) 55%);--brand-600: hsl(var(--brand-hue) var(--brand-sat) 50%)}:root[data-palette=pastel][data-theme=dark]{--bg: color-mix(in oklab, #0b1220 78%, hsl(230 25% 24%) 22%);--surface: color-mix(in oklab, #0f172a 72%, hsl(230 28% 26%) 28%);--surface-2: color-mix(in oklab, #111827 68%, hsl(230 30% 28%) 32%);--border: color-mix(in oklab, #1f2937 60%, hsl(230 24% 40%) 40%);--muted: color-mix(in oklab, #9aa3b2 70%, hsl(230 18% 68%) 30%);--brand-sat: 72%;--brand-500: hsl(var(--brand-hue) var(--brand-sat) 62%);--brand-600: hsl(var(--brand-hue) var(--brand-sat) 58%)}:root[data-palette=neon]:not([data-theme=dark]){--bg: hsl(220 25% 97%);--surface: hsl(220 20% 98.5%);--surface-2: hsl(220 18% 96%);--border: hsl(220 12% 86%);--muted: hsl(220 10% 40%);--brand-sat: 65%;--brand-500: hsl(var(--brand-hue) var(--brand-sat) 58%);--brand-600: hsl(var(--brand-hue) var(--brand-sat) 54%)}:root[data-palette=neon][data-theme=dark]{--bg: #070a12;--surface: #0b1020;--surface-2: #0e1526;--border: #162036;--neon-sat: 62%;--brand-sat: var(--neon-sat);--brand-500: hsl(var(--brand-hue) var(--neon-sat) 62%);--brand-600: hsl(var(--brand-hue) calc(var(--neon-sat) + 6%) 58%)}:root[data-accent=violet]{--brand-hue: 265}:root[data-accent=orange]{--brand-hue: 28}:root[data-accent=teal]{--brand-hue: 160}:root[data-accent=blue]{--brand-hue: 220}:root[data-accent=green]{--brand-hue: 150}:root[data-accent=pink]{--brand-hue: 330}:root[data-accent=amber]{--brand-hue: 36}:root[data-accent=red]{--brand-hue: 0}:root:not([data-theme=dark]){--success-100: hsl(152 60% 92%);--success-600: hsl(152 55% 38%);--success-700: hsl(152 58% 30%);--warning-100: hsl(38 100% 95%);--warning-600: hsl(38 92% 45%);--warning-700: hsl(38 92% 36%);--danger-100: hsl(0 100% 95%);--danger-600: hsl(0 76% 50%);--danger-700: hsl(0 72% 42%);--info-100: hsl(200 100% 95%);--info-600: hsl(200 80% 45%);--info-700: hsl(200 80% 38%)}:root[data-theme=dark]{--fg: #e9edf2;--muted: #a5afbd;--success-100: hsl(152 30% 20%);--success-600: hsl(152 60% 50%);--success-700: hsl(152 70% 62%);--warning-100: hsl(38 40% 22%);--warning-600: hsl(38 90% 54%);--warning-700: hsl(38 95% 66%);--danger-100: hsl(0 35% 22%);--danger-600: hsl(0 75% 58%);--danger-700: hsl(0 80% 70%);--info-100: hsl(200 35% 22%);--info-600: hsl(200 80% 56%);--info-700: hsl(200 85% 66%);--focus-ring-strength: 40%}:root[data-theme=dark][data-accent=violet]{--brand-hue: 265;--brand-500: hsl(var(--brand-hue) 76% 62%);--brand-600: hsl(var(--brand-hue) 82% 66%)}:root[data-theme=dark][data-accent=blue]{--brand-hue: 220;--brand-500: hsl(var(--brand-hue) 78% 60%);--brand-600: hsl(var(--brand-hue) 84% 64%)}:root[data-theme=dark][data-accent=teal]{--brand-hue: 160;--brand-500: hsl(var(--brand-hue) 74% 58%);--brand-600: hsl(var(--brand-hue) 80% 62%)}:root[data-theme=dark][data-accent=green]{--brand-hue: 150;--brand-500: hsl(var(--brand-hue) 72% 58%);--brand-600: hsl(var(--brand-hue) 78% 62%)}:root[data-theme=dark][data-accent=orange]{--brand-hue: 28;--brand-500: hsl(var(--brand-hue) 86% 60%);--brand-600: hsl(var(--brand-hue) 92% 64%)}:root[data-theme=dark][data-accent=amber]{--brand-hue: 36;--brand-500: hsl(var(--brand-hue) 88% 62%);--brand-600: hsl(var(--brand-hue) 94% 66%)}:root[data-theme=dark][data-accent=pink]{--brand-hue: 330;--brand-500: hsl(var(--brand-hue) 78% 64%);--brand-600: hsl(var(--brand-hue) 84% 68%)}:root[data-theme=dark][data-accent=red]{--brand-hue: 0;--brand-500: hsl(var(--brand-hue) 78% 62%);--brand-600: hsl(var(--brand-hue) 84% 66%)}:root[data-theme=dark] *:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab,var(--brand-500) var(--focus-ring-strength, 40%),transparent)}:root{--field-bg: var(--surface);--field-fg: var(--fg);--field-border: var(--border);--field-placeholder: color-mix(in oklab, var(--fg) 45%, transparent);--field-focus-ring: color-mix(in oklab, var(--brand-500) 30%, transparent)}:root[data-theme=dark]{--field-bg: color-mix(in oklab, var(--surface) 85%, black 15%);--field-fg: var(--fg);--field-border: color-mix(in oklab, var(--border) 80%, black 20%);--field-placeholder: color-mix(in oklab, var(--fg) 55%, transparent);--field-focus-ring: color-mix(in oklab, var(--brand-500) 45%, transparent)}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:var(--step-0);line-height:1.6;transition:background-color .25s ease,color .25s ease}:root[data-theme-loading] *{transition:none!important}.container{width:min(100% - 2*var(--container-pad),var(--container));margin-inline:auto}h1{font-size:var(--step-4);font-weight:750}h2{font-size:var(--step-3);font-weight:700}h3{font-size:var(--step-2);font-weight:650}p,li{font-size:var(--step-0);color:var(--fg)}small{font-size:var(--step--1);color:var(--muted)}a.link{color:var(--brand-500);text-decoration:underline;text-underline-offset:2px}a.link:hover{color:var(--brand-600)}input[type=text],input[type=password],input[type=email],select,textarea{width:100%;padding:.75rem .9rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;transition:box-shadow .2s ease,border-color .2s ease,background-color .25s ease,color .25s ease}input:focus,select:focus,textarea:focus{border-color:var(--brand-500);box-shadow:0 0 0 3px color-mix(in oklab,var(--brand-500) 30%,transparent)}.full-center{min-height:100dvh;display:grid;place-items:center;padding:var(--space-8)}.bg-cover{background-size:cover;background-position:center;background-repeat:no-repeat}.auth-hero{background:var(--bg);background-image:none!important}html,body{background-image:none!important}@keyframes shimmer{0%{background-position:0% 0}to{background-position:200% 0}}.input--danger,.select.input--danger{border-color:var(--danger-500)!important}.dialog-backdrop{position:fixed;inset:0;background:color-mix(in srgb,black 40%,transparent);display:flex;align-items:center;justify-content:center;z-index:50;padding:var(--space-4, 1rem)}.dialog-card{max-width:480px;width:100%}.login-header{display:flex;flex-direction:column;align-items:center;gap:var(--space-3, .75rem);text-align:center}.login-logo{max-width:220px;width:100%;height:auto}.sidebar-header{display:flex;align-items:center;gap:.5rem}.sidebar-logo-btn{flex:1;display:flex;align-items:center;justify-content:center;padding:0;border:none;background:none;cursor:pointer}.sidebar-logo-img{width:100%;max-width:160px;height:auto;object-fit:contain}.grid{display:grid;gap:var(--space-6)}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex{display:flex}.center{justify-content:center;align-items:center}.stack>*+*{margin-top:var(--space-4)}@media (min-width: 640px){.sm\:grid-2{grid-template-columns:repeat(2,1fr)}}@media (min-width: 768px){.md\:grid-3{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.lg\:grid-4{grid-template-columns:repeat(4,1fr)}}.card--glass{background:color-mix(in oklab,var(--surface) 70%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.card-title{font-size:var(--step-2);font-weight:700}.card-subtitle{color:var(--muted);font-size:var(--step--1)}.input-icon>svg,.input-icon>.icon{position:absolute;inset-inline-start:.75rem;inset-block-start:50%;transform:translateY(-50%);pointer-events:none}.input-icon>input{padding-inline-start:2.25rem}.btn-block{width:100%}.bg-brand-50{background:var(--brand-50)}.bg-surface-2{background:var(--surface-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mb-4{margin-bottom:var(--space-4)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.w-100{width:100%}.max-w-sm{max-width:420px}.max-w-md{max-width:680px}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}:root{--sidebar-w: 264px}.app-shell,.app-content{transition:grid-template-columns .18s ease,grid-column .18s ease}.app-shell{min-height:100dvh;display:grid;grid-template-columns:var(--sidebar-w) 1fr;background:var(--bg)}.app-shell.sidebar-closed{grid-template-columns:1fr}.app-shell.sidebar-closed .sidebar.desktop{display:none!important}.app-shell.sidebar-closed .app-content{grid-column:1 / -1}.app-content{min-width:0;display:flex;flex-direction:column;grid-column:2 / -1}.app-main{padding-block:1rem 2rem}.sidebar.desktop{background:var(--surface);border-inline-end:1px solid var(--border);box-shadow:var(--shadow-sm);display:grid;grid-template-rows:auto 1fr auto;position:sticky;inset-block-start:0;height:100dvh}.sidebar-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:.5rem;padding:.75rem;background:var(--surface);border-bottom:1px solid var(--border)}.logo-mini{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--brand-50);color:var(--brand-600);font-weight:800}.sidebar-body{min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;padding-block:.25rem}.sidebar .nav{padding:.75rem;display:grid;gap:.25rem}.sidebar .nav-section{margin:.5rem 0 .25rem;padding:0 .25rem;color:var(--muted);font-size:var(--step--1)}.nav-link{display:flex;align-items:center;gap:.75rem;padding:.6rem .7rem;border-radius:12px;border:1px solid transparent;color:var(--fg);background:transparent;text-decoration:none}.nav-link:hover{background:var(--surface-2)}.nav-link[aria-current=page],.nav-link.active{background:color-mix(in oklab,var(--brand-500) 8%,transparent);border-color:color-mix(in oklab,var(--brand-500) 18%,var(--border));color:var(--brand-600)}.sidebar-footer{padding:.75rem;border-top:1px solid var(--border);overflow:visible}.sidebar-footer__row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.appearance-btn{font-size:var(--step--1)}.menu-fab{position:fixed;inset-block-start:1rem;inset-inline-start:1rem;z-index:35;width:44px;height:44px;border-radius:12px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);display:none;place-items:center}.menu-fab:hover{background:var(--surface-2)}@media (max-width: 1024px){.app-shell{grid-template-columns:1fr}.app-content{grid-column:1 / -1}.sidebar.desktop{display:none}.sidebar.mobile{display:block;position:fixed;inset-block-start:0;inset-inline-start:0;height:100dvh;width:min(82vw,320px);transform:translate(-100%);transition:transform .25s ease;z-index:40;background:var(--surface);border-inline-end:1px solid var(--border);box-shadow:var(--shadow);display:grid;grid-template-rows:auto 1fr auto}.sidebar.mobile.open{transform:translate(0)}.scrim{position:fixed;inset:0;background:#00000059;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:30}.menu-fab{display:grid}.sidebar.mobile.open~.menu-fab{display:none}.sidebar .nav-section{margin:.25rem 0 .2rem;font-size:var(--step--2)}.nav-link{padding:.5rem .6rem}.appearance-btn{padding:.45rem .55rem}}@media (min-width: 1025px){.sidebar.mobile,.scrim{display:none}.app-shell.sidebar-closed .menu-fab{display:grid}}.list-cards{display:grid;gap:var(--space-3);padding:0 var(--space-4) var(--space-4)}:root[data-theme=dark] .nav-link[aria-current=page],:root[data-theme=dark] .nav-link.active{background:color-mix(in oklab,var(--brand-500) 14%,transparent);border-color:color-mix(in oklab,var(--brand-500) 28%,var(--border));color:var(--fg)}.users-table .table-actions .button,.users-table .table-actions .btn{width:36px;height:36px;padding:0;display:inline-grid;place-items:center;border-radius:10px}.notice-actions{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap}.notice-actions .button{width:auto;height:auto;padding:.5rem .75rem;border-radius:10px;display:inline-flex;align-items:center;gap:.35rem}.notice-actions .button svg{flex:0 0 auto}.popover{-webkit-backdrop-filter:var(--backdrop, none);backdrop-filter:var(--backdrop, none)}.link{background:none;border:0;cursor:pointer}.msx-combo{position:relative}.msx-input{min-height:2.75rem;display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem .375rem .75rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);cursor:pointer}.msx-input.is-disabled{cursor:not-allowed;opacity:.6}.msx-chips{display:flex;flex-wrap:wrap;gap:.375rem;align-items:center;flex:1 1 auto;min-width:0}.msx-placeholder{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.msx-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .5rem;border-radius:999px;background:var(--primary-50);color:var(--primary-800);border:1px solid var(--primary-200);font-size:.875rem;line-height:1.1}.msx-chip__label{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msx-chip__x{border:0;background:transparent;cursor:pointer;color:inherit;line-height:1}.msx-actions{display:inline-flex;gap:.5rem;align-items:center;margin-inline-start:auto;padding-inline-start:.5rem}.msx-link{background:transparent;border:0;color:var(--muted);cursor:pointer;padding:0}.msx-caret{color:var(--muted)}.msx-popover{position:absolute;z-index:40;inset-inline-start:0;margin-top:.25rem;min-width:100%;background:var(--surface);border:1px solid var(--border);border-radius:.5rem;box-shadow:var(--shadow-2);max-height:300px;overflow:auto}.msx-popover__search{padding:.5rem .75rem;border-bottom:1px solid var(--border)}.msx-options{list-style:none;margin:0;padding:.25rem 0}.msx-option{display:grid;grid-template-columns:1.25rem 1fr;column-gap:.75rem;align-items:start;padding:.5rem .75rem;cursor:pointer}.msx-option:hover{background:var(--primary-25, var(--primary-50, #f5f7ff))}.msx-option.is-checked{background:var(--primary-50)}.msx-option input[type=checkbox]{margin:0;transform:scale(1.15);accent-color:var(--primary-600)}.msx-option__label{line-height:1.25;overflow-wrap:anywhere;white-space:normal}@media (prefers-color-scheme: dark){.msx-popover{background:var(--surface);border-color:var(--border)}.msx-option:hover{background:color-mix(in oklab,var(--primary-700),transparent 80%)}.msx-option.is-checked{background:color-mix(in oklab,var(--primary-700),transparent 70%)}.msx-option__label{color:var(--text)}.msx-option input[type=checkbox]{accent-color:var(--primary-400)}}[data-theme=dark] .msx-option:hover{background:color-mix(in oklab,var(--primary-700),transparent 80%)}[data-theme=dark] .msx-option.is-checked{background:color-mix(in oklab,var(--primary-700),transparent 70%)}[data-theme=dark] .msx-option__label{color:var(--text)}[data-theme=dark] .msx-option input[type=checkbox]{accent-color:var(--primary-400)}.button--secondary{background:var(--info-100);color:var(--info-700);border:1px solid color-mix(in oklab,var(--info-600) 25%,var(--border));font-weight:600;border-radius:var(--radius-sm);padding:.65rem 1.1rem;transition:background-color .2s ease,box-shadow .2s ease}.button--secondary:hover{background:color-mix(in oklab,var(--info-100) 70%,var(--info-600) 30%);box-shadow:var(--shadow-sm)}.button--secondary:active{background:color-mix(in oklab,var(--info-100) 45%,var(--info-700) 55%);transform:translateY(1px)}[data-theme=dark] .button--secondary{background:color-mix(in oklab,var(--info-100) 15%,var(--surface-2) 85%);color:var(--info-600);border-color:color-mix(in oklab,var(--info-600) 25%,var(--border))}[data-theme=dark] .button--secondary:hover{background:color-mix(in oklab,var(--info-100) 25%,var(--surface-2) 75%)}.button--primaryAlt{display:inline-flex;align-items:center;justify-content:center;font-family:inherit;font-weight:600;line-height:1.2;border-radius:var(--radius-sm);padding:.65rem 1.1rem;font-size:var(--step--1);cursor:pointer;border:1px solid transparent;transition:background-color .15s ease,box-shadow .15s ease,border-color .15s ease;background-color:color-mix(in oklab,var(--brand-100) 70%,var(--brand-200) 30%);color:var(--brand-700);border-color:color-mix(in oklab,var(--brand-400) 40%,var(--border) 60%);box-shadow:var(--shadow-xs)}.button--primaryAlt:hover{background-color:color-mix(in oklab,var(--brand-200) 60%,var(--brand-300) 40%);box-shadow:var(--shadow-sm)}.button--primaryAlt:active{background-color:color-mix(in oklab,var(--brand-300) 50%,var(--brand-400) 50%);transform:translateY(1px);box-shadow:var(--shadow-xs)}.button--primaryAlt:disabled,.button--primaryAlt[disabled]{opacity:.6;cursor:not-allowed;box-shadow:none}[data-theme=dark] .button--primaryAlt{background-color:color-mix(in oklab,var(--brand-400) 35%,var(--surface-2) 65%);color:var(--brand-100);border-color:color-mix(in oklab,var(--brand-500) 40%,var(--border) 60%);box-shadow:var(--shadow-xs)}[data-theme=dark] .button--primaryAlt:hover{background-color:color-mix(in oklab,var(--brand-400) 50%,var(--surface-2) 50%);box-shadow:var(--shadow-sm)}[data-theme=dark] .button--primaryAlt:active{background-color:color-mix(in oklab,var(--brand-500) 55%,var(--surface-2) 45%);box-shadow:var(--shadow-xs);transform:translateY(1px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:var(--radius);border:1px solid transparent;font-weight:600;text-align:center;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}.btn:disabled{opacity:.6;cursor:not-allowed}.btn--primary{background:var(--brand-600);color:#fff;border-color:var(--brand-600)}.btn--primary:hover{background:color-mix(in oklab,var(--brand-600) 88%,white 12%)}.btn--ghost{background:color-mix(in oklab,var(--brand-50) 40%,var(--surface));border-color:color-mix(in oklab,var(--brand-200, var(--border)) 60%,var(--border));color:var(--fg)}.btn--ghost:hover{background:var(--surface-2)}:root[data-theme=dark] .btn--ghost:hover{background:color-mix(in oklab,var(--brand-500) 16%,var(--surface));border-color:color-mix(in oklab,var(--brand-500) 34%,var(--border))}.btn--outline{background:transparent;border-color:var(--border);color:var(--fg)}.btn--outline:hover{border-color:var(--brand-500);box-shadow:0 0 0 3px color-mix(in oklab,var(--brand-500) 30%,transparent)}.btn--danger{background:var(--danger-600);color:#fff;border-color:color-mix(in oklab,var(--danger-600) 35%,var(--border))}.btn--warning{background:var(--warning-600);color:#1f2937;border-color:color-mix(in oklab,var(--warning-600) 35%,var(--border))}.btn--success{background:var(--success-600);color:#052e2b;border-color:color-mix(in oklab,var(--success-600) 35%,var(--border))}.btn--sm{padding:.5rem .75rem;border-radius:12px;font-size:var(--step--1)}.btn--lg{padding:.9rem 1.15rem;border-radius:var(--radius-lg);font-size:var(--step-1)}.btn--icon{width:40px;height:40px;padding:0;display:inline-grid;place-items:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:var(--radius);border:1px solid transparent;font-weight:600;text-align:center;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s}.button--primary{background:var(--brand-600);color:#fff;border-color:var(--brand-600)}.button--primary:hover{background:color-mix(in oklab,var(--brand-600) 88%,white 12%)}.button--ghost{background:color-mix(in oklab,var(--brand-50) 40%,var(--surface));border-color:color-mix(in oklab,var(--brand-200, var(--border)) 60%,var(--border));color:var(--fg)}:root[data-theme=dark] .button--ghost:hover{background:color-mix(in oklab,var(--brand-500) 16%,var(--surface));border-color:color-mix(in oklab,var(--brand-500) 34%,var(--border))}label{display:inline-block;margin-bottom:.375rem;font-weight:600}.field{display:grid;gap:.5rem}.input,.select,.textarea,input[type=text],input[type=password],input[type=email],input[type=search],input[type=tel],input[type=number],select,textarea{width:100%;max-width:100%;box-sizing:border-box;background:var(--field-bg);color:var(--field-fg);border:1px solid var(--field-border);border-radius:var(--radius-sm);padding:.75rem .9rem;line-height:1.35;outline:none;caret-color:var(--brand-600);transition:background-color .25s ease,color .25s ease,border-color .2s ease,box-shadow .2s ease}.input::placeholder,.textarea::placeholder,input::placeholder,textarea::placeholder{color:var(--field-placeholder)}.input:focus,.select:focus,.textarea:focus,input:focus,select:focus,textarea:focus{border-color:var(--brand-500);box-shadow:0 0 0 3px var(--field-focus-ring)}.input:disabled,.select:disabled,.textarea:disabled,input:disabled,select:disabled,textarea:disabled{opacity:.6;cursor:not-allowed}.input[readonly],.textarea[readonly],input[readonly],textarea[readonly]{background:color-mix(in oklab,var(--field-bg) 92%,var(--border) 8%)}.input.is-invalid,.textarea.is-invalid,select.is-invalid{border-color:var(--danger-600);box-shadow:0 0 0 3px color-mix(in oklab,var(--danger-600) 30%,transparent)}.input-icon{position:relative}.input-icon>svg,.input-icon>.icon{position:absolute;inset-inline-start:.75rem;inset-block-start:50%;transform:translateY(-50%);pointer-events:none;opacity:.9}.input-icon>input,.input-icon>.input{padding-inline-start:2.25rem}select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%),linear-gradient(to right,transparent,transparent);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px),100% 0;background-size:6px 6px,6px 6px,2.5em 100%;background-repeat:no-repeat;padding-right:2.25rem}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,textarea:-webkit-autofill:hover,textarea:-webkit-autofill:focus,select:-webkit-autofill,select:-webkit-autofill:hover,select:-webkit-autofill:focus{-webkit-box-shadow:0 0 0px 1000px var(--field-bg) inset!important;box-shadow:0 0 0 1000px var(--field-bg) inset!important;-webkit-text-fill-color:var(--field-fg)!important;border:1px solid var(--field-border)!important;border-radius:var(--radius-sm)!important}input,select,textarea{color-scheme:light dark}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:clamp(1rem,2vw,2rem)}.card--flat{box-shadow:var(--shadow-sm);border-radius:var(--radius)}.card--interactive{transition:transform .08s ease,box-shadow .2s ease}.card--interactive:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}.card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.card__title{font-size:var(--step-2);font-weight:700}.card__subtitle{color:var(--muted);font-size:var(--step--1)}.card__footer{margin-top:var(--space-4);display:flex;gap:.5rem;align-items:center;justify-content:flex-end}.card--glass{background:color-mix(in oklab,var(--surface) 65%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}:root[data-theme=dark] .card--glass{background:color-mix(in oklab,var(--surface) 35%,transparent);border-color:color-mix(in oklab,var(--border) 80%,transparent)}.card[role=menu]{max-width:96vw;max-height:70vh;overflow:auto;overscroll-behavior:contain}:root[data-theme=dark] .card:hover{background:color-mix(in oklab,var(--surface) 85%,var(--brand-500) 15%);transition:background-color .18s ease}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:999px;font-size:var(--step--1);font-weight:600;border:1px solid transparent}.badge--success{background:var(--success-100);color:var(--success-700);border-color:color-mix(in oklab,var(--success-600) 28%,var(--border))}.badge--warning{background:var(--warning-100);color:var(--warning-700);border-color:color-mix(in oklab,var(--warning-600) 28%,var(--border))}.badge--danger{background:var(--danger-100);color:var(--danger-700);border-color:color-mix(in oklab,var(--danger-600) 28%,var(--border))}.badge--info{background:var(--info-100);color:var(--info-700);border-color:color-mix(in oklab,var(--info-600) 28%,var(--border))}.chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--border);border-radius:999px;padding:.2rem .6rem;font-size:12px;background:var(--surface-2)}.chip--presencial{background:color-mix(in oklab,var(--surface-2) 60%,hsl(210 70% 96%) 40%)}.chip--enlinea{background:color-mix(in oklab,var(--surface-2) 60%,hsl(260 70% 96%) 40%)}.chip--mixta{background:color-mix(in oklab,var(--surface-2) 60%,hsl(160 70% 96%) 40%)}.chip--basico{background:color-mix(in oklab,var(--surface-2) 60%,hsl(200 30% 94%) 40%)}.chip--intermedio{background:color-mix(in oklab,var(--surface-2) 60%,hsl(40 90% 94%) 40%)}.chip--avanzado{background:color-mix(in oklab,var(--surface-2) 60%,hsl(0 70% 94%) 40%)}.toolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:space-between;margin-block:.25rem var(--space-3)}.toolbar .btn{box-shadow:var(--shadow-sm)}.breadcrumbs{display:flex;flex-wrap:wrap;gap:.5rem;color:var(--muted);font-size:var(--step--1)}.filters-grid{display:grid;grid-auto-flow:row;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.field .input,.field .select,.field input,.field select{width:100%;max-width:100%;box-sizing:border-box}.home-page{padding-block:var(--space-6) var(--space-8);display:grid;gap:var(--space-6)}.stack-compact>*+*{margin-top:.35rem}.card-header .toolbar{display:inline-flex;gap:.5rem;align-items:center}.home-modules{margin-top:var(--space-2)}.modules-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.notice-board{display:grid;gap:var(--space-3)}.notice{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:var(--space-4);box-shadow:var(--shadow-sm)}.notice__title{font-weight:650}.notice__meta{color:var(--muted);font-size:var(--step--1)}.sec-page{max-width:var(--container, 1100px);margin:0 auto;padding:var(--container-pad, 24px)}.sec-header{margin-bottom:clamp(12px,2vw,20px)}.sec-title{margin:0;font-size:var(--step-3, 1.5rem);font-weight:700;color:var(--fg, #101114)}.sec-sub{margin:0;color:var(--muted, #6b7280);font-size:var(--step--1, .9rem)}.sec-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(16px,2vw,24px)}@media (max-width: 960px){.sec-grid{grid-template-columns:1fr}}.sec-card{border:1px solid var(--border, #e5e7eb);background:var(--surface, #fff);border-radius:var(--radius, 14px);box-shadow:var(--shadow-sm, 0 1px 2px rgba(0,0,0,.05));padding:clamp(16px,2vw,20px)}.sec-form{display:grid;gap:1rem}.stack{display:grid;gap:.75rem}.field-group{display:grid;gap:.45rem}.meter{display:grid;gap:.35rem}.meter .bar{--height: 7px;position:relative;height:var(--height);border-radius:999px;background:var(--surface-2, #f8f9fb);overflow:hidden}.meter .bar:after{content:"";position:absolute;inset:0;width:var(--p, 0%);transition:width .25s ease;border-radius:inherit}.meter .bar.weak:after{background:color-mix(in srgb,#ef4444,white 15%)}.meter .bar.medium:after{background:color-mix(in srgb,#f59e0b,white 10%)}.meter .bar.strong:after{background:color-mix(in srgb,#10b981,white 10%)}.meter-row{display:flex;align-items:center;gap:.5rem;color:var(--muted, #6b7280);font-size:.9rem}.meter-label{opacity:.9}.meter-pct{margin-left:auto;font-variant-numeric:tabular-nums}.chip{border:1px solid var(--border, #e5e7eb);background:var(--surface-2, #fafafa);color:var(--fg, #111827);font-size:12px;padding:.15rem .5rem;border-radius:999px}.chip.weak{border-color:color-mix(in srgb,#ef4444,transparent 40%);background:color-mix(in srgb,#ef4444,white 92%)}.chip.medium{border-color:color-mix(in srgb,#f59e0b,transparent 45%);background:color-mix(in srgb,#f59e0b,white 94%)}.chip.strong{border-color:color-mix(in srgb,#10b981,transparent 45%);background:color-mix(in srgb,#10b981,white 94%)}.req-list{list-style:none;padding:0;margin:.25rem 0 0;display:grid;gap:.4rem .75rem;grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width: 640px){.req-list{grid-template-columns:1fr}}.req{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .55rem;border-radius:10px;border:1px dashed var(--border, #e6e7ea);background:var(--surface-2, #fafafa);color:var(--muted, #6b7280);font-size:13px;transition:border-color .2s ease,background .2s ease,color .2s ease,transform .2s ease}.req .dot{width:8px;height:8px;border-radius:50%;background:var(--border, #e6e7ea);transition:background .2s ease,transform .2s ease}.req.ok{border-style:solid;border-color:color-mix(in srgb,var(--brand-500, #3b82f6),transparent 55%);color:var(--fg, #111827);background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2, #fafafa),transparent 0%),transparent);transform:translateY(-1px)}.req.ok .dot{background:var(--brand-500, #3b82f6);transform:scale(1.1)}.form-msg{display:inline-flex;align-items:center;gap:.55rem;padding:.6rem .75rem;border-radius:12px;border:1px solid;font-size:.95rem}.form-msg.success{border-color:color-mix(in srgb,#10b981,transparent 60%);background:color-mix(in srgb,#10b981,white 92%);color:#065f46}.form-msg.error{border-color:color-mix(in srgb,#ef4444,transparent 60%);background:color-mix(in srgb,#ef4444,white 93%);color:#7f1d1d}.actions{display:flex;justify-content:end}.button.primary{appearance:none;border:1px solid color-mix(in srgb,var(--brand-500, #3b82f6),transparent 45%);background:linear-gradient(180deg,var(--brand-500, #3b82f6),color-mix(in srgb,var(--brand-500, #3b82f6),black 10%));color:#fff;padding:.6rem 1rem;border-radius:12px;font-weight:600;transition:transform .06s ease,filter .18s ease,box-shadow .18s ease;box-shadow:0 8px 18px -10px color-mix(in srgb,var(--brand-500, #3b82f6),#000 30%)}.button.primary:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-1px)}.button.primary:active:not(:disabled){transform:translateY(0)}.button.primary.hit{box-shadow:0 0 0 4px color-mix(in srgb,var(--brand-500, #3b82f6),transparent 75%),0 8px 18px -10px color-mix(in srgb,var(--brand-500, #3b82f6),#000 30%)}.button.primary:disabled{opacity:.6;cursor:not-allowed}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid color-mix(in srgb,#fff,transparent 70%);border-top-color:#fff;display:inline-block;margin-right:.55rem;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tips-title{display:block;margin-bottom:.4rem;font-weight:700}.tips-list{padding-left:1.1rem;margin:0;display:grid;gap:.35rem;color:var(--muted, #6b7280);font-size:.95rem}.chip{border:1px solid var(--border, #e5e7eb);background:var(--surface-2, #fafafa);color:var(--fg, #111827);font-size:12px;padding:.15rem .5rem;border-radius:999px;font-weight:600}.chip.weak{border-color:color-mix(in srgb,#ef4444,transparent 40%);background:color-mix(in srgb,#ef4444,white 94%)}.chip.medium{border-color:color-mix(in srgb,#f59e0b,transparent 45%);background:color-mix(in srgb,#f59e0b,white 95%)}.chip.strong{border-color:color-mix(in srgb,#10b981,transparent 45%);background:color-mix(in srgb,#10b981,white 95%)}@media (prefers-color-scheme: dark){.chip{border-color:color-mix(in srgb,var(--border, #1f2937),var(--fg, #e5e7eb) 15%);color:#fff}.chip.weak{background:color-mix(in srgb,#ef4444,transparent 70%)}.chip.medium{background:color-mix(in srgb,#f59e0b,transparent 70%)}.chip.strong{background:color-mix(in srgb,#10b981,transparent 70%)}}:root[data-theme=dark] .chip{border-color:color-mix(in srgb,var(--border, #1f2937),var(--fg, #e5e7eb) 15%);color:#fff}:root[data-theme=dark] .chip.weak{background:color-mix(in srgb,#ef4444,transparent 70%)}:root[data-theme=dark] .chip.medium{background:color-mix(in srgb,#f59e0b,transparent 70%)}:root[data-theme=dark] .chip.strong{background:color-mix(in srgb,#10b981,transparent 70%)}.users-table{width:100%;min-width:1120px;table-layout:fixed;border-collapse:separate;border-spacing:0;background:var(--surface)}.users-table thead th{position:sticky;top:0;z-index:1;background:var(--surface);color:var(--muted);font-weight:600;text-align:left;padding:.75rem 1rem;border-bottom:1px solid var(--border);white-space:nowrap}.users-table tbody tr.users-row{border-top:1px solid var(--border);cursor:pointer;height:56px}.users-table tbody tr.users-row:hover{background:color-mix(in oklab,var(--brand-50) 35%,var(--surface))}.users-table tbody tr.users-row:focus-visible{outline:none;box-shadow:inset 0 0 0 3px color-mix(in oklab,var(--brand-500) 30%,transparent)}.users-table tbody td{padding:.9rem 1rem;border-bottom:1px solid var(--border);vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cell-title{font-weight:700;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-sub{color:var(--muted);font-size:var(--step--1);line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nowrap{white-space:nowrap;overflow:visible;text-overflow:clip}.table-actions{display:inline-flex;align-items:center;gap:.4rem}.table-actions .button,.table-actions .btn{width:36px;height:36px;padding:0;display:inline-grid;place-items:center;border-radius:10px}.th-actions,.col-actions{text-align:right}.chip-status{display:inline-block;padding:.2rem .6rem;border-radius:999px;border:1px solid var(--border)}.col-id{width:72px}.col-name{width:240px}.col-email{width:260px}.col-dept,.col-area{width:240px}.col-role{width:140px}.col-status{width:120px}.col-actions{width:120px;text-align:right}.users-table tbody .table-actions .btn,.users-table tbody .table-actions .button{width:px;height:36px;padding:0;display:inline-grid;place-items:center;border-radius:10px}.table-actions{display:inline-flex;align-items:center;gap:.5rem}.card .card-header .table-actions .button,.card .card-header .table-actions .btn,.card .card-header .toolbar .button,.card .card-header .toolbar .btn{width:auto;height:auto;min-height:40px;padding:.55rem .9rem;border-radius:12px;display:inline-flex;align-items:center;gap:.5rem;line-height:1.2;white-space:nowrap;font-size:var(--step--1)}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem .85rem;min-height:38px;border-radius:12px;line-height:1.2}.card .p-4 .row-split{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.card .p-4 .table-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.card .p-4 .table-actions .button,.card .p-4 .table-actions .btn{width:auto;height:auto;min-height:36px;padding:.5rem .85rem;border-radius:12px;line-height:1.2;white-space:nowrap}.cell-error{background:color-mix(in oklab,var(--danger-50) 45%,transparent);outline:1px solid var(--danger-200)}.users-table th .th-with-icon{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.users-table th{vertical-align:middle}.users-table th .th-with-icon svg{flex:0 0 auto;display:inline-block;vertical-align:middle}.switch-lg{--h: 34px;--w: 66px;--pad: 3px;display:inline-flex;align-items:center;gap:.6rem;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:.25rem .5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.switch-lg .knob{position:relative;width:var(--w);height:var(--h);background:var(--surface);border:1px solid var(--border);border-radius:999px;display:inline-block;transition:background .15s ease}.switch-lg .knob:after{content:"";position:absolute;top:var(--pad);left:var(--pad);width:calc(var(--h) - 2*var(--pad));height:calc(var(--h) - 2*var(--pad));border-radius:999px;background:var(--muted-contrast, #666);transition:transform .2s ease,background .15s ease}.switch-lg.on .knob{background:var(--success-100);border-color:var(--success-300)}.switch-lg.on .knob:after{transform:translate(calc(var(--w) - var(--h)));background:var(--success-600)}.switch-lg.off .knob{background:var(--danger-100);border-color:var(--danger-300)}.switch-lg.off .knob:after{background:var(--danger-600)}.switch-lg .label{font-weight:600;min-width:70px}.users-table--beneficiaries .col-id{width:160px}.users-table--beneficiaries .col-name{width:minmax(260px,1fr)}.users-table--beneficiaries .col-email{width:minmax(240px,.9fr)}.users-table--beneficiaries .col-curp{width:220px}.users-table--beneficiaries .col-dept{width:minmax(280px,1.1fr)}.users-table--beneficiaries .col-status{width:120px}.users-table--beneficiaries .col-actions{width:112px}.table-wrap.table-wrap--x{width:100%;max-width:100%;display:block;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.table-wrap.table-wrap--x>table.users-table{width:max-content!important;min-width:100%;table-layout:auto!important}.import-errors-table thead th{background:var(--danger-50);color:var(--danger-800)}.import-errors-table tbody tr.row-has-error{background:var(--danger-50);border-left:3px solid var(--danger-500)}.import-errors-table tbody tr.row-has-error:hover{background:var(--danger-100)}.udc-header{padding:var(--space-4);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.udc-title{margin:0;font-size:var(--step-2);font-weight:700}.udc-meta{display:flex;flex-direction:column;gap:.25rem}.udc-grid{display:grid;gap:var(--space-4);padding:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.udc-section{padding:var(--space-4);border-top:1px solid var(--border)}.udc-breadcrumb{font-size:var(--step--1)}.udc-empty{color:var(--muted);font-size:var(--step--1)}.udc-root{font-weight:700;margin-bottom:.25rem}.udc-tree{margin:0;padding-inline-start:1.1rem;line-height:1.35}.udc-tree>li{margin:.15rem 0}.udc-branch{margin-top:.25rem}.udc-actions{display:inline-flex;align-items:center;gap:.4rem}.udc-actions .button{width:36px;height:36px;padding:0;display:inline-grid;place-items:center;border-radius:10px}.pagination,nav[aria-label=Paginación],nav[aria-label=pagination]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.pagination__left,.pagination__right{display:flex;align-items:center;gap:.5rem}.pagination__info{color:var(--muted);font-size:var(--step--1)}.pagination__group{display:inline-flex;align-items:center;gap:.25rem}.pagination .button,nav[aria-label=Paginación] .button{height:36px;min-width:36px;padding:0 .6rem;display:inline-grid;place-items:center;border-radius:10px;font-size:var(--step--1)}.pagination .is-active,nav[aria-label=Paginación] .is-active{background:color-mix(in oklab,var(--brand-500) 10%,var(--surface));border:1px solid color-mix(in oklab,var(--brand-500) 40%,var(--border));font-weight:700}.pagination .select,nav[aria-label=Paginación] .select{height:36px;border-radius:10px;font-size:var(--step--1);padding:0 .6rem}.pagination input[type=number]{height:36px;width:72px;border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:0 .5rem;font-size:var(--step--1)}@media (max-width: 720px){.pagination,nav[aria-label=Paginación]{flex-wrap:wrap;gap:.5rem}.pagination__left,.pagination__right{width:100%;justify-content:space-between}}.bdc-header{padding:var(--space-4);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.bdc-title{margin:0;font-size:var(--step-2);font-weight:700}.bdc-meta{display:flex;flex-direction:column;gap:.25rem}.bdc-grid{display:grid;gap:var(--space-4);padding:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.bdc-grid .field__label{color:var(--muted);font-weight:700;font-size:var(--step--1);text-transform:uppercase;letter-spacing:.02em;margin-bottom:.15rem}.bdc-grid .bdc-value{font-weight:600;font-size:var(--step-0);color:var(--text)}.bdc-section{padding:var(--space-4);border-top:1px solid var(--border)}.bdc-empty{color:var(--muted);font-size:var(--step--1)}.bdc-actions{display:inline-flex;align-items:center;gap:.4rem}.bdc-actions .button{width:36px;height:36px;padding:0;display:inline-grid;place-items:center;border-radius:10px}.bdc-services-wrap{width:100%;overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.bdc-services{width:100%;min-width:1400px;table-layout:fixed;border-collapse:separate;border-spacing:0}.bdc-services thead th{position:sticky;top:0;background:var(--surface);color:var(--muted);text-align:left;padding:.6rem .8rem;border-bottom:1px solid var(--border);white-space:nowrap;font-weight:700}.bdc-services tbody td{padding:.6rem .8rem;border-bottom:1px solid var(--border);white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;word-break:break-word;vertical-align:top;line-height:1.35}.col-sv-id{width:84px}.col-sv-date{width:120px}.col-sv-service{width:240px}.col-sv-parent{width:320px}.col-sv-location{width:240px}.col-sv-user{width:220px}.col-sv-desc{width:640px}.link-button{background:none;border:none;padding:0;font:inherit;cursor:pointer;color:var(--brand-600);text-decoration:underline}.link-button:hover{text-decoration:none}.pf{display:grid;gap:.4rem}.pf-label{color:var(--muted, #6b7280);font-size:.9rem;font-weight:600}.pf-field{position:relative}.pf-input{width:100%;border:1px solid var(--border, #e5e7eb);background:var(--surface, #fff);color:var(--fg, #111827);border-radius:12px;padding:.6rem 2.5rem .6rem .8rem;font-size:1rem;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;outline:none}.pf-input:focus{border-color:color-mix(in srgb,var(--brand-500, #3b82f6),transparent 40%);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-500, #3b82f6),transparent 85%)}.pf-input.has-error{border-color:color-mix(in srgb,#ef4444,transparent 30%);box-shadow:0 0 0 3px color-mix(in srgb,#ef4444,transparent 85%)}.pf-eye{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);width:34px;height:30px;display:grid;place-items:center;border:1px solid transparent;background:transparent;color:var(--muted, #6b7280);border-radius:8px;cursor:pointer;transition:color .15s ease,background .15s ease,border-color .15s ease,transform .06s ease}.pf-eye:hover{background:color-mix(in srgb,var(--surface-2, #fafafa),white 6%);border-color:var(--border, #e5e7eb);color:var(--fg, #111827)}.pf-eye:active{transform:translateY(calc(-50% + 1px))}.pf-error{color:#991b1b;font-size:.85rem}button.switch-capsule[role=switch]{appearance:none;-webkit-appearance:none;-moz-appearance:none;--sw-on-bg: var(--brand-600);--sw-off-bg: var(--surface-2);--sw-off-bd: var(--border);--sw-label: var(--fg);--sw-thumb: #fff;position:relative;display:inline-flex!important;align-items:center;gap:var(--space-2, .5rem);padding:0;border:0;background:transparent;color:var(--sw-label);font-weight:600;font-size:var(--sw-font, 14px);line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none}button.switch-capsule .switch-label{display:inline-block;white-space:nowrap}button.switch-capsule .switch-track{position:relative;display:inline-block;vertical-align:middle;flex:0 0 auto;width:var(--sw-w, 48px);height:var(--sw-h, 28px);border-radius:9999px;background:var(--sw-off-bg);border:1px solid var(--sw-off-bd);transition:background .18s ease,border-color .18s ease;box-shadow:var(--shadow-sm);overflow:hidden}button.switch-capsule .switch-thumb{position:absolute!important;display:block!important;z-index:1;top:50%;left:var(--sw-pad, 3px);width:var(--sw-thumb, 22px);height:var(--sw-thumb, 22px);border-radius:9999px;background:var(--sw-thumb);box-shadow:0 1px 2px #0206171f,inset 0 0 0 1px #0206170d;transform:translate(var(--sw-x, 0px),-50%);transition:transform .18s ease}button.switch-capsule.on .switch-track{background:var(--sw-on-bg);border-color:var(--sw-on-bg)}button.switch-capsule.on{--sw-x: calc(var(--sw-w) - var(--sw-thumb) - var(--sw-pad) * 2)}button.switch-capsule.off{--sw-x: 0px}button.switch-capsule.disabled{opacity:.6;cursor:not-allowed}button.switch-capsule:focus-visible .switch-track{outline:3px solid color-mix(in oklab,var(--brand-500) 45%,transparent);outline-offset:2px}.switch--success button.switch-capsule{--sw-on-bg: var(--success-600)}.switch--warning button.switch-capsule{--sw-on-bg: var(--warning-600)}.switch--danger button.switch-capsule{--sw-on-bg: var(--danger-600)}.switch--info button.switch-capsule{--sw-on-bg: var(--info-600)}.switch--invert-label button.switch-capsule.on{color:var(--brand-50)}.table--beneficiaries{table-layout:fixed}.table--beneficiaries .cell--ap{max-width:32rem}@media (min-width: 1280px){.table--beneficiaries .cell--ap{max-width:40rem}}.users-table--beneficiaries .col-profile,.users-table--beneficiaries .col-dept,.users-table--beneficiaries th.col-profile,.users-table--beneficiaries th.col-dept{white-space:normal;word-break:break-word}.users-table--beneficiaries td{padding-top:.5rem;padding-bottom:.5rem}.bdc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.bdc-value,.bdc-title,.card-subtitle,.bdc-services th,.bdc-services td{overflow-wrap:anywhere;word-break:break-word;white-space:normal}.bdc-services{width:100%;table-layout:fixed;border-collapse:collapse}.bdc-services th,.bdc-services td{padding:8px 10px;vertical-align:top}.bdc-services .col-sv-id{width:64px}.bdc-services .col-sv-date{width:110px}.bdc-services .col-sv-service{width:auto}.bdc-services .col-sv-parent{width:160px}.bdc-services .col-sv-location,.bdc-services .col-sv-user{width:180px}.bdc-services .col-sv-desc{width:260px}@media (max-width: 1100px){.bdc-services .col-sv-parent,.bdc-services th:nth-child(4),.bdc-services td:nth-child(4){display:none}}@media (max-width: 860px){.bdc-services .col-sv-desc,.bdc-services th:nth-child(7),.bdc-services td:nth-child(7){display:none}.bdc-services .col-sv-user,.bdc-services .col-sv-location{width:160px}}.bdc-subtle code{white-space:nowrap}
