:root{--foreground:#fff;--primary:#b488ff;--background:color-mix(in srgb, var(--primary) 35%, #000);--primary-foreground:#fff;--muted:color-mix(in srgb, var(--primary) 40%, #000);--muted-foreground:color-mix(in srgb, var(--primary) 60%, #fff);--destructive:#ef4444;--surface:color-mix(in srgb, var(--primary) 50%, #000);--surface-2:color-mix(in srgb, var(--primary) 70%, #000);--topband:color-mix(in srgb, var(--primary) 20%, #000);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--foreground);background-color:var(--background);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Manjari,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}:focus,:focus-visible{box-shadow:none;outline:none}body{background:var(--background);min-height:100vh;color:var(--foreground);margin:0}#root{min-height:100vh}a{color:var(--foreground);text-decoration:none}h1,h2,h3,h4,p{margin:0}.site-root{flex-direction:column;min-height:100vh;display:flex}.site-topband{background:var(--topband);width:100%}.logo-strip{flex-wrap:wrap;align-items:center;gap:.9rem;width:100%;margin-inline:auto;padding:.85rem 1rem;display:flex}.site-logo{object-fit:contain;border-radius:4px;width:auto;height:clamp(36px,4vw,50px);display:block}.push-right{border-radius:4px;height:clamp(36px,4vw,50px);margin-left:auto}.site-toolbar{grid-template-columns:40px 1fr 40px;align-items:center;width:100%;margin-inline:0;padding:.8rem 1rem;display:grid}.menu-toggle{width:20px;height:40px;color:var(--foreground);cursor:pointer;background:0 0;border:0;border-radius:0;padding:0;font-size:1.35rem}.site-title{justify-self:center;width:auto;height:clamp(22px,4vw,30px)}.layout-body{flex:1;width:min(1100px,100%);margin-inline:auto;padding:0 1rem 1rem}.app-shell{width:100%}.page{width:min(900px,100%);margin-inline:auto}.drawer-overlay{z-index:59;background:#06021073;border:0;position:fixed;inset:0}.drawer-panel{background:var(--background);z-index:60;flex-direction:column;gap:.75rem;width:min(290px,84vw);height:100vh;padding:.8rem;transition:transform .18s;display:flex;position:fixed;top:0;left:0;transform:translate(-110%)}.drawer-panel.open{transform:translate(0)}.menu-close{width:38px;height:38px;color:var(--foreground);cursor:pointer;background:0 0;border:0;align-self:flex-end;padding:0;font-size:1.25rem}.drawer-links{gap:.38rem;margin-top:.25rem;display:grid}.nav-link,.logout-link{text-align:left;width:100%;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:.6rem .55rem;font-size:.98rem;font-weight:600}.nav-link:hover,.nav-link.active,.logout-link:hover{color:var(--foreground);background:color-mix(in srgb, var(--muted) 74%, transparent)}.logout-link{color:var(--destructive)}.page-stack{gap:.95rem;display:grid}.breadcrumbs{color:color-mix(in srgb, var(--muted-foreground) 88%, white 12%);letter-spacing:.02em;text-transform:uppercase;font-size:.78rem}.page-head{gap:.35rem;display:grid}.page-head h1{letter-spacing:-.015em;font-size:clamp(1.35rem,2vw,1.85rem);font-weight:750}.card{background:color-mix(in srgb, var(--surface) 90%, var(--background));border-radius:14px;gap:.9rem;padding:1rem;display:grid}.card-wide{padding:1.05rem}.stack{gap:.58rem;display:grid}.top-gap{margin-top:.35rem}label{color:color-mix(in srgb, var(--foreground) 92%, var(--muted-foreground));font-size:.88rem;font-weight:600}input,select,button{font:inherit}input,select{background:color-mix(in srgb, var(--surface-2) 70%, var(--background));width:100%;color:var(--foreground);border:0;border-radius:10px;padding:.66rem .74rem}input::placeholder{color:color-mix(in srgb, var(--muted-foreground) 50%, transparent)}button{background:var(--primary);width:100%;color:var(--primary-foreground);cursor:pointer;letter-spacing:.01em;border:0;border-radius:10px;padding:.68rem .78rem;font-weight:650;transition:filter .16s}button:hover{filter:brightness(1.08)}button:disabled{opacity:.75;cursor:not-allowed}.secondary-btn{background:color-mix(in srgb, var(--surface-2) 74%, var(--background));width:auto;color:var(--foreground);padding:.44rem .72rem;font-weight:600}.helper-link{color:var(--muted-foreground);font-size:.83rem}.consent-row{color:var(--muted-foreground);align-items:flex-start;gap:.55rem;font-size:.84rem;display:flex}.consent-row input[type=checkbox]{flex:none;width:16px;height:16px;margin-top:.15rem;padding:0}.consent-row a{color:var(--primary);text-underline-offset:2px;text-decoration:underline}.plain-link-btn{width:auto;color:var(--muted-foreground);background:0 0;border:0;border-radius:0;align-self:flex-start;padding:0;font-size:.85rem;font-weight:600}.plain-link-btn:hover{filter:none;color:var(--foreground)}.inline-link-btn{width:auto;color:var(--primary);font-size:inherit;letter-spacing:0;background:0 0;border:0;border-radius:0;padding:0;font-weight:700;display:inline}.inline-link-btn:hover{filter:none;color:color-mix(in srgb, var(--primary) 80%, white 20%)}.muted{color:var(--muted-foreground);font-size:.92rem}.status{color:color-mix(in srgb, var(--primary) 74%, white 26%);font-size:.92rem;font-weight:600}.error{color:color-mix(in srgb, var(--destructive) 76%, white 24%);font-size:.92rem;font-weight:600}.college-list{background:color-mix(in srgb, var(--surface-2) 68%, var(--background));border-radius:10px;gap:.38rem;max-height:230px;padding:.38rem;display:grid;overflow:auto}.college-option{text-align:left;background:color-mix(in srgb, var(--surface) 68%, var(--background));color:var(--foreground);border:0;padding:.56rem .62rem;font-size:.9rem}.college-option.selected{color:color-mix(in srgb, var(--primary) 40%, white 60%);background:color-mix(in srgb, var(--primary) 28%, var(--surface))}.game-frame-wrap{aspect-ratio:691/1230;background:color-mix(in srgb, var(--surface) 65%, var(--background));border-radius:14px;width:min(100%,520px);margin:0 auto;position:relative;overflow:hidden}.fullscreen-btn{z-index:2;width:auto;color:var(--foreground);background:0 0;border:0;padding:.25rem;font-size:1rem;line-height:1;position:absolute;bottom:.6rem;right:.6rem}.game-frame{border:0;width:100%;height:100%}.leaderboard-grid{gap:.9rem;display:grid}.leaderboard-tabs{grid-template-columns:1fr 1fr;gap:.45rem;display:grid}.tab-btn{background:color-mix(in srgb, var(--surface-2) 75%, var(--background));width:100%;color:var(--muted-foreground);border:0;border-radius:8px;padding:.55rem .6rem;font-size:.9rem;font-weight:600}.tab-btn.active{background:var(--primary);color:var(--primary-foreground)}.table-scroll{-webkit-overflow-scrolling:touch;width:100%;margin-top:.45rem;overflow-x:hidden}table{border-collapse:collapse;background:color-mix(in srgb, var(--surface) 60%, var(--background));table-layout:fixed;border-radius:12px;width:100%;min-width:0;margin-top:0;overflow:hidden}th,td{text-align:left;white-space:nowrap;text-overflow:ellipsis;border:0;padding:.56rem;font-size:.88rem;overflow:hidden}th{background:color-mix(in srgb, var(--muted) 82%, var(--background));font-weight:700}tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--surface-2) 56%, var(--background))}.leaderboard-panel h2{font-size:1.02rem}.rank-col{width:12%}.score-col{text-align:right;width:28%}.leaderboard-panel-individual .name-col,.leaderboard-panel-college .college-col{width:60%}.site-footer-name{margin-top:auto;text-align:center;background:var(--topband);width:100%;color:color-mix(in srgb, var(--muted-foreground) 85%, white 15%);letter-spacing:.02em;gap:.8rem;margin-inline:0;padding:1rem;font-size:.85rem;font-weight:600;display:grid}.footer-links{justify-content:center;align-items:center;gap:1.2rem;display:flex}.footer-link{color:var(--muted-foreground);font-size:.82rem}.footer-link:hover{color:var(--foreground)}.footer-brand{color:var(--surface);font-size:.83rem}.legal-card{gap:.75rem}.legal-card h2{font-size:1rem}.legal-card p{color:color-mix(in srgb, var(--foreground) 88%, var(--muted-foreground));font-size:.92rem}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=768px){.site-toolbar{padding:.95rem 1.2rem}.layout-body{padding:0 1.2rem 1rem}.card,.card-wide{padding:1.2rem}.leaderboard-grid{grid-template-columns:1fr 1fr}}
