@font-face{font-family:"DM Sans";src:url("/fonts/dm-sans-latin.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url("/fonts/barlow-condensed-800.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"Archivo Black";src:url("/fonts/archivo-black.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}

:root{
  --paper:#f1f1ee;--surface:#fff;--ink:#0b0b0b;--muted:#666662;--faint:#9a9a94;
  --line:#d9d9d3;--line-strong:#bdbdb5;--red:#e52b20;--red-dark:#a91610;
  --red-soft:#f7d9d6;--cream:#fffdf5;--body:"DM Sans",Arial,sans-serif;
  --display:"Archivo Black",Impact,sans-serif;--condensed:"Barlow Condensed",Impact,sans-serif;
  --shadow:0 18px 48px rgba(11,11,11,.1);--accent:var(--red);
  --accent-dark:var(--red-dark);--accent-soft:var(--red-soft);--accent-faint:#fff3f1
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait}
::selection{background:var(--red);color:#fff}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid rgba(229,43,32,.45);outline-offset:3px}
.wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;z-index:100;top:12px;left:12px;padding:10px 15px;background:var(--red);color:#fff;transform:translateY(-160%)}
.skip-link:focus{transform:translateY(0)}
.ph-icon{display:inline-block;width:1em;height:1em;flex:0 0 auto;background:currentColor;-webkit-mask:var(--icon) center/contain no-repeat;mask:var(--icon) center/contain no-repeat}
.ph-arrow-left{--icon:url("/icons/arrow-left.svg")}.ph-arrow-right{--icon:url("/icons/arrow-right.svg")}.ph-arrow-up-right{--icon:url("/icons/arrow-up-right.svg")}
.ph-caret-left{--icon:url("/icons/caret-left.svg")}.ph-caret-right{--icon:url("/icons/caret-right.svg")}.ph-copy{--icon:url("/icons/copy.svg")}
.ph-download-simple{--icon:url("/icons/download-simple.svg")}
.ph-magnifying-glass{--icon:url("/icons/magnifying-glass.svg")}.ph-scales{--icon:url("/icons/scales.svg")}.ph-trophy{--icon:url("/icons/trophy.svg")}

.site-header{position:relative;z-index:10;border-bottom:4px solid var(--ink);background:var(--surface)}
.site-header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:inline-flex;align-items:center;gap:11px}
.brand-badge{position:relative;width:58px;height:48px;overflow:hidden;display:block;background:var(--ink);color:#fff}
.brand-badge>span{position:absolute;z-index:2;top:3px;left:5px;color:#fff;font-family:var(--condensed);font-size:13px;line-height:1;letter-spacing:.03em}
.brand-badge img{position:absolute;right:-5px;bottom:-7px;width:45px;height:45px;object-fit:contain;transform:rotate(7deg)}
.brand-name{display:flex;flex-direction:column;font-family:var(--condensed);font-size:19px;line-height:.88;letter-spacing:-.025em;text-transform:uppercase}
.site-header nav{display:flex;align-items:center;align-self:stretch;gap:30px;color:var(--muted);font-size:14px;font-weight:700}
.site-header nav a{position:relative;display:flex;align-items:center}
.site-header nav a:hover,.site-header nav a.active{color:var(--ink)}
.site-header nav a.active::after{content:"";position:absolute;left:0;right:0;bottom:-29px;height:4px;background:var(--red)}

.weigh-in-stage{overflow:hidden;background:var(--ink);color:#fff}
.weigh-in-grid{min-height:500px;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.72fr)}
.weigh-in-copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;padding:62px 72px 62px 0}
.hero-kicker{color:#ff6257;font-size:15px;font-weight:700}
.weigh-in-copy h1{max-width:680px;margin-top:12px;font-family:var(--body);font-size:clamp(48px,5.25vw,68px);font-weight:780;line-height:.98;letter-spacing:-.06em}
.hero-deck{max-width:640px;margin-top:24px;color:rgba(255,255,255,.68);font-size:17px;line-height:1.6}
.weigh-in-copy .weigh-form{max-width:640px;margin-top:28px}
.weigh-in-visual{position:relative;isolation:isolate;min-height:100%;overflow:hidden;display:grid;place-items:center;background:var(--red)}
.weigh-in-visual::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.17;background:repeating-linear-gradient(135deg,transparent 0 24px,#000 24px 26px)}
.hero-mascot{width:min(310px,86%);height:auto;object-fit:contain;filter:drop-shadow(0 24px 0 rgba(0,0,0,.16));transform:rotate(-3deg);animation:glove-in 560ms cubic-bezier(.16,.75,.24,1) both}
@keyframes glove-in{from{opacity:0;transform:translateY(18px) rotate(-8deg) scale(.94)}to{opacity:1;transform:translateY(0) rotate(-3deg) scale(1)}}
.winner-stamp{position:absolute;right:20px;bottom:20px;min-width:118px;padding:8px 11px 10px;background:var(--ink);color:#fff;font-family:var(--condensed);line-height:.82;text-transform:uppercase;transform:rotate(-2deg)}
.winner-stamp span{display:block;font-size:13px;letter-spacing:.08em}.winner-stamp strong{display:block;margin-top:4px;font-size:36px}

.weigh-form{width:100%}
.input-row{width:100%;min-height:68px;display:flex;gap:6px;padding:6px;border:2px solid transparent;background:var(--surface);transition:border-color 150ms ease}
.input-row:focus-within{border-color:#ff6257}
.input-row input{min-width:0;flex:1 1 auto;padding:0 17px;border:0;outline:0;background:transparent;color:var(--ink);font-size:17px}
.input-row input::placeholder{color:var(--faint)}
.input-row button,.solid-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;background:var(--red);color:#fff;font-weight:780;transition:background 150ms ease,transform 150ms ease}
.input-row button{min-width:184px;padding:0 22px}.input-row button:hover,.solid-button:hover{background:#c91d15;transform:translateY(-1px)}
.input-row button .ph-icon{width:19px;height:19px}
.form-note{min-height:20px;margin-top:10px;color:var(--muted);font-size:12px}
.weigh-in-copy .form-note{color:rgba(255,255,255,.55)}.form-note.is-error,.weigh-in-copy .form-note.is-error{color:#ff8178;font-weight:700}

.ranking-section{padding:72px 0 96px}.ranking-inner{max-width:1180px}
.ranking-header{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;margin-bottom:28px}
.ranking-header h2{font-family:var(--body);font-size:clamp(38px,4.5vw,52px);font-weight:780;line-height:1;letter-spacing:-.055em}
.ranking-header>div>p:last-child{margin-top:12px;color:var(--muted);font-size:14px}
.search-form{width:min(290px,100%);height:48px;display:flex;align-items:center;border-bottom:2px solid var(--ink);background:transparent}
.search-form input{min-width:0;height:100%;flex:1 1 auto;padding:0 6px;border:0;outline:0;background:transparent;color:var(--ink);font-size:14px}
.search-form input::placeholder{color:var(--faint)}.search-form button{width:46px;height:46px;display:grid;place-items:center;border:0;background:transparent;color:var(--ink)}
.search-form button .ph-icon{width:18px;height:18px}
.ranking-board{border:2px solid var(--ink);background:var(--surface)}
.ranking-columns,.ranking-card-link{display:grid;grid-template-columns:82px minmax(240px,1fr) 174px 230px 24px;align-items:center;gap:22px}
.ranking-columns{min-height:44px;padding:0 22px;background:var(--ink);color:rgba(255,255,255,.62);font-family:var(--condensed);font-size:12px;letter-spacing:.07em;text-transform:uppercase}
.ranking-list{margin:0;padding:0;list-style:none}.ranking-card{position:relative;background:var(--surface);transition:background 140ms ease}
.ranking-card+.ranking-card{border-top:1px solid var(--line)}.ranking-card:hover{background:#f7f7f4}
.ranking-card.is-leader::before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--red)}
.ranking-card-link{min-height:104px;padding:17px 22px}.rank-cell{min-width:0}
.card-rank{display:block;font-family:var(--condensed);font-size:38px;line-height:.8;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.rank-cell>span{display:block;margin-top:8px;color:var(--red-dark);font-size:10px;font-weight:800;text-transform:uppercase}
.card-site{min-width:0}.card-site h3{overflow:hidden;font-size:20px;line-height:1.2;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}
.card-site>p,.site-path{display:block;margin-top:4px;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.site-path{margin-top:1px;color:var(--faint);font-size:10px}
.card-weight{font-family:var(--condensed);font-size:30px;line-height:1;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.card-weight span{color:var(--muted);font-family:var(--body);font-size:11px;font-weight:800;letter-spacing:0}
.card-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 14px;color:var(--muted);font-size:11px}
.card-meta b{color:var(--ink);font-weight:750}.card-meta time{grid-column:1/-1;color:var(--faint)}
.ranking-card-link>.ph-icon{width:18px;height:18px;color:var(--faint);transition:color 140ms ease,transform 140ms ease}
.ranking-card:hover .ranking-card-link>.ph-icon{color:var(--red);transform:translate(2px,-2px)}
.rankings-footer{min-height:68px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;color:var(--muted);font-size:13px}
.rankings-footer>a{justify-self:end;display:inline-flex;align-items:center;gap:7px;color:var(--ink);font-weight:700}
.pagination{display:flex;align-items:center;justify-content:center;gap:16px}.pagination a{display:inline-flex;align-items:center;gap:5px;font-weight:700}
.empty-state{padding:72px 24px;border:2px solid var(--ink);background:var(--surface);text-align:center}
.empty-state>span{color:var(--red);font-family:var(--condensed);font-size:15px}.empty-state h3{margin-top:8px;font-family:var(--display);font-size:28px;text-transform:uppercase}
.empty-state p{margin:8px auto 20px;color:var(--muted)}.empty-state a{color:var(--red-dark);font-weight:750}

.back-link{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;font-weight:700}.back-link:hover{color:var(--ink)}
.scorecard-page,.rules-page{min-height:70vh}.scorecard-page{padding:46px 0 90px}.scorecard-wrap{max-width:1040px}
.result-ticket{margin-top:28px;overflow:hidden;border:2px solid var(--ink);background:var(--surface)}
.ticket-main{display:grid;grid-template-columns:minmax(0,1fr) 340px;min-height:350px}
.ticket-contender{min-width:0;padding:34px 40px 40px;background:var(--ink);color:#fff}
.ticket-brandline{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:13px;border-bottom:1px solid rgba(255,255,255,.23);color:rgba(255,255,255,.58);font-size:11px;font-weight:700}
.ticket-label{margin-top:38px;color:#ff6a60;font-size:14px;font-weight:720}
.ticket-contender h1{margin-top:7px;overflow-wrap:anywhere;font-size:clamp(44px,6vw,68px);font-weight:780;line-height:.95;letter-spacing:-.06em}
.ticket-page-title{max-width:590px;margin-top:14px;color:rgba(255,255,255,.62);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ticket-url{max-width:100%;margin-top:28px;display:inline-flex;align-items:center;gap:7px;color:#fff;font-size:13px;font-weight:700;text-decoration:underline;text-decoration-color:rgba(255,255,255,.35);text-underline-offset:4px}
.ticket-url .ph-icon{width:15px;height:15px}
.ticket-weight{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:34px;background:var(--red);color:#fff}
.ticket-weight>span{font-size:13px;font-weight:720}.ticket-weight>div{display:flex;align-items:baseline;gap:9px}
.ticket-weight strong{font-family:var(--condensed);font-size:clamp(86px,10vw,124px);line-height:.72;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.ticket-weight b{font-size:17px}.ticket-weight p{font-size:12px;color:rgba(255,255,255,.7)}
.ticket-stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ink)}
.ticket-stats>div{min-width:0;min-height:92px;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:18px 22px}
.ticket-stats>div+div{border-left:1px solid var(--line)}.ticket-stats span{color:var(--muted);font-size:11px}.ticket-stats strong{font-size:16px;font-variant-numeric:tabular-nums;line-height:1.25;overflow-wrap:anywhere}
.scorecard-actions{min-height:62px;display:flex;align-items:center;gap:10px;margin-top:18px}.download-button,.secondary-button{height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:13px;font-weight:720}
.download-button{border-color:var(--red);background:var(--red);color:#fff}.download-button:hover{background:#c91d15}.secondary-button:hover{border-color:var(--ink)}
.download-button .ph-icon,.secondary-button .ph-icon{width:17px;height:17px}.copy-status{color:var(--muted);font-size:12px}
.scorecard-method{max-width:740px;color:var(--muted);font-size:12px;line-height:1.6}.scorecard-method a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.redirect-note{margin-top:28px;padding:13px 16px;border-left:4px solid var(--red);background:var(--surface);color:var(--muted);font-size:13px}
.redirect-note a{color:var(--red-dark);text-decoration:underline;text-underline-offset:3px}
.scorecard-after{margin-top:58px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);border-top:2px solid var(--ink)}
.record-section{padding:34px 40px 0 0}.record-section header{display:flex;align-items:baseline;justify-content:space-between;gap:18px}.record-section h2,.rescan-section h2{font-size:24px;letter-spacing:-.035em}.record-section header span{color:var(--muted);font-size:11px}
.history-list{margin-top:20px}.history-row{min-height:66px;display:grid;grid-template-columns:minmax(150px,1fr) auto 100px;align-items:center;gap:20px;border-top:1px solid var(--line);font-size:13px}
.history-row time{display:flex;flex-direction:column;font-weight:650}.history-row time span,.history-row>span{color:var(--muted);font-size:11px}.history-row>strong{font-size:15px;font-variant-numeric:tabular-nums}
.rescan-section{padding:34px 0 0 40px;border-left:1px solid var(--line)}.rescan-section>p{margin:8px 0 22px;color:var(--muted);font-size:13px}
.weigh-form.compact .input-row{min-height:54px;display:grid;grid-template-columns:1fr;gap:8px;padding:0;border:0;background:transparent}
.weigh-form.compact .input-row input{height:50px;padding:0 14px;border:1px solid var(--line-strong);background:var(--paper);font-size:13px}
.weigh-form.compact .input-row button{min-height:48px}.weigh-form.compact .form-note{margin-top:9px;text-align:left;font-size:11px}

.rules-hero{padding:48px 0 55px;background:var(--ink);color:#fff}.rules-hero .back-link{color:rgba(255,255,255,.65)}
.rules-lockup{max-width:730px;margin-top:52px}.rules-lockup h1{font-family:var(--display);font-size:clamp(48px,7vw,78px);font-weight:400;line-height:.94;letter-spacing:-.06em;text-transform:uppercase}
.rules-lockup p{margin-top:20px;color:rgba(255,255,255,.65);font-size:18px}
.rules-card{margin-top:40px;margin-bottom:90px;border:2px solid var(--ink);background:var(--surface)}
.rule-row{display:grid;grid-template-columns:72px minmax(190px,.65fr) minmax(0,1.35fr);gap:28px;padding:34px}.rule-row+.rule-row{border-top:1px solid var(--line)}
.rule-number{color:var(--red);font-family:var(--condensed);font-size:18px}.rule-row h2{font-size:21px;line-height:1.25;letter-spacing:-.032em}
.rule-row>div{color:var(--muted);font-size:14px;line-height:1.65}.rule-row>div p+p{margin-top:12px}.solid-button{min-height:50px;padding:0 19px;font-size:14px}
.rules-enter{width:fit-content;margin:4px 34px 34px auto}
.error-page{min-height:66vh;display:grid;place-items:center;padding:72px 0;text-align:center}.error-page .wrap{max-width:660px}
.error-code{color:var(--red-dark);font-family:var(--condensed);font-size:14px;letter-spacing:.05em;text-transform:uppercase}
.error-page h1{margin-top:11px;font-family:var(--display);font-size:clamp(42px,7vw,70px);font-weight:400;line-height:.95;letter-spacing:-.055em;text-transform:uppercase}
.error-page p{margin:18px auto 25px;color:var(--muted)}
.site-footer{border-top:2px solid var(--ink);background:var(--surface)}.site-footer-inner{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--muted);font-size:12px}
.site-footer-inner p,.site-footer-inner>div{display:flex;align-items:center;gap:9px}.site-footer-inner p .ph-icon{color:var(--red);font-size:17px}.site-footer-inner>div{gap:22px}.site-footer a{color:var(--ink);font-weight:700}

@media(max-width:980px){
  .weigh-in-grid{grid-template-columns:minmax(0,1fr) 280px}.weigh-in-copy{padding-right:42px}
  .ranking-columns,.ranking-card-link{grid-template-columns:64px minmax(190px,1fr) 130px 160px 20px;gap:15px}
  .ranking-columns,.ranking-card-link{padding-inline:17px}.card-meta{grid-template-columns:1fr}.card-meta time{grid-column:auto}
}
@media(max-width:760px){
  .wrap{width:min(100% - 32px,1180px)}.site-header-inner{min-height:68px}.brand-badge{width:51px;height:42px}.brand-badge img{width:40px;height:40px}
  .brand-name{font-size:17px}.site-header nav{gap:18px;font-size:12px}.site-header nav a.active::after{bottom:-25px}
  .weigh-in-grid{min-height:auto;grid-template-columns:1fr}.weigh-in-copy{padding:48px 0 50px}.weigh-in-visual{min-height:270px}.hero-mascot{width:220px}
  .weigh-in-copy h1{font-size:clamp(48px,9vw,64px)}
  .ranking-section{padding:56px 0 72px}.ranking-header{align-items:stretch;flex-direction:column;gap:20px}.search-form{width:100%}
  .ranking-columns{display:none}.ranking-card-link{grid-template-columns:50px minmax(0,1fr) auto 18px;gap:14px;min-height:96px;padding:15px 16px}
  .card-rank{font-size:31px}.card-site h3{font-size:18px}.card-weight{font-size:24px}.card-meta{display:none}
  .rankings-footer{grid-template-columns:1fr auto}.rankings-footer>a{grid-column:1/-1;justify-self:start}
  .ticket-main{grid-template-columns:1fr}.ticket-contender{padding:30px}.ticket-weight{min-height:220px}.ticket-stats{grid-template-columns:repeat(2,1fr)}
  .ticket-stats>div:nth-child(3){border-left:0;border-top:1px solid var(--line)}.ticket-stats>div:nth-child(4){border-top:1px solid var(--line)}
  .scorecard-after{grid-template-columns:1fr}.record-section{padding:30px 0}.rescan-section{padding:30px 0 0;border-left:0;border-top:1px solid var(--line)}
  .rule-row{grid-template-columns:46px 1fr;gap:14px;padding:26px 22px}.rule-row>div{grid-column:2}.rules-enter{margin:0 22px 26px auto}
}
@media(max-width:480px){
  .wrap{width:min(100% - 24px,1180px)}.site-header-inner{gap:12px}.brand-name{display:none}.site-header nav{gap:14px}.site-header nav a{font-size:11px}
  .weigh-in-copy{padding:40px 0 44px}.hero-kicker{font-size:13px}.weigh-in-copy h1{font-size:42px;line-height:1}
  .hero-deck{margin-top:18px;font-size:14px}.weigh-in-copy .weigh-form{margin-top:22px}.input-row{min-height:0;display:grid;gap:6px}.input-row input{height:52px;padding-inline:13px}
  .input-row button{width:100%;min-height:50px}
  .weigh-in-visual{min-height:230px}.hero-mascot{width:185px}.winner-stamp{right:13px;bottom:13px;min-width:96px}.winner-stamp strong{font-size:29px}
  .ranking-header h2{font-size:39px}.ranking-card-link{grid-template-columns:38px minmax(0,1fr) auto 16px;gap:10px;padding:14px 12px}
  .card-rank{font-size:27px}.rank-cell>span{font-size:8px}.card-site h3{font-size:16px}.card-site>p{max-width:100%;font-size:10px}.site-path{display:none}
  .card-weight{font-size:20px}.card-weight span{font-size:8px}.rankings-footer{gap:15px;font-size:12px}
  .scorecard-page{padding-top:32px}.ticket-contender{padding:25px 22px 29px}.ticket-brandline{align-items:flex-start;flex-direction:column;gap:5px}.ticket-label{margin-top:28px}
  .ticket-contender h1{font-size:42px}.ticket-page-title{white-space:normal}.ticket-url{font-size:11px;overflow-wrap:anywhere}.ticket-weight{min-height:190px;padding:25px 22px}
  .ticket-weight strong{font-size:88px}.ticket-stats>div{min-height:82px;padding:15px}.ticket-stats strong{font-size:14px}.scorecard-actions{align-items:stretch;flex-direction:column;padding-top:4px}
  .download-button,.secondary-button{width:100%}.copy-status{min-height:18px}.history-row{grid-template-columns:1fr auto;gap:12px}.history-row>span{display:none}
  .rules-hero{padding-top:32px}.rules-lockup{margin-top:38px}.rules-lockup h1{font-size:45px}.rule-row{grid-template-columns:1fr;gap:9px;padding:24px 18px}.rule-row>div{grid-column:1}
  .rules-enter{width:calc(100% - 36px);margin:0 18px 22px}.site-footer-inner{min-height:106px;align-items:flex-start;flex-direction:column;justify-content:center;gap:10px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
