:root{--surface:#f8f9ff;--surface-lowest:#fff;--surface-low:#eff4ff;--surface-container:#e5eeff;--surface-high:#dce9ff;--surface-highest:#d3e4fe;--primary:#4648d4;--secondary:#645efb;--on-surface:#0b1c30;--on-variant:#464554;--outline:#c7c4d7;--success:#10b981;--error:#ba1a1a}*{box-sizing:border-box}html{background:var(--surface)}body{background:var(--surface);min-width:320px;min-height:100vh;color:var(--on-surface);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(circle at 16% 4%,#645efb24,#0000 26%),radial-gradient(circle at 92% 14%,#b55d0014,#0000 24%),linear-gradient(#ffffff8c,#f8f9ff00);position:fixed;inset:0}button,input{font:inherit}button{cursor:pointer}a{color:inherit}.skip-link{z-index:100;background:var(--on-surface);color:#fff;border-radius:8px;padding:10px 14px;font-size:14px;font-weight:800;line-height:20px;text-decoration:none;transition:transform .16s;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{outline-offset:3px;outline:3px solid #645efb52;transform:translateY(0)}.content-canvas:focus{outline:0}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;justify-content:center;align-items:center;line-height:1;display:inline-flex}.icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;flex:none;width:1em;height:1em}.app-shell{background:0 0;min-height:100vh}.top-app-bar{z-index:40;-webkit-backdrop-filter:blur(22px)saturate(1.2);backdrop-filter:blur(22px)saturate(1.2);background:#f8f9ffb8;border-bottom:1px solid #c7c4d759;justify-content:space-between;align-items:center;height:64px;padding:0 16px;display:flex;position:sticky;top:0;box-shadow:0 8px 30px #0b1c300d}.brand-button{min-height:44px;color:inherit;background:0 0;border:0;align-items:center;gap:12px;padding:0;display:flex}.brand-button h1{color:var(--primary);letter-spacing:0;margin:0;font-size:24px;font-weight:800;line-height:32px}.brand-glyph{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;border-radius:10px;place-items:center;width:36px;height:36px;display:grid;box-shadow:0 12px 28px #4648d433}.brand-glyph .material-symbols-outlined{font-variation-settings:"FILL" 1, "wght" 500, "GRAD" 0, "opsz" 24;font-size:22px}.top-nav{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff9e;border:1px solid #c7c4d76b;border-radius:999px;align-items:center;gap:6px;min-height:44px;padding:4px;display:none;box-shadow:0 10px 30px #0b1c300f}.top-nav button{min-height:36px;color:var(--on-variant);background:0 0;border:0;border-radius:999px;align-items:center;gap:7px;padding:0 13px;font-size:13px;font-weight:800;line-height:18px;transition:background .16s,color .16s,transform .16s;display:inline-flex}.top-nav button:hover,.top-nav button:focus-visible{background:var(--surface-low);color:var(--primary);outline:0}.top-nav button.active{background:var(--primary);color:#fff;box-shadow:0 10px 22px #4648d433}.top-nav .material-symbols-outlined{font-size:18px}.avatar-button{border:2px solid var(--surface-container);color:#0b1c30;background:radial-gradient(circle,#fffffff5 0 35%,#d3e4fef2 36% 54%,#0b1c30 55% 100%);border-radius:999px;place-items:center;width:40px;height:40px;padding:0;transition:background .16s,color .16s,transform .16s;display:grid}.avatar-button:hover,.avatar-button:focus-visible{color:var(--primary);background:#4648d41a;outline:0}.brand-button:active,.top-nav button:active,.avatar-button:active,.bottom-nav button:active,.submit-button:active{transform:scale(.96)}.avatar-button .material-symbols-outlined{font-size:17px}.content-canvas{width:100%;max-width:1280px;margin:0 auto;padding:24px 16px 128px}.challenge-header{grid-template-columns:1fr;gap:20px;margin-bottom:32px;animation:.42s cubic-bezier(.2,.8,.2,1) both rise-in;display:grid}.timer-pill{background:var(--secondary);color:#fff;border-radius:999px;align-items:center;gap:8px;min-height:24px;margin-bottom:8px;padding:4px 12px;font-size:14px;font-weight:500;line-height:20px;display:inline-flex;box-shadow:0 10px 24px #4648d429}.timer-pill .material-symbols-outlined{font-size:16px}h2,h3,h4,p{margin-top:0}.challenge-header h2,.page-heading h2{max-width:720px;color:var(--on-surface);letter-spacing:0;margin-bottom:8px;font-size:36px;font-weight:800;line-height:44px}.challenge-header p,.page-heading p,.reveal-card p,.rank-item p,.gauge-card p,.history-row p{color:var(--on-variant);letter-spacing:0;margin-bottom:0;font-size:18px;font-weight:400;line-height:28px}.submission-grid{grid-template-columns:1fr;gap:24px;display:grid}.arena-status{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.arena-status>div{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffb8;border:1px solid #c7c4d77a;border-radius:16px;align-content:center;gap:4px;min-height:112px;padding:16px;display:grid;box-shadow:0 16px 36px #0b1c3014}.arena-status .material-symbols-outlined{color:var(--primary);font-variation-settings:"FILL" 1, "wght" 500, "GRAD" 0, "opsz" 24}.arena-status strong{color:var(--on-surface);font-size:18px;line-height:24px}.arena-status small{color:var(--on-variant);text-transform:uppercase;font-size:12px;font-weight:700;line-height:16px}.submission-card,.reveal-card,.rank-item,.gauge-card,.bias-card,.history-card{background:var(--surface-lowest);border:1px solid #c7c4d773;border-radius:12px;transition:border-color .18s,box-shadow .18s,transform .18s;overflow:hidden;box-shadow:0 1px 3px #0b1c300f}.submission-card{animation:.44s cubic-bezier(.2,.8,.2,1) both card-in}.submission-card:nth-child(2){animation-delay:80ms}.submission-card:nth-child(3){animation-delay:.16s}.submission-card:hover,.rank-item:hover,.history-card:hover,.bias-card:hover,.gauge-card:hover{border-color:#4648d447;transform:translateY(-2px);box-shadow:0 18px 44px #0b1c301c}.submission-image{background:var(--surface-container);width:100%;height:256px;position:relative;overflow:hidden}.submission-image img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .46s;display:block}.submission-card:hover .submission-image img{transform:scale(1.035)}.design-label{color:var(--on-surface);background:#f8f9ffeb;border-radius:6px;padding:4px 12px;font-size:14px;font-weight:600;line-height:20px;position:absolute;top:16px;left:16px;box-shadow:0 1px 3px #0b1c3014}.score-chip{min-height:32px;color:var(--primary);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffc7;border:1px solid #ffffff9e;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex;position:absolute;bottom:16px;right:16px;box-shadow:0 10px 22px #0b1c301a}.score-chip .material-symbols-outlined{font-variation-settings:"FILL" 1, "wght" 500, "GRAD" 0, "opsz" 20;font-size:16px}.submission-body{flex-direction:column;gap:24px;padding:24px;display:flex}.creator-row{align-items:center;gap:12px;display:flex}.creator-row span{color:var(--on-variant);flex:1;font-size:16px;font-style:italic;line-height:24px}.creator-row strong{color:var(--primary);font-size:14px}.unknown{background:var(--surface-high);width:32px;height:32px;color:var(--on-variant);border-radius:999px;place-items:center;font-size:14px;font-weight:800;display:grid}.slider-stack{gap:16px;display:grid}.score-control{gap:4px;display:grid}.score-label{color:var(--on-surface);justify-content:space-between;align-items:center;font-size:14px;font-weight:500;line-height:20px;display:flex}.score-label>span:first-child{align-items:center;gap:6px;display:inline-flex}.score-label .material-symbols-outlined{color:var(--primary);font-size:16px}.score-label strong{color:var(--primary);font-weight:800}input[type=range]{appearance:none;cursor:pointer;background:0 0;border-radius:999px;width:100%;height:8px;margin:0}input[type=range]::-webkit-slider-runnable-track{background:var(--surface-high);border-radius:999px;height:6px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--primary);border:0;border-radius:999px;width:14px;height:14px;margin-top:-4px}input[type=range]::-moz-range-track{background:var(--surface-high);border-radius:999px;height:6px}input[type=range]::-moz-range-progress{background:var(--surface-high);border-radius:999px;height:6px}input[type=range]::-moz-range-thumb{background:var(--primary);border:0;border-radius:999px;width:14px;height:14px}.submit-wrap{justify-content:center;margin-top:32px;display:flex}.submit-button{background:var(--primary);color:#fff;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:54px;padding:0 32px;font-size:14px;font-weight:700;line-height:20px;transition:transform .15s,background .15s;display:inline-flex;box-shadow:0 12px 32px #4648d433}.submit-button:hover{background:#494bd6;transform:translateY(-1px);box-shadow:0 18px 42px #4648d447}.submit-button.compact,.submit-button.full{width:100%}.page-stack{gap:24px;display:grid}.page-heading{gap:8px;display:grid}.page-heading.with-actions{grid-template-columns:1fr auto;align-items:end}.filter-button{border:1px solid var(--outline);background:var(--surface-lowest);min-height:40px;color:var(--on-variant);border-radius:999px;align-items:center;gap:4px;padding:0 16px;font-size:14px;font-weight:700;display:inline-flex}.reveal-card{text-align:center;gap:14px;padding:24px;display:grid}.reveal-medal{background:var(--surface-highest);width:72px;height:72px;color:var(--primary);border-radius:999px;place-items:center;margin:0 auto;display:grid}.reveal-medal .material-symbols-outlined{font-variation-settings:"FILL" 1, "wght" 500, "GRAD" 0, "opsz" 40;font-size:40px}.eyebrow{text-transform:uppercase;color:var(--primary)!important;font-size:12px!important;font-weight:800!important;line-height:16px!important}.reveal-card h3,.gauge-card h3,.bias-card h3,.history-card h3,.rank-item h3{color:var(--on-surface);margin:0;font-size:24px;font-weight:700;line-height:32px}.rank-list{gap:8px;display:grid}.rank-item{grid-template-columns:48px 1fr auto;align-items:center;gap:16px;padding:16px;display:grid}.rank-item>strong{align-items:center;gap:4px;display:inline-flex}.rank-item>strong .material-symbols-outlined{font-size:18px}.rank-number{background:var(--surface-highest);width:48px;height:48px;color:var(--on-surface);border-radius:999px;place-items:center;font-size:24px;font-weight:800;line-height:32px;display:grid}.rank-number.primary{color:#fff;background:#6063ee}.rank-score{text-align:center}.rank-score span{color:var(--on-variant);font-size:12px;line-height:16px;display:block}.rank-score strong,.rank-item>strong{color:var(--primary);font-size:24px;line-height:32px}.gauge-card,.bias-card,.history-card{padding:24px}.gauge{place-items:center;width:192px;height:192px;margin:24px auto 0;display:grid;position:relative}.gauge svg{width:100%;height:100%;transform:rotate(-90deg)}.gauge circle{fill:none;stroke:var(--surface-high);stroke-width:8px}.gauge .progress{stroke:var(--primary);stroke-dasharray:251.2;stroke-dashoffset:20.1px;stroke-linecap:round}.gauge>div{place-items:center;display:grid;position:absolute}.gauge strong{color:var(--primary);font-size:48px;line-height:56px}.gauge span{color:var(--on-variant);text-transform:uppercase;font-size:14px;font-weight:800}.bias-card{gap:16px;display:grid}.bias-row{color:var(--on-surface);grid-template-columns:1fr auto;gap:6px 12px;font-size:14px;display:grid}.bias-row i{background:var(--primary);border-radius:999px;grid-column:1/-1;height:8px}.history-card{gap:16px;display:grid}.history-row{border:1px solid #0000;border-radius:8px;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px;display:grid}.history-row:hover{border-color:var(--surface-container);background:var(--surface-low)}.history-icon{background:linear-gradient(135deg, var(--surface-highest), var(--secondary));width:64px;height:64px;color:var(--primary);border-radius:6px;place-items:center;display:grid}.history-row h4{margin-bottom:4px;font-size:16px;line-height:24px}.history-row>span{color:var(--on-variant);font-size:14px;font-weight:700}.admin-row{border-bottom:1px solid var(--surface-container);justify-content:space-between;align-items:center;min-height:48px;display:flex}.bottom-nav{z-index:50;width:100%;height:80px;padding:0 8px env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(22px)saturate(1.2);backdrop-filter:blur(22px)saturate(1.2);background:#f8f9fff2;border:1px solid #c7c4d74d;border-bottom:0;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;box-shadow:0 -16px 40px #0b1c3014}.bottom-nav button{min-width:62px;min-height:56px;color:var(--on-variant);background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:4px 14px;transition:transform .15s;display:flex}.bottom-nav button.active{background:var(--secondary);color:#fff;box-shadow:0 12px 28px #4648d438}.bottom-nav button.active .material-symbols-outlined{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.bottom-nav button span:last-child{margin-top:4px;font-size:14px;font-weight:500;line-height:20px}.system-page{background:var(--surface);place-items:center;min-height:100vh;padding:24px;display:grid}.system-panel{text-align:center;background:#ffffffd1;border:1px solid #c7c4d78a;border-radius:16px;width:min(100%,520px);padding:32px;box-shadow:0 24px 70px #0b1c301a}.system-kicker{color:var(--primary);text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:800;line-height:18px}.system-panel h1{margin:0 0 12px;font-size:32px;line-height:38px}.system-panel p{color:var(--on-variant)}.system-link{background:var(--primary);color:#fff;border-radius:999px;align-items:center;min-height:44px;padding:0 18px;font-size:14px;font-weight:800;text-decoration:none;display:inline-flex}.toast{z-index:80;max-width:min(360px,100vw - 36px);color:var(--on-surface);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#ffffffdb;border:1px solid #c7c4d78c;border-radius:14px;padding:14px 16px;font-size:14px;font-weight:700;line-height:20px;animation:.22s cubic-bezier(.2,.8,.2,1) both toast-in;position:fixed;bottom:104px;right:18px;box-shadow:0 18px 44px #0b1c3029}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes card-in{0%{opacity:0;transform:translateY(14px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (min-width:768px){.top-app-bar{padding:0 64px}.top-nav{display:flex}.content-canvas{padding:24px 64px 128px}.challenge-header{grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);align-items:end}.challenge-header h2,.page-heading h2{font-size:48px;line-height:56px}.submission-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.submit-wrap{justify-content:flex-end}.bottom-nav{display:none}}@media (min-width:1024px){.content-canvas{min-height:calc(100vh - 64px);padding-top:clamp(14px,2vh,22px);padding-bottom:clamp(14px,2vh,22px)}.challenge-header{grid-template-columns:minmax(0,1fr) minmax(280px,.34fr);gap:clamp(18px,2vw,34px);margin-bottom:clamp(16px,2vh,24px)}.timer-pill{min-height:24px;margin-bottom:8px}.challenge-header h2{margin-bottom:8px;font-size:clamp(36px,5.1vh,52px);line-height:1.08}.challenge-header p{max-width:880px;font-size:clamp(15px,1.9vh,18px);line-height:1.45}.arena-status{align-self:end}.arena-status>div{min-height:clamp(82px,12vh,112px);padding:clamp(12px,1.8vh,16px)}.submission-grid{gap:clamp(16px,2vw,24px)}.submission-card{min-height:0}.submission-image{height:clamp(180px,29vh,256px)}.submission-body{gap:clamp(12px,1.7vh,18px);padding:clamp(14px,2vh,20px) clamp(16px,2vw,24px)}.creator-row{gap:10px}.creator-row span{font-size:clamp(13px,1.7vh,16px);line-height:1.35}.slider-stack{gap:clamp(9px,1.45vh,14px)}.score-label{font-size:clamp(12px,1.5vh,14px);line-height:1.25}.submit-wrap{margin-top:clamp(14px,2.1vh,24px)}.submit-button{min-height:clamp(44px,5.9vh,54px)}}@media (min-width:1024px) and (max-height:860px){.top-app-bar{height:58px}.content-canvas{min-height:calc(100vh - 58px);padding-top:14px;padding-bottom:14px}.challenge-header h2{font-size:clamp(34px,5vh,44px)}.challenge-header p{font-size:16px;line-height:1.35}.arena-status>div{min-height:86px}.submission-image{height:clamp(170px,28vh,230px)}.submission-body{gap:12px;padding:14px 18px}.unknown{width:28px;height:28px;font-size:12px}.slider-stack{gap:9px}input[type=range]::-webkit-slider-runnable-track{height:5px}input[type=range]::-moz-range-track{height:5px}.submit-wrap{margin-top:14px}.submit-button{min-height:44px}}@media (max-width:390px){.top-app-bar{height:48px;padding:0 12px}.avatar-button{width:30px;height:36px}.brand-button{gap:9px;min-height:36px}.brand-glyph{border-radius:9px;width:30px;height:30px}.brand-glyph .material-symbols-outlined{font-size:18px}.avatar-button .material-symbols-outlined{font-size:14px}.brand-button h1{font-size:18px;line-height:24px}.content-canvas{padding:16px 12px 104px}.challenge-header{gap:16px;margin-bottom:24px}.arena-status{grid-template-columns:repeat(2,minmax(0,1fr))}.arena-status>div{border-radius:12px;min-height:76px;padding:10px}.arena-status strong{font-size:13px;line-height:18px}.arena-status small{font-size:10px;line-height:13px}.timer-pill{min-height:22px;margin-bottom:8px;padding:3px 10px;font-size:12px;line-height:16px}.challenge-header h2,.page-heading h2{font-size:26px;line-height:32px}.challenge-header p,.page-heading p{font-size:14px;line-height:21px}.submission-grid{gap:18px}.submission-card,.reveal-card,.rank-item,.gauge-card,.bias-card,.history-card{border-radius:8px}.submission-image{height:184px}.design-label{padding:4px 10px;font-size:11px;line-height:16px;top:12px;left:12px}.score-chip{min-height:28px;font-size:11px;bottom:12px;right:12px}.submission-body{gap:18px;padding:16px 18px}.creator-row{gap:8px}.creator-row span{font-size:13px;line-height:20px}.creator-row strong{font-size:12px}.unknown{width:24px;height:24px;font-size:11px}.slider-stack{gap:12px}.score-label{font-size:11px;line-height:16px}.score-label .material-symbols-outlined{font-size:14px}input[type=range]{height:8px}.submit-wrap{margin-top:24px}.submit-button{min-height:48px;padding:0 24px;font-size:12px;line-height:16px}.bottom-nav button{min-width:58px;padding-inline:10px}.bottom-nav button span:last-child{font-size:11px;line-height:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
