@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;700&family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Rajdhani:wght@500;600;700&display=swap";:root{--font-brand:"Rajdhani", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif;--font-mono:"JetBrains Mono", monospace;--color-accent:#0a7cff;--color-bg-primary:#f8fafc;--color-surface:#fff;--color-surface-secondary:#f1f5f9;--color-surface-hover:#e2e8f0;--color-text-primary:#0f172a;--color-text-secondary:#334155;--color-text-muted:#64748b;--color-border:#00000014;--color-border-strong:#00000029;--color-dot:#0000000d;--color-success:#16a34a;--color-success-bg:#16a34a14;--color-success-border:#16a34a2e;--color-error:#dc2626;--color-error-bg:#dc262614;--color-error-border:#dc26262e;--color-warn:#d97706;--color-warn-bg:#d9770614;--color-warn-border:#d977062e;--color-info:#0284c7;--color-info-bg:#0284c714;--color-info-border:#0284c72e;--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-card:#fff;--bg-card-hover:#f8fafc;--bg-elevated:#fff;--surface:#fff;--glass-bg:#ffffffd9;--glass-bg-strong:#fff;--glass-bg-float:#fff;--glass-blur:16px;--glass-blur-strong:24px;--border:#00000014;--border-hover:#00000026;--border-strong:#0003;--border-glow:#0a7cff33;--text-primary:#0f172a;--text-secondary:#334155;--text-muted:#64748b;--text-dim:#64748b;--accent:#0a7cff;--accent-hover:#06d;--accent-muted:#0a7cff14;--accent-glow:#0a7cff1a;--accent-strong:#05c;--gradient-brand:linear-gradient(135deg, #0a7cff, #6366f1, #8b5cf6);--gradient-brand-hover:linear-gradient(135deg, #06d, #4f46e5, #7c3aed);--success:#16a34a;--success-bg:#16a34a14;--success-border:#16a34a2e;--warning:#d97706;--warning-bg:#d9770614;--warning-border:#d977062e;--danger:#dc2626;--danger-bg:#dc262614;--danger-border:#dc26262e;--info:#0284c7;--info-bg:#0284c714;--info-border:#0284c72e;--radius-xs:6px;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-2xl:24px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 12px #00000012;--shadow-lg:0 8px 30px #0000001a;--shadow-xl:0 12px 48px #0000001f;--shadow-glow:0 0 40px #0a7cff14;--shadow-glow-strong:0 0 60px #0a7cff26;--shadow-float:0 8px 32px #00000014, 0 0 0 1px #0000000d;--scrollbar-thumb:#00000026;--scrollbar-thumb-hover:#00000040;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.15s;--duration-normal:.3s;--duration-slow:.5s;--layout-max-width:1100px;--layout-padding-x:1.25rem;--nav-height:56px;--nav-offset:80px}[data-theme=dark]{--color-accent:#00e5c8;--color-bg-primary:#0a0a0f;--color-surface:#111118;--color-surface-secondary:#18181f;--color-surface-hover:#1e1e28;--color-text-primary:#f2f2f7;--color-text-secondary:#9898a8;--color-text-muted:#5e5e72;--color-border:#ffffff12;--color-border-strong:#ffffff24;--color-dot:#ffffff09;--color-success:#22c55e;--color-success-bg:#22c55e17;--color-success-border:#22c55e33;--color-error:#ef4444;--color-error-bg:#ef444417;--color-error-border:#ef444433;--color-warn:#f59e0b;--color-warn-bg:#f59e0b17;--color-warn-border:#f59e0b33;--color-info:#00e5c8;--color-info-bg:#00e5c817;--color-info-border:#00e5c833;--bg-primary:#0a0a0f;--bg-secondary:#0c0c10;--bg-card:#ffffff06;--bg-card-hover:#ffffff0b;--bg-elevated:#ffffff09;--surface:#ffffff0d;--glass-bg:#ffffff08;--glass-bg-strong:#0c0c10bf;--glass-bg-float:#0c0c1299;--glass-blur:20px;--glass-blur-strong:32px;--border:#ffffff0f;--border-hover:#ffffff1f;--border-strong:#ffffff29;--border-glow:#3b82f633;--text-primary:#fafafa;--text-secondary:#a1a1aa;--text-muted:#52525b;--text-dim:#3f3f46;--accent:#3b82f6;--accent-hover:#60a5fa;--accent-muted:#3b82f61f;--accent-glow:#3b82f614;--accent-strong:#2563eb;--gradient-brand:linear-gradient(135deg, #3b82f6, #6366f1, #8b5cf6);--gradient-brand-hover:linear-gradient(135deg, #60a5fa, #818cf8, #a78bfa);--success:#22c55e;--success-bg:#22c55e14;--success-border:#22c55e26;--warning:#f59e0b;--warning-bg:#f59e0b14;--warning-border:#f59e0b26;--danger:#ef4444;--danger-bg:#ef44440f;--danger-border:#ef444426;--info:#3b82f6;--info-bg:#3b82f60f;--info-border:#3b82f626;--radius-xs:6px;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-2xl:24px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #00000040;--shadow-lg:0 8px 30px #0000004d;--shadow-xl:0 12px 48px #0006;--shadow-glow:0 0 40px #3b82f60f;--shadow-glow-strong:0 0 60px #3b82f61f;--shadow-float:0 8px 32px #0006, 0 0 0 1px #ffffff0d}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:var(--nav-offset)}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02", "cv03", "cv04", "cv11";min-height:100vh;margin:0;padding:0;overflow-x:hidden}#root{margin:0;padding:0}.admin-layout{background:var(--color-bg-primary);flex-direction:column;min-height:100vh;display:flex}.admin-page-body{flex-direction:column;flex:1;display:flex}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb,#ffffff0f);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover,#ffffff1f)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-glow{0%,to{opacity:1}50%{opacity:.4}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes float-slow{0%,to{transform:translateY(0)rotate(0)}33%{transform:translateY(-8px)rotate(1deg)}66%{transform:translateY(4px)rotate(-1deg)}}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes glow-pulse{0%,to{box-shadow:0 0 20px #3b82f60d}50%{box-shadow:0 0 40px #3b82f61f}}@keyframes border-glow{0%,to{border-color:#3b82f61a}50%{border-color:#3b82f640}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes gradient-text-flow{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.shimmer{background:linear-gradient(90deg,#ffffff05 25%,#ffffff0f 37%,#ffffff05 63%) 0 0/200% 100%;animation:2s ease-in-out infinite shimmer}.gradient-text{background:linear-gradient(135deg,#60a5fa,#3b82f6,#818cf8,#60a5fa) 0 0/300% 100%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;animation:4s infinite gradient-text-flow}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border)}.glass-strong{background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(var(--glass-blur-strong));border:1px solid var(--border)}.glass-float{background:var(--glass-bg-float);-webkit-backdrop-filter:blur(var(--glass-blur-strong));border:1px solid var(--border);box-shadow:var(--shadow-float)}.glow-border{transition:border-color var(--duration-normal) ease, box-shadow var(--duration-normal) ease}.glow-border:hover{border-color:var(--border-glow);box-shadow:var(--shadow-glow)}::selection{color:#fff;background:#3b82f640}[data-theme=light] ::selection{color:#0f172a;background:#3b82f633}[data-theme=light] .shimmer{background:linear-gradient(90deg,#00000008 25%,#0000000f 37%,#00000008 63%) 0 0/200% 100%;animation:2s ease-in-out infinite shimmer}[data-theme=light] .glass{background:#ffffff8c;box-shadow:0 2px 12px #0000000a}[data-theme=light] .glass-strong{background:#fffc;box-shadow:0 4px 20px #0000000f}[data-theme=light] .glass-float{background:#ffffffb3;box-shadow:0 8px 32px #00000014}@media print{html,body{color:#111!important;zoom:1!important;background:#fff!important}.glass,.glass-strong,.glass-float{-webkit-backdrop-filter:none!important;box-shadow:none!important;background:0 0!important;border:none!important}#root{background:#fff!important}@page{margin:.15in}}.logo-mark{color:var(--color-accent);-webkit-user-select:none;user-select:none;cursor:pointer;flex-shrink:0;align-items:center;gap:10px;text-decoration:none;display:flex}.logo-text{flex-direction:column;gap:1px;display:flex}.logo-hits{letter-spacing:.1em;color:var(--color-text-primary);font-size:15px;font-weight:700;line-height:1}.logo-sub{letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent);font-size:10px;font-weight:500;line-height:1}@media (width<=768px){.logo-mark{gap:12px}.logo-hits{font-size:21px;font-weight:800}.logo-sub{font-size:13px;font-weight:600}.logo-mark svg{width:28px;height:28px}}@media (width<=480px){.logo-mark{gap:10px}.logo-hits{font-size:19px;font-weight:800}.logo-sub{font-size:12px;font-weight:600}.logo-mark svg{width:26px;height:26px}}.navbar{z-index:1000;background:var(--color-surface);border-bottom:1px solid var(--color-border);width:100%;transition:background .3s,box-shadow .3s;position:fixed;top:0;left:0}.nav-scrolled{box-shadow:0 2px 12px #00000014}.nav-container{width:100%;max-width:var(--layout-max-width);height:56px;padding:0 var(--layout-padding-x);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.nav-actions{align-items:center;gap:8px;display:flex}.system-badge{font-family:var(--font-mono);letter-spacing:.08em;color:#00e5c8;-webkit-user-select:none;user-select:none;background:0 0;border:1px solid #00e5c859;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:11px;font-weight:500;display:flex}.system-badge:before{content:"";background:#00e5c8;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite navPulse}@keyframes navPulse{0%,to{opacity:1}50%{opacity:.25}}.return-btn{font-family:var(--font-brand);color:var(--color-text-primary);background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;letter-spacing:.05em;border-radius:8px;align-items:center;padding:6px 14px;font-size:13px;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 1px 2px #0000000d}.return-btn:hover{background:var(--color-surface-hover);border-color:var(--color-accent);color:var(--color-accent);transform:translate(-2px);box-shadow:0 4px 12px #0a7cff1a}.return-btn svg{transition:transform .2s}.return-btn:hover svg{transform:translate(-2px)}.theme-toggle{border:1px solid var(--color-border);cursor:pointer;width:34px;height:34px;color:var(--color-text-secondary);background:0 0;border-radius:8px;justify-content:center;align-items:center;transition:background .2s,color .2s;display:flex}.theme-toggle:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}@media (width<=768px){.nav-container{height:68px;padding:0 1.25rem}.nav-actions{gap:10px}.return-btn{border-radius:10px;padding:8px 16px;font-size:15px;font-weight:700}.return-btn svg{width:17px;height:17px;margin-right:6px}.theme-toggle{border-radius:10px;width:42px;height:42px}.theme-toggle svg{width:20px;height:20px}.system-badge{border-radius:24px;padding:6px 14px;font-size:13px}}@media (width<=480px){.nav-container{height:64px;padding:0 1rem}.nav-actions{gap:8px}.return-btn{border-radius:9px;padding:7px 13px;font-size:14px;font-weight:700}.return-btn svg{width:16px;height:16px;margin-right:5px}.theme-toggle{border-radius:9px;width:38px;height:38px}.theme-toggle svg{width:18px;height:18px}.system-badge{padding:5px 12px;font-size:12px}}@media print{.navbar{display:none!important}}.admin-nav{border-bottom:1px solid var(--color-border);background:var(--color-surface);z-index:100;height:52px;margin:0;position:sticky;top:0}.admin-nav-inner{justify-content:space-between;align-items:center;max-width:1100px;height:100%;margin:0 auto;padding:0 2rem;display:flex}.admin-nav-divider{background:var(--color-border-strong);flex-shrink:0;width:1px;height:18px;margin:0 14px}.admin-badge{letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);-webkit-user-select:none;user-select:none;background:#00e5c80f;border:1px solid #00e5c826;border-radius:6px;align-items:center;gap:8px;padding:5px 12px;font-size:11px;font-weight:600;display:flex}.admin-badge-dot{background:var(--color-accent);border-radius:50%;width:7px;height:7px;animation:2s ease-in-out infinite adminNavPulse;display:inline-block;box-shadow:0 0 8px #00e5c880}@keyframes adminNavPulse{0%,to{opacity:1;box-shadow:0 0 8px #00e5c880}50%{opacity:.3;box-shadow:0 0 2px #00e5c833}}.settings-btn,.admin-theme-btn{border:1px solid var(--color-border);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.settings-btn:hover,.admin-theme-btn:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.logout-btn{border:1px solid var(--color-border-strong);color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:500;transition:background .15s,color .15s;display:flex}.logout-btn svg{width:14px;height:14px}.logout-btn:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}@media (width<=640px){.logout-btn .logout-label{display:none}.logout-btn{padding:6px 9px}}@media (width<=480px){.admin-nav-inner{padding:0 1rem}.admin-badge-text{letter-spacing:.06em;font-size:9px}.admin-badge{gap:5px;padding:4px 8px}.admin-nav-divider{margin:0 8px}.settings-btn,.admin-theme-btn{width:30px;height:30px}}.admin-nav-right{align-items:center;gap:6px;display:flex}.search-form-wrapper{background-image:radial-gradient(circle, var(--color-dot) 1px, transparent 1px);background-size:24px 24px;width:100%}.landing-fold{min-height:calc(100vh - var(--nav-height));flex-direction:column;align-items:center;padding:20px 20px 40px;display:flex}.hero-wrapper-center{flex:1;align-items:center;width:100%;max-width:1100px;display:flex}.hero-container{grid-template-columns:1fr 1fr;align-items:center;gap:40px;width:100%;display:grid}.hero-text-content{text-align:left;flex-direction:column;align-items:flex-start;gap:20px;display:flex}.cyber-badge{letter-spacing:.1em;color:#60a5fa;text-transform:uppercase;background:#3b82f61a;border:1px solid #3b82f64d;border-radius:100px;align-items:center;gap:8px;padding:6px 14px;font-family:Space Grotesk,sans-serif;font-size:11px;font-weight:700;display:inline-flex}.cyber-heading{letter-spacing:-.02em;color:var(--color-text-primary);font-family:Outfit,sans-serif;font-size:38px;font-weight:700;line-height:1.15}.gradient-text{color:var(--color-accent);-webkit-text-fill-color:var(--color-accent);background:0 0;-webkit-background-clip:unset;background-clip:unset;filter:none;display:inline}.cyber-sub{color:var(--color-text-secondary);max-width:420px;font-family:Inter,sans-serif;font-size:15px;line-height:1.6}.glitch-form-wrapper{justify-content:center;justify-self:end;align-items:center;width:100%;max-width:420px;display:flex}.glitch-card{background:var(--color-surface);border:1px solid var(--color-border);width:100%;box-shadow:var(--shadow-md);border-radius:12px;overflow:hidden}.card-body{padding:28px 24px}.card-header-text{color:var(--color-text-primary);margin-bottom:1rem;font-size:15px;font-weight:600}.form-group{margin-bottom:16px;position:relative}.form-group input{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text-primary);border-radius:8px;outline:none;padding:12px 14px;font-family:Inter,Plus Jakarta Sans,sans-serif;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-group input::placeholder{color:var(--color-text-muted);font-size:13px}.form-group input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #00e5c81f}.form-group input:disabled{opacity:.6;cursor:not-allowed}.submit-btn{letter-spacing:.04em;border:1.5px solid var(--color-accent);width:100%;color:var(--color-accent);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:13px;font-family:Inter,Plus Jakarta Sans,sans-serif;font-size:14px;font-weight:600;transition:background .2s,color .2s;display:flex}.submit-btn:hover{background:var(--color-accent);color:#0a0a0f}.submit-btn:active{transform:scale(.98)}.submit-loading{opacity:.6;cursor:not-allowed;pointer-events:none}.btn-spinner{border:2px solid #0000;border-color:currentColor #0000 #0000 currentColor;border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spin;display:inline-block}.cyber-error{color:#ef4444;background:#ef444414;border:1px solid #ef444433;border-radius:8px;align-items:center;gap:8px;margin-bottom:16px;padding:12px;font-size:13px;display:flex}.features-grid{grid-template-columns:repeat(3,1fr);gap:16px;width:100%;max-width:1100px;margin-top:40px;display:grid}.feature-card{border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:default;background:#02061799;border:1px solid #ffffff08;flex-direction:row;align-items:center;gap:16px;padding:24px 20px;transition:transform .3s,border-color .3s;display:flex}.feature-content{text-align:left;flex-direction:column;gap:6px;display:flex}.feature-card:hover{background:#0f172ab3;border-color:#ffffff1a}.feature-accent:hover{border-color:#3b82f64d}.feature-success:hover{border-color:#22c55e4d}.feature-info:hover{border-color:#3b82f64d}.feature-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.icon-accent{color:#60a5fa;background:#3b82f61a}.icon-success{color:#4ade80;background:#22c55e1a}.icon-info{color:#38bdf8;background:#0ea5e91a}.feature-title{color:var(--color-text-primary);letter-spacing:.02em;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700}.feature-desc{color:var(--color-text-muted);font-family:Inter,sans-serif;font-size:13px;line-height:1.5}.how-it-works-section{background:0 0;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:100px 20px;display:flex}.how-it-works-bento{flex-direction:column;gap:60px;width:100%;max-width:1100px;display:flex}.bento-header{text-align:center;flex-direction:column;align-items:center;display:flex}.hiw-badge{color:#3b82f6;letter-spacing:.15em;text-transform:uppercase;background:#3b82f61a;border:1px solid #3b82f64d;border-radius:100px;margin-bottom:12px;padding:6px 14px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700}.hiw-title{color:var(--color-text-primary);letter-spacing:-.02em;font-family:Rajdhani,sans-serif;font-size:48px;font-weight:800}.bento-grid{grid-template-columns:1.2fr .8fr;gap:24px;width:100%;display:grid}.bento-column{flex-direction:column;gap:24px;display:flex}.bento-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172a66;border:1px solid #ffffff0d;border-radius:32px;flex-direction:column;justify-content:flex-end;padding:40px;transition:transform .3s,background .3s;display:flex;position:relative;overflow:hidden}.bento-card:hover{background:#1e293b66;transform:translateY(-5px)}.bento-large{min-height:400px}.bento-small{min-height:188px;padding:32px}.bento-step{color:#3b82f61a;font-family:JetBrains Mono,monospace;font-size:64px;font-weight:800;line-height:1;position:absolute;top:20px;right:30px}.bento-title{color:var(--color-text-primary);margin-bottom:12px;font-family:Rajdhani,sans-serif;font-size:28px;font-weight:700}.bento-desc{color:var(--color-text-muted);max-width:80%;font-family:Plus Jakarta Sans,sans-serif;font-size:16px;line-height:1.6}@media (width<=900px){.hero-container{text-align:center;grid-template-columns:1fr;gap:40px;max-width:600px;margin:0 auto}.hero-text-content{text-align:center;align-items:center}.cyber-sub{max-width:100%}.glitch-form-wrapper{justify-self:center}.features-grid{grid-template-columns:repeat(2,1fr)}.bento-grid{grid-template-columns:1fr}.bento-large{min-height:250px}}@media (width<=640px){.landing-fold{padding:10px 16px 40px}.features-grid{grid-template-columns:1fr}.hero-text-content{margin-top:20px}.cyber-heading,.hiw-title{font-size:36px}.bento-card{border-radius:20px;padding:24px}.bento-step{font-size:48px;top:16px;right:20px}.bento-desc{max-width:100%}}@media (width<=480px){.search-form-wrapper{padding:16px}.cyber-heading{letter-spacing:0;font-size:28px}.card-body{padding:24px 20px}.how-it-works-section{padding:60px 16px}.bento-title{font-size:22px}.bento-desc{font-size:14px}.bento-small,.bento-large{min-height:auto;padding:24px 20px}}@media (width<=375px){.hero-container{gap:20px}.cyber-heading{font-size:26px}.card-body{padding:20px 16px}.submit-btn{padding:12px;font-size:13px}.feature-card{padding:20px 16px}.feature-icon{width:36px;height:36px}.feature-title{font-size:14px}.hiw-title{font-size:28px}}[data-theme=light] .cyber-badge{color:#2563eb;background:#3b82f614;border-color:#3b82f633}[data-theme=light] .glitch-card{-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border);background:#ffffffd9;box-shadow:0 8px 32px #0000000f,0 0 0 1px #00000008}[data-theme=light] .form-group input{background:#fff}[data-theme=light] .form-group input:focus{box-shadow:0 0 0 3px #0a7cff1f}[data-theme=light] .submit-btn:hover{background:var(--color-accent);color:#fff}[data-theme=light] .cyber-error{color:#dc2626;background:#ef44440f;border-color:#ef444426}[data-theme=light] .feature-card{-webkit-backdrop-filter:blur(12px);background:#ffffffa6;border:1px solid #0000000f;box-shadow:0 2px 12px #0000000a}[data-theme=light] .feature-card:hover{background:#ffffffd9;border-color:#0000001a}[data-theme=light] .icon-accent{color:#2563eb;background:#3b82f614}[data-theme=light] .icon-success{color:#16a34a;background:#22c55e14}[data-theme=light] .icon-info{color:#0284c7;background:#0ea5e914}[data-theme=light] .hiw-badge{background:#3b82f60f;border-color:#3b82f626}[data-theme=light] .bento-card{-webkit-backdrop-filter:blur(12px);background:#ffffff8c;border:1px solid #0000000f;box-shadow:0 4px 20px #0000000a}[data-theme=light] .bento-card:hover{background:#fffc;box-shadow:0 8px 30px #0000000f}[data-theme=light] .bento-step{color:#3b82f614}[data-theme=light] .bento-desc{color:var(--color-text-secondary)}.summary-card{border:1px solid var(--color-border);background:var(--color-surface);cursor:default;border-radius:12px;flex-direction:row;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:border-color .2s;display:flex;position:relative;overflow:hidden}.summary-card:hover{border-color:var(--color-border-strong)}.summary-accent-bar{border-radius:3px 0 0 3px;width:3px;position:absolute;top:0;bottom:0;left:0}.summary-content{flex-direction:column;gap:.15rem;display:flex}.summary-icon{width:20px;height:20px;color:var(--color-text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.summary-accent .summary-icon{color:#3b82f6}.summary-success .summary-icon{color:#22c55e}.summary-danger .summary-icon{color:#f59e0b}.summary-info .summary-icon{color:#a78bfa}.summary-value{letter-spacing:-.02em;color:var(--color-text-primary);align-items:baseline;gap:.25rem;font-size:1.55rem;font-weight:800;line-height:1;display:flex}.summary-suffix{color:var(--color-text-secondary);font-size:.8rem;font-weight:600}.summary-label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}@media (width<=640px){.summary-card{padding:.95rem 1.15rem}.summary-value{font-size:1.75rem;font-weight:800}.summary-label{font-size:13.5px}.summary-suffix{font-size:1rem}.summary-icon svg{width:20px;height:20px}}@media print{.summary-accent-bar{display:none}.summary-card{box-shadow:none;background:0 0;border:1px solid #ddd}}.grade-chip{border-radius:var(--radius-xs);letter-spacing:.02em;text-align:center;border:1px solid;justify-content:center;align-items:center;min-width:32px;padding:.2rem .55rem;font-size:.75rem;font-weight:700;transition:transform .15s,box-shadow .15s;display:inline-flex}.grade-chip:hover{transform:scale(1.08);box-shadow:0 2px 8px #00000026}.semester-card{border-radius:var(--radius-xl);background:var(--color-surface);border:1px solid var(--color-border);transition:border-color .2s;overflow:hidden}.semester-card:hover{border-color:var(--color-border)}.semester-header{cursor:pointer;text-align:left;width:100%;color:inherit;background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.25rem;font-family:inherit;transition:background-color .15s;display:flex}.semester-header:hover{background-color:var(--color-surface-hover)}.semester-header-left{align-items:center;gap:.85rem;min-width:0;display:flex}.semester-index{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-accent);background:#00e5c814;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;transition:background .2s;display:flex}[data-theme=light] .semester-index{color:#0284c7;background:#0a7cff14}.semester-header:hover .semester-index{background:#00e5c826}[data-theme=light] .semester-header:hover .semester-index{color:#0284c7;background:#0a7cff26}.semester-info{min-width:0}.semester-name{color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.01em;font-size:15.5px;font-weight:700;overflow:hidden}.semester-meta{color:var(--color-text-secondary);flex-wrap:wrap;align-items:center;gap:.15rem;margin-top:.2rem;font-size:12.5px;font-weight:500;display:flex}.meta-item{white-space:nowrap;align-items:center;display:inline-flex}.meta-dot{color:var(--color-text-muted);opacity:.9;vertical-align:middle;margin:0 4px;font-size:13px;font-weight:700;line-height:1;display:inline-block}.due-text{color:#dc2626;font-size:12.5px;font-weight:700}.session-text{color:var(--color-text-secondary);opacity:1;font-size:12.5px;font-style:normal;font-weight:500}.semester-header-right{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.sgpa-badge{border-radius:var(--radius-sm);flex-direction:column;align-items:center;gap:.05rem;padding:.3rem .6rem;transition:box-shadow .2s;display:flex}.semester-header:hover .sgpa-badge{box-shadow:var(--shadow-sm)}.sgpa-good{background:#16a34a14;border:1px solid #16a34a33}.sgpa-warning{background:#d9770614;border:1px solid #d9770633}.sgpa-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);font-size:.5rem;font-weight:700}.sgpa-value{letter-spacing:-.02em;font-size:.95rem;font-weight:800}.sgpa-good .sgpa-value{color:#16a34a}.sgpa-warning .sgpa-value{color:#d97706}.chevron{color:var(--color-text-muted);transition:color .2s}.semester-header:hover .chevron{color:var(--color-text-secondary)}.semester-body{overflow:hidden}.subjects-table-header{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);border-top:1px solid var(--color-border);background:var(--color-surface-secondary);align-items:center;gap:.6rem;padding:.45rem 1.25rem;font-size:11px;font-weight:700;display:flex}.th-sno{text-align:center;flex-shrink:0;width:28px}.th-code{flex-shrink:0;width:100px}.th-name{flex:1;min-width:0}.th-attempts{text-align:center;flex-shrink:0;width:65px}.th-grade{text-align:center;flex-shrink:0;width:55px}.th-credits{text-align:center;flex-shrink:0;width:60px}.th-status{text-align:right;flex-shrink:0;width:75px}.subjects-list{flex-direction:column;padding:0 0 .25rem;display:flex}.empty-state{text-align:center;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;padding:2rem;font-size:.85rem;font-weight:500;display:flex}.subject-row{border-bottom:1px solid var(--color-border);cursor:default;background:0 0;align-items:center;gap:.6rem;padding:.6rem 1.25rem;transition:background-color .15s;display:flex}.subject-row:last-child{border-bottom:none}.subject-row:hover{background-color:var(--color-surface-hover)}.subject-failed{background:#ef444405}.subject-failed:hover{background:#ef444409}.sr-sno{text-align:center;width:28px;color:var(--color-text-muted);flex-shrink:0;font-size:12px;font-weight:500}.sr-code{width:100px;color:var(--color-text-primary);letter-spacing:.02em;flex-shrink:0;font-size:13px;font-weight:700}.sr-name{min-width:0;color:var(--color-text-primary);text-transform:capitalize;white-space:nowrap;text-overflow:ellipsis;flex:1;align-items:center;gap:.4rem;font-size:13.5px;font-weight:600;display:flex;overflow:hidden}.attempt-history{cursor:help;flex-shrink:0;align-items:center;gap:2px;display:inline-flex}.attempt-dot{border-radius:50%;width:6px;height:6px}.attempt-pass{background:#22c55e}.attempt-fail{background:#ef4444}.sr-attempts{text-align:center;flex-shrink:0;width:65px}.attempt-badge{color:var(--color-text-muted);background:0 0;border-radius:4px;align-items:center;padding:2px 6px;font-size:11.5px;font-weight:600;display:inline-flex}.attempt-multiple{color:#d97706;background:#d9770614;border:1px solid #d9770633;font-weight:700}.sr-grade{flex-shrink:0;justify-content:center;width:55px;display:flex}.sr-credits{text-align:center;width:60px;color:var(--color-text-primary);flex-shrink:0;font-size:13px;font-weight:600}.sr-status{text-align:right;flex-shrink:0;width:75px;font-size:.68rem;font-weight:600}.status-pass{color:#22c55e}.status-fail{color:#ef4444}.sr-mobile-card{display:none}@media (width<=640px){.semester-header{padding:.95rem}.semester-name{font-size:17.5px;font-weight:700}.semester-meta{flex-wrap:wrap;gap:.25rem;font-size:14px}.meta-dot{font-size:15px}.due-text,.session-text{font-size:14px}.sgpa-badge{padding:.3rem .65rem}.sgpa-label{font-size:11px}.sgpa-value{font-size:17.5px;font-weight:800}.subjects-table-header,.sr-sno,.sr-code,.sr-name,.sr-attempts,.sr-grade,.sr-credits,.sr-status{display:none}.sr-mobile-card{flex-direction:column;gap:.45rem;width:100%;display:flex}.subject-row{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);margin:0 .6rem .5rem;padding:.85rem;transition:none}.subject-row:hover{border-color:var(--color-border);background-color:var(--color-surface)}.subject-failed{background:#ef44440a;border-color:#ef44444d}.subject-failed:hover{background-color:#ef44440a;border-color:#ef44444d}.sr-mobile-top{justify-content:space-between;align-items:center;display:flex}.sr-mobile-code{color:var(--color-text-primary);letter-spacing:.02em;background:var(--color-surface-secondary);border:1px solid var(--color-border);border-radius:4px;padding:3px 8px;font-size:13.5px;font-weight:700}.sr-mobile-name{color:var(--color-text-primary);text-transform:capitalize;font-size:15.5px;font-weight:600;line-height:1.35}.sr-mobile-bottom{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:.4rem;padding-top:.45rem;display:flex}.sr-mobile-credits{color:var(--color-text-secondary);align-items:center;gap:.25rem;font-size:13.5px;font-weight:600;display:flex}.sr-mobile-status{margin-left:auto;font-size:13.5px;font-weight:700}.subjects-list{padding:0 0 .4rem}}.export-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);background:#0000008c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.export-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;width:100%;max-width:460px;padding:1.5rem;position:relative}.export-header{justify-content:space-between;align-items:flex-start;margin-bottom:.25rem;display:flex}.export-title{color:var(--color-text-primary);margin:0;font-size:17px;font-weight:600}.export-subtitle{color:var(--color-text-muted);margin-top:2px;margin-bottom:1.25rem;font-size:13px}.export-close{border:1px solid var(--color-border);width:28px;height:28px;color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;font-size:16px;transition:background .15s,color .15s;display:flex;position:absolute;top:1.25rem;right:1.25rem}.export-close:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.export-options{flex-direction:column;gap:0;display:flex}.export-option{border:1.5px solid var(--color-border);cursor:pointer;background:var(--color-bg-primary);text-align:left;border-radius:10px;align-items:flex-start;gap:12px;margin-bottom:10px;padding:14px;font-family:inherit;transition:border-color .15s,background .15s;display:flex}.export-option:hover,.export-option.selected{border-color:var(--color-accent);background:var(--color-surface)}.option-radio{border:1.5px solid var(--color-border);border-radius:50%;flex-shrink:0;width:16px;height:16px;margin-top:2px;transition:all .15s;position:relative}.option-radio.selected{background:var(--color-accent);border-color:var(--color-accent)}.option-radio.selected:after{content:"";background:#0a0a0f;border-radius:50%;position:absolute;inset:3px}[data-theme=light] .option-radio.selected:after{background:#fff}.option-text{flex:1}.option-title{color:var(--color-text-primary);font-size:14px;font-weight:600}.option-desc{color:var(--color-text-muted);margin-top:2px;font-size:12px;line-height:1.5}.export-confirm{border:1.5px solid var(--color-accent);width:100%;color:var(--color-accent);cursor:pointer;background:0 0;border-radius:10px;margin-top:1rem;padding:12px;font-family:inherit;font-size:14px;font-weight:600;transition:background .2s,color .2s}.export-confirm:hover{background:var(--color-accent);color:#0a0a0f}[data-theme=light] .export-confirm:hover{color:#fff}@media (width<=480px){.export-modal{border-radius:14px;padding:1.25rem}.export-option{padding:12px}}.results-container{min-height:calc(100vh - var(--nav-offset));z-index:1;position:relative}.results-content{flex-direction:column;gap:1rem;max-width:1200px;margin:0 auto;padding:1.25rem 1.5rem;display:flex}.student-card{border-radius:var(--radius-xl);padding:1.5rem;transition:border-color .3s,box-shadow .3s;position:relative}.student-card:hover{border-color:var(--color-border-strong)}.student-card-top{align-items:center;gap:1.15rem;display:flex}.student-avatar-ring{border-radius:var(--radius-lg);background:var(--gradient-brand);flex-shrink:0;width:52px;height:52px;padding:2px;box-shadow:0 0 20px #0a7cff26}.student-avatar{border-radius:calc(var(--radius-lg) - 2px);background:var(--color-surface);width:100%;height:100%;color:var(--color-accent);justify-content:center;align-items:center;font-size:22px;font-weight:800;display:flex}[data-theme=dark] .student-avatar{background:var(--bg-primary);color:var(--accent)}.student-main{flex:1;min-width:0}.student-card .student-name,h1.student-name,.student-name{color:var(--color-text-primary)!important;white-space:nowrap!important;text-overflow:ellipsis!important;letter-spacing:-.02em!important;padding-right:180px!important;font-size:30px!important;font-weight:800!important;line-height:1.2!important;overflow:hidden!important}.student-badges{scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;align-items:center;gap:.35rem;margin-top:.35rem;display:flex;overflow-x:auto}.student-badges::-webkit-scrollbar{display:none}.student-badge{border-radius:var(--radius-xs);letter-spacing:.02em;padding:.15rem .5rem;font-size:.65rem;font-weight:600}.badge-primary{color:#0284c7;background:#0a7cff14;border:1px solid #0a7cff33}[data-theme=dark] .badge-primary{background:var(--accent-muted);color:var(--accent);border:1px solid #3b82f626}.badge-secondary{color:#0369a1;background:#0284c714;border:1px solid #0284c733}[data-theme=dark] .badge-secondary{background:var(--info-bg);color:var(--info);border:1px solid var(--info-border)}.badge-muted{color:var(--color-text-secondary);border:1px solid var(--color-border);background:#0000000a}[data-theme=dark] .badge-muted{color:var(--text-muted);border:1px solid var(--border);background:#ffffff08}.student-actions{flex-direction:row;flex-shrink:0;align-items:center;gap:12px;display:flex;position:absolute;top:1.5rem;right:1.5rem}.fetch-time{color:var(--color-text-muted);font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-size:12px;display:flex}.fetch-time svg{flex-shrink:0}.action-btn{font-family:var(--font-body);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:500;transition:background .15s;display:flex}.action-btn.print-btn{border:1px solid var(--color-border);color:var(--color-text-primary);background:0 0}.action-btn.print-btn:hover{background:var(--color-surface-hover)}.action-btn.print-btn svg{color:inherit}.action-btn.pdf-btn{border:1px solid var(--color-border);color:var(--color-text-primary);background:0 0}.action-btn.pdf-btn:hover:not(:disabled){background:var(--color-surface-hover)}.action-btn.pdf-btn:disabled{opacity:.65;cursor:wait}.action-btn.pdf-btn svg{color:inherit}.student-details-grid{border-top:1px solid var(--border);grid-template-columns:repeat(4,1fr);gap:.75rem;margin-top:1rem;padding-top:1rem;display:grid}.detail-item{flex-direction:column;gap:.15rem;display:flex}.detail-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);font-size:11px;font-weight:700}.detail-value{color:var(--color-text-primary);letter-spacing:-.01em;font-size:14.5px;font-weight:700}.summary-grid{grid-template-columns:repeat(4,1fr);gap:.75rem;display:grid}.global-filter-bar{border-radius:var(--radius-full);align-items:center;gap:.75rem;padding:.7rem 1.1rem;transition:border-color .3s;display:flex}.global-filter-bar:hover{border-color:var(--border-hover)}.filter-label{color:var(--text-dim);white-space:nowrap;font-size:.72rem;font-weight:600}.filter-tabs{gap:.3rem;display:flex}.filter-tab{border:1px solid var(--color-border);color:var(--color-text-secondary);font-size:13px;font-weight:500;font-family:var(--font-body);cursor:pointer;white-space:nowrap;background:0 0;border-radius:20px;align-items:center;gap:.35rem;padding:6px 14px;transition:background .15s,color .15s,border-color .15s;display:flex}.filter-tab:not(.filter-active):hover{border-color:var(--color-accent);color:var(--color-accent)}.filter-active{background:var(--color-accent);border-color:var(--color-accent);color:#0a0a0f;font-weight:600}[data-theme=light] .filter-active{color:#fff}.filter-count{opacity:.7;justify-content:center;align-items:center;margin-left:5px;font-size:11px;display:inline-flex}.semesters-list{flex-direction:column;gap:.75rem;padding-bottom:2.5rem;display:flex}.print-header,.print-footer{display:none}@media (width<=768px){.print-btn{display:none!important}.results-content{gap:.75rem;padding:1rem}.student-card-top{flex-wrap:wrap}.student-main{min-width:0}.student-actions{flex-direction:column;justify-content:center;align-items:center;gap:5px;width:auto;margin-top:0;display:flex;position:absolute;top:1.15rem;right:1.15rem}.fetch-time{color:var(--color-text-muted);text-align:center;justify-content:center;gap:4px;font-size:13px;font-weight:600}.fetch-time svg{width:14px;height:14px}.action-btn.pdf-btn{border:1px solid var(--color-border);border-radius:8px;flex-shrink:0;align-items:center;gap:5px;width:auto;height:auto;min-height:34px;padding:5px 12px;font-size:13px;font-weight:600;display:inline-flex}.action-btn.pdf-btn .action-btn-text{font-size:13px;font-weight:600;display:inline-block!important}.action-btn.pdf-btn svg{width:15px;height:15px}.student-card .student-name,h1.student-name,.student-name{padding-right:125px!important;font-size:28px!important}.student-avatar{font-size:24px}.detail-label{font-size:13px}.detail-value{font-size:16.5px}.student-details-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.summary-grid{grid-template-columns:repeat(2,1fr)}.global-filter-bar{border-radius:var(--radius-lg);flex-direction:column;align-items:flex-start;gap:.5rem}.filter-label{font-size:14px}.filter-tabs{width:100%}.filter-tab{flex:1;justify-content:center;font-size:14px}}@media (width<=480px){.student-card{padding:1.25rem}.student-actions{flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;top:1rem;right:1rem}.fetch-time{color:var(--color-text-muted);text-align:center;justify-content:center;gap:4px;font-size:12px;font-weight:600}.fetch-time svg{width:13px;height:13px}.action-btn.pdf-btn{border-radius:7px;align-items:center;gap:4px;width:auto;height:auto;min-height:32px;padding:4px 10px;display:inline-flex}.action-btn.pdf-btn .action-btn-text{font-size:12px;font-weight:600;display:inline-block!important}.action-btn.pdf-btn svg{width:14px;height:14px}.student-card .student-name,h1.student-name,.student-name{padding-right:110px!important;font-size:22px!important}.student-avatar-ring{width:48px;height:48px}.student-avatar{font-size:22px}.detail-label{font-size:12px}.detail-value{font-size:15.5px}.filter-tab{font-size:13px}}[data-theme=light] .badge-muted{background:#0000000a;border-color:#00000014}@media print{@page{size:A4 portrait;margin:.12in}*{margin:0;padding:0;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;box-sizing:border-box!important;font-family:Plus Jakarta Sans,sans-serif!important}html,body{color:#111!important;background:#fff!important;height:100%!important;min-height:100%!important;margin:0!important;padding:0!important;font-size:6.5pt!important;font-weight:500!important;line-height:1.2!important}.app{margin:0!important;padding-top:0!important}.results-container{color:#111!important;background:#fff!important;flex-direction:column!important;min-height:100%!important;margin:0!important;padding:0!important;display:flex!important}.results-content{flex-direction:column!important;flex:1!important;gap:0!important;max-width:100%!important;margin:0!important;padding:0!important;display:flex!important}.student-card,.student-actions,.global-filter-bar,.summary-grid,.print-btn,.pdf-btn,.fetch-time-badge,.empty-state,.chevron,.semester-index,.attempt-history,.sr-mobile-card{display:none!important}.print-header{text-align:center!important;border-bottom:1.5pt solid #1e40af!important;margin-bottom:2pt!important;padding:2pt 0 3pt!important;display:block!important}.print-header h1{color:#1e40af!important;margin:0!important;font-size:10pt!important;font-weight:700!important;line-height:1.3!important}.print-header h2{display:none!important}.print-student-info{color:#000!important;flex-wrap:wrap!important;justify-content:center!important;gap:2pt 8pt!important;margin-top:2pt!important;margin-bottom:0!important;font-size:7pt!important;font-weight:500!important;display:flex!important}.print-student-info span{white-space:nowrap!important}.print-student-info strong{font-weight:700!important}.semesters-list{flex-direction:column!important;gap:0!important;margin:0!important;padding:0!important;display:flex!important}.semester-card{break-inside:avoid!important;page-break-inside:avoid!important;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important;margin:2pt 0 0!important;padding:0!important}.semester-header{box-sizing:border-box!important;cursor:default!important;background:#dce4f0!important;border-top:.5pt solid #888!important;border-bottom:.5pt solid #888!important;border-radius:0!important;outline:none!important;justify-content:space-between!important;align-items:center!important;width:100%!important;min-height:0!important;padding:1.5pt 4pt!important;line-height:1.2!important;display:flex!important}.semester-header-left{flex:1!important;align-items:baseline!important;gap:0!important;min-width:0!important;display:flex!important}.semester-info{flex:1!important;align-items:baseline!important;gap:4pt!important;min-width:0!important;display:flex!important}.semester-name{color:#000!important;text-transform:uppercase!important;letter-spacing:.02em!important;white-space:nowrap!important;flex-shrink:0!important;margin:0!important;font-size:7pt!important;font-weight:700!important;line-height:1.2!important}.semester-meta{color:#475569!important;white-space:nowrap!important;text-overflow:ellipsis!important;align-items:baseline!important;gap:0!important;margin:0!important;padding:0!important;font-size:5.2pt!important;font-weight:500!important;line-height:1.2!important;display:inline-flex!important;overflow:hidden!important}.semester-meta>span{color:#475569!important;white-space:nowrap!important;font-size:5.2pt!important;font-style:normal!important;font-weight:500!important;line-height:1.2!important;display:inline!important}.semester-meta .due-text{color:#dc2626!important;font-size:5.2pt!important;font-style:normal!important;font-weight:600!important;line-height:1.2!important}.semester-meta .meta-dot{color:#64748b!important;vertical-align:middle!important;opacity:1!important;margin:0 1pt!important;font-size:5pt!important;font-style:normal!important;font-weight:700!important;line-height:1!important;display:inline-block!important}.semester-meta .session-text{color:#475569!important;font-size:5.2pt!important;font-style:normal!important;font-weight:500!important;line-height:1.2!important}.semester-header-right{flex-shrink:0!important;align-items:center!important;margin-left:6pt!important;display:flex!important}.sgpa-badge{white-space:nowrap!important;background:#f1f5f9!important;border:.5pt solid #94a3b8!important;border-radius:2px!important;flex-direction:row!important;flex-shrink:0!important;align-items:center!important;gap:2.5pt!important;padding:.5pt 3.5pt!important;line-height:1!important;display:inline-flex!important}.sgpa-label{color:#475569!important;font-size:4.5pt!important;font-weight:700!important;line-height:1!important;display:inline-block!important}.sgpa-value{color:#1e40af!important;font-size:6pt!important;font-weight:700!important;line-height:1!important;display:inline-block!important}.semester-body{opacity:1!important;height:auto!important;display:block!important;overflow:visible!important}.subjects-table-header{background:#f0f3f7!important;border-top:none!important;border-bottom:.5pt solid #999!important;align-items:center!important;gap:0!important;padding:.8pt 4pt!important;display:flex!important}.subjects-table-header span{color:#333!important;text-transform:uppercase!important;letter-spacing:.04em!important;font-size:5pt!important;font-weight:700!important}.th-sno{text-align:center!important;flex-shrink:0!important;width:16px!important;display:block!important}.th-code{text-align:left!important;flex-shrink:0!important;width:62px!important;padding-left:4pt!important}.th-name{text-align:left!important;flex:1!important;padding-left:4pt!important}.th-attempts{text-align:center!important;flex-shrink:0!important;width:46px!important}.th-grade{text-align:center!important;flex-shrink:0!important;width:36px!important}.th-credits{text-align:center!important;flex-shrink:0!important;width:40px!important}.th-status{text-align:right!important;flex-shrink:0!important;width:50px!important;padding-right:2pt!important}.subjects-list{margin:0!important;padding:0!important}.subject-row{background:0 0!important;border:none!important;border-bottom:.25pt solid #e0e0e0!important;border-radius:0!important;align-items:center!important;gap:0!important;width:auto!important;padding:.4pt 4pt!important;line-height:1.2!important;display:flex!important}.subject-row:last-child{border-bottom:none!important}.subject-failed{background-color:#fde8e8!important}.sr-sno{color:#555!important;text-align:center!important;flex-shrink:0!important;width:16px!important;font-size:5.5pt!important;font-weight:500!important;line-height:1.25!important;display:block!important}.sr-code{color:#222!important;flex-shrink:0!important;width:62px!important;padding:0 0 0 4pt!important;font-size:5.5pt!important;font-weight:600!important;line-height:1.25!important;display:block!important}.sr-name{color:#000!important;white-space:nowrap!important;text-overflow:ellipsis!important;flex:1!important;min-width:0!important;padding:0 0 0 4pt!important;font-size:5.5pt!important;font-weight:500!important;line-height:1.25!important;display:block!important;overflow:hidden!important}.sr-attempts{color:#444!important;text-align:center!important;flex-shrink:0!important;width:46px!important;font-size:5.5pt!important;font-weight:500!important;line-height:1.25!important;display:block!important}.attempt-badge{color:#444!important;background:0 0!important;border:none!important;padding:0!important;font-size:5.5pt!important;font-weight:500!important}.sr-grade{flex-shrink:0!important;justify-content:center!important;width:36px!important;display:flex!important}.grade-chip{color:#000!important;background:0 0!important;border:none!important;padding:0!important;font-size:5.5pt!important;font-weight:700!important;line-height:1.25!important}.sr-credits{color:#000!important;text-align:center!important;flex-shrink:0!important;width:40px!important;font-size:5.5pt!important;font-weight:500!important;line-height:1.25!important;display:block!important}.sr-status{text-align:right!important;flex-shrink:0!important;width:50px!important;padding:0 2pt 0 0!important;font-size:5.5pt!important;font-weight:600!important;line-height:1.25!important;display:block!important}.status-pass{color:#16a34a!important}.status-fail{color:#dc2626!important}.sr-status svg{vertical-align:-.2pt!important;width:5.5pt!important;height:5.5pt!important;margin-right:1.5pt!important}.print-footer{color:#64748b!important;white-space:nowrap!important;box-sizing:border-box!important;background:0 0!important;border-top:none!important;justify-content:space-between!important;align-items:center!important;margin:0!important;padding:0 4pt 1.5pt!important;font-size:5pt!important;line-height:1!important;display:flex!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important}.print-footer span,.print-footer a{color:#64748b!important;font-size:5pt!important;line-height:1!important}.print-footer a{color:#1e40af!important;font-weight:600!important;text-decoration:none!important}.print-footer .footer-left{text-align:left!important;white-space:nowrap!important;flex-shrink:0!important}.print-footer .footer-center{text-align:center!important;white-space:nowrap!important;opacity:.3!important;display:inline-block!important;position:absolute!important;left:50%!important;transform:translate(-50%)!important}.print-footer .footer-center a{color:#1e40af!important;margin:0!important;padding:0!important;font-weight:600!important;text-decoration:none!important;display:inline!important}.print-footer .footer-right{text-align:right!important;white-space:nowrap!important;flex-shrink:0!important;margin-left:auto!important}body.print-detail{color:#0f172a!important;background:#fff!important;font-size:7.5pt!important}body.print-detail .results-container{background:#fff!important;padding:0!important}body.print-detail .results-content{gap:6pt!important;padding:0!important}body.print-detail .print-header{background:0 0!important;border-bottom:1.5pt solid #1e40af!important;margin-bottom:5pt!important;padding:3pt 0 4pt!important}body.print-detail .print-header h1{color:#1e40af!important;margin-bottom:2pt!important;font-size:11.5pt!important;font-weight:800!important}body.print-detail .print-student-info{color:#334155!important;gap:2pt 8pt!important;margin-top:2pt!important;font-size:7.5pt!important}body.print-detail .semesters-list{gap:6pt!important}body.print-detail .semester-card{break-inside:avoid!important;page-break-inside:avoid!important;box-shadow:none!important;background:#fff!important;border:1px solid #00000017!important;border-radius:8px!important;margin:0 0 6pt!important;overflow:hidden!important}body.print-detail .semester-header{background:#fff!important;border-top:none!important;border-bottom:1px solid #0000000f!important;border-radius:8px 8px 0 0!important;padding:3.5pt 8pt!important}body.print-detail .semester-header-left{align-items:center!important;gap:6pt!important}body.print-detail .semester-index{color:#0284c7!important;background:#0a7cff14!important;border-radius:4px!important;flex-shrink:0!important;justify-content:center!important;align-items:center!important;width:20px!important;height:20px!important;font-size:7pt!important;font-weight:700!important;display:flex!important}body.print-detail .semester-info{flex-direction:column!important;align-items:flex-start!important;gap:1.5pt!important;min-width:0!important;display:flex!important}body.print-detail .semester-name{color:#0f172a!important;text-transform:uppercase!important;margin:0!important;font-size:8pt!important;font-weight:700!important;line-height:1.15!important}body.print-detail .semester-meta{color:#64748b!important;flex-flow:wrap!important;align-items:center!important;gap:1.5pt!important;margin:0!important;font-size:6.2pt!important;line-height:1.15!important;display:flex!important}body.print-detail .semester-meta>span{color:#64748b!important;font-size:6.2pt!important}body.print-detail .semester-meta .due-text{color:#ef4444!important;font-size:6.2pt!important;font-weight:600!important}body.print-detail .semester-meta .meta-dot{color:#64748b!important;vertical-align:middle!important;opacity:1!important;margin:0 1pt!important;font-size:5.5pt!important;font-style:normal!important;font-weight:700!important;line-height:1!important;display:inline-block!important}body.print-detail .semester-meta .session-text{color:#64748b!important;font-size:6.2pt!important}body.print-detail .sgpa-badge{border-radius:4px!important;flex-direction:column!important;align-items:center!important;gap:.5pt!important;padding:1.5pt 6pt!important;display:flex!important}body.print-detail .sgpa-badge.sgpa-good{background:#22c55e14!important;border:1px solid #22c55e40!important}body.print-detail .sgpa-badge.sgpa-good .sgpa-value{color:#16a34a!important}body.print-detail .sgpa-badge.sgpa-warning{background:#f59e0b14!important;border:1px solid #f59e0b40!important}body.print-detail .sgpa-badge.sgpa-warning .sgpa-value{color:#d97706!important}body.print-detail .sgpa-label{text-transform:uppercase!important;letter-spacing:.08em!important;color:#64748b!important;font-size:4.5pt!important;font-weight:700!important}body.print-detail .sgpa-value{letter-spacing:-.02em!important;font-size:8pt!important;font-weight:800!important}body.print-detail .subjects-table-header{background:#00000005!important;border-bottom:1px solid #0000000f!important;gap:4pt!important;padding:2.5pt 6pt!important}body.print-detail .subjects-table-header span{color:#64748b!important;text-transform:uppercase!important;letter-spacing:.04em!important;font-size:5.8pt!important;font-weight:700!important}body.print-detail .subject-row{border-bottom:1px solid #0000000a!important;gap:4pt!important;padding:2.2pt 6pt!important;font-size:6.8pt!important;line-height:1.25!important}body.print-detail .subject-failed{background-color:#ef44440a!important}body.print-detail .sr-sno{color:#64748b!important;width:16px!important;font-size:6.5pt!important}body.print-detail .sr-code{color:#0f172a!important;width:65px!important;font-size:6.8pt!important;font-weight:600!important}body.print-detail .sr-name{color:#0f172a!important;align-items:center!important;gap:3pt!important;font-size:6.8pt!important;font-weight:500!important;display:flex!important}body.print-detail .attempt-history{align-items:center!important;gap:1.5px!important;margin-left:3px!important;display:inline-flex!important}body.print-detail .attempt-dot{border-radius:50%!important;width:3.5px!important;height:3.5px!important;display:inline-block!important}body.print-detail .attempt-dot.attempt-pass{background:#22c55e!important}body.print-detail .attempt-dot.attempt-fail{background:#ef4444!important}body.print-detail .sr-attempts{color:#64748b!important;width:50px!important;font-size:6.5pt!important}body.print-detail .attempt-badge{color:#64748b!important;font-size:6.5pt!important;font-weight:500!important}body.print-detail .attempt-badge.attempt-multiple{color:#d97706!important;background:#f59e0b14!important;border:1px solid #f59e0b40!important;border-radius:3px!important;padding:.5pt 4pt!important;font-size:6pt!important;font-weight:600!important;display:inline-block!important}body.print-detail .sr-grade{width:38px!important}body.print-detail .grade-chip{border-radius:3px!important;min-width:24px!important;padding:1pt 4pt!important;font-size:6.8pt!important;font-weight:700!important}body.print-detail .sr-credits{color:#0f172a!important;width:40px!important;font-size:6.8pt!important;font-weight:500!important}body.print-detail .sr-status{width:55px!important;font-size:6.8pt!important;font-weight:600!important}body.print-detail .status-pass{color:#16a34a!important}body.print-detail .status-fail{color:#dc2626!important}body.print-detail .sr-status svg{vertical-align:-.5px!important;width:6pt!important;height:6pt!important;margin-right:2px!important}body.print-detail .print-footer{padding:0 6pt 2.5pt!important;font-size:5.5pt!important}body.print-detail .print-footer span,body.print-detail .print-footer a{font-size:5.5pt!important}}.devtools-security-screen{text-align:center;min-height:calc(100vh - 60px);color:var(--color-text-primary);background:var(--color-bg-primary);flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex}.ls-container{background-color:var(--color-bg-primary);width:100%;height:100%;font-family:var(--font-body);z-index:9999;opacity:1;flex-direction:column;transition:opacity .5s;display:flex;position:fixed;top:0;left:0;overflow:hidden}.ls-container.ls-fade-out{opacity:0;pointer-events:none}.ls-navbar{border-bottom:1px solid var(--color-border);background-color:var(--color-surface);z-index:10;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex;position:sticky;top:0}.ls-logo{align-items:center;gap:.5rem;display:flex}.ls-logo-icon{width:20px;height:20px;color:var(--color-accent)}.ls-logo-text{color:var(--color-text-primary);letter-spacing:-.02em;font-size:.9rem;font-weight:600}.ls-badge{font-family:var(--font-mono);color:#00e5c8;letter-spacing:.05em;background-color:#00e5c814;border:1px solid #00e5c833;border-radius:99px;align-items:center;gap:.35rem;padding:.25rem .5rem;font-size:.65rem;font-weight:600;display:flex}[data-theme=light] .ls-badge{color:#0a7cff;background-color:#0a7cff0f;border-color:#0a7cff33}.ls-badge-dot{background-color:#00e5c8;border-radius:50%;width:6px;height:6px;animation:2s infinite ls-pulse-dot}[data-theme=light] .ls-badge-dot{background-color:#0a7cff}@keyframes ls-pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.ls-main-content{scrollbar-width:none;flex-direction:column;flex:1;align-items:center;width:100%;max-width:520px;margin:0 auto;padding:125px 1.5rem 2rem;display:flex;overflow-y:auto}.ls-main-content::-webkit-scrollbar{display:none}.ls-orb-wrapper{flex-shrink:0;width:80px;height:80px;margin-bottom:2rem;position:relative}.ls-orb-outer,.ls-orb-inner{border-radius:50%;width:100%;height:100%;position:absolute;top:0;left:0}.ls-orb-outer{background:conic-gradient(from 0deg, transparent 0%, var(--color-accent) 50%, transparent 100%);opacity:.7;animation:3s linear infinite ls-spin}.ls-orb-inner{opacity:.5;background:conic-gradient(from 180deg,#0000 0%,#4e9bff 50%,#0000 100%);animation:2s linear infinite ls-spin-reverse}.ls-orb-cutout{background-color:var(--color-bg-primary);border-radius:50%;width:calc(100% - 8px);height:calc(100% - 8px);position:absolute;top:4px;left:4px}@keyframes ls-spin{to{transform:rotate(360deg)}}@keyframes ls-spin-reverse{to{transform:rotate(-360deg)}}.ls-step-text-wrapper{justify-content:center;align-items:center;height:24px;margin-bottom:1.5rem;display:flex}.ls-step-text{color:var(--color-text-primary);margin:0;font-size:1rem;font-weight:500;animation:.4s cubic-bezier(.4,0,.2,1) ls-fade-slide-up}@keyframes ls-fade-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ls-step-dots{gap:8px;margin-bottom:2.5rem;display:flex}.ls-dot{border-radius:2px;height:4px;transition:width .4s,opacity .4s,background-color .4s}.ls-dot-pending{background-color:var(--color-border);width:12px}.ls-dot-active{background-color:var(--color-accent);width:32px}.ls-dot-done{background-color:var(--color-accent);opacity:.4;width:12px}.ls-progress-bar{background-color:var(--color-border);border-radius:1px;width:100%;height:2px;margin-bottom:2rem;overflow:hidden}.ls-progress-fill{background:linear-gradient(90deg, var(--color-accent), #4e9bff);height:100%;transition:width .8s cubic-bezier(.4,0,.2,1)}.ls-skeletons{flex-direction:column;gap:12px;width:100%;display:flex}.ls-skeleton-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;align-items:center;gap:1rem;padding:1rem;display:flex}.ls-skel-avatar{border-radius:50%;flex-shrink:0;width:48px;height:48px}.ls-skel-lines{flex-direction:column;flex:1;gap:8px;display:flex}.ls-skel-line{border-radius:4px;height:12px}.ls-skel-line-long{width:70%}.ls-skel-line-short{width:40%}.ls-skel-title{width:30%;height:16px;margin-bottom:12px}.ls-skeleton-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.ls-skeleton-stat{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:1rem;display:flex}.ls-skel-stat-num{border-radius:4px;width:32px;height:24px}.ls-skel-stat-lbl{border-radius:4px;width:48px;height:10px}.ls-skeleton-tall{flex-direction:column;align-items:flex-start;padding:1.25rem}.ls-skel-list{flex-direction:column;gap:12px;width:100%;display:flex}.ls-skel-list .ls-skel-line{width:100%}.ls-shimmer{background:linear-gradient(90deg, var(--color-surface-hover) 25%, var(--color-border) 50%, var(--color-surface-hover) 75%);background-size:200% 100%;animation:1.6s linear infinite ls-shimmer-anim}@keyframes ls-shimmer-anim{0%{background-position:200% 0}to{background-position:0 0}}.ls-tip-text{color:var(--color-text-muted);text-align:center;margin-top:2rem;font-size:.75rem}.ls-tip-highlight{color:var(--color-accent);font-weight:500}.ls-footer{text-align:center;color:var(--color-text-muted);letter-spacing:.02em;padding:1rem;font-size:.7rem}@media (width>=480px){.ls-orb-wrapper{width:96px;height:96px}.ls-skeleton-grid{grid-template-columns:repeat(4,1fr)}.ls-step-text{font-size:1.1rem}.ls-tip-text{font-size:.8rem}}.ls-paused *{animation-play-state:paused!important}.ls-paused .ls-progress-fill{transition:none!important}.modal-overlay{z-index:100000;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-backdrop{-webkit-backdrop-filter:blur(8px);background:#0009;position:absolute;inset:0}.password-modal{background:var(--color-surface);border:1px solid var(--color-border-strong);width:100%;max-width:420px;box-shadow:var(--shadow-xl);z-index:10000;border-radius:16px;position:relative;overflow:hidden}.modal-header{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;padding:20px 24px;display:flex}.modal-icon{color:#3b82f6;background:#3b82f61a;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.modal-header h3{color:var(--color-text-primary);flex:1;margin:0;font-size:16px;font-weight:600}.modal-close{width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:background .2s,color .2s;display:flex}.modal-body{padding:24px}.modal-desc{color:var(--color-text-secondary);margin-bottom:20px;font-size:14px;line-height:1.6}.modal-desc strong{color:var(--color-text-primary)}.modal-error{color:#ef4444;background:#ef444414;border:1px solid #ef444433;border-radius:8px;align-items:center;gap:8px;margin-bottom:16px;padding:12px;font-size:13px;display:flex}.modal-input-group input{border:1px solid var(--color-border);background:var(--color-bg-primary);width:100%;color:var(--color-text-primary);border-radius:10px;outline:none;padding:14px 16px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.modal-input-group input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #00e5c81f}.modal-footer{background:var(--color-surface-secondary);border-top:1px solid var(--color-border);justify-content:flex-end;align-items:center;gap:12px;padding:16px 24px;display:flex}.btn-cancel{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:10px 16px;font-size:14px;font-weight:500;transition:color .2s,background .2s}.btn-cancel:hover{color:var(--color-text-primary);background:var(--color-border)}.btn-submit{background:var(--color-accent);color:#000;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:opacity .2s,transform .1s;display:flex}.btn-submit:disabled{opacity:.7;cursor:not-allowed;transform:none}.modal-spinner{border:2px solid #0003;border-top-color:#000;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite modal-spin;display:inline-block}@keyframes modal-spin{to{transform:rotate(360deg)}}.btn-submit:hover:not(:disabled){opacity:.9}.btn-submit:active:not(:disabled){transform:scale(.98)}[data-theme=light] .modal-backdrop{background:#fff9}[data-theme=light] .password-modal,[data-theme=light] .modal-input-group input{background:#fff}[data-theme=light] .modal-footer{background:#f8f8fb}[data-theme=light] .btn-submit{color:#fff}.site-footer{border-top:1px solid var(--color-border);background:var(--color-surface);width:100%}.footer-inner{max-width:var(--layout-max-width);padding:1.5rem var(--layout-padding-x);grid-template-columns:1fr auto 1fr;align-items:flex-start;gap:2rem;margin:0 auto;display:grid}.footer-left{justify-content:flex-start;display:flex}.footer-center{justify-content:center;align-items:center;gap:24px;display:flex}.footer-center a{color:var(--color-text-secondary);font-size:13px;text-decoration:none;transition:color .15s}.footer-center a:hover{color:var(--color-accent)}.footer-right{text-align:right;flex-direction:column;align-items:flex-end;gap:8px;display:flex}.footer-copy{color:var(--color-text-muted);font-size:12px}.footer-disclaimer{color:var(--color-text-muted);opacity:.5;max-width:280px;font-size:11px;font-style:italic;line-height:1.5}.mobile-break{display:none}.footer-bottom{border-top:1px solid var(--color-border);padding:.75rem var(--layout-padding-x);justify-content:center;align-items:center;gap:6px;display:flex}.footer-built-label{color:var(--color-text-muted);font-size:13px}.footer-built-link{color:var(--color-accent);letter-spacing:.01em;font-size:13px;font-weight:600;text-decoration:none;transition:opacity .15s}.footer-built-link:hover{opacity:.75;text-decoration:underline}@media (width<=767px){.footer-inner{grid-template-rows:auto auto;grid-template-columns:1fr auto;gap:1.5rem 1rem;padding-top:1.5rem;padding-bottom:1.5rem}.footer-left{grid-area:1/1}.footer-center{grid-area:1/2;justify-content:flex-end;gap:16px}.footer-right{text-align:left;grid-area:2/1/auto/-1;align-items:flex-start;gap:6px}.footer-disclaimer{max-width:100%}.mobile-break{display:block}}.app{background:var(--color-bg-primary);min-height:100vh;padding-top:56px;position:relative}.app-main{z-index:1;background:0 0;flex-direction:column;flex:1;display:flex;position:relative}.bg-decoration{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.orb{filter:blur(120px);opacity:.08;will-change:transform;border-radius:50%;position:absolute}.orb-1{background:radial-gradient(circle,#3b82f633,#0000 70%);width:700px;height:700px;animation:25s ease-in-out infinite float-slow;top:-20%;left:-15%}.orb-2{background:radial-gradient(circle,#6366f126,#0000 70%);width:600px;height:600px;animation:30s ease-in-out infinite reverse float-slow;bottom:-20%;right:-15%}.orb-3{background:radial-gradient(circle,#8b5cf61a,#0000 70%);width:500px;height:500px;animation:35s ease-in-out infinite float;top:40%;right:25%}[data-theme=light] .orb{opacity:.12}@media print{.bg-decoration{display:none!important}.app,.app-main{background:0 0!important;height:auto!important;min-height:auto!important;padding:0!important}}.devtools-security-screen{text-align:center;color:var(--color-text-primary);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex;box-shadow:0 8px 32px #0006}.devtools-security-screen svg{color:var(--color-error);opacity:.9;margin-bottom:20px}.devtools-security-screen h2{color:var(--color-error);letter-spacing:-.01em;margin-bottom:12px;font-size:24px;font-weight:700}.devtools-security-screen p{color:var(--color-text-secondary);max-width:400px;font-size:15px;line-height:1.6}.security-reset-btn{background:var(--color-error);color:#fff;cursor:pointer;border:none;border-radius:8px;margin-top:24px;padding:12px 24px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.security-reset-btn:hover{background:var(--color-error-hover,#dc2626);transform:translateY(-1px)}@media (width<=768px){.app{padding-top:68px}}@media (width<=480px){.app{padding-top:64px}}.admin-login-page{background-color:var(--color-bg-primary);background-image:radial-gradient(circle, var(--color-dot) 1px, transparent 1px);background-size:24px 24px;flex:1;justify-content:center;align-items:center;min-height:calc(100vh - 52px);padding:2rem 1rem;display:flex}.admin-login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;flex-direction:column;gap:1.5rem;width:100%;max-width:380px;padding:2rem 2rem 2.25rem;display:flex}.admin-login-header{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.admin-login-header svg{color:var(--color-accent)}.admin-login-title{color:var(--color-text-primary);letter-spacing:-.01em;margin:0;font-size:20px;font-weight:700}.admin-login-subtitle{color:var(--color-text-muted);margin:0;font-size:13px}.admin-login-form{flex-direction:column;gap:10px;display:flex}.admin-login-input-wrapper{align-items:center;display:flex;position:relative}.admin-login-input{background:var(--color-bg-primary);border:1px solid var(--color-border);width:100%;color:var(--color-text-primary);letter-spacing:.04em;border-radius:8px;outline:none;padding:11px 40px 11px 14px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.admin-login-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #00e5c81a}[data-theme=light] .admin-login-input:focus{box-shadow:0 0 0 3px #0a7cff1a}.admin-login-toggle-btn{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;align-items:center;padding:4px;display:flex;position:absolute;right:10px}.admin-login-toggle-btn:hover{color:var(--color-text-primary)}.login-error{color:var(--color-error);background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:7px;align-items:center;gap:6px;padding:8px 12px;font-size:12px;display:flex}.admin-login-btn{letter-spacing:.05em;text-transform:uppercase;border:1.5px solid var(--color-accent);width:100%;color:var(--color-accent);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:13px;font-weight:600;transition:background .2s,color .2s;display:flex}.admin-login-btn:hover:not(:disabled){background:var(--color-accent);color:#0a0a0f}.admin-login-btn:disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.otp-container{flex-direction:column;align-items:center;gap:12px;margin-bottom:24px;display:flex}.otp-label{color:var(--color-text-secondary);letter-spacing:.02em;font-size:13px;font-weight:500}.otp-inputs{justify-content:center;gap:10px;display:flex}.otp-input{border:1px solid var(--color-border-strong);background:var(--color-surface-secondary);width:44px;height:52px;color:var(--color-text-primary);font-size:20px;font-family:var(--font-mono);text-align:center;border-radius:8px;font-weight:600;transition:border-color .2s,box-shadow .2s}.otp-input:focus{border-color:var(--color-accent);background:var(--color-surface);outline:none;box-shadow:0 0 0 2px #09cede26}.otp-input:disabled{opacity:.5;cursor:not-allowed}.admin-login-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:13px;height:13px;animation:.75s linear infinite adminLoginSpin}@keyframes adminLoginSpin{to{transform:rotate(360deg)}}.admin-login-passkey-wrapper{flex-direction:column;gap:12px;margin-top:4px;display:flex}.admin-login-divider{text-align:center;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em;align-items:center;font-size:12px;display:flex}.admin-login-divider:before,.admin-login-divider:after{content:"";border-bottom:1px solid var(--color-border);flex:1}.admin-login-divider span{padding:0 12px}.admin-login-passkey-btn{letter-spacing:.03em;border:1px solid var(--color-border-strong);background:var(--color-surface-secondary);width:100%;color:var(--color-text-primary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:12px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.admin-login-passkey-btn:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-text-muted)}.admin-login-passkey-btn:disabled{opacity:.5;cursor:not-allowed}.admin-dashboard-page{background-color:var(--color-bg-primary);background-image:radial-gradient(circle, var(--color-dot) 1px, transparent 1px);background-size:24px 24px;flex:1;padding:2rem 2rem 4rem}.admin-dashboard-page.classmates-active{background-color:var(--aether-void,#06070a)!important;background-image:none!important;padding:0!important}.admin-dashboard-wrapper,.admin-content{flex-direction:column;gap:1.75rem;width:100%;max-width:1320px;margin:0 auto;display:flex}.admin-dashboard-page.classmates-active .admin-dashboard-wrapper,.admin-dashboard-page.classmates-active .admin-content{max-width:100%!important}.admin-logs-section{flex-direction:column;gap:12px;display:flex}@media (width<=768px){.admin-dashboard-page{padding:1.5rem 1rem 3rem}}@media (width<=480px){.admin-dashboard-page{padding:1.25rem .875rem 2.5rem}}.admin-page-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.admin-page-title{color:var(--color-text-primary);letter-spacing:-.02em;margin:0;font-size:22px;font-weight:700;line-height:1.2}.admin-page-sub{color:var(--color-text-muted);letter-spacing:.01em;margin-top:3px;margin-bottom:0;font-size:13px}.header-actions{align-items:center;gap:8px;display:flex}.sync-btn{border:1px solid var(--color-border-strong);background:var(--color-surface);height:32px;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:12px;font-weight:500;transition:background .15s,color .15s;display:flex}.sync-btn svg{width:13px;height:13px;transition:transform .5s}.sync-btn:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.sync-btn.syncing svg{animation:.8s linear infinite spin}.stats-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}@media (width<=900px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:8px}}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;flex-direction:column;gap:4px;padding:1rem 1.125rem .875rem;transition:all .4s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden}.stat-card:hover{box-shadow:0 12px 24px var(--shadow-color,#0000001a);transform:translateY(-4px)}.stat-card.total:hover{border-color:var(--color-accent)}.stat-card.resolved:hover{border-color:var(--color-success)}.stat-card.errors:hover{border-color:var(--color-error)}.stat-card.threats:hover{border-color:var(--color-warn)}[data-theme=dark] .stat-card{--shadow-color:#0006}.stat-card:before{content:"";border-radius:0;width:3px;position:absolute;top:0;bottom:0;left:0}.stat-card.total:before{background:var(--color-accent)}.stat-card.resolved:before{background:var(--color-success)}.stat-card.errors:before{background:var(--color-error)}.stat-card.threats:before{background:var(--color-warn)}.stat-label{letter-spacing:.09em;text-transform:uppercase;color:var(--color-text-muted);font-size:10px;font-weight:600;line-height:1}.stat-number{color:var(--color-text-primary);letter-spacing:-.02em;font-size:30px;font-weight:700;line-height:1.05}.stat-card.resolved .stat-number{color:var(--color-success)}.stat-card.errors .stat-number{color:var(--color-error)}.stat-card.threats .stat-number{color:var(--color-warn)}.stat-hint{color:var(--color-text-muted);margin-top:2px;font-size:11px;line-height:1}@media (width<=480px){.stat-number{font-size:26px}.stat-card{padding:.875rem 1rem .75rem}}.admin-tabs-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-tabs{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;align-items:center;gap:2px;padding:3px;display:flex}.admin-tab{color:var(--color-text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.admin-tab:hover:not(.active){background:var(--color-surface-hover);color:var(--color-text-secondary)}.admin-tab.active{background:var(--color-bg-primary);color:var(--color-text-primary);border-color:var(--color-border-strong);box-shadow:0 4px 12px #0000001a}.admin-tab svg{width:13px;height:13px;color:inherit}.tab-count{border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:600;line-height:1;display:inline-flex}.admin-tab.activity-log .tab-count{background:var(--color-surface-secondary);color:var(--color-text-muted)}.admin-tab.threat-monitor .tab-count{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error-border)}@media (width<=480px){.admin-tab{padding:6px 10px;font-size:12px}.admin-tabs-row{gap:8px}}.sub-filters-row{margin-top:6px;display:flex}.admin-tabs.segmented-control{background:var(--color-surface-secondary);border-radius:12px;padding:4px}.segmented-control .admin-tab{border-radius:8px;padding:6px 14px;font-size:12px}.segmented-control .admin-tab.active{background:var(--color-bg-primary);box-shadow:0 2px 8px #00000014}.segmented-control .admin-tab.active-error{background:var(--color-error-bg);color:var(--color-error);border-color:var(--color-error-border);box-shadow:0 2px 8px #ef44441a}[data-theme=dark] .segmented-control .admin-tab.active-error{color:var(--color-error);background:#ef444426;border-color:#ef44444d}.segmented-control .admin-tab.active-error .tab-count{color:inherit;background:#ef444433}@media (width<=640px){.sub-filters-row{scrollbar-width:none;margin-bottom:8px;padding-bottom:4px;overflow-x:auto}.sub-filters-row::-webkit-scrollbar{display:none}.segmented-control{width:max-content}}@media (width<=480px){.sub-filters{gap:6px}.sub-filter{padding:5px 12px;font-size:11px}.sub-filter svg{width:12px;height:12px}}.table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;overflow:hidden}.table-scroll{overflow-x:auto}table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:960px}thead tr{border-bottom:1px solid var(--color-border)}th{text-align:left;letter-spacing:.09em;text-transform:uppercase;color:var(--color-text-muted);background:var(--color-surface-secondary);white-space:nowrap;padding:9px 14px;font-size:10px;font-weight:600}tbody tr{border-bottom:1px solid var(--color-border);transition:background .1s}tbody tr:last-child{border-bottom:none}td{color:var(--color-text-secondary);vertical-align:middle;text-overflow:ellipsis;white-space:nowrap;padding:10px 14px;font-size:12.5px;overflow:hidden}.col-timestamp{color:var(--color-text-muted);font-size:12px}.col-hallticket{font-family:var(--font-mono);color:var(--color-text-primary);font-size:12px;font-weight:600}.col-name{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize;max-width:160px;font-size:12px;font-weight:500;overflow:hidden}.col-name.empty-name{color:var(--color-text-muted);opacity:.4;text-transform:none}.col-time{font-size:12px}.col-ip,.col-browser{color:var(--color-text-muted);font-size:12px}.error-cell{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.error-cell.has-error{color:var(--color-error);cursor:help}.error-cell.no-error{color:var(--color-text-muted)}.table-search-input-wrap{flex:1;align-items:center;min-width:280px;max-width:480px;display:flex;position:relative}.table-search-input-wrap .search-icon{color:var(--color-text-muted);pointer-events:none;position:absolute;left:10px}.table-search-input{background:var(--color-surface);border:1px solid var(--color-border);width:100%;color:var(--color-text-primary);appearance:none;border-radius:8px;padding:6px 30px 6px 32px;font-size:13px;transition:border-color .15s,background .15s;box-shadow:none!important;outline:none!important}.table-search-input::placeholder{color:var(--color-text-muted);opacity:.7;font-size:12.5px}.table-search-input:focus,.table-search-input:focus-visible,.table-search-input:active{background:var(--color-surface);box-shadow:none!important;border-color:var(--color-border-hover,#ffffff40)!important;outline:none!important}.search-clear-btn{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:3px;display:flex;position:absolute;right:7px}.search-clear-btn:hover{color:var(--color-text-primary);background:var(--color-surface-hover)}.copy-chip{color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:4px;margin:-2px -6px;padding:2px 6px;transition:all .15s;display:inline-flex}.copy-chip:hover{background:var(--color-surface-hover);border-color:var(--color-border);color:var(--color-accent)}.copy-chip.copied,.copy-chip .copied-icon{color:#10b981}.ip-chip{font-family:var(--font-mono)}.time-pill{font-size:11.5px;font-weight:600}.time-pill.latency-fast{color:#10b981}.time-pill.latency-mid{color:#f59e0b}.time-pill.latency-slow{color:#ef4444}.source-pill{background:var(--color-surface-secondary);border:1px solid var(--color-border);color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;align-items:center;gap:4px;max-width:130px;padding:2px 7px;font-size:11px;font-weight:500;display:inline-flex;overflow:hidden}.source-pill.direct{color:var(--color-text-muted)}.source-pill.google{color:#3b82f6;background:#3b82f614;border-color:#3b82f633}.source-pill.instagram,.source-pill.social{color:#ec4899;background:#ec489914;border-color:#ec489933}.source-pill.whatsapp{color:#10b981;background:#10b98114;border-color:#10b98133}.error-pill{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error-border);border-radius:4px;align-items:center;padding:2px 6px;font-size:11px;font-weight:500;display:inline-flex}.no-error-text{color:var(--color-text-muted);opacity:.5;font-size:11.5px}.load-more-dom-btn{background:var(--color-surface-secondary);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;border-radius:8px;padding:6px 16px;font-size:11.5px;font-weight:500;transition:all .15s}.load-more-dom-btn:hover{background:var(--color-surface-hover);color:var(--color-text-primary);border-color:var(--color-accent)}.status-badge{border-radius:6px;align-items:center;gap:5px;padding:3px 9px;font-size:11px;font-weight:600;display:inline-flex}.status-badge:before{content:"";border-radius:50%;flex-shrink:0;width:5px;height:5px}.status-badge.success{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.status-badge.success:before{background:var(--color-success)}.status-badge.failed{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error-border)}.status-badge.failed:before{background:var(--color-error)}.violation-badge{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error-border);border-radius:6px;align-items:center;gap:5px;padding:3px 9px;font-size:11px;font-weight:600;display:inline-flex}@media (width<=639px){.table-scroll{display:none}.mobile-log-list{flex-direction:column;gap:0;display:flex}}@media (width>=640px){.mobile-log-list{display:none}}.mobile-log-card{border-bottom:1px solid var(--color-border);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.mobile-log-card:last-child{border-bottom:none}.mobile-log-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.mobile-log-ticket-group{flex-direction:column;gap:2px;display:flex}.mobile-log-ticket{font-family:var(--font-mono);color:var(--color-text-primary);font-size:13px;font-weight:600}.mobile-log-name{color:var(--color-text-muted);font-size:11px;font-weight:500}.mobile-log-time-badge{align-items:center;gap:8px;display:flex}.mobile-log-duration{color:var(--color-text-primary);font-size:12px;font-weight:600}.mobile-log-meta{justify-content:space-between;align-items:center;gap:8px;display:flex}.mobile-log-timestamp{color:var(--color-text-muted);font-size:11px}.mobile-log-browser{color:var(--color-text-muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:55%;font-size:11px;overflow:hidden}.mobile-log-ip{color:var(--color-text-muted);font-size:11px}.mobile-log-error{color:var(--color-error);background:var(--color-error-bg);border:1px solid var(--color-error-border);word-break:break-word;white-space:normal;border-radius:6px;padding:5px 8px;font-size:11px;line-height:1.4}.threat-alert-bar{background:var(--color-error-bg);border:1px solid var(--color-error-border);color:var(--color-error);border-radius:8px;align-items:center;gap:8px;margin-bottom:14px;padding:10px 14px;font-size:13px;font-weight:500;display:flex}.threat-alert-bar svg{flex-shrink:0;width:14px;height:14px}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:3rem 1rem;display:flex}.empty-state svg{width:32px;height:32px;color:var(--color-text-muted);opacity:.4}.empty-state p{color:var(--color-text-muted);font-size:13px}.admin-loading-container{flex-direction:column;align-items:center;gap:16px;display:flex}.admin-loader-ring{border:3px solid #0a7cff1a;border-top-color:var(--color-accent);border-radius:50%;width:40px;height:40px;animation:1s linear infinite adminSpin}.admin-loading-text{color:var(--color-text-secondary);letter-spacing:.05em;margin:0;font-size:14px;font-weight:500;animation:1.5s ease-in-out infinite alternate adminPulse}.admin-error-card{background:var(--color-surface);border:1px solid var(--color-border-strong);text-align:center;border-radius:12px;width:100%;max-width:400px;padding:40px;box-shadow:0 8px 32px #0003}@keyframes adminSpin{to{transform:rotate(360deg)}}@keyframes adminPulse{to{opacity:.5}}.admin-error-icon{width:64px;height:64px;color:var(--color-error);background:#dc26261a;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 20px;display:flex}.admin-error-title{color:var(--color-text-primary);margin-bottom:12px;font-size:24px;font-weight:600}.admin-error-text{color:var(--color-text-secondary);margin-bottom:30px;font-size:15px;line-height:1.5}.admin-error-action-btn{background:var(--color-accent);color:#fff;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;border:none;border-radius:8px;width:100%;padding:12px 24px;font-size:13px;font-weight:700;transition:transform .2s,box-shadow .2s,opacity .2s;box-shadow:0 4px 14px #0a7cff33}.admin-error-action-btn:hover{opacity:.95;transform:translateY(-1px);box-shadow:0 6px 20px #0a7cff4d}.admin-error-action-btn:active{transform:translateY(1px);box-shadow:0 2px 8px #0a7cff33}.admin-modal-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-box{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:16px;flex-direction:column;width:100%;max-width:500px;max-height:90vh;display:flex;overflow:hidden}@media (width<=480px){.modal-box{border-radius:16px 16px 0 0;align-self:flex-end;max-width:100%;max-height:92vh;margin:0}.admin-modal-overlay{align-items:flex-end;padding:0}}.modal-header{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:1.25rem 1.5rem 1rem;display:flex}.modal-header-left{align-items:center;gap:12px;display:flex}.modal-icon-wrap{background:var(--color-info-bg);border:1px solid var(--color-info-border);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.modal-title{color:var(--color-text-primary);letter-spacing:-.01em;font-size:16px;font-weight:700}.modal-subtitle{color:var(--color-text-muted);margin-top:2px;font-size:12px;line-height:1.4}.modal-close{border:1px solid var(--color-border);width:30px;height:30px;color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;transition:background .15s,color .15s;display:flex}.modal-close:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.modal-body{flex-direction:column;flex:1;gap:1.25rem;padding:1.25rem 1.5rem;display:flex;overflow-y:auto}.modal-body::-webkit-scrollbar{width:4px}.modal-body::-webkit-scrollbar-track{background:0 0}.modal-body::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:4px}.modal-section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:8px;font-size:10px;font-weight:600}.device-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;align-items:flex-start;gap:12px;padding:12px 14px;transition:border-color .15s;display:flex;position:relative}.device-card:hover{border-color:var(--color-border-strong)}.device-icon-wrap{background:var(--color-surface-secondary);border:1px solid var(--color-border);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.device-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.device-name-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.device-name{color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:200px;font-size:13px;font-weight:600;overflow:hidden}.device-browser{color:var(--color-text-muted);font-size:11px}.device-meta{flex-direction:column;gap:2px;margin-top:2px;display:flex}.device-meta-line{color:var(--color-text-muted);align-items:center;gap:4px;font-size:11px;display:flex}.device-meta-line svg{flex-shrink:0;width:10px;height:10px}.device-status{letter-spacing:.06em;text-transform:uppercase;border-radius:5px;flex-shrink:0;align-items:center;gap:4px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-flex}.device-status:before{content:"";border-radius:50%;width:4px;height:4px}.device-status.active{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.device-status.active:before{background:var(--color-success)}.device-status.inactive{background:var(--color-surface-secondary);color:var(--color-text-muted);border:1px solid var(--color-border)}.current-badge{background:var(--color-info-bg);color:var(--color-info);border:1px solid var(--color-info-border);border-radius:5px;padding:2px 7px;font-size:10px;font-weight:500}.revoke-btn{border:1px solid var(--color-border);width:28px;height:28px;color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;transition:all .15s;display:flex}.revoke-btn:hover{border-color:var(--color-error-border);background:var(--color-error-bg);color:var(--color-error)}.revoke-confirm{border-top:1px solid var(--color-error-border);justify-content:space-between;align-items:center;gap:8px;margin-top:8px;padding-top:8px;display:flex}.revoke-confirm p{color:var(--color-error);font-size:12px;line-height:1.4}.passkey-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:2rem 1rem;display:flex}.passkey-empty p{color:var(--color-text-muted);font-size:13px;line-height:1.5}.modal-footer{border-top:1px solid var(--color-border);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:1rem 1.5rem;display:flex}.modal-footer-note{color:var(--color-text-muted);max-width:280px;font-size:11px;line-height:1.4}.register-btn{border:1.5px solid var(--color-accent);color:var(--color-accent);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:background .2s,color .2s;display:flex}.register-btn:hover{background:var(--color-accent);color:#0a0a0f}@media (width<=480px){.modal-footer{flex-direction:column;align-items:stretch}.register-btn{justify-content:center}.modal-footer-note{max-width:100%}}.browser-cell{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;cursor:default;max-width:0;font-size:12px;overflow:hidden}.error-cell.has-error{color:var(--color-error);cursor:help;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}tbody tr.row-failed{box-shadow:inset 3px 0 0 var(--color-error)}.time-filter{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.time-filter-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;margin-right:2px;font-size:11px;font-weight:500}.time-chip{border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:14px;padding:4px 10px;font-size:11px;font-weight:500;transition:all .15s}.time-chip:hover{border-color:var(--color-accent);color:var(--color-accent)}.time-chip.active{background:var(--color-accent);border-color:var(--color-accent);color:#0a0a0f}.stat-trend{align-items:center;gap:3px;margin-top:2px;font-size:10px;display:flex}.stat-trend.up{color:var(--color-success)}.stat-trend.down{color:var(--color-error)}.stat-trend.flat{color:var(--color-text-muted)}.export-btn{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:5px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s;display:flex}.export-btn svg{width:13px;height:13px}.row-count{color:var(--color-text-muted);font-size:11px}.ua-detail-panel{background:var(--color-surface-secondary);border:1px solid var(--color-border);color:var(--color-text-muted);word-break:break-all;border-radius:7px;margin-top:6px;padding:8px 10px;font-size:11px;line-height:1.5;display:none}.ua-detail-panel.open{display:block}.device-disambig{color:var(--color-text-muted);margin-left:4px;font-size:10px;font-weight:400}.device-meta-os{color:var(--color-text-muted);align-items:center;gap:4px;font-size:11px;display:flex}.nav-icon-btn{border:1px solid var(--color-border);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s,border-color .15s;display:flex}.nav-icon-btn:hover{background:var(--color-surface-hover);color:var(--color-text-primary);border-color:var(--color-border-strong)}.nav-icon-btn svg{width:15px;height:15px}.time-filter-group{align-items:center;gap:4px;display:flex}.time-filter-label{letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-muted);white-space:nowrap;margin-right:4px;font-size:11px;font-weight:500}.time-chip{border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:20px;padding:5px 12px;font-size:12px;font-weight:500;transition:background .15s,color .15s,border-color .15s}.time-chip:hover:not(.active){border-color:var(--color-accent);color:var(--color-accent)}.time-chip.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff;font-weight:600}[data-theme=dark] .time-chip.active{color:#0a0a0f}.sub-filters{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sub-filter{border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:12px;font-weight:500;transition:background .15s,color .15s,border-color .15s;display:flex}.sub-filter .count{background:var(--color-surface-secondary);min-width:16px;height:16px;color:var(--color-text-muted);border-radius:8px;justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:600;display:inline-flex}.sub-filter:hover:not(.active):not(.errors-tab){border-color:var(--color-accent);color:var(--color-accent)}.sub-filter.errors-tab:hover:not(.active-error){border-color:var(--color-error);color:var(--color-error)}.sub-filter.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff;font-weight:600}.sub-filter.active .count{color:#fff;background:#fff3}[data-theme=dark] .sub-filter.active,[data-theme=dark] .sub-filter.active .count{color:#0a0a0f}.sub-filter.active-error{background:var(--color-error);border-color:var(--color-error);color:#fff}.sub-filter.active-error .count{color:#fff;background:#fff3}.filter-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.filter-row-left{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:320px;display:flex}.filter-row-right{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (width<=640px){.filter-row{flex-direction:column;align-items:flex-start;gap:10px}.filter-row-right{justify-content:flex-start;width:100%}}.export-btn{border:1px solid var(--color-border-strong);background:var(--color-surface);height:32px;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:5px;padding:5px 12px;font-size:12px;font-weight:500;transition:background .15s,color .15s;display:flex}.export-btn svg{flex-shrink:0;width:13px;height:13px}.export-btn:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.table-footer{border-top:1px solid var(--color-border);background:var(--color-surface-secondary);border-radius:0 0 12px 12px;justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.table-row-count{color:var(--color-text-muted);font-size:11px}.devices-locked-notice{background:var(--color-surface-secondary);border:1px solid var(--color-border);border-radius:8px;align-items:center;gap:8px;margin-top:4px;padding:10px 12px;display:flex}.devices-locked-notice svg{width:13px;height:13px;color:var(--color-text-muted);flex-shrink:0}.devices-locked-notice p{color:var(--color-text-muted);margin:0;font-size:11px;line-height:1.4}thead th{background:var(--color-surface-secondary)}tbody tr:hover,tbody tr.main-row:hover,tbody tr.main-row:hover+tr.searches-row,tbody tr.searches-row:hover{background:var(--color-surface-hover)}tbody tr:has(+tr.searches-row:hover){background:var(--color-surface-hover)}.visit-row-group{border-bottom:1px solid var(--color-border);transition:background-color .2s,transform .2s}.visit-row-group:hover{background-color:var(--color-surface-hover)}@keyframes skeleton-shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.skeleton-row td{border-bottom:1px solid var(--color-border)!important;padding:14px 16px!important}.skeleton-cell{background:linear-gradient(90deg,#ffffff0a 0,#ffffff17 200px,#ffffff0a 400px) 0 0/600px 100%;border-radius:6px;height:12px;animation:1.4s infinite skeleton-shimmer}.load-more-indicator{color:var(--text-secondary);letter-spacing:.02em;justify-content:center;align-items:center;gap:10px;padding:16px;font-size:.8rem;display:flex}.load-more-ring{border:2px solid #ffffff1f;border-top-color:var(--accent-color,#6366f1);border-radius:50%;width:16px;height:16px;animation:.75s linear infinite spin}.load-more-end{color:var(--text-secondary);opacity:.6;letter-spacing:.03em;justify-content:center;align-items:center;padding:14px 16px;font-size:.75rem;display:flex}.traffic-row td{vertical-align:middle;padding:12px 14px}.traffic-time{color:var(--color-text-primary);font-size:12px;font-weight:500}.traffic-source{margin-top:5px}.traffic-net-meta,.traffic-screen-meta{color:var(--color-text-muted);align-items:center;gap:4px;margin-top:4px;font-size:11px;display:flex}.net-speed{align-items:center;gap:2px;display:flex}.traffic-device-title{color:var(--color-text-primary);align-items:center;gap:5px;font-size:12px;font-weight:500;display:flex}.device-model-tag{color:var(--color-text-muted);font-size:11px}.traffic-gpu-title{color:var(--color-text-primary);align-items:center;gap:5px;margin-bottom:4px;font-size:12px;font-weight:500;display:flex}.traffic-hw-badges{flex-wrap:wrap;gap:4px;display:flex}.hw-chip{background:var(--color-surface-secondary);border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:4px;align-items:center;gap:3px;padding:1px 6px;font-size:10.5px;display:flex}.traffic-searches-wrap{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.traffic-ticket-chip{background:var(--color-surface-secondary);border:1px solid var(--color-border);color:var(--color-text-primary);cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-family:JetBrains Mono,Fira Code,monospace;font-size:11.5px;font-weight:500;transition:all .15s;display:inline-flex}.traffic-ticket-chip:hover{background:var(--color-surface-hover);border-color:var(--color-accent)}.traffic-ticket-chip.success{background:#10b98114;border-color:#10b98140}.traffic-ticket-chip.success .chip-status-icon{color:#10b981}.traffic-ticket-chip.failed{color:#ef4444;background:#ef444414;border-color:#ef444440}.traffic-ticket-chip.failed .chip-status-icon{color:#ef4444}.traffic-ticket-chip.copied{color:#10b981;background:#10b98126;border-color:#10b98180}.no-searches-tag{color:var(--color-text-muted);opacity:.6;font-size:11px;font-style:italic}.admin-nav-route-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary);cursor:pointer;border-radius:7px;align-items:center;gap:6px;padding:5px 12px;font-size:.8rem;font-weight:600;transition:all .18s;display:inline-flex}.admin-nav-route-btn:hover{background:var(--color-surface-hover);border-color:var(--color-accent)}.admin-nav-route-btn.classmates-btn{color:#10b981;background:#10b9811f;border-color:#10b98159}.admin-nav-route-btn.classmates-btn:hover{background:#10b98138;border-color:#10b981}.admin-nav-route-btn.home-btn{color:#3b82f6;background:#3b82f61f;border-color:#3b82f659}.admin-nav-route-btn.home-btn:hover{background:#3b82f638;border-color:#3b82f6}.result-modal-overlay{z-index:99999;-webkit-backdrop-filter:blur(12px);background:#000000bf;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0;overflow:hidden}.result-modal-container{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:20px;flex-direction:column;width:80vw;max-width:1200px;height:95vh;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 80px #000c}.modal-outside-close-btn{z-index:100001;border:1px solid var(--color-border);background:var(--color-surface-secondary);width:36px;height:36px;color:var(--color-text-primary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:all .18s;display:flex;position:absolute;top:16px;right:18px;box-shadow:0 4px 14px #00000080}.modal-outside-close-btn:hover{color:#ef4444;background:#ef444440;border-color:#ef4444;transform:scale(1.08)}.result-modal-scroll-body{flex:1;width:100%;padding:24px;overflow-y:auto}.last-checked-time{color:var(--color-text-muted);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:.73rem}:root{--aether-ink:#f2f1ee;--aether-void:#06070a;--aether-stratum:#0e1014;--aether-strata:#14171d;--aether-vapor:#8a8e97;--aether-hairline:#1f232b;--aether-hairline-strong:#2a2f38;--aether-cyan:#fff;--aether-magenta:#ff4fa3;--aether-amber:#ff8a2a;--aether-positive:#7ce0b0;--aether-grad:linear-gradient(90deg, #fff 0%, #ff4fa3 52%, #ff8a2a 100%);--aether-ease:cubic-bezier(.2, .7, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--aether-void);color:var(--aether-ink);flex-direction:column;min-height:100vh;font-family:Space Grotesk,system-ui,-apple-system,sans-serif;display:flex}.app-container{flex-direction:column;gap:18px;width:100%;max-width:1560px;margin:0 auto;padding:20px 28px 40px;display:flex}.global-navbar{background:var(--aether-stratum);border:1px solid var(--aether-hairline);border-radius:6px;justify-content:space-between;align-items:center;padding:14px 22px;display:flex}.nav-logo-group{letter-spacing:-.01em;color:var(--aether-ink);align-items:center;gap:10px;font-family:Space Grotesk,sans-serif;font-size:1.05rem;font-weight:700;display:flex}.nav-logo-group span{color:var(--aether-cyan)}.admin-pill{letter-spacing:.16em;text-transform:uppercase;color:var(--aether-cyan);background:#4ed8ff1f;border:1px solid #4ed8ff40;border-radius:4px;padding:3px 10px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.btn-nav-logout{border:1px solid var(--aether-hairline);color:var(--aether-vapor);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:all .22s var(--aether-ease);background:0 0;border-radius:4px;align-items:center;gap:6px;padding:7px 14px;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-flex}.btn-nav-logout:hover{color:var(--aether-ink);border-color:var(--aether-hairline-strong)}.page-header-card{background:var(--aether-stratum);border:1px solid var(--aether-hairline);border-radius:6px;justify-content:space-between;align-items:center;padding:22px 24px;display:flex;position:relative;overflow:hidden}.header-title-group h1{letter-spacing:-.02em;color:var(--aether-ink);font-family:Space Grotesk,sans-serif;font-size:1.4rem;font-weight:700}.header-title-group h1 em{background:linear-gradient(135deg,#fff 20%,#e2e8f0 60%,#94a3b8 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-family:Instrument Serif,Georgia,serif;font-style:italic;font-weight:400}.header-title-group p{letter-spacing:.14em;text-transform:uppercase;color:var(--aether-vapor);margin-top:6px;font-family:JetBrains Mono,monospace;font-size:11px}.header-btns{align-items:center;gap:12px;display:flex}.aether-prism-btn{background:var(--aether-ink);min-height:42px;color:var(--aether-void);border:1px solid var(--aether-ink);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:transform .12s var(--aether-ease);border-radius:4px;justify-content:center;align-items:center;gap:10px;padding:10px 22px 12px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;line-height:1;display:inline-flex;position:relative;overflow:hidden}.aether-prism-btn:after{content:"";background:var(--aether-grad);height:2px;transition:height .12s var(--aether-ease);position:absolute;bottom:0;left:0;right:0}.aether-prism-btn:hover{transform:translateY(-1px)}.aether-prism-btn:hover:after{height:4px}.aether-prism-btn__icon{stroke-width:1.8px;transition:transform .22s var(--aether-ease)}.aether-prism-btn:hover .aether-prism-btn__icon{transform:translate(3px)}.aether-ghost-btn{min-height:42px;color:var(--aether-ink);border:1px solid var(--aether-hairline);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:border-color .22s var(--aether-ease);background:0 0;border-radius:4px;align-items:center;gap:8px;padding:10px 18px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;display:inline-flex;position:relative}.aether-ghost-btn:hover{border-color:var(--aether-hairline-strong)}.filter-toolbar-card{background:var(--aether-stratum);border:1px solid var(--aether-hairline);border-radius:6px;justify-content:space-between;align-items:center;gap:20px;padding:14px 20px;display:flex}.sec-tab-group{background:var(--aether-strata);border:1px solid var(--aether-hairline);border-radius:4px;align-items:center;gap:4px;padding:3px;display:flex}.sec-tab-btn{color:var(--aether-vapor);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:all .15s var(--aether-ease);background:0 0;border:1px solid #0000;border-radius:3px;outline:none;padding:5px 11px;font-family:JetBrains Mono,monospace;font-size:11px}.sec-tab-btn:focus-visible{outline:none}.sec-tab-btn:hover{color:var(--aether-ink)}.sec-tab-btn.active{background:var(--aether-stratum);color:var(--aether-cyan);border:1px solid var(--aether-hairline);font-weight:600}.aether-query-control{flex:1;align-items:center;gap:10px;max-width:480px;padding:6px 0 8px;display:flex;position:relative}.aether-query-control:after{content:"";background:var(--aether-hairline);height:1px;transition:background .22s var(--aether-ease), height .12s var(--aether-ease);position:absolute;bottom:0;left:0;right:0}.aether-query-control:focus-within:after{background:var(--aether-grad);height:2px}.aether-query-icon{color:var(--aether-vapor);stroke-width:1.5px;transition:color .22s var(--aether-ease);flex-shrink:0}.aether-query-control:focus-within .aether-query-icon{color:var(--aether-ink)}.aether-query-input{min-width:0;color:var(--aether-ink);background:0 0;border:none;outline:none;flex:1;font-family:Space Grotesk,sans-serif;font-size:14px}.aether-query-input::placeholder{color:var(--aether-vapor);opacity:1}.aether-query-kbd{letter-spacing:.14em;color:var(--aether-vapor);border:1px solid var(--aether-hairline);background:0 0;border-radius:3px;flex-shrink:0;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:10px}.dropdown-container{display:inline-block;position:relative}.dropdown-trigger-btn{border:1px solid var(--aether-hairline);color:var(--aether-ink);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:border-color .22s var(--aether-ease);background:0 0;border-radius:4px;align-items:center;gap:8px;padding:7px 14px;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-flex}.dropdown-trigger-btn:hover{border-color:var(--aether-hairline-strong)}.dropdown-menu-panel{background:var(--aether-stratum);border:1px solid var(--aether-hairline);z-index:5000;border-radius:6px;flex-direction:column;gap:2px;width:260px;padding:6px;display:none;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 24px 60px -20px #000000d9}.dropdown-menu-panel.open{display:flex}.dropdown-option-item{letter-spacing:.12em;color:var(--aether-vapor);cursor:pointer;transition:all .12s var(--aether-ease);border-radius:4px;justify-content:space-between;align-items:center;padding:8px 12px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.dropdown-option-item:hover{background:var(--aether-strata);color:var(--aether-ink)}.dropdown-option-item.selected{color:var(--aether-cyan);background:#4ed8ff1a;font-weight:600}.table-container-card{background:var(--aether-stratum);border:1px solid var(--aether-hairline);border-radius:6px;overflow:visible}.clean-pro-table{border-collapse:collapse;table-layout:auto;width:100%;font-size:.82rem}.clean-pro-table th{background:var(--aether-strata);letter-spacing:.16em;color:var(--aether-vapor);text-transform:uppercase;border-bottom:1px solid var(--aether-hairline);text-align:left;white-space:nowrap;padding:12px 14px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.clean-pro-table td{border-bottom:1px solid var(--aether-hairline);vertical-align:middle;white-space:nowrap;padding:11px 14px;text-overflow:clip!important;overflow:visible!important}.clean-pro-table tbody tr{transition:background .15s var(--aether-ease)}.clean-pro-table tbody tr:hover{background:#ffffff05}.ht-code{color:var(--aether-cyan);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:.84rem;font-weight:600}.student-name{color:var(--aether-ink);white-space:nowrap;font-family:Space Grotesk,sans-serif;font-size:.84rem;font-weight:500}.sec-subtle-tag{color:#f8fafc;background:#ffffff14;border:1px solid #ffffff1f;border-radius:4px;padding:3px 8px;font-family:JetBrains Mono,monospace;font-size:.78rem;font-weight:600;display:inline-block}.sgpa-num{font-family:JetBrains Mono,monospace;font-size:.78rem;font-weight:500}.sgpa-num.pass{color:var(--aether-positive)}.sgpa-num.fail{color:var(--aether-magenta);cursor:pointer;font-weight:700}.sgpa-num.none{color:var(--aether-vapor)}.cgpa-pill{color:#fff;background:#ffffff1f;border:1px solid #ffffff40;border-radius:4px;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:.78rem;font-weight:700;display:inline-block}.backlog-line-text{color:var(--aether-magenta);white-space:nowrap;cursor:pointer;align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:.76rem;font-weight:600;display:inline-flex}.clear-line-text{color:var(--aether-positive);white-space:nowrap;align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:.76rem;font-weight:600;display:inline-flex}.synced-time-text{color:var(--aether-vapor);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:.76rem}.action-icon-btn{border:1px solid var(--aether-hairline);width:28px;height:28px;color:var(--aether-vapor);cursor:pointer;transition:all .15s var(--aether-ease);background:0 0;border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.action-icon-btn.info:hover{color:#fff;background:#ffffff26;border-color:#fff}.action-icon-btn.sync:hover{border-color:var(--aether-positive);color:var(--aether-positive);background:#7ce0b026}.action-icon-btn.syncing{color:#38bdf8!important;background:#38bdf81f!important;border-color:#38bdf866!important}.spin-icon{transform-origin:50%!important;animation:.75s linear infinite aether-spin!important}@keyframes aether-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.aether-tip-wrap{display:inline-block;position:relative}.aether-tip{background:var(--aether-strata);border:1px solid var(--aether-hairline-strong);opacity:0;pointer-events:none;width:max-content;min-width:260px;max-width:540px;transition:opacity .22s var(--aether-ease), transform .22s var(--aether-ease);z-index:10000;text-align:left;border-radius:6px;padding:12px 16px;position:absolute;bottom:calc(100% + 12px);left:50%;overflow:hidden;transform:translate(-50%,6px);box-shadow:0 24px 60px -20px #000000f2,0 2px 8px #0009}.aether-tip-sem-header{letter-spacing:.16em;text-transform:uppercase;color:#f8fafc;border-bottom:1px solid #ffffff26;justify-content:space-between;align-items:center;margin:12px 0 6px;padding-bottom:4px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;display:flex}.aether-tip-sem-header:first-child{margin-top:0}.aether-tip-subject-row{align-items:baseline;gap:8px;padding:3px 0;display:flex}.aether-tip-num{color:var(--aether-magenta);opacity:.85;flex-shrink:0;min-width:18px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.aether-tip-subject-title{color:var(--aether-ink);white-space:nowrap;font-family:Space Grotesk,sans-serif;font-size:12.5px;font-weight:500;line-height:1.45}.aether-tip:before{content:"";background:var(--aether-strata);border-right:1px solid var(--aether-hairline-strong);border-bottom:1px solid var(--aether-hairline-strong);width:10px;height:10px;position:absolute;top:100%;left:50%;transform:translate(-50%,-5px)rotate(45deg)}.aether-tip.aether-tip--bottom{top:calc(100% + 12px);bottom:auto;transform:translate(-50%,-6px)}.aether-tip.aether-tip--bottom:before{border-bottom:none;border-right:none;border-left:1px solid var(--aether-hairline-strong);border-top:1px solid var(--aether-hairline-strong);top:auto;bottom:100%;transform:translate(-50%,5px)rotate(45deg)}.aether-tip__ribbon{background:var(--aether-grad);height:2px;position:absolute;top:0;left:0;right:0}.aether-tip__label{letter-spacing:.18em;text-transform:uppercase;color:var(--aether-vapor);margin-bottom:6px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500;display:block}.aether-tip__body{color:var(--aether-ink);margin:0 0 10px;font-family:Space Grotesk,sans-serif;font-size:12px;line-height:1.55}.aether-tip__meta{border-top:1px solid var(--aether-hairline);letter-spacing:.16em;text-transform:uppercase;color:var(--aether-vapor);padding-top:8px;font-family:JetBrains Mono,monospace;font-size:10px;display:block}.aether-tip-wrap:hover{z-index:20000}.aether-tip-wrap:hover .aether-tip{opacity:1;transform:translate(-50%)}.terminal-modal-overlay{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:20000;background:#000000e0;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.terminal-modal-overlay.active{display:flex}.terminal-modal-window{background:var(--aether-stratum);border:1px solid var(--aether-hairline);border-radius:8px;width:70vw;min-width:760px;max-width:1250px;font-family:JetBrains Mono,monospace;overflow:hidden;box-shadow:0 32px 80px #000000f2}.mac-window-header{background:var(--aether-strata);border-bottom:1px solid var(--aether-hairline);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.mac-dots-row{gap:7px;display:flex}.mac-circle{border-radius:50%;width:11px;height:11px}.mac-circle.r{cursor:pointer;background:#ef4444}.mac-circle.y{background:#f59e0b}.mac-circle.g{background:#10b981}.console-modal-body{flex-direction:column;gap:16px;padding:20px;display:flex}.custom-context-menu{background:var(--aether-strata,#14171d);border:1px solid var(--aether-hairline-strong,#2a2f38);border-radius:8px;min-width:170px;padding:6px;box-shadow:0 20px 48px #000000e6,0 0 0 1px #ffffff14}.context-menu-item{width:100%;color:var(--aether-ink,#f2f1ee);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:5px;align-items:center;gap:10px;padding:8px 12px;font-family:Space Grotesk,sans-serif;font-size:12.5px;font-weight:500;transition:background .12s,color .12s;display:flex}.context-menu-item:hover{color:#fff;background:#ffffff14}.clean-pro-table tbody tr.pinned-row{background:#ff4fa30a}.clean-pro-table tbody tr.pinned-row:hover{background:#ff4fa314}[data-theme=light] .admin-dashboard-page.classmates-active{background-color:#f8fafc!important;background-image:none!important}[data-theme=light] .app-container{--aether-ink:#0f172a;--aether-void:#f8fafc;--aether-stratum:#fff;--aether-strata:#f1f5f9;--aether-vapor:#64748b;--aether-hairline:#e2e8f0;--aether-hairline-strong:#cbd5e1;--aether-cyan:#0f172a;--aether-magenta:#e11d48;--aether-amber:#d97706;--aether-positive:#16a34a;--aether-grad:linear-gradient(90deg, #0f172a 0%, #e11d48 52%, #d97706 100%)}[data-theme=light] .page-header-card,[data-theme=light] .filter-toolbar-card,[data-theme=light] .table-container-card{background:#fff;border-color:#e2e8f0;box-shadow:0 1px 3px #0000000d}[data-theme=light] .clean-pro-table th{color:#475569;background:#f1f5f9;border-bottom-color:#cbd5e1}[data-theme=light] .clean-pro-table td{border-bottom-color:#e2e8f0}[data-theme=light] .clean-pro-table tbody tr:hover{background:#f8fafc}[data-theme=light] .ht-code{color:#0284c7}[data-theme=light] .student-name{color:#0f172a}[data-theme=light] .sec-subtle-tag{color:#0f172a;background:#e2e8f0;border-color:#cbd5e1}[data-theme=light] .sec-tab-btn{color:#64748b}[data-theme=light] .sec-tab-btn:hover{color:#0f172a}[data-theme=light] .sec-tab-btn.active{color:#0f172a;background:#f1f5f9;border-color:#cbd5e1}[data-theme=light] .aether-query-control{background:#f8fafc;border-color:#cbd5e1}[data-theme=light] .aether-query-input{color:#0f172a}[data-theme=light] .aether-query-input::placeholder{color:#94a3b8}[data-theme=light] .aether-query-kbd{color:#475569;background:#e2e8f0;border-color:#cbd5e1}[data-theme=light] .dropdown-trigger-btn{color:#0f172a;background:#f8fafc;border-color:#cbd5e1}[data-theme=light] .dropdown-menu-panel{background:#fff;border-color:#cbd5e1;box-shadow:0 12px 36px #0000001f}[data-theme=light] .dropdown-option-item{color:#334155}[data-theme=light] .dropdown-option-item:hover{color:#0f172a;background:#f1f5f9}[data-theme=light] .dropdown-option-item.selected{color:#0284c7;background:#e0f2fe}[data-theme=light] .cgpa-pill{color:#0f172a;background:#f1f5f9;border-color:#cbd5e1}[data-theme=light] .action-icon-btn{color:#64748b;border-color:#e2e8f0}[data-theme=light] .action-icon-btn.info:hover{color:#0f172a;background:#f1f5f9;border-color:#cbd5e1}[data-theme=light] .aether-tip{background:#fff;border-color:#cbd5e1;box-shadow:0 16px 40px #0000001f,0 2px 8px #0000000f}[data-theme=light] .aether-tip:before{background:#fff;border-top-color:#cbd5e1;border-left-color:#cbd5e1}[data-theme=light] .aether-tip-sem-header{color:#0f172a;border-bottom-color:#cbd5e1}[data-theme=light] .aether-tip-subject-title{color:#1e293b}[data-theme=light] .aether-tip__meta{color:#64748b;border-top-color:#f1f5f9}[data-theme=light] .custom-context-menu{background:#fff;border-color:#cbd5e1;box-shadow:0 16px 40px #0000001f}[data-theme=light] .context-menu-item{color:#1e293b}[data-theme=light] .context-menu-item:hover{color:#0f172a;background:#f1f5f9}[data-theme=light] .clean-pro-table tbody tr.pinned-row{background:#e11d480a}[data-theme=light] .header-title-group h1 em{background:linear-gradient(135deg,#0f172a 20%,#334155 60%,#64748b 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}
