@font-face{font-family:Trench;src:url(assets/fonts/headline.woff2) format('woff2');font-display:swap}@font-face{font-family:Dispatch;src:url(assets/fonts/body.woff2) format('woff2');font-display:swap}
:root{color-scheme:dark;--paper:#e2d3b4;--ink:#211c15;--red:#761c15;--muted:#b6a98d;font-family:Dispatch,serif;background:#11110e;color:var(--paper);scrollbar-color:#897658 #11110e}*{box-sizing:border-box}body{margin:0}::selection{background:#cfb97d;color:#171710}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer;min-height:48px;padding:12px 20px;background:var(--paper);color:var(--ink);border:0}button:hover{background:#f2e5c9}button:disabled{cursor:wait;opacity:.6}input{width:100%;min-height:48px;border:1px solid #6f644e;border-radius:0;padding:12px;background:#161712;color:#f2e6cc;caret-color:#f2e6cc}input:focus-visible,button:focus-visible,a:focus-visible,.table-scroll:focus-visible{outline:3px solid #c1dcbd;outline-offset:5px}label{display:block;margin-bottom:10px}h1,h2{font-family:Trench,sans-serif;font-weight:400;line-height:1.02;text-wrap:balance;letter-spacing:-.02em}h1{font-size:clamp(3rem,7vw,6rem);margin:0 0 24px}h2{font-size:clamp(2.5rem,5vw,4rem);margin:0 0 24px}p{line-height:1.65;max-width:70ch}header,footer{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:28px 0}header a:first-child{font-family:Trench;text-decoration:none;font-size:22px}main{isolation:isolate;position:relative;max-width:1080px;padding:0 40px;margin:auto}main:before{content:'';position:fixed;inset:0;z-index:-1;background:linear-gradient(90deg,#11110ef5,#11110ecf),url(assets/trench-left.webp) center/cover}section{padding:56px 0 72px}.briefing{max-width:700px}form{margin:28px 0}form button,#ready{width:100%;margin-top:12px}#identity-note,.instructions{font-size:14px;color:var(--muted)}.instructions{margin-top:36px}.quiet{background:transparent;color:var(--paper);padding:12px 0;text-decoration:underline;text-underline-offset:5px}.quiet:hover{background:transparent;color:#fff2d7}.invite{margin-top:28px}.invite>div{display:flex;gap:12px}.invite input{font-size:14px}.invite button{white-space:nowrap}ol{padding:0;list-style:none;margin:28px 0}li{display:flex;justify-content:space-between;gap:12px;min-height:58px;padding:16px 0;border-bottom:1px solid #514a3b;font-variant-numeric:tabular-nums}li span:last-child{color:#c1dcbd}progress{width:100%;height:5px;accent-color:#c1dcbd}#preparation{font-size:14px}#countdown{font-family:Trench;font-size:40px;text-align:center;font-variant-numeric:tabular-nums}#status{min-height:26px;color:#f1bfaa}#leaderboard{border-top:1px solid #514a3b}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}th,td{padding:16px 14px 16px 0;text-align:left;border-bottom:1px solid #514a3b;white-space:nowrap}th{font-size:14px;color:var(--muted)}footer{font-size:14px;color:var(--muted)}#game{position:fixed;inset:0;width:100%;height:100%;border:0}body.playing{overflow:hidden}body.playing #lobby{display:none}#run-ended{position:fixed;inset:auto 0 0;padding:28px max(24px,calc((100vw - 700px)/2));background:#11110ef5}#run-ended button{margin-right:20px}#run-ended h2{font-size:2.5rem}body.playing #run-ended a{display:inline-block;margin-top:18px}[hidden]{display:none!important}@media(max-width:600px){main{padding:0 24px}header{align-items:flex-start}header a:first-child{font-size:18px;max-width:125px}section{padding-top:36px}.invite>div{flex-wrap:wrap}.invite button{width:100%}footer{align-items:flex-start;flex-direction:column}h1{font-size:3.5rem}th,td{padding-right:18px}#run-ended{padding:24px}#run-ended button{width:100%}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

body.has-squad header{padding:16px 0}body.has-squad .briefing{padding:20px 0 40px}body.has-squad h1{font-size:clamp(2.5rem,5vw,4rem);margin-bottom:16px}body.has-squad #description{margin:0}body.has-squad .invite{margin-top:16px}body.has-squad ol{margin:16px 0}body.has-squad li{min-height:48px;padding:12px 0}body.has-squad #preparation{margin:12px 0}body.has-squad #ready{margin-top:0}body.has-squad .instructions{margin-top:16px}

body.leaderboard-only .briefing{display:none}body.leaderboard-only #leaderboard{border-top:0}
header a,footer a,#run-ended a{display:inline-flex;align-items:center;min-height:44px}
