@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.isolate{isolation:isolate}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.inline{display:inline}.table{display:table}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#151515;--paper:#fffaf0;--paper-deep:#f3ead7;--yellow:#f4cf32;--yellow-light:#ffe66b;--red:#e94b35;--red-dark:#bd2f20;--blue:#2f6fdd;--green:#3da65a;--muted:#6a645b;--line:#d6cab7;--white:#fff}*{box-sizing:border-box}html{background:var(--paper-deep);scroll-behavior:smooth;min-width:320px}body{background:var(--paper-deep);min-height:100vh;color:var(--ink);text-rendering:optimizelegibility;margin:0;font-family:Arial Rounded MT Bold,Trebuchet MS,Arial,sans-serif}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}::selection{background:var(--yellow);color:var(--ink)}:focus-visible{outline:4px solid var(--blue);outline-offset:3px}.site-shell{background:var(--paper-deep);flex-direction:column;min-height:100svh;display:flex}.site-header{z-index:40;border-bottom:4px solid var(--ink);background:var(--yellow);position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:24px;width:min(1180px,100% - 32px);min-height:76px;margin:0 auto;display:flex}.site-brand{letter-spacing:-.05em;white-space:nowrap;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.site-brand__logo{width:48px;height:48px;image-rendering:pixelated}.site-brand__name{font-size:clamp(1.2rem,2vw,1.55rem);font-weight:1000}.site-nav{align-items:center;gap:8px;display:flex}.site-nav__link{min-height:42px;color:var(--ink);border:2px solid #0000;justify-content:center;align-items:center;padding:8px 14px;font-size:.9rem;font-weight:900;text-decoration:none;display:inline-flex}.site-nav__link:hover,.site-nav__link[aria-current=page]{border-color:var(--ink);background:var(--white);box-shadow:3px 3px 0 var(--ink)}.site-main{flex:1 0 auto;width:min(1180px,100% - 32px);margin:0 auto;padding:44px 0 40px}.site-footer{border-top:4px solid var(--ink);background:var(--ink);color:var(--white);flex:none;margin-top:clamp(24px,4vw,48px)}.site-footer__inner{color:#d8d3ca;justify-content:space-between;align-items:center;gap:20px;width:min(1180px,100% - 32px);min-height:90px;margin:0 auto;font-family:Arial,sans-serif;font-size:.86rem;display:flex}.site-footer a{color:var(--yellow-light);font-weight:700}.page-hero{border:4px solid var(--ink);background:var(--paper);box-shadow:8px 8px 0 var(--ink);grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);align-items:center;gap:clamp(28px,6vw,72px);margin-bottom:34px;padding:clamp(28px,6vw,64px);display:grid;position:relative;overflow:hidden}.page-hero:after{content:"";aspect-ratio:1;width:clamp(160px,25vw,250px);image-rendering:pixelated;background:url(/team0logo.webp) 50%/contain no-repeat;justify-self:center;place-items:center;display:grid}.page-hero--home{grid-template-columns:minmax(0,1fr) minmax(110px,150px);gap:clamp(22px,4vw,44px);padding:clamp(22px,3vw,34px)}.page-hero--home:after{width:clamp(110px,14vw,150px)}.page-hero--home .display-title{font-size:clamp(2.25rem,5vw,4rem)}.page-hero--home .hero-copy{margin-top:14px;font-size:clamp(.95rem,1.5vw,1.05rem);line-height:1.5}.page-hero--home .button--large{min-height:50px;padding:10px 18px;font-size:.9rem}.eyebrow{color:var(--red-dark);letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px;font-family:Arial,sans-serif;font-size:.78rem;font-weight:900}.display-title{letter-spacing:-.075em;max-width:760px;margin:0;font-size:clamp(2.6rem,7vw,5.8rem);font-weight:1000;line-height:.94}.display-title__accent{color:var(--red)}.hero-copy{color:#4f4a43;max-width:660px;margin:22px 0 0;font-family:Arial,sans-serif;font-size:clamp(1rem,2vw,1.18rem);line-height:1.65}.hero-actions,.button-row{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.hero-alternatives{margin-top:18px}.hero-alternatives__label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-family:Arial,sans-serif;font-size:.78rem;font-weight:900}.hero-alternatives .hero-actions{margin-top:8px}.panel{border:3px solid var(--ink);background:var(--paper);box-shadow:6px 6px 0 var(--ink)}.panel+.panel{margin-top:28px}.panel__header{border-bottom:3px solid var(--ink);background:var(--yellow);justify-content:space-between;align-items:center;gap:18px;padding:18px 22px;display:flex}.panel__title{letter-spacing:-.035em;margin:0;font-size:clamp(1.25rem,3vw,1.65rem);font-weight:1000}.panel__body{padding:clamp(20px,4vw,34px)}.panel__body--compact{padding:20px}.section-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:28px;margin-top:28px;display:grid}.section-grid>.panel+.panel{margin-top:0}.course-layout{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:32px;display:grid}.course-title{letter-spacing:-.045em;margin:0 0 16px;font-size:clamp(1.65rem,4vw,2.5rem);font-weight:1000;line-height:1.05}.course-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 18px;font-family:Arial,sans-serif;font-size:.92rem;display:flex}.course-code{border:3px solid var(--ink);background:var(--white);min-height:46px;color:var(--ink);box-shadow:3px 3px 0 var(--ink);letter-spacing:.06em;align-items:center;gap:8px;padding:8px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(.96rem,3vw,1.08rem);font-weight:900;text-decoration:none;display:inline-flex}.course-code:hover{background:var(--yellow-light)}.button{border:3px solid var(--ink);background:var(--white);min-height:48px;color:var(--ink);box-shadow:4px 4px 0 var(--ink);letter-spacing:.02em;text-align:center;text-transform:uppercase;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.92rem;font-weight:1000;text-decoration:none;transition:transform .1s,box-shadow .1s,background-color .1s;display:inline-flex}.button:hover:not(:disabled){background:var(--yellow-light);box-shadow:5px 5px 0 var(--ink);transform:translate(-1px,-1px)}.button:active:not(:disabled){box-shadow:1px 1px 0 var(--ink);transform:translate(3px,3px)}.button:disabled{color:#777168;cursor:not-allowed;background:#d8d0c2;border-color:#777168;box-shadow:3px 3px #777168}.button--primary{background:var(--green);color:var(--white)}.button--primary:hover:not(:disabled){background:#4dba69}.button--red{background:var(--red);color:var(--white)}.button--blue{background:var(--blue);color:var(--white)}.button--large{min-height:58px;padding:14px 24px;font-size:1.05rem}.status-pill{border:2px solid var(--ink);background:var(--white);color:var(--ink);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:7px;padding:6px 10px;font-family:Arial,sans-serif;font-size:.72rem;font-weight:900;display:inline-flex}.status-pill:before{content:"";border:1px solid var(--ink);background:var(--green);border-radius:50%;width:9px;height:9px}.status-pill--ended:before{background:var(--red)}.status-pill--upcoming:before{background:var(--yellow)}.alert{border:3px solid var(--ink);background:var(--white);color:var(--ink);margin-top:18px;padding:14px 16px;font-family:Arial,sans-serif;font-weight:700;line-height:1.45}.alert--success{background:#dff3e3;border-color:#246f3a}.alert--error{border-color:var(--red-dark);background:#ffe2dc}.alert--info{border-color:var(--blue);background:#e5edff}.tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:18px;display:grid}.tab{border:2px solid var(--ink);background:var(--white);cursor:pointer;min-height:42px;padding:8px;font-size:.78rem;font-weight:900}.tab[aria-selected=true]{background:var(--yellow);box-shadow:3px 3px 0 var(--ink)}.stack-list{gap:10px;display:grid}.score-row{border:2px solid var(--line);background:var(--white);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:58px;padding:10px 12px;font-family:Arial,sans-serif;display:grid}.score-row--gold{border-color:var(--ink);background:#fff1a6}.score-rank{border:2px solid var(--ink);background:var(--paper);place-items:center;width:34px;height:34px;font-weight:900;display:grid}.score-name{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.score-detail{color:var(--muted);font-size:.76rem}.score-value{text-align:right;font-weight:900}.empty-state{border:2px dashed var(--line);color:var(--muted);text-align:center;padding:28px 16px;font-family:Arial,sans-serif}.loading-state{place-items:center;min-height:58vh;display:grid}.loading-block{border:3px solid var(--ink);background:var(--yellow);box-shadow:6px 6px 0 var(--ink);padding:18px 24px;font-weight:1000}.loader-dots:after{content:"...";vertical-align:bottom;width:1.4em;animation:1.2s steps(4,end) infinite loader-dots;display:inline-block;overflow:hidden}@keyframes loader-dots{0%{width:0}to{width:1.4em}}.streak-banner{border:2px solid var(--ink);background:var(--red);color:var(--white);text-align:center;margin-bottom:14px;padding:12px 14px;font-family:Arial,sans-serif;font-weight:800}.fine-print{color:var(--muted);font-family:Arial,sans-serif;font-size:.82rem;line-height:1.5}.page-hero--compact{grid-template-columns:minmax(0,1fr) minmax(180px,.35fr);padding-block:clamp(30px,5vw,48px)}.page-hero--compact:after{width:clamp(130px,18vw,190px)}.field-label{letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-family:Arial,sans-serif;font-size:.84rem;font-weight:900;display:block}.text-input{border:3px solid var(--ink);background:var(--white);width:100%;min-height:52px;color:var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:0;padding:10px 13px;font-family:Arial,sans-serif}.text-input::placeholder{color:#81796d;opacity:1}.text-input--code{letter-spacing:.08em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:900}.start-form{gap:12px;max-width:560px;display:grid}.start-form .button{justify-self:start;margin-top:8px}.alert-inline-warning{color:var(--red-dark);margin:14px 0 0}.vault-note{max-width:760px;margin:0 0 20px}.run-vault-list{gap:12px;display:grid}.run-vault-card{border:2px solid var(--line);background:var(--white);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:14px;display:grid}.run-vault-card__main{min-width:0}.run-vault-card__heading{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:5px;display:flex}.run-vault-card__heading strong{text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;overflow:hidden}.run-vault-card__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.run-vault-card__actions .button{min-height:42px;padding:7px 11px;font-size:.72rem}.text-button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:8px;font-family:Arial,sans-serif;font-size:.8rem;font-weight:800;text-decoration:underline}.text-button:hover:not(:disabled){color:var(--ink)}.text-button:disabled{color:#a69d90;cursor:not-allowed}.text-button--danger{color:var(--red-dark)}.import-form{border-top:2px dashed var(--line);margin-top:22px;padding-top:20px}.inline-form{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.leaderboard-panel{margin-top:0!important}.score-name,.score-detail{display:block}.rules-panel{margin-top:28px}.rules-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.rules-grid h3{margin:12px 0 7px;font-size:1.08rem}.rules-grid p{color:var(--muted);margin:0;font-family:Arial,sans-serif;font-size:.9rem;line-height:1.55}.step-number{border:3px solid var(--ink);background:var(--yellow);width:42px;height:42px;box-shadow:3px 3px 0 var(--ink);place-items:center;font-weight:1000;display:grid}.narrow-panel{max-width:720px;margin:6vh auto}.run-heading{border-bottom:4px solid var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:26px;margin-bottom:28px;padding:0 0 26px;display:grid}.run-title{letter-spacing:-.07em;margin:0;font-size:clamp(2.35rem,7vw,5rem);font-weight:1000;line-height:.95}.run-subtitle{margin-top:14px;font-size:.95rem}.run-score{border:4px solid var(--ink);background:var(--yellow);min-width:140px;box-shadow:6px 6px 0 var(--ink);text-align:center;place-items:center;padding:16px;display:grid}.run-score strong{font-size:clamp(2.4rem,7vw,4rem);line-height:.9}.run-score span{text-transform:uppercase;margin-top:7px;font-family:Arial,sans-serif;font-size:.72rem;font-weight:900}.assignment-card{grid-template-columns:minmax(0,1fr) minmax(210px,.35fr);align-items:center;gap:34px;display:grid}.assignment-actions{border-left:2px dashed var(--line);text-align:center;padding-left:28px}.assignment-actions .button{width:100%}.assignment-meta{margin-top:16px}.assignment-meta span{border:2px solid var(--line);background:var(--paper);color:var(--ink);align-items:center;padding:4px 8px;font-size:.76rem;font-weight:900;display:inline-flex}.assignment-time{margin:15px 0 0}.assignment-pending p{max-width:620px;margin:9px auto 18px}.run-controls{border-top:2px dashed var(--line);align-items:center;padding-top:18px}.run-result{align-items:center;gap:20px;display:flex}.run-result__flag{border:3px solid var(--ink);background:var(--red);width:68px;height:68px;color:var(--white);box-shadow:4px 4px 0 var(--ink);border-radius:50%;flex:none;place-items:center;font-size:2rem;display:grid}.run-result h3{margin:2px 0 8px;font-size:clamp(1.45rem,4vw,2.3rem)}.run-result p:last-child{color:var(--muted);margin:0;font-family:Arial,sans-serif}.final-assignment{border-top:2px dashed var(--line);flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:22px;padding-top:18px;display:flex}.final-assignment strong,.final-assignment .score-detail{display:block}.final-assignment .course-code{min-height:40px;padding-block:5px}.history-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.history-row{border:2px solid var(--line);background:var(--white);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px;padding:12px;display:grid}.history-row strong,.history-row .score-detail{display:block}.history-order{border:2px solid var(--ink);background:var(--yellow);place-items:center;width:38px;height:38px;font-weight:1000;display:grid}.dialog-backdrop{z-index:100;background:#151515b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirm-dialog{border:4px solid var(--ink);background:var(--paper);width:min(520px,100%);box-shadow:8px 8px 0 var(--yellow);padding:28px}.confirm-dialog h2{margin:0 0 12px;font-size:clamp(1.7rem,5vw,2.4rem)}.confirm-dialog>p:not(.eyebrow){color:var(--muted);font-family:Arial,sans-serif;line-height:1.55}.zero-hero{border:4px solid var(--ink);background:var(--paper);box-shadow:8px 8px 0 var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(28px,6vw,70px);margin-bottom:24px;padding:clamp(26px,5vw,54px);display:grid}.zero-clock{border:4px solid var(--ink);background:var(--blue);min-width:250px;color:var(--white);box-shadow:6px 6px 0 var(--ink);text-align:center;padding:18px}.zero-clock__label,.zero-clock__boundary{letter-spacing:.1em;text-transform:uppercase;font-family:Arial,sans-serif;font-size:.76rem;font-weight:900;display:block}.zero-clock__boundary{color:#dfe8ff;letter-spacing:0;text-transform:none;margin-top:10px}.zero-clock strong{grid-template-columns:1fr auto 1fr;align-items:center;gap:7px;margin-top:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(2.8rem,7vw,4.8rem);line-height:1;display:grid}.zero-clock strong span{border:3px solid var(--ink);background:var(--paper);color:var(--ink);box-shadow:3px 3px 0 var(--ink);padding:5px}.zero-clock strong i{font-style:normal}.zero-clock__settling{border:3px solid var(--ink);background:var(--paper);color:var(--ink);box-shadow:3px 3px 0 var(--ink);letter-spacing:.04em;text-transform:uppercase;margin-top:10px;padding:16px 12px;font-family:Arial Rounded MT Bold,Trebuchet MS,Arial,sans-serif;font-size:clamp(1.25rem,4vw,1.75rem);font-weight:1000}.zero-side-quest{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:24px;font-family:Arial,sans-serif;font-size:.78rem;font-weight:900;display:flex}.zero-side-quest__button{min-height:42px;padding:7px 12px;font-size:.76rem}.zero-streak-strip{border:3px solid var(--ink);background:var(--red);color:var(--white);box-shadow:4px 4px 0 var(--ink);text-align:center;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:9px 14px;margin-bottom:28px;padding:12px 18px;font-family:Arial,sans-serif;font-weight:900;display:flex}.zero-streak-strip strong{color:var(--yellow-light);font-family:Arial Rounded MT Bold,Trebuchet MS,Arial,sans-serif;font-size:2.3rem;line-height:.8}.zero-streak-strip--settling{background:var(--blue)}.zero-streak-strip--settling strong{text-transform:uppercase;font-size:1.35rem;line-height:1}.zero-assignment .course-code{margin-top:3px}.zero-assignment .assignment-actions .fine-print{max-width:260px;margin:18px auto 0}.cleared-button{background:var(--green);font-size:1.2rem}.zero-settlement-state strong,.zero-settlement-state p{display:block}.zero-settlement-state strong{color:var(--ink);font-size:1.12rem}.zero-settlement-state p{max-width:580px;margin:8px auto 0;line-height:1.5}.hour-secured{align-items:center;gap:22px;display:flex}.hour-secured__check{border:4px solid var(--ink);background:var(--green);width:78px;height:78px;color:var(--white);box-shadow:5px 5px 0 var(--ink);border-radius:50%;flex:none;place-items:center;font-size:2.5rem;font-weight:1000;display:grid}.hour-secured h3{margin:0 0 8px;font-size:clamp(1.6rem,4vw,2.6rem)}.hour-secured p{margin:6px 0;font-family:Arial,sans-serif}.zero-history-grid{align-items:stretch}.zero-history-panel{flex-direction:column;min-width:0;display:flex}.zero-history-panel .panel__header{flex:none}.zero-history-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;min-height:0;max-height:min(460px,60vh);overflow-y:auto}.zero-history-scroll:focus-visible{outline:3px solid var(--blue);outline-offset:-6px}.zero-rules{margin-top:28px}.streak-list{gap:9px;display:grid}.streak-entry{border:2px solid var(--line);background:var(--white)}.streak-entry__button{width:100%;min-height:62px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:14px;padding:10px 13px;display:flex}.streak-entry__button:hover{background:var(--yellow-light)}.streak-entry__button strong,.streak-entry__button small{display:block}.streak-entry__button small{color:var(--muted);margin-top:4px;font-family:Arial,sans-serif;font-size:.72rem}.streak-entry__button>span:last-child{font-size:1.5rem;font-weight:900}.streak-entry__detail{border-top:2px dashed var(--line);background:var(--paper);gap:6px;padding:10px 13px;display:grid}.contributor-row{border-bottom:1px solid var(--line);justify-content:space-between;gap:14px;padding:7px 0;font-family:Arial,sans-serif;font-size:.82rem;display:flex}.contributor-row:last-child{border-bottom:0}.contributor-row strong,.contributor-row small{display:block}.contributor-row small{color:var(--muted);margin-top:2px}.avenge-hero{border:4px solid var(--ink);background:var(--red);color:var(--white);box-shadow:8px 8px 0 var(--ink);grid-template-columns:minmax(0,1fr) minmax(180px,250px);align-items:center;gap:clamp(28px,6vw,74px);margin-bottom:26px;padding:clamp(28px,5vw,54px);display:grid}.avenge-hero__copy{min-width:0}.avenge-hero .eyebrow{color:var(--yellow-light);margin-top:26px}.avenge-hero h1{letter-spacing:-.07em;max-width:760px;margin:0;font-size:clamp(2.6rem,7vw,5.4rem);font-weight:1000;line-height:.94}.avenge-hero h1 span{color:var(--yellow-light)}.avenge-hero__copy>p:last-child{color:#fff7e9;max-width:690px;margin:20px 0 0;font-family:Arial,sans-serif;font-size:clamp(.98rem,2vw,1.12rem);line-height:1.6}.avenge-back-link{color:var(--white);border-bottom:2px solid;font-family:Arial,sans-serif;font-size:.78rem;font-weight:900;text-decoration:none;display:inline-flex}.avenge-back-link:hover{color:var(--yellow-light)}.avenge-hero__poster{border:4px solid var(--ink);background:var(--yellow);min-height:235px;color:var(--ink);box-shadow:7px 7px 0 var(--ink);text-align:center;align-content:center;place-items:center;padding:18px;display:grid;transform:rotate(2deg)}.avenge-hero__poster span,.avenge-hero__poster small{letter-spacing:.13em;text-transform:uppercase;font-family:Arial,sans-serif;font-size:.78rem;font-weight:1000}.avenge-hero__poster strong{border:4px solid var(--ink);background:var(--red);width:96px;height:96px;color:var(--white);box-shadow:4px 4px 0 var(--ink);border-radius:50%;place-items:center;margin:10px 0;font-size:4rem;line-height:1;display:grid}.avenge-stat-strip{border:3px solid var(--ink);background:var(--ink);box-shadow:5px 5px 0 var(--red);grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 30px;display:grid}.avenge-stat-strip>div{min-width:0;color:var(--white);border-right:2px solid #4c4c4c;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:14px 18px;display:grid}.avenge-stat-strip>div:last-child{border-right:0}.avenge-stat-strip strong{color:var(--yellow-light);font-size:clamp(1.65rem,4vw,2.5rem);line-height:1}.avenge-stat-strip span{text-transform:uppercase;font-family:Arial,sans-serif;font-size:.76rem;font-weight:900}.avenge-quiet-error{margin:0 0 28px}.avenge-main-grid{grid-template-columns:minmax(0,2fr) minmax(270px,1fr);align-items:start;gap:28px;display:grid}.avenge-main-grid>.panel+.panel{margin-top:0}.avenge-main-grid .panel__header>div,.avenge-archive .panel__header>div{min-width:0}.avenge-main-grid .panel__header .eyebrow,.avenge-archive .panel__header .eyebrow{margin-bottom:5px}.avenge-panel-header--red{background:var(--red);color:var(--white)}.avenge-panel-header--red .eyebrow{color:var(--yellow-light)}.avenge-panel-header--green{background:var(--green);color:var(--white)}.avenge-panel-header--green .eyebrow{color:#e7ffeb}.avenge-section-intro{max-width:760px;color:var(--muted);margin:0 0 22px;font-family:Arial,sans-serif;font-size:.9rem;line-height:1.55}.avenge-scroll-list{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:min(980px,75vh);padding:2px 10px 8px 2px;overflow-y:auto}.avenge-scroll-list:focus-visible{outline-offset:4px}.avenge-card-list{gap:18px;display:grid}.avenge-card{border:3px solid var(--ink);border-top:9px solid var(--red);background:var(--white);min-width:0;box-shadow:4px 4px 0 var(--ink);padding:20px}.avenge-card--complete{border-top-color:var(--green)}.avenge-card__topline{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;font-family:Arial,sans-serif;font-size:.7rem;font-weight:800;display:flex}.avenge-wanted-tag,.avenge-complete-tag{border:2px solid var(--ink);background:var(--red);color:var(--white);letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;font-size:.68rem;font-weight:1000;display:inline-flex}.avenge-complete-tag{background:var(--green)}.avenge-card h3{letter-spacing:-.035em;margin:15px 0 11px;font-size:clamp(1.3rem,3vw,1.8rem);line-height:1.08}.avenge-card__meta{margin-top:14px}.avenge-card__meta span{border:1px solid var(--line);background:var(--paper);padding:4px 7px;font-size:.72rem}.avenge-course-code--compact{min-height:40px;padding-block:5px}.avenge-course-fallback{border:2px solid var(--line);padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:900;display:inline-flex}.avenge-kill-record{border:2px solid var(--line);background:var(--paper);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;margin-top:18px;padding:12px;display:grid}.avenge-kill-record__mark{border:2px solid var(--ink);background:var(--red);width:42px;height:42px;color:var(--white);border-radius:50%;place-items:center;font-size:1.6rem;font-weight:1000;display:grid}.avenge-kill-record span:not(.avenge-kill-record__mark),.avenge-kill-record strong,.avenge-kill-record small{display:block}.avenge-kill-record div>span{color:var(--red-dark);text-transform:uppercase;font-family:Arial,sans-serif;font-size:.68rem;font-weight:900}.avenge-kill-record strong{margin-top:2px}.avenge-kill-record small{color:var(--muted);margin-top:4px;font-family:Arial,sans-serif;font-size:.68rem;line-height:1.4}.avenge-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:12px 0 0;display:grid}.avenge-facts div{border:2px solid var(--line);background:var(--white);min-width:0;padding:9px}.avenge-facts dt{color:var(--muted);text-transform:uppercase;font-family:Arial,sans-serif;font-size:.64rem;font-weight:800}.avenge-facts dd{overflow-wrap:anywhere;margin:5px 0 0;font-size:1.16rem;font-weight:1000}.avenge-card--complete .avenge-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.avenge-card__actions{border-top:2px dashed var(--line);grid-template-columns:minmax(165px,auto) minmax(0,1fr);align-items:center;gap:14px;margin-top:16px;padding-top:16px;display:grid}.avenge-card__actions>span{color:var(--muted);font-family:Arial,sans-serif;font-size:.72rem;line-height:1.4}.avenge-card__feedback{margin-top:15px}.avenge-credit{background:#e3f5e7;border:2px solid #77b887;align-items:center;gap:10px;margin-top:17px;padding:10px 12px;display:flex}.avenge-credit>span{border:2px solid var(--ink);background:var(--green);width:34px;height:34px;color:var(--white);border-radius:50%;flex:none;place-items:center;font-weight:1000;display:grid}.avenge-credit p{min-width:0;margin:0}.avenge-credit small,.avenge-credit strong{display:block}.avenge-credit small{color:#246f3a;text-transform:uppercase;font-family:Arial,sans-serif;font-size:.65rem;font-weight:900}.avenge-credit strong{overflow-wrap:anywhere;margin-top:2px}.avenge-leader-list{gap:9px;margin:0;padding:0;list-style:none;display:grid}.avenge-leader-list .score-row{grid-template-columns:auto minmax(0,1fr)}.avenge-leader-list .score-name{white-space:normal}.avenge-leader-list .score-detail{margin-top:3px;display:block}.avenge-leader-list .score-value{text-align:left;grid-column:2}.avenge-empty-state strong,.avenge-empty-state p{display:block}.avenge-empty-state p{margin:7px auto 0;line-height:1.5}.avenge-load-more{justify-content:center;margin-top:24px;display:flex}.avenge-archive{margin-top:30px}.avenge-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;display:grid}.event-feature{border:3px solid var(--ink);background:var(--blue);color:var(--white);box-shadow:5px 5px 0 var(--ink);justify-content:space-between;align-items:center;gap:24px;margin-bottom:40px;padding:20px 24px;display:flex}.event-feature .eyebrow{color:var(--yellow-light)}.event-feature h2{margin:0 0 6px;font-size:clamp(1.45rem,4vw,2.15rem)}.event-feature p:last-child{color:#e5edff;margin:0;font-family:Arial,sans-serif}.event-section{margin-top:42px}.section-heading{border-bottom:4px solid var(--ink);margin-bottom:18px;padding-bottom:12px}.section-heading h2{letter-spacing:-.05em;margin:0;font-size:clamp(1.8rem,5vw,3rem)}.event-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.event-card{border:3px solid var(--ink);background:var(--paper);min-width:0;box-shadow:5px 5px 0 var(--ink);flex-direction:column;padding:20px;display:flex}.event-card--active{border-top:10px solid var(--green)}.event-card--upcoming{border-top:10px solid var(--yellow)}.event-card--ended{border-top:10px solid #8e887e}.event-card__top{justify-content:space-between;align-items:center;gap:10px;display:flex}.event-card h3{letter-spacing:-.035em;margin:18px 0 8px;font-size:1.45rem}.event-card>p{min-height:66px;color:var(--muted);margin:0 0 18px;font-family:Arial,sans-serif;font-size:.88rem;line-height:1.55}.event-stats{grid-template-columns:1fr 1fr;gap:8px;margin:auto 0 16px;display:grid}.event-stats div{border:2px solid var(--line);background:var(--white);padding:8px}.event-stats dt{color:var(--muted);text-transform:uppercase;font-family:Arial,sans-serif;font-size:.7rem}.event-stats dd{margin:2px 0 0;font-size:1.3rem;font-weight:1000}.event-card__timing{color:var(--muted);justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:16px;font-family:Arial,sans-serif;font-size:.75rem;display:flex}.event-card__timing strong{color:var(--ink);text-align:right}.event-empty{margin-top:30px}.event-detail-hero{border:4px solid var(--ink);background:var(--paper);box-shadow:8px 8px 0 var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px;margin-bottom:28px;padding:clamp(26px,5vw,50px);display:grid}.event-detail-hero h1{letter-spacing:-.07em;margin:0;font-size:clamp(2.5rem,7vw,5.2rem);line-height:.95}.event-detail-hero>div:first-child>p:last-child{max-width:680px;color:var(--muted);font-family:Arial,sans-serif;line-height:1.6}.event-detail-status{border:3px solid var(--ink);background:var(--yellow);min-width:190px;box-shadow:5px 5px 0 var(--ink);text-align:center;justify-items:center;gap:14px;padding:20px;display:grid}.event-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-bottom:28px;display:grid}.event-info-grid .panel{margin-top:0}.definition-list{gap:12px;display:grid}.definition-list div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:20px;padding-bottom:10px;font-family:Arial,sans-serif;display:flex}.definition-list span{color:var(--muted)}.definition-list strong{text-align:right}.event-stat-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.event-stat-row div{border:2px solid var(--line);background:var(--white);place-items:center;padding:12px 6px;display:grid}.event-stat-row strong{font-size:clamp(1.7rem,4vw,2.5rem)}.event-stat-row span{color:var(--muted);text-transform:uppercase;font-family:Arial,sans-serif;font-size:.72rem}.admin-login{max-width:560px;margin:6vh auto}.admin-heading{border-bottom:4px solid var(--ink);justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;padding-bottom:24px;display:flex}.admin-heading h1{letter-spacing:-.07em;margin:0;font-size:clamp(2.5rem,7vw,5rem);line-height:.95}.admin-heading>div>p:last-child{color:var(--muted);margin:10px 0 0;font-family:Arial,sans-serif}.admin-event-list{gap:12px;display:grid}.admin-event-card{border:2px solid var(--line);background:var(--white);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:20px;padding:15px;display:grid}.admin-event-card__main{min-width:0}.admin-event-card__main>p{color:var(--muted);margin:7px 0;font-family:Arial,sans-serif;font-size:.84rem}.admin-event-card__stats{gap:12px;display:flex}.admin-event-card__stats span{min-width:58px;color:var(--muted);text-transform:uppercase;justify-items:center;font-family:Arial,sans-serif;font-size:.68rem;display:grid}.admin-event-card__stats strong{color:var(--ink);font-size:1.25rem}.admin-event-card__actions{gap:8px;display:flex}.admin-event-card__actions .button{min-height:40px;padding:7px 10px;font-size:.72rem}.admin-form{gap:24px;display:grid}.admin-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.admin-textarea{resize:vertical;min-height:120px}.admin-form label>.fine-print{margin-top:10px;display:block}.source-presets{border-top:2px dashed var(--line);flex-wrap:wrap;gap:8px;padding-top:18px;display:flex}.source-presets .field-label{width:100%}.source-presets .button{min-height:40px;padding:7px 10px;font-size:.72rem}.admin-form>.button{justify-self:start}@media (max-width:800px){.site-header{position:static}.site-header__inner{flex-direction:column;align-items:stretch;gap:12px;min-height:0;padding:12px 0}.site-brand{align-self:center}.site-nav{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.site-nav__link{border-color:#15151540;min-height:40px;padding:7px 8px;font-size:.78rem}.page-hero{grid-template-columns:1fr;padding:28px 22px 34px}.page-hero:after{grid-row:1;width:126px;font-size:3rem}.section-grid,.course-layout,.rules-grid,.run-vault-card{grid-template-columns:1fr}.run-vault-card__actions{justify-content:flex-start}.assignment-card,.zero-hero{grid-template-columns:1fr}.zero-clock{justify-self:center;width:min(100%,420px)}.avenge-hero{grid-template-columns:1fr}.avenge-hero__poster{justify-self:center;width:min(250px,100%);min-height:215px}.avenge-main-grid,.avenge-archive-grid{grid-template-columns:1fr}.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.event-detail-hero{grid-template-columns:1fr}.event-detail-status{justify-self:start}.admin-event-card{grid-template-columns:1fr}.admin-event-card__stats,.admin-event-card__actions{justify-content:flex-start}.assignment-actions{border-top:2px dashed var(--line);border-left:0;padding-top:22px;padding-left:0}.course-layout .button{width:100%}.site-footer__inner{text-align:center;flex-direction:column;justify-content:center;padding:26px 0}}@media (max-width:520px){.site-main,.site-header__inner,.site-footer__inner{width:min(100% - 20px,1180px)}.site-main{padding-top:22px}.page-hero,.panel{box-shadow:4px 4px 0 var(--ink)}.display-title{font-size:clamp(2.35rem,14vw,3.4rem)}.hero-actions,.button-row{grid-template-columns:1fr;display:grid}.hero-actions .button,.button-row .button{width:100%}.panel__header{flex-direction:column;align-items:flex-start}.panel__body{padding:18px 15px}.tabs{gap:5px}.tab{padding:7px 4px;font-size:.69rem}.score-row{grid-template-columns:auto minmax(0,1fr)}.score-value{text-align:left;grid-column:2}.inline-form,.run-heading{grid-template-columns:1fr}.inline-form .button,.run-score{width:100%}.run-vault-card__actions{grid-template-columns:1fr 1fr;display:grid}.run-vault-card__actions .text-button{grid-column:1/-1}.confirm-dialog{box-shadow:4px 4px 0 var(--yellow);padding:22px 18px}.site-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.zero-hero{box-shadow:4px 4px 0 var(--ink);padding:25px 18px}.zero-clock{min-width:0}.zero-side-quest{display:grid}.zero-side-quest__button{width:100%}.hour-secured{align-items:flex-start}.hour-secured__check{width:58px;height:58px;font-size:1.8rem}.avenge-hero{box-shadow:4px 4px 0 var(--ink);padding:25px 18px}.avenge-hero__poster{min-height:190px;box-shadow:4px 4px 0 var(--ink)}.avenge-stat-strip{grid-template-columns:1fr}.avenge-stat-strip>div{border-bottom:2px solid #4c4c4c;border-right:0;padding:11px 15px}.avenge-stat-strip>div:last-child{border-bottom:0}.avenge-card{box-shadow:3px 3px 0 var(--ink);padding:16px 13px}.avenge-facts{gap:5px}.avenge-facts div{padding:7px 6px}.avenge-card__actions{grid-template-columns:1fr}.avenge-card__actions .button{width:100%}.event-feature{flex-direction:column;align-items:flex-start}.event-grid,.event-info-grid{grid-template-columns:1fr}.event-card>p{min-height:0}.event-detail-hero{box-shadow:4px 4px 0 var(--ink);padding:25px 18px}.event-detail-status{width:100%}.definition-list div{flex-direction:column;align-items:flex-start;gap:5px}.definition-list strong{text-align:left}.admin-heading{flex-direction:column;align-items:flex-start}.admin-form__grid{grid-template-columns:1fr}.admin-event-card__stats{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
