:root{--bg:#08080a;--surface:#0d0d11;--surface-2:#121217;--surface-3:#181822;--border:#1b1b24;--border-2:#2c2c3a;--text:#fff;--text-2:#8e8e9f;--text-3:#4e4e5d;--accent:#cf0;--accent-hover:#bf0;--accent-soft:#ccff000a;--accent-glow:#ccff0026;--green:#1fcb4f;--green-soft:#1fcb4f0d;--yellow:#e09c24;--yellow-soft:#e09c240d;--red:#e5484d;--red-soft:#e5484d0d;--blue:#3b82f6;--blue-soft:#3b82f60d;--sidebar-w:240px;--pad-x:56px;--radius-lg:0px;--radius:0px;--radius-sm:0px;--ease:cubic-bezier(.25, 1, .5, 1);--transition:all .3s cubic-bezier(.25, 1, .5, 1)}.font-display{text-transform:uppercase;letter-spacing:-.01em;font-family:Oswald,sans-serif}.font-mono{letter-spacing:-.02em;font-family:IBM Plex Mono,monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0;border-radius:0!important}html,body{background:var(--bg);height:100%;color:var(--text);-webkit-font-smoothing:antialiased;font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.6}body:before{content:"";opacity:.018;pointer-events:none;z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");width:100%;height:100%;position:fixed;inset:0}body:after{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle,#ccff0006 0%,#0000 70%);width:800px;height:500px;position:fixed;top:-15%;left:50%;transform:translate(-50%)}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--text-3)}.app-shell{height:100vh;display:flex;overflow:hidden}.main-content{flex-direction:column;flex:1;display:flex;overflow-y:auto}.main-content>*{flex-shrink:0}.sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);background:var(--bg);border-right:1px solid var(--border);z-index:10;flex-direction:column;height:100vh;display:flex;position:relative;overflow:hidden}.sidebar-logo{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:32px 24px 20px;display:flex}.sidebar-logo-icon{border:2px solid var(--accent);width:34px;height:34px;color:var(--accent);background:#000;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex;box-shadow:0 0 10px #ccff0026}.sidebar-logo-text{text-transform:uppercase;color:var(--text);letter-spacing:.02em;font-family:Oswald,sans-serif;font-size:16px;font-weight:700}.sidebar-logo-sub{text-transform:uppercase;color:var(--text-3);letter-spacing:.08em;font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:600}.sidebar-nav{flex-direction:column;flex:1;gap:6px;padding:24px 16px;display:flex}.sidebar-section-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.15em;padding:8px 12px 6px;font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:700}.nav-item{color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;transition:var(--transition);border:1px solid #0000;align-items:center;gap:10px;padding:10px 14px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;display:flex;position:relative}.nav-item:hover{background:var(--surface-2);color:var(--accent);border-color:var(--border);transform:translate(4px)}.nav-item.active{background:var(--surface);color:var(--accent);border:1px solid var(--border-2);border-left:3px solid var(--accent)}.nav-item.active .nav-icon{color:var(--accent);filter:drop-shadow(0 0 4px #cf06)}.nav-icon{opacity:.85;width:14px;height:14px;transition:var(--transition);flex-shrink:0}.nav-badge{background:var(--red);color:#fff;margin-left:auto;padding:1px 5px;font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:700;line-height:1.4}.sidebar-footer{border-top:1px solid var(--border);padding:16px}.sidebar-user{cursor:pointer;transition:var(--transition);border:1px solid #0000;align-items:center;gap:10px;padding:10px;display:flex}.sidebar-user:hover{background:var(--surface-2);border-color:var(--border)}.user-avatar{background:var(--surface-3);border:1.5px solid var(--border-2);width:34px;height:34px;color:var(--accent);flex-shrink:0;justify-content:center;align-items:center;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:700;display:flex}.user-info{flex:1;min-width:0}.user-name{text-transform:uppercase;color:var(--text);white-space:nowrap;text-overflow:ellipsis;letter-spacing:.02em;font-family:Oswald,sans-serif;font-size:13.5px;font-weight:600;overflow:hidden}.user-role{text-transform:uppercase;color:var(--text-3);letter-spacing:.05em;font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:600}.page-header{padding:48px var(--pad-x) 0;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-title{text-transform:uppercase;color:var(--text);letter-spacing:.01em;font-family:Oswald,sans-serif;font-size:28px;font-weight:800;line-height:.95}.page-subtitle{text-transform:uppercase;color:var(--text-2);letter-spacing:.04em;margin-top:6px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600}.btn{text-transform:uppercase;letter-spacing:.06em;transition:var(--transition);white-space:nowrap;align-items:center;gap:8px;padding:9px 18px;font-family:Oswald,sans-serif;font-size:12.5px;font-weight:700;display:inline-flex;position:relative;border-radius:0!important}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#000;border:1px solid var(--accent);box-shadow:0 0 10px #ccff001a}.btn-primary:hover{color:#000;background:#fff;border-color:#fff;box-shadow:0 0 15px #ffffff40}.btn-secondary{color:var(--text);border:1px solid var(--border-2);background:0 0}.btn-secondary:hover{background:var(--surface-2);border-color:var(--text-2)}.btn-ghost{color:var(--text-2);padding:6px 12px}.btn-ghost:hover{background:var(--surface-2);color:var(--text);background:var(--surface-2)}.btn-danger{background:var(--red-soft);color:var(--red);border:1px solid #f7555540}.btn-danger:hover{background:#f7555533}.btn-sm{padding:5px 10px;font-size:12px}.btn-icon{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:30px;height:30px;padding:0;display:inline-flex}.stat-grid{padding:32px var(--pad-x) 0;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;display:grid}.stat-card{background:var(--surface);border:1.5px solid var(--border);transition:var(--transition);padding:24px;position:relative;overflow:hidden}.stat-card:hover{border-color:var(--accent);box-shadow:0 0 15px #ccff0014}.stat-card:before{content:"";background:linear-gradient(90deg, var(--accent) 0%, transparent 100%);opacity:.5;height:2px;position:absolute;top:0;left:0;right:0}.stat-icon{border:1px solid var(--border-2);background:var(--bg);justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:16px;font-size:16px;display:flex}.stat-icon.green{color:var(--green);border-color:#1fcb4f4d}.stat-icon.accent{color:var(--accent);border-color:#ccff004d}.stat-icon.yellow{color:var(--yellow);border-color:#e09c244d}.stat-icon.blue{color:var(--blue);border-color:#3b82f64d}.stat-icon.red{color:var(--red);border-color:#e5484d4d}.stat-value{color:var(--text);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-bottom:8px;font-family:IBM Plex Mono,monospace;font-size:32px;font-weight:700;line-height:1}.stat-label{text-transform:uppercase;color:var(--text-2);letter-spacing:.08em;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:700}.stat-delta{align-items:center;gap:4px;margin-top:8px;font-family:IBM Plex Mono,monospace;font-size:10.5px;font-weight:600;display:inline-flex}.stat-delta.up{color:var(--green)}.stat-delta.down{color:var(--red)}.badge{text-transform:uppercase;white-space:nowrap;letter-spacing:.05em;border:1px solid var(--border-2);background:var(--bg);align-items:center;gap:6px;padding:3px 8px;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:700;display:inline-flex;border-radius:0!important}.badge:before{content:"[";color:var(--text-3);border-radius:0%;width:auto;height:auto;font-size:10px;background:0 0!important}.badge:after{content:"]";color:var(--text-3);font-size:10px}.badge-green{color:var(--green);border-color:#1fcb4f4d}.badge-red{color:var(--red);border-color:#e5484d4d}.badge-yellow{color:var(--yellow);border-color:#e09c244d}.badge-blue{color:var(--blue);border-color:#3b82f64d}.badge-gray{color:var(--text-2);border-color:var(--border)}.badge-accent{color:var(--accent);border-color:#ccff004d}.table-container{border:1px solid var(--border);overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table th{text-align:left;text-transform:uppercase;color:var(--text-2);letter-spacing:.06em;border-bottom:2px solid var(--border-2);white-space:nowrap;background:var(--surface);z-index:1;padding:16px 20px;font-family:Oswald,sans-serif;font-size:12px;font-weight:600;position:sticky;top:0}.data-table td{border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text-2);padding:16px 20px;font-size:13.5px}.data-table tbody tr{transition:var(--transition)}.data-table tbody tr:hover{background:var(--surface-2);color:var(--text)}.data-table tbody tr:hover td{border-bottom-color:var(--border-2)}.data-table tbody tr:last-child td{border-bottom:none}.data-table td:nth-child(4),.data-table td:nth-child(5){font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,monospace;font-size:12.5px;font-weight:500}.card{background:var(--surface);border:1.5px solid var(--border);transition:var(--transition);box-shadow:none;overflow:hidden}.card:hover{border-color:var(--accent);box-shadow:0 0 15px #ccff000d}.card-header{border-bottom:1.5px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;display:flex}.card-title{text-transform:uppercase;color:var(--text);letter-spacing:.04em;font-family:Oswald,sans-serif;font-size:14px;font-weight:700}.card-body{padding:24px}.section{padding:32px 48px}.section-grid{padding:0 var(--pad-x) 48px;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:24px;display:grid}.toolbar{padding:24px var(--pad-x);flex-wrap:wrap;align-items:center;gap:12px;display:flex}.search-wrapper{flex:1;min-width:220px;max-width:360px;position:relative}.search-icon{color:var(--text-3);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-input{background:var(--surface-2);border:1.5px solid var(--border);width:100%;color:var(--text);transition:var(--transition);outline:none;padding:10px 14px 10px 38px;font-family:IBM Plex Mono,monospace;font-size:12.5px}.search-input::placeholder{color:var(--text-3)}.search-input:focus{border-color:var(--accent);background:var(--surface-3);box-shadow:0 0 12px #ccff001a}.filter-select{background:var(--surface-2);border:1.5px solid var(--border);color:var(--text-2);text-transform:uppercase;transition:var(--transition);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%238E8E9F' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;outline:none;padding:9px 32px 9px 14px;font-family:IBM Plex Mono,monospace;font-size:11.5px}.filter-select:focus{border-color:var(--accent);box-shadow:0 0 12px #ccff001a}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;animation:fadeIn .2s var(--ease);background:#040406d9;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}.modal{background:var(--surface);border:2px solid var(--border-2);width:100%;max-width:580px;max-height:90vh;animation:.35s cubic-bezier(.25,1,.5,1) slideUp;overflow-y:auto;box-shadow:0 24px 64px #000000b3}.modal-header{border-bottom:1.5px solid var(--border);justify-content:space-between;align-items:center;padding:24px 28px;display:flex}.modal-title{text-transform:uppercase;color:var(--text);letter-spacing:.02em;font-family:Oswald,sans-serif;font-size:18px;font-weight:700}.modal-close{width:32px;height:32px;color:var(--text-3);transition:var(--transition);border:1px solid #0000;justify-content:center;align-items:center;display:flex}.modal-close:hover{background:var(--surface-2);color:var(--accent);border-color:var(--border)}.modal-body{padding:28px}.modal-footer{border-top:1.5px solid var(--border);justify-content:flex-end;gap:12px;padding:20px 28px;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.form-grid.cols-1{grid-template-columns:1fr}.form-group{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.form-grid .form-group{margin-bottom:0}.form-group.full{grid-column:1/-1}.form-label{text-transform:uppercase;color:var(--text-2);letter-spacing:.05em;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:700}.form-input{background:var(--surface-2);border:1.5px solid var(--border);color:var(--text);transition:var(--transition);outline:none;width:100%;padding:10px 14px;font-size:13.5px}.form-input:focus{border-color:var(--accent);background:var(--surface-3);box-shadow:0 0 12px #ccff001a}.form-input::placeholder{color:var(--text-3)}textarea.form-input{resize:vertical;min-height:90px}.alert-banner{text-transform:uppercase;letter-spacing:.02em;border:1.5px solid;align-items:center;gap:14px;padding:16px 24px;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:600;display:flex}.alert-banner>div{flex:1;min-width:0}.alert-banner.danger{border-color:var(--red);color:#ff656a;background:#e5484d0d}.alert-banner.warning{border-color:var(--yellow);color:#f5b041;background:#e09c240d}.member-cell{align-items:center;gap:12px;display:flex}.member-avatar{color:#000;border:1px solid var(--accent);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:700;display:flex;background:var(--accent)!important}.member-name{color:var(--text);font-size:13.5px;font-weight:600}.member-email{color:var(--text-3);font-family:IBM Plex Mono,monospace;font-size:11px}.capacity-bar{align-items:center;gap:12px;display:flex}.capacity-track{border:1px solid var(--border);background:#111116;flex:1;height:8px;overflow:hidden}.capacity-fill{background-image:repeating-linear-gradient(90deg, var(--accent), var(--accent) 6px, transparent 6px, transparent 9px);background-size:300px 100%;height:100%;transition:width .6s cubic-bezier(.25,1,.5,1)}.capacity-text{color:var(--text-2);text-align:right;font-variant-numeric:tabular-nums;min-width:45px;font-family:IBM Plex Mono,monospace;font-size:11.5px;font-weight:700}.empty-state{text-align:center;border:1px dashed var(--border-2);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:64px 24px;display:flex}.empty-icon{opacity:.3;font-size:36px}.empty-title{text-transform:uppercase;color:var(--text-2);font-family:Oswald,sans-serif;font-size:14.5px;font-weight:700}.empty-text{color:var(--text-3);font-family:IBM Plex Mono,monospace;font-size:11px}.class-grid{padding:0 var(--pad-x) 56px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;display:grid}.class-card{background:var(--surface);border:1.5px solid var(--border);transition:var(--transition);padding:24px;position:relative;overflow:hidden}.class-card:before{content:"";background:var(--accent);opacity:.85;height:2px;position:absolute;top:0;left:0;right:0}.class-card:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:0 0 15px #ccff0014}.class-card-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:16px;display:flex}.class-name{text-transform:uppercase;color:var(--text);letter-spacing:.02em;font-family:Oswald,sans-serif;font-size:18px;font-weight:700}.class-instructor{text-transform:uppercase;color:var(--text-2);letter-spacing:.03em;margin-top:3px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600}.class-meta{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.class-meta-row{color:var(--text-2);align-items:center;gap:8px;font-family:IBM Plex Mono,monospace;font-size:11.5px;font-weight:500;display:flex}.meta-icon{color:var(--text-3);flex-shrink:0}.class-card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding-top:16px;display:flex}.profile-header{padding:48px var(--pad-x);border-bottom:1px solid var(--border);align-items:flex-start;gap:24px;display:flex}.profile-avatar-lg{color:#000;background:var(--accent);border:1.5px solid var(--accent);justify-content:center;align-items:center;width:72px;height:72px;font-family:IBM Plex Mono,monospace;font-size:24px;font-weight:700;display:flex;box-shadow:0 0 15px #ccff0026}.profile-name{text-transform:uppercase;color:var(--text);letter-spacing:.01em;font-family:Oswald,sans-serif;font-size:32px;font-weight:800;line-height:.95}.profile-email{color:var(--text-2);margin-top:4px;font-family:IBM Plex Mono,monospace;font-size:11.5px;font-weight:500}.profile-badges{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.profile-content{padding:32px var(--pad-x);grid-template-columns:1fr 320px;gap:24px;display:grid}.info-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.info-item{flex-direction:column;gap:6px;min-width:0;display:flex}.info-label{text-transform:uppercase;color:var(--text-3);letter-spacing:.08em;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:700}.info-value{color:var(--text);overflow-wrap:anywhere;font-size:13.5px;font-weight:500}.toast-container{z-index:200;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:24px;right:24px}.toast{background:var(--surface);border:1.5px solid var(--border-2);text-transform:uppercase;color:var(--text);align-items:center;gap:10px;min-width:280px;padding:12px 18px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:700;animation:.2s slideUp;display:flex;box-shadow:0 10px 30px #0009}.toast.success{border-left:3px solid var(--green)}.toast.error{border-left:3px solid var(--red)}.spinner{border:2px solid var(--border-2);border-top-color:var(--accent);width:20px;height:20px;animation:.6s linear infinite spin;border-radius:50%!important}@keyframes spin{to{transform:rotate(360deg)}}.loading-overlay{justify-content:center;align-items:center;padding:60px;display:flex}.bento-grid{padding:32px var(--pad-x) 0;grid-template-columns:repeat(12,1fr);gap:24px;display:grid}.bento-col-3{grid-column:span 3}.bento-col-4{grid-column:span 4}.bento-col-6{grid-column:span 6}.bento-col-8{grid-column:span 8}.bento-highlight{position:relative}.bento-highlight:after{content:"";pointer-events:none;z-index:1;background:radial-gradient(circle,#ccff000f 0%,#0000 75%);width:180px;height:180px;position:absolute;bottom:-40px;right:-40px}.eyebrow-tag{text-transform:uppercase;letter-spacing:.15em;color:var(--accent);margin-bottom:6px;font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:700;display:inline-block}.solo-estrecho{display:none}@media (max-width:1280px){:root{--pad-x:40px}}@media (max-width:1024px){:root{--pad-x:28px;--sidebar-w:208px}.bento-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bento-col-3,.bento-col-4,.bento-col-6,.bento-col-8{grid-column:span 1}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.section-grid{grid-template-columns:minmax(0,1fr)}.class-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.profile-content{grid-template-columns:minmax(0,1fr)}}@media (max-width:768px){:root{--pad-x:18px}.app-shell{flex-direction:column;height:100dvh}.main-content{order:1}.sidebar{border-right:none;border-top:1px solid var(--border-2);width:100%;min-width:0;height:auto;padding-bottom:env(safe-area-inset-bottom);flex-direction:row;flex-shrink:0;order:2;align-items:stretch}.sidebar-logo,.sidebar .hazard-stripe-sm,.sidebar-crt,.sidebar-version,.sidebar-user{display:none}.sidebar-nav{flex-direction:row;gap:0;padding:0}.sidebar-section-label{display:none}.nav-item{border-top:2px solid #0000;border-left:none;flex-direction:column;flex:1;justify-content:center;gap:3px;min-height:54px;padding:8px 4px;font-size:9px}.nav-item span{display:block}.nav-item span+span{display:none}.nav-item.active{border:none;border-top:2px solid var(--accent)}.sidebar-footer{border-top:none;align-items:center;padding:6px;display:flex}.sidebar-logout{min-height:44px;width:auto!important;margin-top:0!important;padding:6px 10px!important}.solo-ancho{display:none}.solo-estrecho{display:inline}.page-header{flex-direction:column;align-items:stretch;padding-top:24px}.profile-header{padding:24px var(--pad-x);flex-direction:column}.profile-content{padding:24px var(--pad-x);grid-template-columns:minmax(0,1fr)}.hud-status-bar{flex-wrap:wrap;gap:6px 12px;font-size:9px}.alert-banner{padding:14px var(--pad-x);flex-wrap:wrap;align-items:flex-start;font-size:11px}.alert-banner>div{flex:calc(100% - 40px);min-width:0}.alert-banner .btn{margin-top:10px;margin-left:auto}.toolbar{padding:16px var(--pad-x)}.section{padding:16px}.bento-grid{grid-template-columns:minmax(0,1fr);gap:14px}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.section-grid,.class-grid,.info-grid,.form-grid{grid-template-columns:minmax(0,1fr)}.profile-content>*,.section-grid>*,.bento-grid>*{min-width:0}.table-container{-webkit-overflow-scrolling:touch;min-width:0}.data-table{min-width:560px}.modal-backdrop{align-items:flex-end;padding:0}.modal{border-width:1px 0 0;max-width:100%;max-height:92dvh}.btn{min-height:40px}.btn-sm{min-height:36px}.form-input,.filter-select,.search-input{min-height:42px;font-size:16px}}@media (max-width:480px){:root{--pad-x:12px}.page-title{font-size:22px}.page-subtitle{font-size:12px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-value{font-size:20px}.nav-item{gap:2px;font-size:8.5px}.toolbar{gap:8px}.toolbar>*{flex:auto}.data-table{min-width:480px}.card-header{flex-wrap:wrap;gap:8px}}html,body{overflow-x:hidden}.crt-overlay{z-index:9998;pointer-events:none;opacity:0;background:repeating-linear-gradient(0deg,#0000002e 0 1px,#0000 1px 2.5px) 0 0/100% 2.5px;width:100%;height:100%;transition:opacity .3s;position:fixed;inset:0}.crt-active .crt-overlay{opacity:1;animation:.15s infinite crt-flicker}@keyframes crt-flicker{0%{opacity:.95}50%{opacity:1}to{opacity:.95}}.crt-active:after{content:"";pointer-events:none;z-index:9997;background:radial-gradient(circle,#ccff0004 0%,#00000059 100%);position:fixed;inset:0}.crt-active{text-shadow:0 0 2px #ccff0040}.hazard-stripe{background:repeating-linear-gradient(-45deg, var(--accent) 0, var(--accent) 10px, #08080a 10px, #08080a 20px);border-bottom:1.5px solid var(--border);opacity:.9;width:100%;height:8px}.hazard-stripe-sm{background:repeating-linear-gradient(-45deg, var(--accent) 0, var(--accent) 5px, #08080a 5px, #08080a 10px);height:4px}.crosshair{width:9px;height:9px;color:var(--accent);opacity:.45;pointer-events:none;transition:var(--transition);z-index:5;position:absolute}.card:hover .crosshair,.stat-card:hover .crosshair,.class-card:hover .crosshair{opacity:1;color:var(--accent-hover)}.crosshair:before,.crosshair:after{content:"";background:currentColor;position:absolute}.crosshair:before{width:9px;height:1px;top:4px;left:0}.crosshair:after{width:1px;height:9px;top:0;left:4px}.crosshair-tl{top:6px;left:6px}.crosshair-tr{top:6px;right:6px}.crosshair-bl{bottom:6px;left:6px}.crosshair-br{bottom:6px;right:6px}.hud-status-bar{padding:8px var(--pad-x);background:var(--surface);border-bottom:1px solid var(--border);color:var(--text-2);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;font-family:IBM Plex Mono,monospace;font-size:10px;display:flex}.hud-item{align-items:center;gap:8px;display:flex}.hud-dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent);animation:2s infinite pulse;display:inline-block}@keyframes pulse{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}.member-avatar{flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:700;display:flex;color:var(--accent)!important;background:var(--surface-2)!important;border:1px solid var(--border-2)!important;border-left:3px solid var(--accent)!important}.terminal-prompt-wrapper{width:100%;position:relative}.terminal-prompt-wrapper:before{content:">";color:var(--accent);pointer-events:none;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:700;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.terminal-prompt-wrapper .form-input,.terminal-prompt-wrapper .search-input{padding-left:28px!important}.form-input:focus,.search-input:focus{caret-color:var(--accent);box-shadow:0 0 10px #ccff0026!important}
