:root{--ink:#fff8f2;--paper:#160d18;--accent:#f3a340;--accent-strong:#ffbd61;--line:rgba(255,232,214,.18);--muted:#d7c1bd;--panel:rgba(47,25,39,.66);--shadow:0 22px 54px rgba(0,0,0,.32)}
*{box-sizing:border-box}body{min-height:100vh;margin:0;color:var(--ink);background:radial-gradient(circle at 8% 4%,#eeae52 0,rgba(238,174,82,.25) 18%,transparent 37%),radial-gradient(circle at 95% 20%,#c45332 0,rgba(196,83,50,.17) 26%,transparent 46%),linear-gradient(135deg,#190f1b 0%,#51232b 46%,#19111d 100%);background-attachment:fixed;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-size:14px}body:before{position:fixed;z-index:-1;inset:auto -10vw -18vh 22vw;height:55vh;content:"";background:linear-gradient(125deg,transparent 10%,rgba(123,24,93,.55) 48%,transparent 49%);filter:blur(18px);pointer-events:none}a{color:var(--accent-strong);text-decoration:none}a:hover{color:#fff}.brand{font-size:18px;font-weight:800;letter-spacing:-.04em}.brand span,.eyebrow{color:var(--accent-strong)}
.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(100%,430px);padding:34px;background:linear-gradient(145deg,rgba(63,35,50,.86),rgba(29,17,31,.78));border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);backdrop-filter:blur(18px)}.login-card h1{margin:34px 0 10px;font-size:26px;letter-spacing:-.02em}.login-card p{color:var(--muted)}
form{display:grid;gap:12px;margin-top:20px}label{display:grid;gap:6px;margin-top:4px;font-size:13px;font-weight:650}input,select,textarea{width:100%;min-height:40px;padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:rgba(15,9,17,.32);color:var(--ink);font:inherit}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:1px solid var(--accent);box-shadow:0 0 0 3px rgba(243,163,64,.18)}option{color:#21131e;background:#fff7f0}button,.button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;margin-top:8px;padding:7px 14px;border:1px solid transparent;border-radius:10px;color:#26120c!important;background:linear-gradient(135deg,var(--accent-strong),#e6872f);box-shadow:0 8px 20px rgba(243,163,64,.2);font:inherit;font-weight:750;cursor:pointer;transition:transform .18s ease,filter .18s ease}button:hover,.button:hover{color:#26120c!important;filter:brightness(1.08);transform:translateY(-1px)}.alert{margin-top:18px;padding:12px 14px;border:1px solid rgba(255,140,123,.45);border-radius:11px;background:rgba(89,25,33,.55);color:#fff0ea}
.topbar{display:flex;justify-content:space-between;align-items:center;min-height:60px;padding:0 max(24px,calc((100% - 1240px)/2));border-bottom:1px solid var(--line);background:rgba(25,14,27,.58);box-shadow:0 5px 28px rgba(0,0,0,.12);backdrop-filter:blur(18px);color:var(--ink)}.topbar .brand{color:var(--ink)}.topbar .brand span{color:var(--accent)}.account{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:13px}.account a{color:var(--ink);font-weight:650}.account .button{min-height:32px;margin:0;padding:5px 11px}
.dashboard{width:min(1280px,calc(100% - 40px));margin:0 auto;padding:42px 0 58px}.eyebrow{margin:0 0 8px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.dashboard h1{margin:0 0 24px;font-size:32px;font-weight:750;letter-spacing:-.04em}.stat{display:flex;flex-direction:column;width:220px;margin-bottom:22px;padding:20px;border:1px solid var(--line);border-radius:18px;color:var(--ink);background:var(--panel);box-shadow:var(--shadow);backdrop-filter:blur(14px)}.stat span{color:var(--muted);font-size:13px}.stat strong{margin-top:8px;font-size:32px}.panel{margin-bottom:20px;padding:22px;background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);backdrop-filter:blur(14px)}.panel h2{margin:0 0 18px;font-size:17px;font-weight:750}.table-wrap{overflow-x:auto;border-radius:12px}table{width:100%;border-collapse:collapse;text-align:left;background:rgba(20,12,22,.26)}th,td{padding:13px 11px;border-bottom:1px solid var(--line);font-size:13px;vertical-align:middle}th{color:#ffe9d8;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}tr:hover td{background:rgba(255,232,214,.08)}.notice{border:1px solid rgba(243,163,64,.5);border-radius:11px;background:rgba(85,54,37,.58);box-shadow:none}.success{color:#d9ffe3!important;background:rgba(20,93,54,.58)!important}.error{color:#ffe1e2!important;background:rgba(117,30,43,.6)!important}
@media(max-width:600px){.login-card{padding:26px}.account span{display:none}.dashboard{padding-top:28px}.panel{padding:16px}.topbar{padding:0 16px}}
body.theme-light{--ink:#2a1820;--paper:#fff5ed;--accent:#bd682c;--accent-strong:#a95024;--line:rgba(91,46,44,.2);--muted:#765d63;--panel:rgba(255,255,255,.74);--shadow:0 18px 42px rgba(91,46,44,.15);background:radial-gradient(circle at 7% 2%,#ffd47c 0,rgba(255,212,124,.42) 20%,transparent 38%),radial-gradient(circle at 96% 12%,#f29b6b 0,rgba(242,155,107,.28) 27%,transparent 47%),linear-gradient(135deg,#fff8f1 0%,#f3d5ca 52%,#f9eee9 100%)}body.theme-light:before{background:linear-gradient(125deg,transparent 10%,rgba(235,151,168,.32) 48%,transparent 49%)}body.theme-light .topbar{background:rgba(255,250,246,.72)}body.theme-light .topbar .brand,body.theme-light .account a{color:#2a1820}body.theme-light .global-side-menu,body.theme-light .side-menu{background:linear-gradient(180deg,rgba(255,247,239,.96),rgba(246,213,204,.93));border-color:rgba(104,55,50,.15)}body.theme-light .global-side-menu .brand,body.theme-light .side-menu .brand{color:#2a1820}body.theme-light .global-side-menu a,body.theme-light .side-menu a,body.theme-light .membership-submenu summary{color:#583840}body.theme-light .global-side-menu a:hover,body.theme-light .global-side-menu a.active,body.theme-light .side-menu a:hover,body.theme-light .side-menu a.active{color:#fff;background:linear-gradient(135deg,#b85a2b,#e49043)}body.theme-light .global-side-menu p,body.theme-light .side-menu .menu-label{color:#9b7773}body.theme-light input,body.theme-light select,body.theme-light textarea{background:rgba(255,255,255,.76);color:#2a1820}body.theme-light table{background:rgba(255,255,255,.36)}body.theme-light th{color:#4c2b31}
.theme-switch{display:inline-flex;align-items:center;gap:9px;min-height:38px;margin:0!important;padding:4px 11px 4px 5px!important;border:1px solid rgba(255,224,199,.27)!important;border-radius:999px!important;color:#fff8f2!important;background:rgba(32,17,31,.48)!important;box-shadow:inset 0 1px rgba(255,255,255,.12),0 8px 20px rgba(12,4,13,.17)!important;font-size:11px!important;font-weight:800!important;letter-spacing:.03em;line-height:1;backdrop-filter:blur(14px);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease!important}.theme-switch:hover{color:#fff8f2!important;filter:none!important;transform:none!important;border-color:rgba(255,207,128,.7)!important;background:rgba(67,31,51,.66)!important;box-shadow:inset 0 1px rgba(255,255,255,.18),0 10px 24px rgba(12,4,13,.22)!important}.theme-switch-track{position:relative;display:grid;grid-template-columns:1fr 1fr;place-items:center;width:46px;height:28px;overflow:hidden;border:1px solid rgba(255,224,199,.2);border-radius:999px;background:linear-gradient(135deg,#22162a,#5d304b);font-size:14px}.theme-switch-moon,.theme-switch-sun{position:relative;z-index:1;display:grid;place-items:center;width:21px;height:100%;opacity:.72}.theme-switch-sun{color:#ffcf78}.theme-switch-thumb{position:absolute;z-index:2;top:3px;left:3px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;color:#ffe0a6;background:linear-gradient(135deg,#4a3154,#271c35);box-shadow:0 3px 8px rgba(0,0,0,.36);font-size:12px;transition:transform .25s cubic-bezier(.3,.8,.3,1),background .25s ease,color .25s ease}.theme-light .theme-switch{color:#4c2b31!important;border-color:rgba(145,84,57,.25)!important;background:rgba(255,255,255,.6)!important}.theme-light .theme-switch:hover{color:#4c2b31!important;background:rgba(255,255,255,.86)!important}.theme-light .theme-switch-track{background:linear-gradient(135deg,#f0b45f,#f6d782);border-color:rgba(164,97,47,.2)}.theme-light .theme-switch-thumb{transform:translateX(18px);color:#9f5526;background:linear-gradient(135deg,#fff8ce,#f6bd54);box-shadow:0 3px 9px rgba(143,77,28,.28)}@media(max-width:600px){.theme-switch .theme-switch-label{display:none}.theme-switch{min-width:56px;padding:4px!important}}

/* Mantiene el encabezado visible al desplazarse en todas las paginas internas. */
body:not(.auth-page){padding-top:60px}
.topbar{position:fixed!important;z-index:1000;top:0;right:0;left:0;width:100%;background:rgba(25,14,27,.92)}
body.theme-light .topbar,html.theme-light .topbar{background:rgba(255,250,246,.9)!important}
