:root{--paper:#F5F4EE;--paper-raised:#FBFAF7;--paper-sunken:#EFEDE4;--manilla:#EBDBBC;--ink:#191817;--ink-soft:#46433E;--ink-muted:#78736B;--ink-faint:#A29C92;--line:rgba(25,24,23,0.12);--line-strong:rgba(25,24,23,0.22);--clay:#CC785C;--clay-deep:#B35C40;--clay-wash:rgba(204,120,92,0.12);--kraft:#D4A27F;--amber:#E08C3E;--amber-wash:rgba(224,140,62,0.14);--critical:#B4322A;--high:#C2681C;--medium:#A8871F;--low:#4C7A55;--ok:#3F6E4A;--radius:14px;--radius-sm:9px;--maxw:1080px;--shadow:0 1px 2px rgba(25,24,23,0.05),0 8px 24px -12px rgba(25,24,23,0.14)}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:ui-sans-serif,-apple-system,SF Pro Text,Inter,Segoe UI,system-ui,sans-serif;font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:var(--clay-deep);text-decoration:none}a:hover{text-decoration:underline}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}main{position:relative;z-index:1}.glow{position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(52rem 30rem at 12% -8%,rgba(224,140,62,.16),transparent 62%),radial-gradient(44rem 28rem at 92% 2%,rgba(204,120,92,.14),transparent 62%)}.nav{justify-content:space-between;padding:20px 0;gap:16px;flex-wrap:wrap}.brand,.nav{display:flex;align-items:center}.brand{gap:11px;font-weight:700;letter-spacing:-.015em;color:var(--ink)}.brand-mark{width:30px;height:30px;border-radius:8px;background:linear-gradient(140deg,var(--amber),var(--clay));display:grid;place-items:center;font-size:15px;font-weight:800;color:#fff}.nav-links{display:flex;gap:20px;align-items:center;font-size:14.5px}.nav-links a{color:var(--ink-muted)}.nav-links a:hover{color:var(--ink);text-decoration:none}.nav-links a.admin-link{color:var(--clay-deep);font-weight:600}.hero{padding:48px 0 36px;text-align:center}.eyebrow{display:inline-flex;align-items:center;gap:9px;padding:6px 14px;border-radius:999px;border:1px solid var(--line-strong);background:var(--amber-wash);font-size:13px;color:var(--ink-soft);margin-bottom:24px}.dot{width:7px;height:7px;border-radius:50%;background:var(--ok);animation:pulse 2.2s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(63,110,74,.5)}70%{box-shadow:0 0 0 8px rgba(63,110,74,0)}to{box-shadow:0 0 0 0 rgba(63,110,74,0)}}h1{font-size:clamp(38px,6.2vw,64px);line-height:1.05;letter-spacing:-.035em;margin:0 0 18px;font-weight:700}.grad{background:linear-gradient(120deg,var(--amber),var(--clay-deep));-webkit-background-clip:text;background-clip:text;color:transparent}.sub{font-size:clamp(16px,2.1vw,19px);color:var(--ink-soft);max-width:640px;margin:0 auto 30px}.cta-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:9px;padding:12px 24px;border-radius:var(--radius-sm);font-weight:600;font-size:15px;cursor:pointer;border:1px solid transparent;font-family:inherit;transition:transform .14s ease,background .14s ease,box-shadow .14s ease}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn-primary{background:var(--clay);color:#fff;box-shadow:var(--shadow)}.btn-primary:hover{background:var(--clay-deep)}.btn-ghost{background:var(--paper-raised);border-color:var(--line-strong);color:var(--ink)}.btn-ghost:hover{background:var(--paper-sunken)}.btn-sm{padding:8px 15px;font-size:13.5px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.countdown{display:flex;gap:10px;justify-content:center;margin:34px 0 6px;flex-wrap:wrap}.cd-cell{min-width:78px;padding:12px 8px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--paper-raised)}.cd-num{font-size:26px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em}.cd-label{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--ink-faint)}.timeline{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px;gap:14px}.phase{position:relative;padding:22px;border-radius:var(--radius);border:1px solid var(--line);background:var(--paper-raised)}.phase.is-now{border-color:var(--clay);background:linear-gradient(160deg,var(--clay-wash),transparent)}.phase.is-done{opacity:.62}.phase-when{font-size:12.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin-bottom:6px}.phase-name{font-size:18px;font-weight:650;margin-bottom:7px}.phase-name .pill{font-size:11px;text-transform:uppercase;letter-spacing:.06em;background:var(--clay);color:#fff;padding:2px 8px;border-radius:999px;margin-left:8px;vertical-align:middle}.phase p{margin:0;font-size:14.5px;color:var(--ink-muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;margin:38px 0}.stat{padding:17px;border-radius:var(--radius);border:1px solid var(--line);background:var(--paper-raised);text-align:center}.stat-num{font-size:26px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-label{font-size:12.5px;color:var(--ink-faint)}section{padding:50px 0}h2{font-size:clamp(25px,3.3vw,33px);letter-spacing:-.025em;margin:0 0 10px;font-weight:700}.section-sub{color:var(--ink-muted);margin:0 0 28px;max-width:640px}.cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px;gap:14px}.card{padding:23px;border-radius:var(--radius);border:1px solid var(--line);background:var(--paper-raised);transition:border-color .16s,box-shadow .16s}.card:hover{border-color:var(--line-strong);box-shadow:var(--shadow)}.step-n{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--clay);color:#fff;font-weight:700;font-size:14px;margin-bottom:12px}.card h3{margin:0 0 6px;font-size:17px;font-weight:650}.card p{margin:0;color:var(--ink-muted);font-size:14.5px}.card code,code{background:var(--paper-sunken);color:var(--clay-deep);padding:2px 6px;border-radius:5px;font-size:13px;font-family:ui-monospace,SF Mono,Menlo,monospace}.prizes{display:grid;grid-template-columns:1.15fr 1fr 1fr;grid-gap:14px;gap:14px}.prize{padding:25px;border-radius:var(--radius);border:1px solid var(--line);background:var(--paper-raised)}.prize.headline{border-color:rgba(204,120,92,.45);background:linear-gradient(160deg,var(--amber-wash),var(--clay-wash))}.prize-amount{font-size:35px;font-weight:750;letter-spacing:-.03em;margin-bottom:3px}.prize-label{font-size:12.5px;text-transform:uppercase;letter-spacing:.09em;color:var(--ink-faint);margin-bottom:10px}.prize p{margin:0;color:var(--ink-muted);font-size:14.5px}.scoring{width:100%;border-collapse:collapse;font-size:14.5px}.scoring td,.scoring th{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line)}.scoring th{color:var(--ink-faint);font-weight:600;font-size:12.5px;text-transform:uppercase;letter-spacing:.07em}.scoring td:last-child,.scoring th:last-child{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sev{font-weight:700}.sev.CRITICAL{color:var(--critical)}.sev.HIGH{color:var(--high)}.sev.MEDIUM{color:var(--medium)}.sev.LOW{color:var(--low)}.board{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper-raised)}.row{display:grid;grid-template-columns:46px 1fr auto auto;grid-gap:14px;gap:14px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line)}.row:last-child{border-bottom:none}.row:hover{background:var(--paper-sunken)}.rank{font-size:17px;font-weight:700;color:var(--ink-faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.row:first-child .rank{color:var(--clay)}.who{display:flex;align-items:center;gap:11px;min-width:0}.avatar{width:33px;height:33px;border-radius:50%;border:1px solid var(--line);flex-shrink:0;background:var(--paper-sunken)}.who-text{min-width:0}.who-name{font-weight:620;font-size:15px}.who-repo{font-size:13px;color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chips{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.chip{font-size:11.5px;padding:3px 9px;border-radius:999px;border:1px solid var(--line);color:var(--ink-muted);white-space:nowrap;background:var(--paper)}.chip.merged{border-color:rgba(63,110,74,.4);color:var(--ok);background:rgba(63,110,74,.09)}.pts{font-size:19px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:62px;text-align:right}.empty{padding:42px 24px;text-align:center;color:var(--ink-faint)}.form{display:grid;grid-gap:13px;gap:13px;max-width:560px}.field label{display:block;font-size:13.5px;color:var(--ink-soft);margin-bottom:6px;font-weight:550}.field input,.field textarea{width:100%;padding:11px 13px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--paper-raised);color:var(--ink);font-size:15px;font-family:inherit}.field textarea{min-height:110px;resize:vertical;line-height:1.55}.field input:focus,.field textarea:focus{outline:none;border-color:var(--clay);box-shadow:0 0 0 3px var(--clay-wash)}.field .hint{font-size:12.5px;color:var(--ink-faint);margin-top:5px}.pw-wrap{position:relative}.pw-wrap input{padding-right:44px}.pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:7px;color:var(--ink-faint);border-radius:7px;line-height:0}.pw-eye:hover{color:var(--ink);background:var(--paper-sunken)}.msg{padding:12px 14px;border-radius:var(--radius-sm);font-size:14.5px}.msg.error{border:1px solid rgba(180,50,42,.35);background:rgba(180,50,42,.08);color:#8E241D}.msg.ok{border:1px solid rgba(63,110,74,.35);background:rgba(63,110,74,.09);color:#2F5738}.msg.info{border:1px solid var(--line-strong);background:var(--paper-sunken);color:var(--ink-soft)}.auth-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);padding:24px;max-width:460px}.auth-tabs{display:flex;gap:4px;margin-bottom:18px;background:var(--paper-sunken);padding:4px;border-radius:var(--radius-sm)}.auth-tab{flex:1 1;padding:8px;border:none;background:none;font:inherit;font-size:14px;cursor:pointer;border-radius:7px;color:var(--ink-muted)}.auth-tab.active{background:var(--paper-raised);color:var(--ink);font-weight:600;box-shadow:var(--shadow)}.auth-alt{margin-top:14px;font-size:13.5px;color:var(--ink-muted)}.linkish{background:none;border:none;padding:0;font:inherit;color:var(--clay-deep);cursor:pointer;text-decoration:underline}.userbar{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink-muted)}.userbar strong{color:var(--ink);font-weight:600}.threads{display:grid;grid-gap:11px;gap:11px}.thread{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);padding:17px 19px}.thread-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;flex-wrap:wrap}.thread-title{font-size:16.5px;font-weight:650;margin:0}.thread-meta{font-size:12.5px;color:var(--ink-faint);white-space:nowrap}.thread-body{margin:8px 0 0;color:var(--ink-soft);font-size:14.5px;white-space:pre-wrap}.thread-actions{margin-top:11px;display:flex;gap:10px;align-items:center}.replies{margin-top:13px;border-top:1px solid var(--line);padding-top:12px;display:grid;grid-gap:11px;gap:11px}.reply{padding-left:13px;border-left:2px solid var(--manilla)}.reply.by-admin{border-left-color:var(--clay)}.reply-meta{font-size:12.5px;color:var(--ink-faint)}.reply-meta .badge{background:var(--clay);color:#fff;padding:1px 7px;border-radius:999px;font-size:10.5px;margin-left:6px;text-transform:uppercase;letter-spacing:.05em}.reply p{margin:3px 0 0;font-size:14.5px;color:var(--ink-soft);white-space:pre-wrap}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px;margin-bottom:26px}.atable{width:100%;border-collapse:collapse;font-size:14px;background:var(--paper-raised);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.atable td,.atable th{padding:10px 13px;text-align:left;border-bottom:1px solid var(--line)}.atable th{background:var(--paper-sunken);font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-weight:600}.atable tr:last-child td{border-bottom:none}.stage{font-size:11.5px;padding:2px 9px;border-radius:999px;border:1px solid var(--line);white-space:nowrap}.stage.submitted{border-color:rgba(63,110,74,.4);background:rgba(63,110,74,.1);color:var(--ok)}.stage.registered{border-color:var(--line-strong);background:var(--paper-sunken);color:var(--ink-muted)}.stage.admin{border-color:var(--clay);background:var(--clay-wash);color:var(--clay-deep)}.stage.banned{border-color:rgba(180,50,42,.45);background:rgba(180,50,42,.1);color:var(--critical);text-decoration:line-through}.rules{display:grid;grid-gap:10px;gap:10px}.rule{display:flex;gap:13px;padding:15px 17px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-raised)}.rule-mark{color:var(--clay);flex-shrink:0;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rule p{margin:0;font-size:14.5px;color:var(--ink-muted)}.rule strong{color:var(--ink);font-weight:620}footer{border-top:1px solid var(--line);margin-top:40px;padding:28px 0 44px;color:var(--ink-faint);font-size:13.5px}.footer-inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}@media (max-width:900px){.cards,.prizes,.timeline{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.row{grid-template-columns:34px 1fr auto}.chips{display:none}.nav-links{gap:14px;font-size:13.5px}section{padding:38px 0}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.site-head{border-bottom:1px solid var(--line);background:var(--paper-raised);position:-webkit-sticky;position:sticky;top:0;z-index:20}.site-head-top{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;gap:16px;flex-wrap:wrap}.site-head-right{display:flex;align-items:center;gap:14px;font-size:14px}.who-chip{color:var(--ink-muted);font-size:13.5px}.tabs{border-top:1px solid var(--line)}.tabs-inner{display:flex;gap:4px;padding:0 24px;overflow-x:auto}.tab{padding:12px 16px;font-size:14.5px;color:var(--ink-muted);border-bottom:2px solid transparent;white-space:nowrap;font-weight:550}.tab:hover{color:var(--ink);text-decoration:none;background:var(--paper-sunken)}.tab.is-active{color:var(--clay-deep);border-bottom-color:var(--clay)}.page{padding:34px 24px 64px}.page-narrow{max-width:820px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px;flex-wrap:wrap}.page-title{font-size:clamp(26px,3.6vw,36px);letter-spacing:-.028em;margin:0 0 6px;font-weight:700}.page-sub{color:var(--ink-muted);margin:0 0 4px;max-width:680px;font-size:15px}.section-h{font-size:22px;font-weight:650;margin:36px 0 10px;letter-spacing:-.02em}.back-link{display:inline-block;font-size:14px;margin-bottom:14px}.back-link,.muted{color:var(--ink-muted)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised)}.table-wrap .scoring{margin:0}.table-wrap .scoring td,.table-wrap .scoring th{padding:12px 16px}.toolbar{gap:12px;flex-wrap:wrap;margin:18px 0 12px}.search,.toolbar{display:flex;align-items:center}.search{gap:9px;flex:1 1 280px;min-width:220px;padding:9px 13px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--paper-raised);color:var(--ink-faint)}.search:focus-within{border-color:var(--clay);box-shadow:0 0 0 3px var(--clay-wash)}.search input{flex:1 1;border:none;background:none;font:inherit;font-size:14.5px;color:var(--ink);outline:none}.chip-group{display:flex;gap:6px}.filter-chip{padding:7px 14px;border-radius:999px;border:1px solid var(--line-strong);background:var(--paper-raised);font:inherit;font-size:13.5px;color:var(--ink-muted);cursor:pointer}.filter-chip:hover{background:var(--paper-sunken);color:var(--ink)}.filter-chip.is-on{background:var(--clay);border-color:var(--clay);color:#fff;font-weight:600}.sort{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-muted)}.sort select{padding:8px 11px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--paper-raised);font:inherit;font-size:13.5px;color:var(--ink);cursor:pointer}.result-count{font-size:13px;color:var(--ink-faint);margin-bottom:12px}.thread-list{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);overflow:hidden}.thread-row{display:flex;align-items:flex-start;gap:18px;padding:16px 20px;border-bottom:1px solid var(--line);color:inherit}.thread-row:last-child{border-bottom:none}.thread-row:hover{background:var(--paper-sunken);text-decoration:none}.thread-main{flex:1 1;min-width:0}.thread-row-title{font-size:16px;font-weight:650;color:var(--ink);display:flex;align-items:center;gap:9px;flex-wrap:wrap}.thread-row-excerpt{font-size:14px;color:var(--ink-muted);margin-top:4px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.thread-row-meta{font-size:12.5px;color:var(--ink-faint);margin-top:7px}.thread-count{text-align:center;min-width:56px;flex-shrink:0}.thread-count-n{font-size:20px;font-weight:700;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.thread-count-l{font-size:11.5px;color:var(--ink-faint)}.empty-card{padding:44px 24px;text-align:center;color:var(--ink-faint)}.badge{background:var(--clay);color:#fff;padding:2px 9px;border-radius:999px;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;font-weight:650}.thread-page-title{font-size:clamp(23px,3vw,31px)}.posts{display:flex;flex-direction:column;gap:2px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper-raised)}.post{display:flex;gap:16px;padding:20px 22px;border-bottom:1px solid var(--line)}.post:last-child{border-bottom:none}.post.is-lead{background:var(--paper-sunken)}.post.by-admin{border-left:3px solid var(--clay)}.post-side{flex-shrink:0}.avatar-initial{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--manilla);color:var(--ink-soft);font-weight:700;font-size:15px}.avatar-initial.is-admin{background:linear-gradient(140deg,var(--amber),var(--clay));color:#fff}.post-body{flex:1 1;min-width:0}.post-meta{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-muted);margin-bottom:8px;flex-wrap:wrap}.post-meta strong{color:var(--ink);font-weight:620}.dot-sep{color:var(--ink-faint)}.reply-box{margin-top:22px}.ask-form{padding:20px;margin-bottom:20px;display:grid;grid-gap:14px;gap:14px}.row-actions{display:flex;gap:9px}.signin-nudge{padding:20px;margin-bottom:20px}.signin-nudge p{margin:0 0 14px;color:var(--ink-muted);font-size:14.5px}.hint-inline{font-size:12px;color:var(--ink-faint);font-weight:400}.steps{padding-left:22px;margin:20px 0 26px;display:grid;grid-gap:12px;gap:12px;color:var(--ink-muted);font-size:15px}.steps strong{color:var(--ink)}.md{font-size:15px;line-height:1.68;color:var(--ink-soft)}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:0 0 12px}.md h1,.md h2,.md h3{color:var(--ink);font-weight:680;letter-spacing:-.015em;margin:20px 0 8px;line-height:1.3}.md h1{font-size:21px}.md h2{font-size:18.5px}.md h3{font-size:16.5px}.md strong{color:var(--ink);font-weight:650}.md ol,.md ul{margin:0 0 12px;padding-left:22px}.md li{margin:4px 0}.md blockquote{margin:0 0 12px;padding:2px 0 2px 14px;border-left:3px solid var(--manilla);color:var(--ink-muted)}.md code{color:var(--clay-deep);padding:2px 6px;border-radius:5px;font-size:13px;font-family:ui-monospace,SF Mono,Menlo,monospace}.md code,.md pre{background:var(--paper-sunken)}.md pre{padding:14px 16px;border-radius:var(--radius-sm);overflow-x:auto;margin:0 0 12px;border:1px solid var(--line)}.md pre code{background:none;padding:0;color:var(--ink);font-size:13px}.md hr{border:none;border-top:1px solid var(--line);margin:18px 0}.md a{color:var(--clay-deep);text-decoration:underline}.md-table-wrap{overflow-x:auto;margin:0 0 14px;border:1px solid var(--line);border-radius:var(--radius-sm)}.md table{border-collapse:collapse;width:100%;font-size:14px}.md td,.md th{padding:9px 13px;text-align:left;border-bottom:1px solid var(--line)}.md th{background:var(--paper-sunken);font-weight:620;color:var(--ink);font-size:12.5px;text-transform:uppercase;letter-spacing:.05em}.md tr:last-child td{border-bottom:none}.md img{max-width:100%;height:auto;border-radius:var(--radius-sm)}@media (max-width:560px){.site-head-top{padding:12px 20px}.tabs-inner{padding:0 12px}.tab{padding:11px 12px;font-size:14px}.page{padding:24px 20px 48px}.thread-row{padding:14px 16px;gap:12px}.post{padding:16px;gap:12px}}