:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f8fc;--surface:#fff;--surface-soft:#eef6fb;--surface-strong:#dbe7f2;--text:#172033;--text-muted:#5e6b7d;--text-soft:#8a97ab;--border:#d9e3ee;--primary:#233e72;--primary-hover:#1e3159;--primary-soft:#e3f6fd;--accent:#24b2e3;--success:#1e3159;--shadow-sm:0 4px 16px #1e31590f;--shadow-lg:0 24px 70px #1e31591a;--radius-lg:1.25rem;--radius-md:.8rem;--header-bg:#1e3159;--header-border:#24b2e3;--header-bg-mid:#233e72;--header-bg-end:#236194;--header-text:#fff;--header-text-muted:#ffffffc7;--header-action-border:#ffffff59;--header-action-hover-bg:#ffffff26}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#101827;--surface:#172238;--surface-soft:#1e2c45;--surface-strong:#2a3c5c;--text:#edf5ff;--text-muted:#b7c5d8;--text-soft:#8fa0b8;--border:#344665;--primary:#8bdcff;--primary-hover:#ccf0ff;--primary-soft:#1a3350;--accent:#24b2e3;--success:#24b2e3;--shadow-sm:0 4px 16px #00000026;--shadow-lg:0 24px 70px #00000047}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth;height:100%}body{background:var(--bg);min-width:320px;min-height:100vh;color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;transition:background-color .2s,color .2s}body.menu-open{overflow:hidden}.landing-body{flex-direction:column;display:flex}.landing-main{flex-direction:column;flex:1;display:flex}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}.container{width:min(1160px,100% - 2rem);margin-inline:auto}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{z-index:100;background-color:var(--header-bg);background-image:radial-gradient(520px 160px at 88% -30%, color-mix(in srgb, var(--header-border) 50%, transparent), transparent 70%), radial-gradient(420px 140px at 30% 140%, color-mix(in srgb, var(--header-border) 18%, transparent), transparent 70%), linear-gradient(120deg, var(--header-bg) 0%, var(--header-bg-mid) 55%, var(--header-bg-end) 100%);width:100%;min-height:5rem;position:sticky;top:0;box-shadow:0 10px 30px -10px #1e31598c}.site-header:after{background:linear-gradient(90deg, var(--header-border), color-mix(in srgb, var(--header-border) 35%, transparent) 60%, transparent);content:"";pointer-events:none;height:3px;position:absolute;bottom:0;left:0;right:0}.navbar-split{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:2rem;width:min(1240px,100% - 4rem);min-height:5rem;margin-inline:auto;display:grid;position:relative}.navbar-left{justify-self:start;align-items:center;min-width:0;display:flex}.brand{min-width:0;color:var(--header-text);align-items:center;gap:.75rem;text-decoration:none;display:inline-flex}.brand-mark{background:linear-gradient(135deg, var(--primary), var(--accent));color:#fff;width:2.45rem;height:2.45rem;box-shadow:0 8px 20px color-mix(in srgb, var(--primary) 25%, transparent);border-radius:.75rem;flex:0 0 2.45rem;justify-content:center;align-items:center;font-size:1.1rem;font-weight:900;line-height:1;display:inline-flex}.brand-name{color:var(--header-text);letter-spacing:.045em;white-space:nowrap;font-size:.92rem;font-weight:850}.brand-logo{width:auto;height:3.6rem;display:block}.main-navigation{min-width:max-content;color:var(--header-text-muted);justify-content:center;justify-self:center;align-items:center;gap:1.75rem;font-size:.86rem;font-weight:700;display:flex}.main-navigation a{min-height:2.5rem;color:inherit;white-space:nowrap;align-items:center;text-decoration:none;transition:color .16s;display:inline-flex}.main-navigation a:hover,.nav-role-link:hover{color:var(--accent)}.nav-role-link{color:var(--header-text)!important}.navbar-right{justify-self:end;align-items:center;gap:.65rem;min-width:max-content;display:flex}.nav-action{border:2px solid var(--header-action-border);min-width:5.5rem;min-height:2.75rem;color:var(--header-text);white-space:nowrap;background:0 0;border-radius:.8rem;justify-content:center;align-items:center;padding:0 1rem;font-size:.82rem;font-weight:700;line-height:1;text-decoration:none;transition:border-color .16s,background-color .16s,color .16s,transform .16s;display:inline-flex}.nav-action:hover{border-color:var(--header-text);background:var(--header-action-hover-bg);color:var(--header-text);transform:translateY(-1px)}.nav-session{align-items:center;gap:.55rem;display:flex}.nav-user-name{max-width:145px;color:var(--header-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;font-weight:700;overflow:hidden}.nav-role-badge{border:1px solid var(--header-action-border);min-height:1.9rem;color:var(--header-text-muted);white-space:nowrap;background:0 0;border-radius:999px;align-items:center;padding:0 .6rem;font-size:.68rem;font-weight:700;display:inline-flex}.nav-role-admin{border-color:var(--accent);background:var(--header-action-hover-bg);color:var(--header-text)}.logout-form{margin:0;display:inline-flex}.nav-logout{min-width:auto;font:inherit;cursor:pointer}.theme-toggle{border:2px solid var(--header-action-border);width:2.75rem;min-width:2.75rem;height:2.75rem;min-height:2.75rem;color:var(--header-text);cursor:pointer;background:0 0;border-radius:.8rem;outline:none;flex:0 0 2.75rem;justify-content:center;align-items:center;padding:0;line-height:1;transition:border-color .16s,background-color .16s,color .16s,transform .16s;display:inline-flex}.theme-toggle:hover{border-color:var(--header-text);background:var(--header-action-hover-bg);color:var(--header-text);transform:translateY(-1px)}.theme-toggle:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:2px}.theme-icon{color:currentColor;justify-content:center;align-items:center;width:1.1rem;height:1.1rem;display:inline-flex}.theme-icon--sun,:root[data-theme=dark] .theme-icon--moon{display:none}:root[data-theme=dark] .theme-icon--sun{display:inline-flex}.theme-icon__svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%;display:block}.menu-toggle{display:none}@media (width<=900px){.nav-user-name{display:none}}@media (width<=720px){.site-header,.navbar-split{min-height:4.5rem}.navbar-split{grid-template-columns:minmax(0,1fr) auto;gap:.55rem;width:calc(100% - 1.5rem)}.brand-name{font-size:.78rem}.brand-logo{height:2.75rem}.navbar-right{gap:.4rem}.nav-action{min-width:auto;min-height:2.5rem;padding:0 .7rem;font-size:.76rem}.nav-role-badge{display:none}.theme-toggle,.menu-toggle{flex-basis:2.5rem;width:2.5rem;min-width:2.5rem;height:2.5rem;min-height:2.5rem}.menu-toggle{border:2px solid var(--header-action-border);color:var(--header-text);cursor:pointer;background:0 0;border-radius:.8rem;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:0;display:inline-flex}.menu-toggle span:not(.sr-only){background:currentColor;border-radius:999px;width:1.05rem;height:2px;display:block}.main-navigation{z-index:200;border:1px solid var(--border);background:var(--bg);min-width:0;color:var(--text-muted);box-shadow:var(--shadow-lg);border-top:0;flex-direction:column;align-items:stretch;gap:0;padding:.75rem 1rem 1rem;display:none;position:absolute;top:calc(100% + 1px);left:0;right:0}.main-navigation.is-open{display:flex}.main-navigation a{min-height:auto;color:var(--text);border-bottom:1px solid var(--border);padding:.85rem 0}.main-navigation a.nav-role-link{color:var(--primary)!important}.nav-session{gap:.4rem}}@media (prefers-reduced-motion:reduce){.nav-action,.theme-toggle{transition:none}}.nav-account{position:relative}.nav-account summary{list-style:none}.nav-account summary::-webkit-details-marker{display:none}.nav-account-trigger{border:2px solid var(--header-action-border);min-height:2.75rem;color:var(--header-text);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border-radius:.8rem;align-items:center;gap:.5rem;padding:.25rem .65rem .25rem .3rem;transition:border-color .16s,background-color .16s;display:inline-flex}.nav-account-trigger:hover,.nav-account[open] .nav-account-trigger{border-color:var(--header-text);background:var(--header-action-hover-bg)}.nav-account-avatar{background:var(--header-text);width:2.1rem;height:2.1rem;color:var(--header-bg);border-radius:.6rem;flex:0 0 2.1rem;justify-content:center;align-items:center;font-size:.85rem;font-weight:800;line-height:1;display:inline-flex}.nav-account-name{max-width:150px;color:var(--header-text);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:700;overflow:hidden}.nav-account-chevron{color:var(--header-text-muted);font-size:1rem;line-height:1;transition:transform .16s}.nav-account[open] .nav-account-chevron{transform:rotate(180deg)}.nav-account-menu{z-index:300;border:1px solid var(--border);background:var(--surface);width:220px;box-shadow:var(--shadow-lg);border-radius:.85rem;padding:.45rem;display:grid;position:absolute;top:calc(100% + .65rem);right:0}.nav-account-item{width:100%;min-height:2.5rem;color:var(--text);cursor:pointer;box-sizing:border-box;background:0 0;border:0;border-radius:.55rem;align-items:center;padding:0 .75rem;font-size:.8rem;font-weight:650;text-decoration:none;display:flex}.nav-account-item:hover{background:var(--primary-soft);color:var(--primary)}.nav-account-divider{background:var(--border);height:1px;margin:.4rem .45rem}.nav-account-logout{margin:0;display:block}.nav-account-logout-button{font:inherit;text-align:left}@media (width<=900px){.nav-account-name{max-width:110px}}@media (width<=720px){.nav-account-trigger{min-height:2.5rem;padding-right:.45rem}.nav-account-avatar{flex-basis:1.9rem;width:1.9rem;height:1.9rem}.nav-account-name{display:none}.nav-account-menu{width:205px;right:0}}.nav-account-avatar{overflow:hidden}.nav-account-avatar img{object-fit:cover;width:100%;height:100%;display:block}.hero{border-bottom:1px solid var(--border);flex:1;align-items:center;min-height:620px;display:flex;position:relative;overflow:hidden}.hero-background{pointer-events:none;position:absolute;inset:0}.hero-grid{opacity:.3;background-image:linear-gradient(color-mix(in srgb, var(--border) 40%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--border) 40%, transparent) 1px, transparent 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 85%);mask-image:linear-gradient(#000,#0000 85%)}.hero-orb{pointer-events:none;filter:blur(12px);opacity:.18;border-radius:50%;position:absolute}.hero-orb-one{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 70%, white) 0%, var(--accent) 65%, transparent 100%);width:34rem;height:34rem;top:-18rem;right:-12rem}.hero-orb-two{background:radial-gradient(circle, color-mix(in srgb, var(--primary) 72%, white) 0%, var(--primary) 68%, transparent 100%);width:36rem;height:36rem;bottom:-24rem;left:-16rem}.hero-layout{z-index:1;grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr);align-items:center;gap:5rem;width:100%;padding:5rem 0;display:grid;position:relative}.hero-content,.hero-logo{z-index:1;position:relative}.hero h1{letter-spacing:-.065em;max-width:780px;margin:0;font-size:clamp(3rem,6.6vw,6.2rem);line-height:1.02}.hero h1 span{color:var(--primary)}.button{border:1px solid #0000;border-radius:.7rem;justify-content:center;align-items:center;gap:.6rem;min-height:3.1rem;padding:.8rem 1.15rem;font-size:.9rem;font-weight:750;transition:transform .16s,background-color .16s,border-color .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--primary);color:#fff;box-shadow:0 4px 12px color-mix(in srgb, var(--primary) 16%, transparent)}.button-primary:hover{background:var(--primary-hover)}:root[data-theme=dark] .button-primary{border-color:color-mix(in srgb, var(--primary) 35%, transparent);box-shadow:none;background:#2c6aa6}:root[data-theme=dark] .button-primary:hover{background:#245a8f}.button-secondary{border-color:var(--border);background:var(--surface);color:var(--text)}.button-secondary:hover{border-color:var(--primary)}.hero-logo{justify-content:center;align-items:center;display:flex}.hero-logo-img{width:100%;max-width:520px;height:auto}.hero-logo-img--dark,:root[data-theme=dark] .hero-logo-img--light{display:none}:root[data-theme=dark] .hero-logo-img--dark{display:block}@media (width<=900px){.hero-layout{grid-template-columns:1fr;gap:3.5rem}.hero-logo-img{max-width:280px}}@media (width<=720px){.hero{min-height:auto}.hero-layout{padding:4.5rem 0}.hero-orb-one,.hero-orb-two{opacity:.1;filter:blur(18px)}}.button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.05rem;height:1.05rem;display:block}.section{padding:3.5rem 0}.section-light{background:var(--surface)}.section-heading h2{letter-spacing:-.055em;max-width:690px;margin:0;font-size:clamp(2rem,4vw,3.35rem);line-height:1.08}#proposito{border-top:1px solid var(--border);flex:none;padding:1.6rem 0}#proposito .section-heading h2{letter-spacing:-.01em;max-width:480px;font-size:1rem;font-weight:650}#proposito .section-kicker{margin:0 0 .3rem;font-size:.72rem}.section-heading>p:last-child{color:var(--text-muted)}.centered-heading{text-align:center;flex-direction:column;align-items:center;display:flex}.site-footer{background:var(--surface);color:var(--text-muted);padding:2rem 0}.footer-content{justify-content:space-between;align-items:center;gap:1rem;display:flex}.admin-footer{margin-top:2rem}@media (width<=900px){.hero-layout{grid-template-columns:1fr;gap:3rem}.hero-logo-img{max-width:280px}}@media (width<=720px){.navbar-split{grid-template-columns:minmax(0,1fr) auto;gap:.65rem;min-height:4.5rem}.brand-name{font-size:.78rem}.brand-logo{height:2.75rem}.navbar-right{gap:.4rem}.nav-action{min-height:2.5rem;padding:0 .7rem;font-size:.76rem}.theme-toggle{flex-basis:2.5rem;width:2.5rem;min-width:2.5rem;height:2.5rem;min-height:2.5rem}.menu-toggle{border:2px solid var(--header-action-border);width:2.5rem;height:2.5rem;color:var(--header-text);cursor:pointer;background:0 0;border-radius:.8rem;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:0;transition:border-color .16s,background-color .16s;display:inline-flex}.menu-toggle:hover,.menu-toggle[aria-expanded=true]{border-color:var(--header-text);background:var(--header-action-hover-bg)}.menu-toggle:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:2px}.menu-toggle span:not(.sr-only){background:currentColor;border-radius:999px;width:1.05rem;height:2px}.main-navigation{background:var(--bg);border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);flex-direction:column;align-items:stretch;gap:0;padding:.75rem 1rem 1rem;display:none;position:absolute;top:calc(100% + 1px);left:0;right:0}.main-navigation.is-open{display:flex}.main-navigation a{border-bottom:1px solid var(--border);padding:.85rem 0}.hero{min-height:auto}.hero-layout{min-height:auto;padding:4.5rem 0}.section{padding:4.5rem 0}.footer-content{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (width<=900px){.admin-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.admin-page{padding-top:1.5rem;padding-bottom:2.5rem}.admin-module-grid{grid-template-columns:1fr;gap:1rem}.admin-module-card{padding:1.25rem}}@media (width<=760px){.admin-section{padding:2rem 0 3.5rem}.admin-section-header{flex-direction:column;align-items:flex-start;gap:1rem}.admin-section-header .button{width:100%}.admin-search{flex-direction:column;align-items:stretch}.admin-search input,.admin-search .button{width:100%}.admin-table-wrapper{border-radius:var(--radius-md)}.admin-table-actions{flex-direction:column;align-items:stretch}.admin-table-actions .button,.admin-table-actions form,.admin-table-actions form .button{width:100%}}@media (width<=900px){.admin-panel-header,.admin-toolbar{flex-direction:column;align-items:stretch}.admin-toolbar-actions{justify-content:stretch}.admin-toolbar-actions .button{width:100%}}@media (width<=760px){.admin-users-page{padding:1.5rem 0 2.5rem}.admin-panel{padding:1rem}.admin-panel-header,.admin-toolbar{flex-direction:column;align-items:stretch}.admin-toolbar-actions,.admin-panel-header .button,.admin-toolbar-actions .button{width:100%}.admin-table-wrapper{border-radius:var(--radius-md);overflow-x:auto}.admin-table{min-width:640px}.admin-table th,.admin-table td{padding:.85rem .9rem}.admin-user-cell{gap:.65rem}.admin-user-avatar{width:2.45rem;height:2.45rem}.admin-table-actions{flex-direction:column;align-items:stretch}.admin-table-actions .button,.admin-table-actions form,.admin-table-actions form .button{width:100%}.admin-form-actions{justify-content:stretch}.admin-email-copy{max-width:100%}.admin-form-grid{grid-template-columns:1fr}.admin-form-actions{flex-direction:column-reverse}.admin-form-actions .button{width:100%}}@media (width<=640px){.admin-modal-dialog{width:100%}.admin-modal-actions{flex-direction:column-reverse}.admin-modal-actions .button{width:100%}}@media (width<=760px){.role-permission-summary{grid-template-columns:1fr}.permission-module-header{flex-direction:column}.permission-grid{grid-template-columns:1fr}}@media (width<=560px){.auth-card{padding:1.5rem}.auth-page{min-height:calc(100vh - 4.5rem);padding:2rem 1rem}}.auth-page{background:radial-gradient(circle at top right, color-mix(in srgb, var(--accent) 13%, transparent), transparent 32rem), var(--bg);place-items:center;min-height:calc(100vh - 5rem);padding:4rem 1rem;display:grid}.auth-card{border:1px solid var(--border);background:var(--surface);width:min(100%,460px);box-shadow:var(--shadow-lg);border-radius:1.25rem;padding:2.25rem}.auth-header{text-align:center}.auth-header .brand-mark{margin-bottom:1.25rem}.auth-header .section-kicker{margin-bottom:.5rem}.auth-header h1{letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,4vw,2.35rem);line-height:1.1}.auth-header p:last-child{color:var(--text-muted);margin:.85rem 0 0;font-size:.92rem}.auth-form{gap:1.1rem;margin-top:2rem;display:grid}.form-field{gap:.45rem;display:grid}.form-field label{color:var(--text);font-size:.84rem;font-weight:700}.form-field input{border:1px solid var(--border);background:var(--surface-soft);width:100%;min-height:3rem;color:var(--text);border-radius:.7rem;outline:none;padding:0 .85rem;transition:border-color .16s,box-shadow .16s}.form-field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 18%, transparent)}.remember-field{color:var(--text-muted);align-items:center;gap:.55rem;font-size:.84rem;display:inline-flex}.remember-field input{accent-color:var(--primary)}.auth-submit{cursor:pointer;border:0;width:100%;margin-top:.4rem}.auth-back{color:var(--text-muted);text-align:center;margin-top:1.5rem;font-size:.84rem;display:block}.auth-back:hover{color:var(--primary)}.form-alert{color:#b71c1c;background:#fbe4e2;border:1px solid #f3c3c0;border-radius:.7rem;margin-top:1.5rem;padding:.85rem 1rem;font-size:.82rem}.form-alert p{margin:0;font-weight:700}.form-alert ul{margin:.4rem 0 0;padding-left:1.1rem}:root[data-theme=dark] .form-alert{color:#ffcdd2;background:#3a1414;border-color:#7a2020}@media (width<=560px){.auth-card{padding:1.5rem}.auth-page{min-height:calc(100vh - 4.5rem);padding:2rem 1rem}}.login-body{background:#fff}.login-split{grid-template-columns:minmax(320px,2fr) minmax(0,3fr);min-height:100vh;display:grid}.login-brand{background:linear-gradient(165deg,#1e3159 0%,#172742 55%,#101a30 100%);flex-direction:column;justify-content:center;align-items:center;gap:2.75rem;padding:3rem;display:flex;position:relative;overflow:hidden}.login-brand-orb{pointer-events:none;filter:blur(10px);opacity:.16;border-radius:50%;width:26rem;height:26rem;position:absolute}.login-brand-orb--one{background:radial-gradient(circle, var(--header-border) 0%, transparent 70%);top:-10rem;right:-10rem}.login-brand-orb--two{background:radial-gradient(circle, var(--header-border) 0%, transparent 70%);bottom:-12rem;left:-12rem}.login-brand-link{z-index:1;display:flex;position:relative}.login-brand-logo{width:min(230px,62vw);height:auto}.login-brand-text{z-index:1;text-align:center;position:relative}.login-brand-name{color:#fff;letter-spacing:.05em;margin:0;font-size:1.55rem;font-weight:850}.login-brand-tagline{color:var(--header-text-muted);letter-spacing:.12em;text-transform:uppercase;margin:.55rem 0 0;font-size:.78rem;font-weight:650}.login-panel{background:#fff;justify-content:center;align-items:center;padding:3rem 2rem;display:flex}.login-form-card{width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:2.25rem}.login-header h1{color:var(--header-bg);letter-spacing:-.02em;margin:0;font-size:1.45rem;font-weight:800}.login-header p{color:#5e6b7d;margin:.5rem 0 0;font-size:.88rem}.login-form{display:grid}.login-field{align-items:center;margin-bottom:1rem;display:flex;position:relative}.login-field-icon{color:#8a97ab;pointer-events:none;width:1.05rem;height:1.05rem;position:absolute;left:.95rem}.login-field input{color:#172033;background:#f5f8fc;border:1px solid #d9e3ee;border-radius:.7rem;outline:none;width:100%;min-height:3.15rem;padding:0 1rem 0 2.65rem;font-size:.92rem;transition:border-color .16s,box-shadow .16s}.login-field input::placeholder{color:#8a97ab}.login-field input:focus{border-color:var(--header-bg);box-shadow:0 0 0 3px #1e315924}.login-field--password input{padding-right:2.85rem}.login-field-toggle{color:#8a97ab;cursor:pointer;background:0 0;border:0;border-radius:.5rem;justify-content:center;align-items:center;width:2rem;height:2rem;transition:color .16s;display:inline-flex;position:absolute;right:.6rem}.login-field-toggle:hover{color:var(--header-bg)}.login-field-toggle svg{width:1.1rem;height:1.1rem}.login-eye--hide,.login-field-toggle[aria-pressed=true] .login-eye--show{display:none}.login-field-toggle[aria-pressed=true] .login-eye--hide{display:block}.login-row{justify-content:flex-end;align-items:center;gap:1rem;margin:.25rem 0 1.6rem;font-size:.82rem;display:flex}.login-forgot{color:var(--header-bg);font-weight:700}.login-forgot:hover{text-decoration:underline}.login-submit{background:var(--header-bg);color:#fff;cursor:pointer;border:0;border-radius:.7rem;justify-content:center;align-items:center;gap:.5rem;width:100%;min-height:3.15rem;font-size:.95rem;font-weight:750;transition:background-color .16s,transform .16s;display:inline-flex}.login-submit:hover{background:#16213f;transform:translateY(-1px)}.login-submit svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.05rem;height:1.05rem}.login-back{color:#8a97ab;text-align:center;margin-top:1.6rem;font-size:.82rem;display:block}.login-back:hover{color:var(--header-bg)}@media (width<=900px){.login-split{grid-template-columns:1fr;min-height:auto}.login-brand{gap:1.75rem;padding:2.75rem 1.5rem}.login-brand-logo{width:min(170px,50vw)}.login-brand-name{font-size:1.3rem}.login-panel{padding:2.5rem 1.5rem 3rem}}.dashboard-page{background:var(--bg);min-height:100vh}.dashboard-hero{padding:4rem 0 2rem}.dashboard-hero-layout{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:start;gap:2rem;display:grid}.dashboard-hero-copy h1{margin:.5rem 0 1rem;font-size:clamp(2rem,4vw,3.25rem);line-height:1.05}.dashboard-subtitle{color:var(--text-muted);font-size:1rem}.dashboard-meta{color:var(--text-muted);margin-top:1rem}.dashboard-hero-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-lg);border-radius:1rem;align-items:center;gap:1rem;padding:1.25rem;display:flex}.dashboard-avatar{background:var(--primary);color:#fff;border-radius:.8rem;place-items:center;width:3rem;height:3rem;font-weight:900;display:grid}.module-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:1rem;padding:1.5rem}.module-card-icon{background:var(--primary-soft);width:2.5rem;height:2.5rem;color:var(--primary);border-radius:.7rem;place-items:center;margin-bottom:1rem;font-weight:800;display:grid}.module-card h3{margin:0 0 .5rem}.module-card p{color:var(--text-muted);margin:0 0 1rem}@media (width<=900px){.dashboard-hero-layout,.module-grid{grid-template-columns:1fr}}.module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:2.5rem;display:grid}.module-card{border:1px solid var(--border);background:var(--surface);min-height:280px;box-shadow:var(--shadow-sm);isolation:isolate;border-radius:1.15rem;flex-direction:column;padding:1.4rem;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;position:relative;overflow:hidden}.module-card:before{z-index:-1;background:var(--module-color);content:"";opacity:.11;border-radius:50%;width:12rem;height:12rem;transition:transform .25s,opacity .25s;position:absolute;top:-5rem;right:-5rem}.module-card:hover{border-color:color-mix(in srgb, var(--module-color) 45%, var(--border));box-shadow:var(--shadow-lg);transform:translateY(-5px)}.module-card:hover:before{opacity:.18;transform:scale(1.2)}.module-card-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.module-card-icon{border:1px solid color-mix(in srgb, var(--module-color) 25%, var(--border));background:color-mix(in srgb, var(--module-color) 14%, var(--surface));width:3.2rem;height:3.2rem;color:var(--module-color);box-shadow:0 8px 18px color-mix(in srgb, var(--module-color) 15%, transparent);border-radius:.9rem;justify-content:center;align-items:center;font-size:1.25rem;font-weight:900;display:inline-flex}.module-card-icon-img{object-fit:contain;width:68%;height:68%}.module-card-status{border:1px solid color-mix(in srgb, var(--module-color) 25%, var(--border));background:color-mix(in srgb, var(--module-color) 9%, var(--surface));min-height:1.8rem;color:var(--module-color);white-space:nowrap;border-radius:999px;align-items:center;padding:0 .6rem;font-size:.68rem;font-weight:750;display:inline-flex}.module-card-body{flex:1;padding-top:1.4rem}.module-card-body h3{color:var(--text);letter-spacing:-.02em;margin:0;font-size:1.15rem}.module-card-body p{color:var(--text-muted);margin:.65rem 0 0;font-size:.88rem;line-height:1.6}.module-card-link{border:1px solid color-mix(in srgb, var(--module-color) 30%, var(--border));background:color-mix(in srgb, var(--module-color) 8%, var(--surface));min-height:2.75rem;color:var(--module-color);border-radius:.7rem;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1.5rem;padding:0 .85rem;font-size:.82rem;font-weight:750;text-decoration:none;transition:background-color .18s,color .18s,transform .18s;display:inline-flex}.module-card-link:hover{background:var(--module-color);color:#fff;transform:translate(2px)}.module-card-link svg{flex:none;width:1.05rem;height:1.05rem}.module-card-blue{--module-color:#233e72}.module-card-purple{--module-color:#1e3159}.module-card-green{--module-color:#b71c1c}:root[data-theme=dark] .module-card-blue{--module-color:#24b2e3}:root[data-theme=dark] .module-card-purple{--module-color:#ccf0ff}:root[data-theme=dark] .module-card-green{--module-color:#ffcdd2}@media (width<=900px){.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.module-grid{grid-template-columns:1fr}.module-card{min-height:250px}}.dashboard-user-info h2{color:var(--text);margin:0;font-size:1rem}.dashboard-user-info p{color:var(--text-muted);word-break:break-word;margin:.25rem 0 .65rem;font-size:.82rem}.dashboard-status{border:1px solid color-mix(in srgb, var(--success) 30%, var(--border));background:color-mix(in srgb, var(--success) 10%, var(--surface));min-height:1.7rem;color:var(--success);border-radius:999px;align-items:center;padding:0 .6rem;font-size:.68rem;font-weight:750;display:inline-flex}.dashboard-actions{padding:0 0 5rem}.dashboard-actions-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:1.1rem;justify-content:space-between;align-items:center;gap:2rem;padding:1.5rem;display:flex}.dashboard-actions-card h2{margin:0;font-size:1.35rem}.dashboard-actions-card p:last-child{color:var(--text-muted);margin:.5rem 0 0;font-size:.9rem}.dashboard-actions-buttons{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}@media (width<=720px){.dashboard-hero{padding-top:3rem}.dashboard-actions-card{flex-direction:column;align-items:stretch}.dashboard-actions-buttons{justify-content:stretch}.dashboard-actions-buttons .button{width:100%}}.dashboard-empty-state{border:1px dashed var(--border);background:var(--surface);color:var(--text-muted);text-align:center;border-radius:1rem;grid-column:1/-1;padding:3rem 1.5rem}.dashboard-empty-icon{background:var(--surface-soft);width:3rem;height:3rem;color:var(--text-soft);border-radius:50%;place-items:center;margin:0 auto 1rem;font-size:1.5rem;font-weight:800;display:grid}.dashboard-empty-state h3{color:var(--text);margin:0;font-size:1.1rem}.dashboard-empty-state p{margin:.5rem 0 0;font-size:.9rem}.dashboard-avatar-photo{object-fit:cover;flex:none}.dashboard-flash{padding-top:1.25rem}.dashboard-flash .admin-alert{margin:0}.admin-page{min-height:calc(100vh - 5rem);padding:2.5rem 0 4rem}.admin-modules{padding-top:1rem;padding-bottom:3.5rem}.admin-module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:1rem;display:grid}.admin-module-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);gap:1rem;padding:1.5rem;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.admin-module-card:hover{border-color:color-mix(in srgb, var(--primary) 45%, var(--border));box-shadow:var(--shadow-lg);transform:translateY(-3px)}.admin-module-icon{background:var(--primary-soft);width:2.8rem;height:2.8rem;color:var(--primary);border-radius:.75rem;flex-shrink:0;place-items:center;font-weight:800;display:grid}.admin-module-content h3{margin:0 0 .35rem;font-size:1.05rem}.admin-module-content p{color:var(--text-muted);margin:0;font-size:.92rem}.admin-module-status{border:1px solid var(--border);color:var(--text-muted);border-radius:999px;margin-top:.8rem;padding:.32rem .6rem;font-size:.7rem;font-weight:700;display:inline-flex}.admin-own-modules{padding-top:0}.admin-own-modules .section-heading h2{letter-spacing:-.01em;font-size:clamp(1.35rem,2.4vw,1.75rem)}@media (width<=900px){.admin-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.admin-module-grid{grid-template-columns:1fr;gap:1rem}}.admin-users-page{padding:2.25rem 0 4rem}.admin-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);padding:1.5rem}.admin-panel-header{justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:1.5rem;display:flex}.admin-panel-header h1{color:var(--text);letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.05}.admin-panel-subtitle{color:var(--text-muted);margin:.55rem 0 0}.admin-toolbar{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft);align-items:center;gap:.75rem;margin-bottom:1.25rem;padding:1rem;display:flex}.admin-search-box{flex:auto;align-items:center;gap:.75rem;min-width:0;display:flex}.admin-search-box svg{fill:none;width:1rem;height:1rem;stroke:var(--text-soft);stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;flex-shrink:0}.admin-search-box input{border:1px solid var(--border);background:var(--surface);width:100%;min-height:2.9rem;color:var(--text);font:inherit;border-radius:.75rem;outline:none;padding:.75rem .95rem}.admin-search-box input::placeholder{color:var(--text-soft)}.admin-search-box input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 16%, transparent)}.admin-filter-box{flex:none}.admin-filter-box select{border:1px solid var(--border);background:var(--surface);min-width:12rem;min-height:2.9rem;color:var(--text);font:inherit;cursor:pointer;border-radius:.75rem;outline:none;padding:.7rem 2.2rem .7rem .9rem}.admin-filter-box select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 16%, transparent)}.admin-toolbar-actions{flex:none;gap:.65rem;display:flex}.admin-alert{border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:1.5rem;padding:.9rem 1rem;font-size:.9rem;font-weight:650}.admin-alert-success{border-color:color-mix(in srgb, var(--success) 40%, var(--border));background:color-mix(in srgb, var(--success) 10%, var(--surface));color:var(--success)}.admin-table-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.admin-table-wrapper{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:860px}.admin-table th,.admin-table td{border-bottom:1px solid var(--border);vertical-align:middle;text-align:left;padding:1rem 1.1rem}.admin-table th{background:var(--surface-soft);color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:800}.admin-table tbody tr{transition:background-color .16s}.admin-table tbody tr:hover{background:color-mix(in srgb, var(--primary) 4%, var(--surface))}.admin-table tbody tr:last-child td{border-bottom:0}.admin-user-cell{align-items:center;gap:.85rem;display:flex}.admin-user-avatar{background:var(--primary-soft);width:2.75rem;height:2.75rem;color:var(--primary);border-radius:999px;flex-shrink:0;place-items:center;font-weight:800;display:grid}.admin-user-cell strong{color:var(--text);font-size:.95rem;display:block}.admin-user-cell span{color:var(--text-soft);margin-top:.15rem;font-size:.78rem;display:block}.admin-email-copy{width:100%;min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.45rem;padding:0;font-weight:600;display:flex}.admin-email-copy span{text-overflow:ellipsis;white-space:nowrap;word-break:break-all;min-width:0;overflow:hidden}.admin-email-copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-email-copy svg{fill:none;width:1rem;height:1rem;stroke:var(--text-muted);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;flex-shrink:0}.admin-email-copy:hover{color:var(--primary)}.admin-email-copy:hover svg{stroke:var(--primary)}.admin-email-copy.is-copied{color:var(--success)}.admin-email-copy.is-copied svg{stroke:var(--success)}.admin-role-list{display:block}.admin-role-badge{color:var(--accent);background:0 0;border:0;margin:0;padding:0;font-size:.9rem;font-weight:600;display:inline}.admin-role-list .admin-role-badge:not(:last-child):after{content:", ";color:var(--text-muted);font-weight:400}.admin-muted{color:var(--text-soft);font-size:.85rem}.admin-date strong,.admin-date span{display:block}.admin-date strong{color:var(--text);font-size:.88rem}.admin-date span{color:var(--text-soft);margin-top:.15rem;font-size:.78rem}.admin-actions-col{width:180px}.admin-table-actions{flex-wrap:wrap;gap:.55rem;display:flex}.admin-table-actions form{margin:0}.admin-table-actions .button{min-height:2.5rem;padding:.55rem .8rem;font-size:.8rem}.button-ghost{border:1px solid var(--border);color:var(--text-muted);background:0 0}.button-ghost:hover{border-color:var(--primary);color:var(--primary)}.button-danger{border:1px solid color-mix(in srgb, #b71c1c 40%, var(--border));background:color-mix(in srgb, #b71c1c 10%, var(--surface));color:#b71c1c;cursor:pointer}.admin-empty-cell:before{display:none!important}.admin-empty-state{text-align:center;padding:2.5rem 1rem}.admin-empty-state h3{color:var(--text);margin:0;font-size:1rem}.admin-empty-state p{color:var(--text-muted);margin:.35rem 0 0}.admin-form-actions{justify-content:flex-end;margin-top:1.5rem;display:flex}.admin-form{display:block}.admin-form-field label{color:var(--text);font-size:.9rem;font-weight:650}.admin-form-field input,.admin-form-field select{border:1px solid var(--border);background:var(--surface);min-height:2.9rem;color:var(--text);font:inherit;border-radius:.75rem;outline:none;padding:.75rem .95rem}.admin-form-field input:focus,.admin-form-field select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 16%, transparent)}.admin-form-help{color:var(--text-muted);font-size:.8rem}.admin-alert-error{border-color:color-mix(in srgb, #b71c1c 40%, var(--border));background:color-mix(in srgb, #b71c1c 10%, var(--surface));color:#b71c1c}.admin-form-help{color:var(--text-muted);font-size:.8rem;line-height:1.45}.admin-error-list{color:#b71c1c;margin:.65rem 0 0;padding-left:1.2rem;font-size:.85rem}.admin-form-error{color:#b71c1c;font-size:.82rem}.admin-modal{z-index:50;justify-content:center;align-items:center;padding:1rem;display:none;position:fixed;inset:0}.admin-modal.is-open{display:flex}.admin-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;position:absolute;inset:0}.admin-modal-dialog{z-index:1;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:min(100%,420px);box-shadow:var(--shadow-lg);padding:1.25rem;position:relative}.admin-modal-dialog h2{margin:0;font-size:1.1rem}.admin-modal-dialog p{color:var(--text-muted);margin:.7rem 0 0}.admin-modal-actions{justify-content:flex-end;gap:.75rem;margin-top:1.25rem;display:flex}.role-permission-summary{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft);grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.5rem;padding:1rem;display:grid}.role-permission-summary strong,.role-permission-label{display:block}.role-permission-label{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.25rem;font-size:.72rem;font-weight:800}.role-permission-summary strong{color:var(--text)}.permission-module{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);margin-top:1.25rem;padding:1.25rem}.permission-module-header{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1.25rem;display:flex}.permission-module-header h2{margin:0;font-size:1.25rem}.permission-module-header p:last-child{color:var(--text-muted);margin:.4rem 0 0;font-size:.88rem}.permission-module-code{background:var(--primary-soft);color:var(--primary);border-radius:.5rem;padding:.35rem .6rem;font-size:.75rem;font-weight:800}.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.permission-option{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft);cursor:pointer;align-items:start;gap:.75rem;padding:1rem;transition:border-color .16s,background-color .16s;display:flex}.permission-option:hover{border-color:var(--primary)}.permission-option input{opacity:0;pointer-events:none;position:absolute}.permission-option-check{border:1px solid var(--border);color:#0000;border-radius:.35rem;flex-shrink:0;place-items:center;width:1.35rem;height:1.35rem;font-size:.8rem;font-weight:900;display:grid}.permission-option:has(input:checked){border-color:var(--primary);background:var(--primary-soft)}.permission-option:has(input:checked) .permission-option-check{border-color:var(--primary);background:var(--primary);color:#fff}.permission-option-content strong,.permission-option-content small,.permission-option-content span{display:block}.permission-option-content strong{color:var(--text)}.permission-option-content small{color:var(--primary);margin-top:.15rem;font-size:.75rem}.permission-option-content span{color:var(--text-muted);margin-top:.35rem;font-size:.8rem}.admin-role-code{color:var(--primary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;font-weight:700}.admin-status-active,.admin-status-inactive{font-size:.82rem;font-weight:700}.admin-status-active{color:var(--success)}.admin-status-inactive{color:#b71c1c}.permission-matrix-section{margin-top:1.25rem}.permission-matrix-wrapper{border:1px solid var(--border);border-radius:var(--radius-md);overflow-x:auto}.permission-matrix{border-collapse:collapse;width:100%;min-width:620px}.permission-matrix th,.permission-matrix td{border-bottom:1px solid var(--border);text-align:center;padding:.9rem 1rem}.permission-matrix th{background:var(--surface-soft);color:var(--text-muted);letter-spacing:.07em;text-transform:uppercase;font-size:.72rem;font-weight:800}.permission-matrix th:first-child,.permission-matrix td:first-child{text-align:left;width:40%}.permission-matrix tbody tr:last-child td{border-bottom:0}.permission-matrix tbody tr:hover{background:color-mix(in srgb, var(--primary) 4%, var(--surface))}.permission-check{cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.permission-check input{opacity:0;pointer-events:none;position:absolute}.permission-check span{border:1px solid var(--border);color:#0000;border-radius:.45rem;place-items:center;width:1.65rem;height:1.65rem;font-size:.9rem;font-weight:900;display:grid}.permission-check input:checked+span{border-color:var(--primary);background:var(--primary);color:#fff}.permission-check:hover span{border-color:var(--primary)}.permission-not-available{color:var(--text-soft);font-size:1rem}.admin-custom-select{width:100%;position:relative}.admin-custom-select-button{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:100%;min-height:48px;color:var(--text);font:inherit;text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;font-size:.95rem;transition:border-color .16s,background-color .16s,box-shadow .16s;display:flex}.admin-custom-select-button:hover{border-color:var(--primary)}.admin-custom-select.is-open .admin-custom-select-button{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 18%, transparent)}.admin-custom-select-icon{color:var(--text-muted);flex:none;font-size:1.15rem;line-height:1;transition:transform .16s}.admin-custom-select.is-open .admin-custom-select-icon{transform:rotate(180deg)}.admin-custom-select-menu{z-index:50;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);max-height:280px;box-shadow:var(--shadow-lg);padding:.35rem;display:none;position:absolute;top:calc(100% + .45rem);left:0;right:0;overflow-y:auto}.admin-custom-select.is-open .admin-custom-select-menu{display:block}.admin-custom-select-option{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.55rem;align-items:center;padding:.7rem .75rem;font-size:.9rem;transition:background-color .14s,color .14s;display:flex}.admin-custom-select-option:hover,.admin-custom-select-option[aria-selected=true]{background:var(--primary-soft);color:var(--primary)}.admin-custom-select-option.is-placeholder{border-bottom:1px solid var(--border);color:var(--text-muted);border-radius:.35rem;margin-bottom:.25rem}.admin-custom-select-option.is-placeholder:hover{color:var(--primary)}.admin-custom-select-menu::-webkit-scrollbar{width:8px}.admin-custom-select-menu::-webkit-scrollbar-track{background:var(--surface-soft);border-radius:999px}.admin-custom-select-menu::-webkit-scrollbar-thumb{background:var(--surface-strong);border-radius:999px}.admin-custom-select-menu::-webkit-scrollbar-thumb:hover{background:var(--primary)}.admin-custom-select-filter{min-width:220px}.admin-custom-select-filter .admin-custom-select-button{border-radius:.7rem;min-height:3.1rem;font-size:.9rem}.admin-custom-select-filter .admin-custom-select-menu{min-width:100%}.admin-custom-select-filter-wide{width:15rem;min-width:0}.admin-custom-select-filter-wide [data-select-label]{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.admin-custom-select-filter-wide .admin-custom-select-menu{width:max(100%,26rem);max-width:calc(100vw - 2rem)}@media (width<=900px){.admin-custom-select-filter-wide,.admin-custom-select-filter-wide .admin-custom-select-menu{width:100%}}.admin-textarea{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:100%;min-height:140px;color:var(--text);font:inherit;resize:vertical;padding:.85rem 1rem;font-size:.95rem;line-height:1.6;transition:border-color .16s,box-shadow .16s,background-color .16s}.admin-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 18%, transparent);outline:none}.admin-role-actions{flex-direction:column;align-items:flex-start;gap:.6rem;display:flex}.admin-role-actions-row{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.admin-role-edit-button{background:var(--surface);border-color:var(--border);color:var(--text)}.admin-role-delete-button{min-width:100%}.role-actions-inline{white-space:nowrap!important;flex-flow:row!important;justify-content:flex-start!important;align-items:center!important;gap:.5rem!important;display:flex!important}.role-actions-inline form,.role-action-delete-form{width:auto!important;margin:0!important;padding:0!important;display:block!important}.role-actions-inline .button{white-space:nowrap!important;border-radius:.7rem!important;flex:none!important;justify-content:center!important;align-items:center!important;width:auto!important;min-width:auto!important;min-height:2.7rem!important;margin:0!important;padding:.7rem .95rem!important;display:inline-flex!important}.role-actions-inline .role-action-permissions{border:1px solid var(--primary)!important;background:var(--primary)!important;color:#fff!important}.role-actions-inline .role-action-edit{border:1px solid var(--border)!important;background:var(--surface)!important;color:var(--text)!important;box-shadow:none!important}.role-actions-inline .role-action-edit:hover{border-color:var(--primary)!important;background:var(--surface-soft)!important;color:var(--primary)!important}.role-actions-inline .role-action-delete{color:#b71c1c!important;box-shadow:none!important;background:0 0!important;border:1px solid #b71c1c!important}.role-actions-inline .role-action-delete:hover{color:#ffcdd2!important;background:#b71c1c1f!important}.role-actions-inline .admin-role-system-label{min-height:2.7rem!important;color:var(--text-muted)!important;white-space:nowrap!important;align-items:center!important;display:inline-flex!important}.admin-table th.admin-actions-col,.admin-table td[data-label=Acciones]{white-space:nowrap!important;width:310px!important;min-width:310px!important}.permission-action-icon{background:var(--primary-soft);width:2.2rem;height:2.2rem;color:var(--primary);border-radius:.65rem;flex-shrink:0;place-items:center;font-size:.85rem;font-weight:800;display:grid}.permission-action-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.permission-action-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft);align-items:center;gap:.8rem;padding:.9rem 1rem;display:flex}.permission-action-icon{background:var(--primary-soft);width:2.2rem;height:2.2rem;color:var(--primary);border-radius:.65rem;flex:0 0 2.2rem;place-items:center;font-size:.85rem;font-weight:800;display:grid}.permission-action-card strong{color:var(--text);font-size:.9rem;display:block}.permission-action-card small{color:var(--text-muted);margin-top:.15rem;font-size:.76rem;display:block}@media (width<=720px){.permission-action-preview{grid-template-columns:1fr}}.admin-permissions-page{padding:3rem 0 5rem}.permissions-filter{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-soft);justify-content:space-between;align-items:end;gap:1rem;margin-top:2rem;padding:1rem;display:flex}.permissions-filter-main{gap:.45rem;width:min(100%,28rem);display:grid}.permissions-filter-label{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:700}.permissions-select{position:relative}.permissions-select select{appearance:none;border:1px solid var(--border);background:var(--surface);width:100%;min-height:3rem;color:var(--text);cursor:pointer;border-radius:.8rem;outline:none;padding:.75rem 2.6rem .75rem 1rem}.permissions-select select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.permissions-select-arrow{pointer-events:none;color:var(--text-muted);position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.permissions-filter-actions{align-items:center;gap:.65rem;display:flex}.permissions-summary{color:var(--text-muted);justify-content:space-between;align-items:center;gap:1rem;margin:1.5rem 0 1rem;font-size:.9rem;display:flex}.permissions-summary-filtered{color:var(--primary);font-weight:700}.permission-groups-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.permission-group-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);min-height:15rem;box-shadow:var(--shadow-sm);flex-direction:column;display:flex;overflow:hidden}.permission-group-card-header{border-bottom:1px solid var(--border);background:var(--surface-soft);align-items:center;gap:.8rem;padding:1.25rem;display:flex}.permission-group-symbol{background:var(--primary-soft);width:2.75rem;height:2.75rem;color:var(--primary);border-radius:.8rem;flex:0 0 2.75rem;place-items:center;font-size:1.1rem;font-weight:800;display:grid}.permission-group-heading{min-width:0}.permission-group-module{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;display:block;overflow:hidden}.permission-group-heading h2{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:.25rem 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1rem;overflow:hidden}.permission-group-card-body{flex:1;gap:1rem;padding:1.25rem;display:grid}.permission-group-meta{color:var(--text-muted);justify-content:space-between;gap:.75rem;font-size:.8rem;display:flex}.permission-action-chips{flex-wrap:wrap;align-content:start;gap:.45rem;display:flex}.permission-action-chip{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-muted);border-radius:999px;padding:.4rem .6rem;font-size:.78rem;font-weight:700}.permission-group-card-footer{justify-content:flex-end;padding:0 1.25rem 1.25rem;display:flex}.permission-empty-state{grid-column:1/-1}.permissions-back-link{color:var(--primary);margin-bottom:1rem;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-flex}.permission-detail-header{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-soft);grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:2rem 0 1rem;padding:1.25rem;display:grid}.permission-detail-header>div{gap:.35rem;display:grid}.permission-detail-label{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:700}.permission-detail-header strong,.permission-detail-header code{color:var(--text);font-size:.95rem}.permission-detail-list{gap:.75rem;display:grid}.permission-detail-row{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);align-items:center;gap:1rem;padding:1rem;display:flex}.permission-detail-icon{background:var(--primary-soft);width:2.75rem;height:2.75rem;color:var(--primary);border-radius:.8rem;flex:0 0 2.75rem;place-items:center;font-weight:800;display:grid}.permission-detail-content{flex:1;min-width:0}.permission-detail-action{color:var(--text);margin-bottom:.25rem;font-weight:800;display:block}.permission-detail-content code{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;display:block;overflow:hidden}.permission-detail-content p{color:var(--text-muted);margin:.4rem 0 0;font-size:.85rem}.permission-detail-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}@media (width<=1000px){.permission-groups-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.permissions-filter{flex-direction:column;align-items:stretch}.permissions-filter-main{width:100%}.permissions-filter-actions{justify-content:flex-start}.permission-groups-grid,.permission-detail-header{grid-template-columns:1fr}.permission-detail-row{flex-wrap:wrap;align-items:flex-start}.permission-detail-actions{justify-content:flex-start;width:100%}}.permission-card-actions{flex-direction:row;align-items:center;gap:.75rem;width:100%;margin-top:1.5rem;display:flex}.permission-card-actions form{flex:1;width:auto;margin:0;display:block}.permission-card-actions>a,.permission-card-actions>form{flex:1}.permission-card-actions .button{white-space:nowrap;justify-content:center;align-items:center;width:100%;min-height:2.75rem;display:flex}.permission-card-actions button{font:inherit;cursor:pointer}.permission-card-actions button:disabled{cursor:not-allowed;opacity:.45}.button-danger{color:#ffcdd2;background:#b71c1c14;border:1px solid #b71c1c73}.button-danger:hover:not(:disabled){color:#fff;background:#b71c1c2e;border-color:#b71c1cbf}.user-roles-box{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-soft);width:100%;margin-top:2rem;padding:1.5rem}.user-roles-box-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.25rem;display:flex}.user-roles-eyebrow{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.35rem;font-size:.72rem;font-weight:800;display:block}.user-roles-box h2{color:var(--text);margin:0;font-size:1.25rem;line-height:1.2}.user-roles-box-header p{max-width:680px;color:var(--text-muted);margin:.5rem 0 0;font-size:.9rem;line-height:1.5}.user-roles-counter{border:1px solid color-mix(in srgb, var(--primary) 35%, var(--border));background:var(--primary-soft);min-width:6.5rem;color:var(--primary);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:.45rem .7rem;font-size:.76rem;font-weight:800;display:inline-flex}.user-roles-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.1rem;display:flex}.user-roles-filter{flex-direction:column;gap:.4rem;display:flex}.user-roles-filter label{color:var(--text);font-size:.82rem;font-weight:650}.user-roles-filter select{border:1px solid var(--border);background:var(--surface);min-width:220px;min-height:2.6rem;color:var(--text);font:inherit;border-radius:.65rem;outline:none;padding:.5rem .8rem}.user-roles-filter select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 16%, transparent)}.user-roles-selected{flex-wrap:wrap;flex:260px;align-items:center;gap:.5rem;min-height:2.6rem;display:flex}.user-roles-selected-empty{color:var(--text-soft);font-size:.84rem}.user-role-chip{border:1px solid color-mix(in srgb, var(--primary) 35%, var(--border));background:var(--primary-soft);color:var(--primary);cursor:pointer;border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .65rem;font-size:.8rem;font-weight:700;transition:border-color .16s,background-color .16s;display:inline-flex}.user-role-chip span[aria-hidden]{font-size:.95rem;line-height:1}.user-role-chip:hover{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 20%, var(--primary-soft))}.user-roles-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.user-role-option{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;align-items:flex-start;gap:.8rem;min-height:8.5rem;padding:1rem;transition:border-color .16s,background-color .16s,box-shadow .16s,transform .16s;display:flex;position:relative}.user-role-option:hover{border-color:var(--primary);transform:translateY(-1px)}.user-role-option.is-selected{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 12%, transparent)}.user-role-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.user-role-option-check{border:1px solid var(--border);color:#0000;border-radius:.4rem;flex:0 0 1.35rem;place-items:center;width:1.35rem;height:1.35rem;font-size:.78rem;font-weight:900;display:grid}.user-role-option.is-selected .user-role-option-check{border-color:var(--primary);background:var(--primary);color:#fff}.user-role-option-body{flex-direction:column;gap:.4rem;min-width:0;display:flex}.user-role-option-title{color:var(--text);font-size:.98rem;font-weight:800;line-height:1.3}.user-role-option-code{border:1px solid color-mix(in srgb, var(--primary) 35%, var(--border));width:fit-content;color:var(--primary);border-radius:.35rem;padding:.2rem .45rem;font-size:.75rem}.user-role-option-module{color:var(--text-muted);font-size:.82rem;line-height:1.35}.user-role-option-description{color:var(--text-soft);margin-top:.15rem;font-size:.8rem;line-height:1.4}@media (width<=760px){.user-roles-box-header,.user-roles-toolbar{flex-direction:column}.user-roles-filter select{width:100%;min-width:0}.user-roles-grid{grid-template-columns:1fr}.user-roles-counter{align-self:flex-start}}.admin-user-cell .admin-user-pending{border:1px solid color-mix(in srgb, var(--primary) 45%, var(--border));width:fit-content;color:var(--primary);white-space:nowrap;border-radius:999px;margin-top:.3rem;padding:.1rem .5rem;font-size:.72rem;font-weight:700;display:inline-block}.admin-resend-form{margin:0}.admin-resend-callout{border:1px solid color-mix(in srgb, var(--primary) 35%, var(--border));border-radius:var(--radius-md);background:var(--primary-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;margin-bottom:1.25rem;padding:1rem 1.25rem;display:flex}.admin-resend-callout p{color:var(--text);margin:0}.admin-resend-callout .button{background:var(--surface);min-height:2.6rem;padding:.55rem 1rem}.admin-table-actions .admin-icon-button{width:2.5rem;padding:0}.admin-icon-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.05rem;height:1.05rem}.admin-panel-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:.65rem;display:flex}.admin-panel-header-actions form{margin:0}.admin-resend-callout p{flex:24rem}@media (width<=720px){.admin-panel-header-actions{flex-direction:column-reverse;align-items:stretch}.admin-panel-header-actions .button,.admin-panel-header-actions,.admin-panel-header-actions form{width:100%}}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.admin-form-field{flex-direction:column;gap:.5rem;display:flex}.admin-form-field-full{grid-column:1/-1}.admin-form-field label,.modules-filter-field label{color:var(--text);font-size:.9rem;font-weight:600}.admin-form-field input,.admin-form-field textarea,.admin-form-field select,.modules-filter-field input,.modules-filter-field select{border:1px solid var(--border);width:100%;color:var(--text);background:var(--surface);border-radius:.75rem;outline:none;padding:.8rem .9rem}.admin-form-field textarea{resize:vertical;min-height:8rem}.admin-form-field input::placeholder,.admin-form-field textarea::placeholder,.modules-filter-field input::placeholder{color:var(--text-soft)}.admin-form-field input:focus,.admin-form-field textarea:focus,.admin-form-field select:focus,.modules-filter-field input:focus,.modules-filter-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.admin-field-error{color:#b71c1c;font-size:.82rem}.admin-checkbox-field{cursor:pointer;align-items:center;gap:.65rem;display:inline-flex;flex-direction:row!important}.admin-checkbox-field input{width:auto;accent-color:var(--accent)}.admin-icon-field{align-items:flex-start;gap:1rem;display:flex}.admin-icon-preview{border:1px solid var(--border);background:var(--surface-soft);border-radius:.75rem;flex:0 0 3.4rem;place-items:center;width:3.4rem;height:3.4rem;display:grid}.admin-icon-preview img{object-fit:contain;width:70%;height:70%}.admin-icon-field-input{flex-direction:column;flex:1;gap:.5rem;display:flex}.admin-icon-field-input input[type=file]{border:1px solid var(--border);width:100%;color:var(--text);background:var(--surface);border-radius:.75rem;padding:.65rem .9rem;font-size:.85rem}.admin-field-hint{color:var(--text-soft);font-size:.8rem}.admin-icon-remove{color:#b71c1c;font-size:.84rem}.admin-form-actions{justify-content:flex-end;gap:.75rem;margin-top:1.75rem;display:flex}.modules-filter{grid-template-columns:minmax(0,1.5fr) minmax(180px,.7fr) auto;align-items:end;gap:1rem;margin:2rem 0 1.25rem;display:grid}.modules-filter-field{flex-direction:column;gap:.5rem;display:flex}.modules-filter-actions{gap:.65rem;display:flex}.modules-summary{color:var(--text-muted);margin:1rem 0}.modules-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.module-card-meta{color:var(--text-muted);gap:1rem;margin-top:1.25rem;font-size:.82rem;display:flex}.module-card-actions{align-items:center;gap:.75rem;width:100%;margin-top:1.5rem;display:flex}.module-card-actions form{flex:1;margin:0}.module-card-actions>a,.module-card-actions>form{flex:1;min-width:0}.module-card-actions .button{white-space:nowrap;justify-content:center;align-items:center;width:100%;display:flex}.module-card-status-inactive{color:var(--text-muted);border-color:var(--border);background:var(--surface-soft)}.button-danger{color:#b71c1c;border:1px solid color-mix(in srgb, #b71c1c 40%, var(--border));background:color-mix(in srgb, #b71c1c 10%, var(--surface))}.button-danger:hover{color:#fff;background:#b71c1c;border-color:#b71c1c}.button-danger:focus-visible{outline-offset:2px;outline:2px solid #b71c1c}@media (width<=950px){.modules-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.admin-form-grid,.modules-filter,.modules-grid{grid-template-columns:1fr}.admin-form-field-full{grid-column:auto}.modules-filter-actions{justify-content:flex-start}.admin-form-actions{flex-direction:column-reverse}.admin-form-actions .button{justify-content:center;width:100%}}.departments-summary{color:var(--text-muted);margin:0 0 .85rem;font-size:.9rem}.departments-table{min-width:960px}.departments-table th.admin-actions-col,.departments-table td[data-label=Acciones]{width:215px!important;min-width:215px!important}.departments-table .admin-table-actions{flex-wrap:nowrap}.departments-col-code{width:7rem}.departments-col-people{width:8rem}.departments-col-status{width:6rem}.departments-table .admin-table-actions .department-add-child{justify-content:center;width:2.5rem;padding:0}.department-add-child svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2px;width:1rem;height:1rem}.departments-table td[data-label=Personas],.departments-table td[data-label=Código]{white-space:nowrap}.department-cell{align-content:center;gap:.2rem;min-width:0;display:grid}.department-title{line-height:1.45}.department-title .department-abbr{vertical-align:.08em;margin-left:.45rem;line-height:1.35;display:inline-block}.department-title strong{color:var(--text);font-weight:650;line-height:1.3}.department-meta{color:var(--text-muted);font-size:.8rem}.department-abbr{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-muted);letter-spacing:.02em;border-radius:.4rem;padding:.05rem .42rem;font-size:.72rem;font-weight:700}.departments-table--arbol{--tree-col:1.75rem;--tree-line:2px;--tree-color:color-mix(in srgb, var(--text-soft) 70%, transparent)}.departments-table--arbol td{padding-top:.55rem;padding-bottom:.55rem}.departments-table--arbol td.department-td{padding-top:0;padding-bottom:0}.department-tree{align-items:stretch;min-height:3.6rem;display:flex}.tree-guide,.tree-elbow,.tree-marker{flex:0 0 var(--tree-col);position:relative}.tree-guide--sigue:before,.tree-elbow:before{top:0;bottom:-1px;left:calc(50% - var(--tree-line) / 2);width:var(--tree-line);background:var(--tree-color);content:"";position:absolute}.tree-elbow--ultimo:before{border-bottom-left-radius:.4rem;bottom:50%}.tree-elbow:after{top:calc(50% - var(--tree-line) / 2);right:0;left:calc(50% - var(--tree-line) / 2);height:var(--tree-line);background:var(--tree-color);content:"";position:absolute}.tree-marker{place-items:center;margin-right:.55rem;display:grid}.department-tree.has-children:not(.is-collapsed) .tree-marker:after{top:calc(50% + .7rem);bottom:-1px;left:calc(50% - var(--tree-line) / 2);width:var(--tree-line);background:var(--tree-color);content:"";position:absolute}.tree-toggle{z-index:1;border:1px solid var(--border);background:var(--surface);width:1.5rem;height:1.5rem;color:var(--text-muted);cursor:pointer;border-radius:.45rem;place-items:center;padding:0;transition:border-color .15s,color .15s;display:grid;position:relative}.tree-toggle:hover{border-color:var(--primary);color:var(--primary)}.tree-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tree-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:.85rem;height:.85rem;transition:transform .15s}.department-tree.is-collapsed .tree-toggle svg{transform:rotate(-90deg)}.tree-dot{border:2px solid var(--tree-color);background:var(--surface);border-radius:50%;width:.5rem;height:.5rem}.departments-table--arbol tr.is-root td{background:color-mix(in srgb, var(--primary) 5%, var(--surface))}.departments-table--arbol tr.is-root .department-title strong{font-weight:800}.departments-table--arbol tr.is-root+tr td,.departments-table--arbol tr:not(.is-root)+tr.is-root td{border-top:0}.departments-table--arbol tr.is-root:not(:first-child) td{border-top:2px solid var(--border)}.departments-table tr[hidden]{display:none}.department-hidden-count{color:var(--primary);margin-left:.35rem;font-weight:700}.departments-summary-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:.85rem;display:flex}.departments-summary-row .departments-summary{margin:0}.departments-tree-tools{gap:.5rem;display:flex}.departments-tree-tools[hidden]{display:none}.departments-tree-tools .button{min-height:2.25rem;padding:.4rem .8rem;font-size:.8rem}.department-people{color:var(--primary);text-underline-offset:.2em;font-weight:700;text-decoration:underline;text-decoration-thickness:1px}.department-people:hover{text-decoration-thickness:2px}.departments-table tr.is-inactive .department-cell strong{color:var(--text-muted)}.department-modal-note{font-size:.88rem}#departmentDeleteModal [hidden]{display:none}.department-form textarea{font:inherit}.department-form-label{color:var(--text);font-size:.9rem;font-weight:650;display:block}.department-fixed-value{border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--surface-soft);color:var(--text);margin:.45rem 0 0;padding:.75rem 1rem}.department-parent-select .admin-custom-select-menu{max-height:340px}.department-option{--department-indent:0rem;padding-left:calc(.75rem + var(--department-indent));gap:.5rem}.department-option.department-level-2{--department-indent:1.6rem}.department-option.department-level-3{--department-indent:3.2rem}.department-option.department-level-4{--department-indent:4.8rem}.department-option.department-level-5{--department-indent:6.4rem}.department-option.department-level-6{--department-indent:8rem}.department-option.department-level-1{font-weight:700}.department-option-abbr{color:var(--text-muted);font-size:.78rem;font-weight:600}@media (width<=720px){.departments-table--arbol{--tree-col:1.15rem}.tree-marker{margin-right:.35rem}}.admin-pager{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 1.5rem;padding:1.1rem 1.25rem;display:flex}.admin-pager-summary{gap:.5rem;min-width:12rem;display:grid}.admin-pager-summary p{color:var(--text-muted);margin:0;font-size:.88rem}.admin-pager-summary strong{color:var(--text);font-variant-numeric:tabular-nums;font-weight:700}.admin-pager-rail{width:100%;max-width:14rem;height:4px;display:block}.admin-pager-rail-track{fill:var(--surface-strong)}.admin-pager-rail-range{fill:var(--accent)}.admin-pager-controls{align-items:center;gap:.5rem;display:flex}.admin-pager-pages{align-items:center;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.admin-pager-step,.admin-pager-page{min-height:2.35rem;color:var(--text-muted);font-variant-numeric:tabular-nums;border:1px solid #0000;border-radius:.6rem;justify-content:center;align-items:center;font-size:.86rem;font-weight:600;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.admin-pager-page{min-width:2.35rem;padding:0 .5rem}.admin-pager-step{border-color:var(--border);background:var(--surface);color:var(--text);gap:.35rem;padding:0 .85rem}.admin-pager-step svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:1rem;height:1rem}a.admin-pager-page:hover,a.admin-pager-step:hover{border-color:var(--primary);color:var(--primary)}a.admin-pager-page:focus-visible,a.admin-pager-step:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.admin-pager-page.is-current{border-color:var(--primary);background:var(--primary);color:var(--bg)}.admin-pager-step.is-disabled{color:var(--text-soft);cursor:not-allowed;opacity:.6;background:0 0}.admin-pager-gap{min-width:1.5rem;color:var(--text-soft);justify-content:center;display:inline-flex}.admin-pager-position{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.86rem;display:none}@media (width<=640px){.admin-pager{padding:1rem}.admin-pager-summary,.admin-pager-controls{width:100%}.admin-pager-rail{max-width:none}.admin-pager-controls{justify-content:space-between}.admin-pager-pages{display:none}.admin-pager-position{display:inline}}@media (width<=420px){.admin-pager-step{min-width:2.6rem;min-height:2.6rem;padding:0}.admin-pager-step-text{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (prefers-reduced-motion:reduce){.admin-pager-step,.admin-pager-page{transition:none}}.admin-table-footer{border-top:1px solid var(--border);align-items:center;gap:.5rem 1rem;display:flex}.admin-table-footer .admin-pagination{flex:auto;min-width:0}.admin-table-footer .admin-pager{border-top:0;padding-left:0}.admin-per-page{flex:none;align-items:center;gap:.55rem;margin:0;padding:.9rem 0 .9rem 1.25rem;display:flex}.admin-per-page label{color:var(--text-muted);white-space:nowrap;font-size:.88rem}.admin-per-page select{border:1px solid var(--border);background-color:var(--surface);min-height:2.4rem;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;border-radius:.6rem;padding:.35rem 2rem .35rem .75rem;font-size:.9rem}.admin-per-page select:hover,.admin-per-page select:focus{border-color:var(--primary)}.admin-per-page select:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.admin-per-page .button{min-height:2.4rem;padding:.4rem .8rem;font-size:.85rem}.admin-per-page .button[hidden]{display:none}.admin-per-page-total{color:var(--text-muted);margin:0 1.25rem 0 auto;font-size:.88rem}@media (width<=720px){.admin-table-footer{flex-direction:column;align-items:stretch}.admin-per-page{padding:1rem 1rem 0}.admin-table-footer .admin-pager{padding-left:1rem}.admin-per-page-total{margin:0 1rem 1rem}}.profile-page{padding:2.25rem 0 4rem}.profile-header{margin-bottom:1.5rem}.profile-header h1{color:var(--text);letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.05}.profile-layout{grid-template-columns:minmax(260px,.75fr) minmax(0,1.6fr);align-items:start;gap:1.25rem;display:grid}.profile-forms{gap:1.25rem;min-width:0;display:grid}.profile-account{position:sticky;top:6rem}.profile-account-head{align-items:center;gap:.9rem;margin-bottom:1.25rem;display:flex}.profile-account-head h2{margin:0;font-size:1.1rem;line-height:1.25}.profile-account-head p{overflow-wrap:anywhere;margin:.2rem 0 0}.profile-facts{border-block:1px solid var(--border);gap:.85rem;margin:0 0 1.25rem;padding:1rem 0;display:grid}.profile-facts dt{color:var(--text-muted);font-size:.8rem}.profile-facts dd{color:var(--text);margin:.15rem 0 0;font-weight:650}.profile-section-title{margin:0 0 .35rem;font-size:1.25rem}.profile-muted{color:var(--text-muted);margin:0 0 1.25rem}.profile-account .admin-form-help{margin:0}.profile-consent{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft);margin-top:1.25rem;padding:1rem}.profile-consent[hidden]{display:none}.profile-consent-label{color:var(--text);cursor:pointer;align-items:flex-start;gap:.7rem;font-size:.9rem;line-height:1.5;display:flex}.profile-consent-label input{width:1.1rem;height:1.1rem;accent-color:var(--primary);flex:none;margin-top:.2rem}.profile-consent .admin-form-error{margin-top:.6rem;display:block}.profile-code-input{font-variant-numeric:tabular-nums;letter-spacing:.35em;max-width:12rem;font-size:1.35rem!important}.profile-resend{border-top:1px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:.4rem;margin-top:1.25rem;padding-top:1rem;display:flex}.profile-resend .profile-muted{margin:0;font-size:.9rem}.profile-link-button{color:var(--primary);text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;padding:0;font-size:.9rem;font-weight:700;text-decoration:underline}.profile-link-button:disabled{color:var(--text-soft);cursor:default;text-decoration:none}.profile-link-button:focus-visible,.profile-consent-label input:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 45%, transparent);outline-offset:2px}@media (width<=900px){.profile-layout{grid-template-columns:1fr}.profile-account{position:static}}@media (width<=640px){.profile-page .admin-form-grid{grid-template-columns:1fr}.profile-page .admin-form-actions .button{width:100%}}.profile-avatar{background:var(--surface-strong);object-fit:cover;border-radius:50%;flex:none;width:4rem;height:4rem}.profile-photo-row{align-items:center;gap:1.5rem;display:flex}.profile-photo-preview{border:1px solid var(--border);background:var(--surface-strong);object-fit:cover;border-radius:50%;flex:none;width:8rem;height:8rem}.profile-photo-actions{gap:.75rem;min-width:0;display:grid}.profile-photo-actions form{flex-wrap:wrap;gap:.75rem;display:flex}.profile-photo-actions .admin-form-help{margin:0}.profile-file-button{cursor:pointer}.profile-file-button:focus-within{outline:3px solid color-mix(in srgb, var(--primary) 45%, transparent);outline-offset:2px}.profile-photo-actions [hidden]{display:none}@media (width<=640px){.profile-photo-row{flex-direction:column;align-items:flex-start}}.password-field{width:100%;display:block;position:relative}.password-field input{width:100%;padding-right:3.1rem!important}.password-toggle{width:2.4rem;height:2.4rem;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:.55rem;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:.35rem;transform:translateY(-50%)}.password-toggle:hover{background:var(--surface-soft);color:var(--text)}.password-toggle:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 45%, transparent);outline-offset:0}.password-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.25rem;height:1.25rem}.password-meter{--meter-weak:#b71c1c;--meter-fair:#9a5b00;--meter-good:#2c6aa6;--meter-strong:#1d7a46;--meter-color:var(--meter-weak);--meter-filled:1;gap:.45rem;margin-top:.15rem;display:grid}:root[data-theme=dark] .password-meter{--meter-weak:#ff8a80;--meter-fair:#f2b25c;--meter-good:#8bdcff;--meter-strong:#7ddca0}.password-meter[hidden]{display:none}.password-meter[data-level=fair]{--meter-color:var(--meter-fair);--meter-filled:2}.password-meter[data-level=good]{--meter-color:var(--meter-good);--meter-filled:3}.password-meter[data-level=strong]{--meter-color:var(--meter-strong);--meter-filled:4}.password-meter-bar{grid-template-columns:repeat(4,1fr);gap:2px;display:grid}.password-meter-bar span{background:var(--surface-strong);border-radius:999px;height:.3rem;transition:background-color .2s}.password-meter[data-level=weak] .password-meter-bar span:nth-child(-n+1),.password-meter[data-level=fair] .password-meter-bar span:nth-child(-n+2),.password-meter[data-level=good] .password-meter-bar span:nth-child(-n+3),.password-meter[data-level=strong] .password-meter-bar span{background:var(--meter-color)}.password-meter-label{color:var(--text);margin:0;font-size:.82rem;font-weight:700}.password-requirements{color:var(--text-muted);flex-wrap:wrap;gap:.25rem .9rem;margin:0;padding:0;font-size:.8rem;list-style:none;display:flex}.password-requirements li{align-items:center;gap:.35rem;display:inline-flex}.password-requirements li:before{content:"";border:1.5px solid;border-radius:50%;place-items:center;width:.9rem;height:.9rem;font-size:.6rem;line-height:1;display:inline-grid}.password-requirements li.is-met{color:var(--text)}.password-requirements li.is-met:before{border-color:var(--meter-strong);background:var(--meter-strong);color:#fff;content:"✓"}:root[data-theme=dark] .password-requirements li.is-met:before{color:#10301d}.password-meter-hint{color:var(--text-muted);margin:0;font-size:.8rem}.password-meter-hint:empty{display:none}.password-match{margin:.15rem 0 0;font-size:.8rem;font-weight:650}.password-match:empty{display:none}.password-match[data-state=ok]{color:var(--meter-strong,#1d7a46)}.password-match[data-state=error]{color:#b71c1c}:root[data-theme=dark] .password-match[data-state=ok]{color:#7ddca0}:root[data-theme=dark] .password-match[data-state=error]{color:#ff8a80}@media (prefers-reduced-motion:reduce){.password-meter-bar span{transition:none}}.account-review-card{width:min(100%,640px)}.account-review-card .auth-header{margin-bottom:1.5rem}.account-review-card .form-field input,.account-review-card .form-field select{font-size:.95rem}.account-review-identity{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft);grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;margin:0 0 1.5rem;padding:.9rem 1rem;display:grid}.account-review-identity dt{color:var(--text-muted);font-size:.75rem;font-weight:700}.account-review-identity dd{color:var(--text);overflow-wrap:anywhere;margin:.15rem 0 0;font-weight:600}.account-review-group{border:0;min-width:0;margin:0;padding:0}.account-review-group+.account-review-group{border-top:1px solid var(--border);padding-top:1.25rem}.account-review-group legend{float:left;width:100%;color:var(--text);margin-bottom:.85rem;font-size:1rem;font-weight:800}.account-review-group legend+*{clear:both}.account-review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.account-review-required{color:var(--text-muted);font-size:.78rem;font-weight:500}.account-review-help{color:var(--text-muted);margin:.35rem 0 0;font-size:.8rem;display:block}.account-review-group>.account-review-help{margin:-.35rem 0 .9rem}.form-field select{border:1px solid var(--border);background:var(--surface-soft);width:100%;min-height:3rem;color:var(--text);border-radius:.7rem;outline:none;padding:0 .85rem;font-family:inherit;transition:border-color .16s,box-shadow .16s}.form-field select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 18%, transparent)}@media (width<=560px){.account-review-identity,.account-review-grid{grid-template-columns:minmax(0,1fr)}}.birthday-band{padding-top:1.75rem}.birthday-card{border-radius:var(--radius-lg);background:radial-gradient(90% 140% at 100% 0%, #24b2e361, transparent 60%), linear-gradient(110deg, var(--header-bg) 0%, var(--header-bg-mid) 50%, var(--header-bg-end) 100%);box-shadow:var(--shadow-lg);color:#fff;align-items:center;gap:clamp(1.25rem,3vw,2.25rem);padding:2.25rem clamp(1.5rem,4vw,3rem) 2rem;display:flex;position:relative;overflow:hidden}.birthday-card:before{content:"";background:linear-gradient(#24b2e3 0 33.33%,#fff 33.33% 66.66%,#24b2e3 66.66% 100%);height:12px;position:absolute;top:0;left:0;right:0}.birthday-confetti{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.birthday-seal{background:#fff;border-radius:50%;flex:none;width:112px;height:112px;padding:6px;position:relative}.birthday-seal:after{content:"";border:2px dashed #ccf0ffd9;border-radius:50%;animation:36s linear infinite birthday-giro;position:absolute;inset:-9px}@keyframes birthday-giro{to{transform:rotate(360deg)}}.birthday-seal img{object-fit:cover;background:#dbe7f2;border-radius:50%;width:100%;height:100%;display:block}.birthday-copy{min-width:0;position:relative}.birthday-copy h2{color:#fff;letter-spacing:-.02em;margin:0;font-size:clamp(1.6rem,3.6vw,2.4rem);font-weight:800;line-height:1.1}.birthday-copy p{color:#ffffffdb;max-width:38rem;margin:.7rem 0 0;font-size:1rem;line-height:1.55}@media (width<=640px){.birthday-card{flex-direction:column;align-items:flex-start;padding-top:2.5rem}.birthday-seal{width:92px;height:92px}}@media (prefers-reduced-motion:reduce){.birthday-seal:after{animation:none}}.temporada-ancla{flex:none;display:inline-flex;position:relative}.temporada{--t-celeste:#24b2e3;--t-cielo:#ccf0ff;--t-amarillo:#ffc83d;--t-rosado:#ff7aa2;--t-verde:#3cc6a5;--t-lila:#b79be8;--t-blanco:#fff;--t-linea:#fffc;z-index:1;pointer-events:none;font-size:19px;position:absolute}.temporada--tarjeta{--t-linea:var(--text-soft);font-size:25px}.temporada-ancla:has(.temporada--tarjeta){margin-right:.5rem}.temporada--tarjeta svg{filter:drop-shadow(0 1px 1.5px #1e315973)drop-shadow(0 0 .5px #1e315999)}.temporada svg{width:100%;height:100%;display:block;overflow:visible}.temporada svg *{transform-box:fill-box;transform-origin:50%}.temporada svg [transform]{transform-box:view-box;transform-origin:0 0}.temporada--destellos,.temporada--carino,.temporada--flor-de-mayo,.temporada--canicula,.temporada--barrilete-gigante{width:1.05em;height:1.05em;top:-.55em;right:-.6em}.temporada--jacaranda,.temporada--lluvia{width:1em;height:1.35em;top:-.75em;right:-.65em}.temporada--patria{width:1.15em;height:1.15em;top:-.75em;right:-.75em}.temporada--halloween{width:1.7em;height:1.7em;top:-.95em;right:-.9em}.temporada--alfombra{height:.38em;bottom:-.3em;left:-.15em;right:-.15em}.temporada--feria{height:.75em;top:-.45em;left:-.35em;right:-.35em}.temporada--navidad{inset:-.5em -.45em -.55em}.t-destello{fill:var(--t-amarillo);animation:2.4s ease-in-out infinite t-titilar}.t-destello--2{fill:var(--t-blanco);animation-delay:.8s}.t-destello--3{fill:var(--t-cielo);animation-delay:1.6s}@keyframes t-titilar{0%,to{opacity:.25;transform:scale(.55)}50%{opacity:1;transform:scale(1)}}.t-cohete path{fill:none;stroke:var(--t-amarillo);stroke-linecap:round;stroke-width:1.3px}.t-cohete{animation:3s ease-out infinite t-estallar}@keyframes t-estallar{0%,55%{opacity:0;transform:scale(.2)}62%{opacity:1}85%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.t-corazon{fill:var(--t-rosado);animation:4.5s ease-in-out infinite t-subir}.t-corazon--2{fill:#ffb3c9;animation-delay:2.2s}@keyframes t-subir{0%{opacity:0;transform:translateY(5px)scale(.6)}20%{opacity:1;transform:translateY(0)scale(1)}60%{opacity:1;transform:translateY(-3px)scale(1)}to{opacity:0;transform:translateY(-9px)scale(.85)}}.t-petalo{fill:var(--t-lila);animation:5s linear infinite t-caer}.t-petalo--2{fill:#d6c4f5;animation-delay:1.7s}.t-petalo--3{animation-delay:3.3s}.t-petalo--4{fill:#9f80dd;animation-delay:2.5s}@keyframes t-caer{0%{opacity:0;transform:translate(0)rotate(0)}12%{opacity:1}35%{transform:translate(4px,8px)rotate(70deg)}65%{transform:translate(-3px,16px)rotate(140deg)}to{opacity:0;transform:translate(2px,25px)rotate(220deg)}}.t-alfombra-fondo{fill:#7b2d8e}.t-aserrin--a{fill:var(--t-amarillo)}.t-aserrin--b{fill:var(--t-verde)}.t-aserrin--c{fill:var(--t-blanco)}.t-aserrin--d{fill:var(--t-rosado)}.temporada--alfombra svg{transform-origin:0;animation:1.4s ease-out .3s both t-dibujar}.t-alfombra-brillo{animation:3.2s ease-in-out 1.8s infinite t-recorrer}@keyframes t-recorrer{0%{transform:translate(0)}60%,to{transform:translate(54px)}}@keyframes t-dibujar{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.t-flor-petalo{fill:var(--t-blanco)}.t-flor-centro{fill:var(--t-amarillo)}.t-flor{animation:1.2s ease-out .3s both t-abrir,5s ease-in-out 1.5s infinite t-mecer}.t-polen{fill:var(--t-amarillo);animation:3.4s ease-out infinite t-polen}.t-polen--2{animation-delay:1.1s}.t-polen--3{fill:#fff1a8;animation-delay:2.2s}@keyframes t-polen{0%{opacity:0;transform:translateY(4px)}25%{opacity:1}to{opacity:0;transform:translate(-3px,-7px)}}@keyframes t-abrir{0%{transform:scale(.2)rotate(-60deg)}to{transform:scale(1)rotate(0)}}@keyframes t-mecer{0%,to{transform:rotate(0)}50%{transform:rotate(14deg)}}.t-nube{fill:var(--t-blanco)}.t-gota{fill:var(--t-celeste);animation:1.6s ease-in infinite t-gotear}.t-gota--2{animation-delay:.55s}.t-gota--3{animation-delay:1.1s}.t-nube-vuelo{animation:4.5s ease-in-out infinite t-flotar-lado}@keyframes t-flotar-lado{0%,to{transform:translate(-1.5px)}50%{transform:translate(2px)}}@keyframes t-gotear{0%{opacity:0;transform:translateY(-2px)}20%{opacity:1}to{opacity:0;transform:translateY(11px)}}.t-sol{fill:var(--t-amarillo)}.t-rayos path{fill:none;stroke:var(--t-amarillo);stroke-linecap:round;stroke-width:2px}.t-rayos{animation:14s linear infinite t-girar}.t-resplandor{fill:var(--t-amarillo);opacity:.25;animation:2.8s ease-in-out infinite t-latir}@keyframes t-latir{0%,to{opacity:.15;transform:scale(.8)}50%{opacity:.4;transform:scale(1.2)}}@keyframes t-girar{to{transform:rotate(360deg)}}.t-pita{fill:none;stroke:var(--t-linea);stroke-width:.8px}.t-banderin{transform-origin:top;animation:2.6s ease-in-out infinite t-columpio}.t-banderin--1{fill:var(--t-rosado)}.t-banderin--2{fill:var(--t-amarillo);animation-delay:.3s}.t-banderin--3{fill:var(--t-celeste);animation-delay:.6s}.t-banderin--4{fill:var(--t-verde);animation-delay:.9s}.t-banderin--5{fill:var(--t-blanco);animation-delay:1.2s}.t-confeti-feria{fill:var(--t-amarillo);animation:2.8s linear infinite t-confeti-caer}.t-confeti-feria--2{fill:var(--t-rosado);animation-delay:1.4s}@keyframes t-confeti-caer{0%{opacity:0;transform:translateY(-4px)rotate(0)}20%{opacity:1}to{opacity:0;transform:translateY(9px)rotate(260deg)}}@keyframes t-columpio{0%,to{transform:rotate(-9deg)}50%{transform:rotate(9deg)}}.t-asta{fill:none;stroke:var(--t-cielo);stroke-linecap:round;stroke-width:1.4px}.t-bandera-celeste{fill:#4997d0}.t-bandera-blanca{fill:var(--t-blanco)}.t-bandera{transform-origin:0;animation:2.2s ease-in-out infinite t-ondear}@keyframes t-ondear{0%,to{transform:skewY(0)scaleX(1)}50%{transform:skewY(-6deg)scaleX(.9)}}.t-gajo-calabaza{fill:#f2801f}.t-gajo-calabaza--centro{fill:#ff9a3c}.t-tallo{fill:none;stroke:#3cc6a5;stroke-linecap:round;stroke-width:1.8px}.t-cara path{fill:#fff1a8;stroke:#7a2f00;stroke-linejoin:round;stroke-width:.55px;animation:2.6s ease-in-out infinite t-vela}@keyframes t-vela{0%,to{fill:#fff1a8}40%{fill:#ffd34d}55%{fill:#fffbe0}70%{fill:#ffc21f}}.t-calabaza{transform-origin:50% 100%;animation:3.6s ease-in-out infinite t-saltito}@keyframes t-saltito{0%,80%,to{transform:translateY(0)rotate(0)}86%{transform:translateY(-1.5px)rotate(-5deg)}92%{transform:translateY(0)rotate(4deg)}}.t-murcielago{fill:#2b2140;stroke:#ffffff8c;stroke-width:.35px;animation:.42s ease-in-out infinite alternate t-aletear}.temporada--tarjeta .t-murcielago{stroke:none}@keyframes t-aletear{0%{transform:scaleY(1)}to{transform:scaleY(.45)}}.t-murcielago-vuelo{animation:5s ease-in-out infinite t-revolotear}@keyframes t-revolotear{0%,to{transform:translate(0)}25%{transform:translate(5px,-3px)}50%{transform:translate(11px,1px)}75%{transform:translate(4px,3px)}}.t-gajo--1{fill:var(--t-rosado)}.t-gajo--2{fill:var(--t-amarillo)}.t-gajo--3{fill:var(--t-verde)}.t-gajo--4{fill:var(--t-celeste)}.t-gigante-centro{fill:var(--t-blanco)}.t-gigante{animation:12s linear infinite t-girar}.t-gigante-vuelo{animation:3.2s ease-in-out infinite t-flotar}@keyframes t-flotar{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.t-nieve{fill:#fff;stroke:#cfe3f4;stroke-width:.5px;filter:drop-shadow(0 1px 1px #1e31594d)}.t-copo{fill:#fff;animation:4.2s linear infinite t-nevar}.t-copo--2{animation-delay:1s}.t-copo--3{animation-delay:2.1s}.t-copo--4{animation-delay:3.1s}@keyframes t-nevar{0%{opacity:0;transform:translate(0)}10%{opacity:.95}50%{transform:translate(2px,17px)}90%{opacity:.85}to{opacity:0;transform:translate(-1px,34px)}}.t-cable{fill:none;stroke:var(--t-verde);stroke-width:1px}.t-foco{animation:1.8s step-end infinite t-encender}.t-foco--1{fill:var(--t-amarillo)}.t-foco--2{fill:var(--t-rosado);animation-delay:.9s}.t-foco--3{fill:var(--t-verde)}.t-foco--4{fill:var(--t-celeste);animation-delay:.9s}.t-foco--5{fill:var(--t-amarillo)}@keyframes t-encender{0%,to{opacity:1;filter:drop-shadow(0 0 2px)}50%{opacity:.6;filter:none}}.temporadas-prueba{padding:2.5rem 0 4rem}.temporadas-prueba h1{margin:0 0 .35rem}.temporadas-prueba>.container>p{color:var(--text-muted);margin:0 0 1.75rem}.temporadas-prueba-grilla{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.temporadas-prueba-mes{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:1rem;overflow:hidden}.temporadas-prueba-mes h2{margin:0;padding:.85rem 1rem .2rem;font-size:1rem}.temporadas-prueba-mes p{color:var(--text-muted);margin:0;padding:0 1rem .9rem;font-size:.85rem}.temporadas-prueba-barra{background:linear-gradient(90deg, var(--header-bg), var(--header-bg-mid) 55%, var(--header-bg-end));justify-content:flex-end;padding:1.1rem 1.25rem .9rem;display:flex}.temporadas-prueba-barra .nav-account-avatar{width:2.1rem;height:2.1rem}.temporadas-prueba-tarjeta{border:1px solid var(--border);background:var(--surface);border-radius:1rem;align-items:center;gap:1rem;margin:1rem;padding:1.1rem 1rem;display:flex}.temporadas-prueba-tarjeta strong{display:block}.temporadas-prueba-tarjeta div>span{color:var(--text-muted);font-size:.82rem}@media (prefers-reduced-motion:reduce){.temporada,.temporada *{animation:none!important}.t-corazon,.t-petalo,.t-gota,.t-copo,.t-polen{opacity:1}.t-cohete,.t-confeti-feria,.t-alfombra-brillo{opacity:0}}.system-notice,.system-notice--informacion{--notice-accent:#24b2e3;--notice-strong:#0f5a7d}.system-notice--mantenimiento{--notice-accent:#c98a00;--notice-strong:#7a5000}.system-notice--importante{--notice-accent:#b71c1c;--notice-strong:#9f1818}.system-notice--novedad{--notice-accent:#2e7d4f;--notice-strong:#22613c}:root[data-theme=dark] .system-notice--informacion{--notice-strong:#8bdcff}:root[data-theme=dark] .system-notice--mantenimiento{--notice-accent:#e0a100;--notice-strong:#ffcf5c}:root[data-theme=dark] .system-notice--importante{--notice-accent:#ef5350;--notice-strong:#ff9a9a}:root[data-theme=dark] .system-notice--novedad{--notice-accent:#4caf7a;--notice-strong:#7fd4a2}.system-notice{--notice-bg:color-mix(in srgb, var(--notice-accent) 9%, var(--surface));border-bottom:1px solid color-mix(in srgb, var(--notice-accent) 35%, var(--border));background:var(--notice-bg);color:var(--text)}.system-notice[hidden]{display:none}.system-notice__inner{box-shadow:inset 4px 0 0 var(--notice-accent);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:1rem;padding:.9rem 0 .95rem 1rem;display:grid}.system-notice__date{border:1.5px solid var(--notice-strong);background:var(--surface);text-align:center;border-radius:.55rem;width:3.4rem;display:grid;overflow:hidden}.system-notice__month{background:var(--notice-strong);color:var(--surface);letter-spacing:.02em;padding:.1rem 0 .15rem;font-size:.72rem;font-weight:700;line-height:1.2}.system-notice__day{color:var(--notice-strong);font-variant-numeric:tabular-nums;padding:.1rem 0 .2rem;font-size:1.6rem;font-weight:800;line-height:1.15}.system-notice__icon{background:color-mix(in srgb, var(--notice-accent) 18%, var(--surface));width:2.25rem;height:2.25rem;color:var(--notice-strong);border-radius:50%;place-items:center;display:inline-grid}.system-notice__icon-svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1.2rem;height:1.2rem}.system-notice__body{min-width:0;max-width:72ch}.system-notice__body p{margin:0}.system-notice__kicker{color:var(--notice-strong);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;display:flex}.system-notice__when{white-space:nowrap;border:1px solid;border-radius:999px;padding:.05rem .5rem;font-size:.78rem;font-weight:700}.system-notice__when--en-curso{border-color:var(--notice-strong);background:var(--notice-strong);color:var(--surface)}.system-notice__when--finalizo{color:var(--text-muted)}.system-notice__title{font-size:1.05rem;font-weight:700;line-height:1.35;margin-top:.15rem!important}.system-notice__event{font-weight:600;margin-top:.2rem!important}.system-notice__message{color:var(--text-muted);overflow-wrap:anywhere;font-size:.95rem;line-height:1.55;margin-top:.3rem!important}.system-notice__close{border:1px solid color-mix(in srgb, var(--notice-accent) 45%, var(--border));background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:.55rem;align-items:center;gap:.35rem;padding:.35rem .65rem;font-size:.85rem;font-weight:600;display:inline-flex}.system-notice__close:hover{border-color:var(--notice-strong)}.system-notice__close:focus-visible{outline:2px solid var(--notice-strong);outline-offset:2px}.system-notice__close svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;width:.9rem;height:.9rem}.system-notice.is-plegado{display:none}.system-notices__more{border-bottom:1px solid var(--border);background:var(--surface-soft)}.system-notices__more[hidden]{display:none}.system-notices__toggle{color:var(--primary);font:inherit;cursor:pointer;text-underline-offset:.2em;background:0 0;border:0;margin:0;padding:.5rem 0 .5rem 1rem;font-size:.9rem;font-weight:700;text-decoration:underline}.system-notices__toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:.3rem}.system-notice.is-cerrando{opacity:0;transition:opacity .18s,transform .18s;transform:translateY(-.35rem)}@media (prefers-reduced-motion:reduce){.system-notice.is-cerrando{transition:none}}@media (width<=640px){.system-notice__inner{gap:.7rem;padding-left:.8rem}.system-notice__date{width:2.9rem}.system-notice__day{font-size:1.3rem}.system-notice__close{padding:.35rem}.system-notice__close-text{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.notice-list{gap:1rem;margin-top:1.25rem;display:grid}.notice-item{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.notice-item .system-notice__inner{width:auto;padding:.8rem 1rem}.notice-item__meta{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;padding:.85rem 1rem;display:flex}.notice-item__dates{color:var(--text-muted);gap:.15rem;margin:0;font-size:.9rem;display:grid}.notice-item__dates strong{color:var(--text)}.notice-item__actions{flex-wrap:wrap;gap:.5rem;display:flex}.notice-state{white-space:nowrap;border:1px solid;border-radius:999px;padding:.15rem .6rem;font-size:.8rem;font-weight:700;display:inline-block}.notice-state--visible{color:#1f6b43}.notice-state--programado{color:#1b5f84}.notice-state--finalizado,.notice-state--pausado{color:var(--text-muted)}:root[data-theme=dark] .notice-state--visible{color:#7fd4a2}:root[data-theme=dark] .notice-state--programado{color:#8bdcff}.notice-type-options{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.6rem;display:grid}.notice-type-option{border:1px solid var(--border);border-left:4px solid var(--notice-accent);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;align-items:flex-start;gap:.6rem;padding:.65rem .75rem;display:flex}.notice-type-option:has(input:checked){background:color-mix(in srgb, var(--notice-accent) 12%, var(--surface));border-color:var(--notice-accent)}.admin-form-field .notice-type-option input{width:auto;min-height:0;accent-color:var(--notice-accent);margin-top:.25rem;padding:0}.admin-form-field .notice-type-option{font-weight:400}.admin-form-label{color:var(--text);font-size:.9rem;font-weight:650}.notice-type-option small{opacity:.85;display:block}.notice-form textarea{background:var(--surface);color:var(--text);font:inherit;border-radius:.75rem;padding:.75rem .95rem}
