@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color:#f4f7f3;font-synthesis:none;text-rendering:optimizelegibility;--bg:#08130f;--panel:#101d17;--panel2:#14231a;--line:#283a2d;--muted:#aab8ad;--lime:#a3ff32;--lime-soft:#d9ffb0;--red:#ff7373;--yellow:#ffda68;background:#08130f;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-width:320px;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}.container{width:min(1160px,100% - 40px);margin-inline:auto}.site-header{z-index:5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#08130ff0;height:76px;position:sticky;top:0}.header-row,.site-header nav,.brand,.footer-row{align-items:center;display:flex}.header-row{justify-content:space-between;gap:20px;height:100%}.brand{letter-spacing:.075em;white-space:nowrap;gap:10px;font-size:13px;font-weight:900;text-decoration:none}.brand img{object-fit:contain;width:58px;height:58px}.brand em{color:var(--lime);font-style:normal}.brand-compact img{width:58px;height:58px}.brand-compact{font-size:11px}.site-header nav{gap:23px}.site-header nav a{color:#bdc8bf;font-size:13px;font-weight:700;text-decoration:none}.site-header nav a:hover{color:var(--lime)}.button{border:1px solid var(--lime);background:var(--lime);color:#10200d;cursor:pointer;border-radius:9px;justify-content:center;align-items:center;padding:12px 16px;font-weight:800;text-decoration:none;transition:transform .15s,background .15s;display:inline-flex}.button:hover{background:var(--lime-soft);transform:translateY(-1px)}.button:disabled{opacity:.55;cursor:wait;transform:none}.button-small{padding:9px 12px}.button-outline{color:var(--lime);background:0 0}.button-outline:hover{color:#10200d}.hero{background:radial-gradient(at 77% 12%,#1b3b24 0,#0000 42%),linear-gradient(#0a1710,#08130f);padding:76px 0 72px}.hero-grid{grid-template-columns:1.2fr .8fr;align-items:center;gap:45px;display:grid}.eyebrow{color:var(--lime);text-transform:uppercase;letter-spacing:.16em;margin:0 0 10px;font-size:11px;font-weight:800}.hero h1,.auth-card h1{letter-spacing:-.055em;margin:0;font:800 clamp(38px,6vw,70px)/1.02 Manrope,sans-serif}.hero h1 span{color:var(--lime)}.lead{max-width:570px;color:var(--muted);margin:18px 0 25px;font-size:17px;line-height:1.6}.button-row{flex-wrap:wrap;gap:11px;display:flex}.hero-emblem{place-items:center;min-height:300px;display:grid}.hero-emblem img{object-fit:contain;filter:drop-shadow(0 16px 40px #0009);width:min(310px,100%);height:360px}.section{padding:70px 0}.section-dark{background:#0d1912;border-block:1px solid #192a1e}.section-title{justify-content:space-between;align-items:end;gap:25px;margin-bottom:27px;display:flex}.section-title h2,.social-layout h2{letter-spacing:-.045em;margin:0;font:800 clamp(27px,4vw,42px)/1.1 Manrope,sans-serif}.section-title>p{max-width:390px;color:var(--muted);margin:0;font-size:13px}.schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.schedule-card{border:1px solid var(--line);background:linear-gradient(145deg,#14241b,#0f1b15);border-radius:14px;min-height:160px;padding:20px}.schedule-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.schedule-heading h3{margin:0;font-size:16px}.schedule-pill{white-space:nowrap;color:var(--lime-soft);background:#253b20;border:1px solid #45612d;border-radius:99px;padding:5px 9px;font-size:10px;font-weight:800}.days{color:#d9e2da;margin:15px 0 3px;font-size:13px}.hours{color:var(--lime);margin:0;font-size:19px;font-weight:800}.venue{color:var(--muted);margin:5px 0 0;font-size:12px}.media-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.public-media{border:1px solid var(--line);background:linear-gradient(145deg,#14231a,#0d1811);border-radius:14px;overflow:hidden}.public-media>img{object-fit:cover;background:#15241b;width:100%;height:245px;display:block}.public-media-copy{padding:14px}.public-media-copy small{color:var(--lime);letter-spacing:.12em;font-size:10px;font-weight:800}.public-media-copy h3{margin:4px 0;font-size:15px}.public-media-copy p{color:var(--muted);margin:0;font-size:12px}.video-card{color:#fff;background:radial-gradient(#274b2a,#102016 65%,#0b1510);flex-direction:column;justify-content:center;align-items:center;gap:13px;min-height:245px;text-decoration:none;display:flex;position:relative;overflow:hidden}.video-card>img{object-fit:cover;opacity:.72;width:100%;height:100%;position:absolute;inset:0}.video-card:after{content:"";pointer-events:none;background:linear-gradient(#0000 42%,#06100bc9);position:absolute;inset:0}.video-card>span,.video-card>b{z-index:1;position:relative}.video-card>b{color:#f3ffe9;font-size:12px}.video-card>span{background:var(--lime);color:#11200c;border-radius:50%;place-items:center;width:58px;height:58px;padding-left:4px;font-size:20px;display:grid}.video-card a{color:#edffe1;font-size:12px}.social-layout{grid-template-columns:1.1fr .9fr;align-items:center;gap:32px;display:grid}.social-layout .lead{font-size:14px}.social-links{flex-wrap:wrap;gap:10px;display:flex}.social-links a{background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:10px 13px;font-size:13px;font-weight:700;text-decoration:none}.social-links a:hover{border-color:var(--lime);color:var(--lime)}.contact-card{background:linear-gradient(145deg,#14241a,#0d1811);border:1px solid #314532;border-radius:15px;padding:23px}.contact-card h3{margin:5px 0;font:700 23px Manrope,sans-serif}.contact-card p{color:var(--muted);margin:0 0 16px;font-size:13px}.site-footer{border-top:1px solid var(--line);color:var(--muted);padding:20px 0;font-size:11px}.footer-row{flex-wrap:wrap;justify-content:space-between;gap:15px}.site-footer a:not(.brand){color:var(--lime-soft);text-decoration:none}.auth-page{background:radial-gradient(ellipse at 50% 0,#183522,transparent 55%),var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{border:1px solid var(--line);background:#0e1a13;border-radius:18px;width:min(440px,100%);padding:30px;box-shadow:0 25px 80px #0005}.auth-card>.brand{margin-bottom:28px}.auth-card h1{font-size:31px}.auth-card>p:not(.eyebrow){color:var(--muted);margin:10px 0 20px;font-size:13px}.auth-card form{gap:13px;display:grid}.auth-card label,.publish-form label,.payment-form label,.form-grid label{color:#d5dfd7;gap:6px;font-size:12px;font-weight:700;display:grid}.auth-card input,.publish-form input,.publish-form select,.publish-form textarea,.payment-form input,.payment-form select,.form-grid input,.form-grid select,.filters input,.filters select{color:#f4f8f3;background:#111e16;border:1px solid #3b4c3e;border-radius:8px;width:100%;padding:11px;font-size:14px}.auth-card .button{width:100%;margin-top:5px}.back-link{color:var(--lime-soft);margin-top:20px;font-size:12px;display:inline-block}.form-error{color:#faa;font-size:12px}.setup-banner{color:#f4e5ad;background:#292418;border:1px solid #665722;border-radius:9px;margin:14px 0;padding:11px 12px;font-size:11px;line-height:1.55}.loading-screen{min-height:100vh;color:var(--muted);place-items:center;display:grid}.app-shell{background:#0a140e;grid-template-columns:238px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:#0d1912;flex-direction:column;height:100vh;padding:22px 15px;display:flex;position:sticky;top:0}.sidebar>.brand{margin:0 6px 30px}.staff-tag{color:#91a397;letter-spacing:.15em;padding:0 9px 10px;font-size:9px;font-weight:800}.sidebar nav{gap:5px;display:grid}.sidebar nav button,.signout{color:#b7c5ba;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:11px 10px;font-size:13px;font-weight:700}.sidebar nav button:hover,.sidebar nav button.selected{color:var(--lime);background:#1a2b1e;border-color:#304731}.signout{border-color:var(--line);margin-top:auto}.panel-main{min-width:0;padding:27px clamp(16px,3vw,40px) 45px}.panel-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:25px;display:flex}.panel-top .eyebrow{margin-bottom:4px}.panel-top h1{letter-spacing:-.04em;margin:0;font:800 31px Manrope,sans-serif}.user-chip{background:#1b2b1f;border:1px solid #304331;border-radius:99px;padding:8px 12px;font-size:12px}.panel-content{gap:17px;display:grid}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.metric{border:1px solid var(--line);background:#111f16;border-radius:12px;flex-direction:column;gap:13px;padding:16px;display:flex}.metric span{color:var(--muted);font-size:11px}.metric b{font:800 28px Manrope,sans-serif}.metric.red b{color:#ff8585}.panel-card{border:1px solid var(--line);background:#101d17;border-radius:13px;min-width:0;padding:18px}.panel-card h2{margin:0 0 5px;font:700 17px Manrope,sans-serif}.panel-card>p,.card-heading p{color:var(--muted);margin:4px 0 12px;font-size:12px}.card-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;display:flex}.card-heading h2{margin:0}.quick-links{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.quick-links button{color:#eaf4e9;text-align:left;cursor:pointer;background:#14231a;border:1px solid #304331;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:13px;font-size:12px;font-weight:700;display:flex}.quick-links button:hover{border-color:var(--lime);color:var(--lime)}.quick-links span{color:var(--lime)}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:690px;font-size:12px}th,td{text-align:left;vertical-align:middle;border-bottom:1px solid #29392d;padding:11px 10px}th{color:#92a398;text-transform:uppercase;letter-spacing:.08em;font-size:10px}td{color:#e3ebe4}td small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.status{border-radius:50px;padding:5px 8px;font-size:10px;font-weight:800;display:inline-flex}.status.green{color:#e5ffec;background:#1a4d32}.status.yellow{color:#fff1bd;background:#59460d}.status.red{color:#ffe7e7;background:#5a2424}.status.neutral{color:#d5ded7;background:#26332b}.text-button{color:var(--lime-soft);cursor:pointer;background:0 0;border:0;padding:6px;font-size:11px;font-weight:700}.text-button:hover{text-decoration:underline}.danger-text{color:#ff9a9a}.form-grid{border:1px solid var(--line);background:#0d1811;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:10px 0 17px;padding:15px;display:grid}.empty{color:var(--muted);padding:15px;font-size:12px}.filters{flex-wrap:wrap;gap:12px;margin:12px 0;display:flex}.filters label{color:var(--muted);gap:5px;min-width:200px;font-size:11px;display:grid}.attendance-list{border-top:1px solid var(--line);margin:12px 0 18px;display:grid}.attendance-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:10px 3px;display:flex}.attendance-row b{font-size:12px}.attendance-row select{color:#f4f8f3;background:#14231a;border:1px solid #435344;border-radius:7px;padding:8px}.inline-message{color:var(--lime-soft);background:#17281a;border-radius:8px;padding:10px;font-size:12px}.error-message{color:#ffb7b7;background:#341e1e}.payment-form{background:#0c1710;border:1px solid #354834;border-radius:11px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:11px;margin-top:18px;padding:16px;display:grid}.payment-form h3,.payment-form .fee{grid-column:1/-1;margin:0}.payment-form h3{font-size:14px}.payment-form label{gap:5px;font-size:11px;display:grid}.payment-form>p{color:var(--muted);font-size:12px}.payment-form .button{align-self:end}.publication-layout{grid-template-columns:1.2fr .8fr;align-items:start;gap:15px;display:grid}.publish-form{gap:12px;display:grid}.publish-form label{gap:6px}.publish-form textarea{resize:vertical;min-height:80px}.post-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.post-row:last-child{border-bottom:0}.post-thumb{object-fit:cover;border:1px solid var(--line);border-radius:8px;flex:none;width:82px;height:62px}.post-row-copy{flex:1;min-width:0}.student-actions{flex-wrap:wrap;gap:4px;display:flex}.post-row b{font-size:12px}.post-row p{color:var(--muted);margin:4px 0 0;font-size:10px}.admin-actions{flex-wrap:wrap;gap:4px;display:flex}.inline-message.error-message{margin-bottom:15px}@media (width<=850px){.site-header nav{gap:12px}.site-header nav a{font-size:11px}.hero-grid{grid-template-columns:1fr .65fr;gap:20px}.media-grid,.metric-grid,.quick-links{grid-template-columns:repeat(2,minmax(0,1fr))}.publication-layout{grid-template-columns:1fr}}@media (width<=650px){.container{width:calc(100% - 28px)}.site-header{height:65px}.brand{font-size:11px}.brand img{width:50px;height:50px}.site-header nav a:not(.button){display:none}.hero{padding:48px 0}.hero-grid{text-align:center;grid-template-columns:1fr}.hero h1{font-size:43px}.lead{margin-inline:auto;font-size:14px}.button-row{justify-content:center}.hero-emblem{min-height:0}.hero-emblem img{width:200px;height:230px}.section{padding:52px 0}.section-title{flex-direction:column;align-items:flex-start}.schedule-grid,.social-layout,.media-grid{grid-template-columns:1fr}.public-media>img,.video-card{height:auto;min-height:230px}.footer-row{text-align:center;justify-content:center}.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;padding:10px 12px;position:static}.sidebar>.brand{margin:0 5px 9px}.staff-tag{display:none}.sidebar nav{gap:5px;display:flex;overflow-x:auto}.sidebar nav button{white-space:nowrap;padding:8px}.signout{margin:0;padding:7px;position:absolute;top:12px;right:10px}.table-scroll:after{content:"Desliza la tabla para ver más columnas →";color:#93a397;padding:7px 10px;font-size:10px;display:block}.student-actions{min-width:160px}.panel-main{padding:18px 12px}.panel-top h1{font-size:25px}.user-chip{font-size:10px}.form-grid{grid-template-columns:1fr}.admin-actions{justify-content:flex-end}.post-row{flex-direction:column;align-items:flex-start}.payment-form{grid-template-columns:1fr}.payment-form h3,.payment-form .fee{grid-column:auto}}.import-row{border:1px solid var(--line);background:#0d1811;border-radius:9px;flex-wrap:wrap;align-items:center;gap:12px;margin:10px 0 14px;padding:10px;display:flex}.import-row a{color:var(--lime-soft);font-size:11px}.import-row span{color:var(--muted);font-size:10px}.import-button{color:var(--lime-soft);cursor:pointer;border:1px solid #577d36;border-radius:8px;padding:9px 11px;font-size:11px;font-weight:800;display:inline-flex}.import-button:hover{border-color:var(--lime);color:var(--lime)}
