:root{--brand: #1438a6;--on-brand: #fff;--accent: #ffc531;--on-accent: #1a1300;--bg: #1438a6;--surface: #0f2c85;--fg: #ffffff;--radius: 14px;--font: "Figtree", "Readex Pro", system-ui, sans-serif;--muted: color-mix(in oklab, var(--fg) 72%, var(--bg));--line: color-mix(in oklab, var(--fg) 16%, var(--bg));--field: color-mix(in oklab, var(--fg) 8%, var(--bg));--ease: cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;overflow-x:clip;min-height:100%;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:17px;line-height:1.45;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;text-rendering:optimizeLegibility}::selection{background:var(--accent);color:var(--on-accent)}button,input,select{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.kit-boot{min-height:100dvh;display:grid;place-items:center;padding:24px}.kit-shell{overflow-x:clip;min-height:100dvh;display:flex;flex-direction:column;max-width:520px;margin:0 auto;padding:max(10px,env(safe-area-inset-top)) 20px 0}.kit-preview{margin:-10px -20px 8px;padding:8px 20px;font-size:14px;font-weight:600;background:var(--accent);color:var(--on-accent)}.kit-notice{margin:0 -20px 4px;padding:6px 20px;font-size:12px;font-weight:600;line-height:1.4;text-align:center;text-wrap:balance;background:color-mix(in oklab,var(--fg) 12%,var(--bg));color:var(--fg)}.kit-credit{margin:2px 0 0;font-size:12px;font-weight:600;text-align:center;color:var(--muted)}.kit-credit a{color:inherit;text-decoration:none}.kit-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px}.kit-logo{max-height:32px;max-width:55%;object-fit:contain}.kit-brand{font-weight:800;font-size:17px;letter-spacing:-.01em}.kit-lang{border:0;background:transparent;padding:10px 2px;min-height:44px;font-size:16px;font-weight:600;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:6px;cursor:pointer}.kit-main{flex:1;display:flex;flex-direction:column;gap:20px;padding:12px 0 0}.kit-screen{flex:1;display:flex;flex-direction:column;gap:14px}.kit-screen-head{padding-top:6vh}.kit-mark{width:56px;height:56px;display:grid;place-items:center;border-radius:16px;background:var(--accent);color:var(--on-accent);margin-bottom:22px}.kit-title{margin:0;font-size:clamp(34px,10vw,46px);line-height:1.04;font-weight:800;letter-spacing:-.03em;text-wrap:balance}[dir=rtl] .kit-title{letter-spacing:0;line-height:1.25}.kit-subtitle{margin:0 0 6px;font-size:22px;font-weight:800;letter-spacing:-.01em}.kit-body{margin:0;max-width:34ch;color:var(--muted);font-size:18px;line-height:1.5;text-wrap:pretty}.kit-fine{margin:0;font-size:13px;color:var(--muted)}.kit-actions{position:sticky;bottom:0;margin-top:auto;display:flex;flex-direction:column;gap:8px;padding:16px 0 max(16px,env(safe-area-inset-bottom));background:linear-gradient(to top,var(--bg) 70%,color-mix(in oklab,var(--bg) 0%,transparent))}.kit-btn{width:100%;min-height:58px;padding:14px 22px;border:0;border-radius:var(--radius);font-size:18px;font-weight:800;letter-spacing:-.01em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:transform .12s var(--ease),background-color .2s,opacity .2s;touch-action:manipulation}.kit-btn:active:not(:disabled){transform:scale(.98)}.kit-btn:disabled{opacity:.4;cursor:not-allowed}.kit-btn-primary{background:var(--brand);color:var(--on-brand)}.kit-btn-accent{background:var(--accent);color:var(--on-accent)}.kit-btn-ghost{background:transparent;color:var(--fg);box-shadow:inset 0 0 0 2px var(--line)}.kit-form{flex:1;display:flex;flex-direction:column;gap:16px}.kit-form .kit-title{font-size:clamp(30px,8.5vw,38px)}.kit-field{display:flex;flex-direction:column;gap:7px}.kit-label{font-size:15px;font-weight:700;display:flex;justify-content:space-between;gap:8px}.kit-optional{font-style:normal;font-weight:500;color:var(--muted)}.kit-field input,.kit-field select{width:100%;min-height:56px;padding:14px 16px;border-radius:calc(var(--radius) - 2px);border:2px solid transparent;background:var(--field);font-size:18px;transition:border-color .15s,background-color .15s;appearance:none}.kit-field input::placeholder{color:var(--muted)}.kit-field input:focus,.kit-field select:focus{outline:none;border-color:var(--accent)}.kit-consents{display:flex;flex-direction:column;gap:4px;padding-top:4px}.kit-consent{display:flex;gap:14px;align-items:flex-start;padding:10px 0;font-size:15px;line-height:1.45;cursor:pointer}.kit-consent input{flex:none;appearance:none;width:26px;height:26px;margin:0;border-radius:8px;border:2px solid color-mix(in oklab,var(--fg) 50%,var(--bg));display:grid;place-items:center;cursor:pointer;transition:background-color .12s,border-color .12s}.kit-consent input:checked{background:var(--accent);border-color:var(--accent)}.kit-consent input:checked:after{content:"";width:7px;height:13px;border:solid var(--on-accent);border-width:0 3px 3px 0;transform:translateY(-1px) rotate(45deg)}.kit-req{font-weight:800;color:var(--accent)}.kit-error{margin:0;padding:12px 14px;border-radius:calc(var(--radius) - 4px);font-size:15px;font-weight:600;background:#fde8e6;color:#8c1d14}.kit-spinner{width:30px;height:30px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:kit-spin .8s linear infinite;display:inline-block}.kit-spinner-sm{width:22px;height:22px;border-color:color-mix(in oklab,currentColor 30%,transparent);border-top-color:currentColor}@keyframes kit-spin{to{transform:rotate(360deg)}}.kit-voucher{position:relative;color:#14161a;filter:drop-shadow(0 18px 30px color-mix(in oklab,var(--bg) 60%,black));animation:kit-voucher-in .9s var(--ease) both}.kit-voucher-top,.kit-voucher-stub{background:#fffdf8;padding:24px 22px}.kit-voucher-top{border-radius:18px 18px 0 0;-webkit-mask:radial-gradient(circle 12px at 0 100%,transparent 98%,#000) left / 51% 100% no-repeat,radial-gradient(circle 12px at 100% 100%,transparent 98%,#000) right / 51% 100% no-repeat;mask:radial-gradient(circle 12px at 0 100%,transparent 98%,#000) left / 51% 100% no-repeat,radial-gradient(circle 12px at 100% 100%,transparent 98%,#000) right / 51% 100% no-repeat}.kit-voucher-stub{border-radius:0 0 18px 18px;border-top:2px dashed #d5d0c4;-webkit-mask:radial-gradient(circle 12px at 0 0,transparent 98%,#000) left / 51% 100% no-repeat,radial-gradient(circle 12px at 100% 0,transparent 98%,#000) right / 51% 100% no-repeat;mask:radial-gradient(circle 12px at 0 0,transparent 98%,#000) left / 51% 100% no-repeat,radial-gradient(circle 12px at 100% 0,transparent 98%,#000) right / 51% 100% no-repeat;display:flex;align-items:center;justify-content:space-between;gap:12px}.kit-voucher-brand{font-size:14px;font-weight:700;color:#6a6f78}.kit-voucher-prize{margin:6px 0 0;font-size:30px;line-height:1.1;font-weight:800;letter-spacing:-.02em;color:#14161a}.kit-voucher-note{margin:10px 0 0;font-size:15px;color:#4b5059}.kit-code{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:clamp(20px,6vw,26px);font-weight:700;letter-spacing:.06em;white-space:nowrap}.kit-copy{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border:0;border-radius:999px;background:#14161a;color:#fff;font-size:15px;font-weight:700;cursor:pointer}@keyframes kit-voucher-in{0%{opacity:0;transform:translateY(40px) rotate(-3deg) scale(.94)}}.kit-share{display:flex;flex-direction:column;gap:12px}.kit-share-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:8px}.kit-chip{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:72px;padding:10px 6px;border:0;border-radius:var(--radius);background:var(--field);font-size:13px;font-weight:700;cursor:pointer;transition:transform .12s var(--ease)}.kit-chip:active{transform:scale(.96)}.kit-board-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.kit-board-list li{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;min-height:52px;border-bottom:1px solid var(--line)}.kit-board-list li:nth-child(-n+3){min-height:60px;font-size:19px}.kit-rank{font-weight:800;font-variant-numeric:tabular-nums;color:var(--muted)}.kit-board-list li:nth-child(1) .kit-rank{color:var(--accent)}.kit-name{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-score{font-variant-numeric:tabular-nums;font-weight:800}.kit-me{box-shadow:inset 4px 0 0 var(--accent);padding-inline-start:10px}[dir=rtl] .kit-me{box-shadow:inset -4px 0 0 var(--accent)}.kit-stack{display:flex;flex-direction:column;gap:10px;width:100%}.kit-enter{animation:kit-enter .4s var(--ease) both}@keyframes kit-enter{0%{opacity:0;transform:translateY(10px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.match-intro{gap:0;padding-top:1vh}.match-kicker{margin:0 0 6px;font-size:15px;font-weight:800;color:var(--accent)}.match-title{font-size:clamp(38px,11vw,52px);line-height:1.05;animation:match-up .6s var(--ease) both}[dir=rtl] .match-title{line-height:1.25}@keyframes match-up{0%{opacity:0;transform:translateY(18px)}}.match-lineup{position:relative;flex:1;min-height:300px;max-height:380px;margin-top:1vh}.match-lineup img{--dir: 1;position:absolute;left:50%;bottom:0;width:min(40vw,170px);aspect-ratio:1 / 1.6;object-fit:contain;transform-origin:50% 100%;translate:calc(-50% + var(--dir) * var(--i) * min(16vw,72px)) 0;rotate:calc(var(--dir) * var(--i) * 6deg);filter:drop-shadow(0 14px 18px rgb(0 0 0 / .3));animation:match-fan .7s var(--ease) both,match-bob 3.2s ease-in-out infinite;animation-delay:calc(var(--n) * 70ms + .12s),calc(var(--n) * -.8s)}[dir=rtl] .match-lineup img{--dir: -1}@keyframes match-fan{0%{opacity:0;translate:-50% 60px;rotate:0deg}}@keyframes match-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.match-card{gap:22px;padding-top:2vh}.match-progress{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px}.match-progress i{height:6px;border-radius:3px;background:var(--line);transition:background-color .3s}.match-progress i.is-done{background:var(--accent)}.match-progress i.is-current{background:color-mix(in oklab,var(--accent) 50%,var(--line))}.match-question{margin:8px 0 4px;font-size:clamp(34px,10vw,46px);line-height:1.1;font-weight:800;letter-spacing:-.02em;text-wrap:balance;animation:match-up .45s var(--ease) both}[dir=rtl] .match-question{letter-spacing:0;line-height:1.3}.match-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.match-option{position:relative;overflow:hidden;min-height:96px;padding:14px;font-size:19px;font-weight:700;line-height:1.25;text-align:center;border-radius:var(--radius);border:0;background:var(--surface);color:var(--fg);cursor:pointer;animation:match-pop-in .45s var(--ease) both;animation-delay:calc(var(--n) * 55ms + 80ms);transition:opacity .25s,transform .18s var(--ease)}.match-option:active{transform:scale(.96)}@keyframes match-pop-in{0%{opacity:0;transform:translateY(14px) scale(.96)}}.match-fill{position:absolute;inset:0;background:var(--sauce);clip-path:inset(0 0 100% 0 round var(--radius));transition:clip-path .38s var(--ease)}.match-option-text{position:relative}.match-option.is-picked{transform:scale(1.03)}.match-option.is-picked .match-fill{clip-path:inset(0 0 0 0 round var(--radius))}.match-option.is-picked .match-option-text{color:#fff;text-shadow:0 1px 6px rgb(0 0 0 / .35)}.match-option.is-dimmed{opacity:.45}.match-suspense{align-items:center;justify-content:center;gap:26px;text-align:center}.match-squeeze{position:relative;width:220px;height:260px}.match-squeeze img{position:absolute;left:50%;bottom:0;width:130px;aspect-ratio:1 / 1.6;object-fit:contain;translate:calc(-50% + (var(--i) - 1) * 62px) 0;filter:drop-shadow(0 12px 16px rgb(0 0 0 / .3));animation:match-shake .5s ease-in-out infinite;animation-delay:calc(var(--i) * -.17s)}@keyframes match-shake{0%,to{transform:rotate(0) scaleY(1)}25%{transform:rotate(-7deg) scaleY(.96)}75%{transform:rotate(7deg) scaleY(1.03)}}.match-suspense-line{margin:0;font-size:22px;font-weight:800}.match-suspense-line:after{content:"";display:inline-block;width:1.2em;text-align:start;animation:match-dots 1.2s steps(4) infinite}@keyframes match-dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.match-result{position:relative;gap:4px;padding-top:0;text-align:center;align-items:center}.match-result>*{position:relative}.match-backdrop{position:absolute!important;inset:-12px -20px auto;height:46vh;background-size:cover;background-position:78% 40%;opacity:.32;mask-image:linear-gradient(to bottom,#000 30%,transparent);-webkit-mask-image:linear-gradient(to bottom,#000 30%,transparent);animation:match-fade 1.2s ease both}@keyframes match-fade{0%{opacity:0}}.match-lead{margin:0;font-size:17px;font-weight:700;color:var(--muted);animation:match-up .4s var(--ease) both}.match-stage{--stage: min(22vh, 190px);display:grid;grid-template:var(--stage) / 100%;place-items:center;width:100%;height:var(--stage)}.match-stage>*{grid-area:1 / 1}.match-splash{width:calc(var(--stage) * .9);aspect-ratio:1;background:var(--sauce);border-radius:42% 58% 63% 37%/46% 41% 59% 54%;box-shadow:0 0 0 10px color-mix(in oklab,var(--sauce) 35%,transparent);animation:match-burst .7s cubic-bezier(.2,1.6,.4,1) both,match-morph 7s ease-in-out .7s infinite}@keyframes match-burst{0%{transform:scale(0) rotate(-40deg)}}@keyframes match-morph{0%,to{border-radius:42% 58% 63% 37%/46% 41% 59% 54%}50%{border-radius:58% 42% 38% 62%/55% 60% 40% 45%}}.match-frame{height:calc(var(--stage) * 1.08);width:auto;filter:brightness(0) invert(1);opacity:.9;animation:match-frame-in .8s var(--ease) .25s both}@keyframes match-frame-in{0%{opacity:0;transform:scale(1.25)}}.match-image{height:var(--stage);width:auto;max-width:70vw;object-fit:contain;filter:drop-shadow(0 18px 24px rgb(0 0 0 / .35));animation:match-pop .75s cubic-bezier(.2,1.5,.4,1) .15s both}@keyframes match-pop{0%{opacity:0;transform:translateY(40px) scale(.6) rotate(-10deg)}}.match-drop{width:var(--s);height:var(--s);border-radius:50% 50% 50% 0;background:var(--sauce);rotate:45deg;opacity:0;animation:match-throw .9s cubic-bezier(.1,.8,.3,1) both;animation-delay:calc(.1s + var(--d))}@keyframes match-throw{0%{opacity:1;transform:translate(0) scale(.4)}70%{opacity:1}to{opacity:0;transform:translate(var(--x),var(--y)) scale(1)}}.match-name{margin:2px 0 0;font-size:clamp(28px,8vw,36px);line-height:1.15;font-weight:800;text-wrap:balance;animation:match-up .5s var(--ease) .35s both}.match-badge{display:inline-block;margin-inline-start:10px;padding:3px 10px;border-radius:999px;font-size:14px;font-weight:800;vertical-align:middle;background:var(--accent);color:var(--on-accent);animation:match-wiggle 2.4s ease-in-out 1.2s infinite}@keyframes match-wiggle{0%,86%,to{transform:rotate(0)}90%{transform:rotate(-8deg)}95%{transform:rotate(8deg)}}.match-line{max-width:34ch;margin:2px auto 0;animation:match-up .5s var(--ease) .45s both}.match-footer{margin:2px 0 0;font-size:15px;font-weight:600;color:var(--muted);animation:match-up .5s var(--ease) .55s both}.match-location{display:inline-flex;align-items:center;gap:8px;margin-top:4px;padding:9px 16px;border-radius:999px;background:var(--surface);color:var(--fg);font-size:15px;font-weight:700;text-decoration:none;animation:match-up .5s var(--ease) .6s both}.match-location:active{transform:scale(.97)}.match-share{align-self:stretch;margin-top:4px;text-align:start;animation:match-up .5s var(--ease) .7s both}.match-result .kit-actions,.match-voucher .kit-actions{align-self:stretch}.match-voucher{gap:14px;align-items:center}.match-voucher>div:first-child{align-self:stretch}@media(prefers-reduced-motion:reduce){.match-title,.match-lineup img,.match-question,.match-option,.match-squeeze img,.match-backdrop,.match-lead,.match-splash,.match-frame,.match-image,.match-drop,.match-name,.match-badge,.match-line,.match-footer,.match-location,.match-share{animation:none}.match-drop{display:none}}.wall-login{min-height:100vh;display:grid;place-items:center;padding:24px}.wall-login form{display:flex;flex-direction:column;gap:16px;width:min(360px,100%)}.wall{--u: min(1vw, 1.6vh);position:relative;height:100vh;height:100dvh;display:grid;grid-template-columns:minmax(0,34%) minmax(0,1fr);align-items:stretch;gap:calc(3 * var(--u));padding:calc(4.5 * var(--u)) calc(3.5 * var(--u)) calc(2.5 * var(--u));overflow:hidden;background:var(--bg);color:var(--fg)}.wall-left{min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:calc(1.4 * var(--u))}.wall-logo{height:calc(6 * var(--u));width:auto}.wall-title{margin:0;font-size:calc(3.8 * var(--u));line-height:1.15;font-weight:800}.wall-sub{margin:0;font-size:calc(1.7 * var(--u));color:var(--muted)}.wall-qr{width:calc(19 * var(--u));aspect-ratio:1;padding:calc(1.4 * var(--u));border-radius:calc(1.6 * var(--u));background:#fff;box-shadow:0 0 0 calc(.6 * var(--u)) var(--accent);animation:wall-pulse 2.4s ease-in-out infinite}.wall-qr img{width:100%;height:100%;image-rendering:pixelated}@keyframes wall-pulse{0%,to{box-shadow:0 0 0 calc(.6 * var(--u)) var(--accent)}50%{box-shadow:0 0 0 calc(1.4 * var(--u)) color-mix(in oklab,var(--accent) 40%,transparent)}}.wall-url{margin:0;font-size:calc(1.5 * var(--u));font-weight:700;letter-spacing:.02em}.wall-right{position:relative;min-height:0;display:flex;flex-direction:column;min-width:0;gap:calc(1.5 * var(--u))}.wall-head{display:flex;justify-content:space-between;align-items:end;gap:calc(2 * var(--u))}.wall-head h2{margin:0;font-size:calc(3 * var(--u));font-weight:800}.wall-stats{display:flex;gap:calc(2.4 * var(--u))}.wall-stat{display:flex;flex-direction:column;align-items:center}.wall-stat strong{font-size:calc(3.6 * var(--u));line-height:1;font-weight:800;font-variant-numeric:tabular-nums;color:var(--accent)}.wall-stat span{font-size:calc(1.1 * var(--u));font-weight:700;color:var(--muted)}.wall-race{flex:1;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:calc(1 * var(--u));align-items:end;min-height:0}.wall-lane{position:relative;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:end}.wall-bar{width:70%;height:calc(4% + var(--h) * 52%);border-radius:calc(1 * var(--u)) calc(1 * var(--u)) calc(.3 * var(--u)) calc(.3 * var(--u));background:var(--sauce);box-shadow:inset 0 0 0 calc(.25 * var(--u)) #ffffff2e;transition:height 1.1s var(--ease)}.wall-lane img{width:92%;aspect-ratio:1 / 1.4;object-fit:contain;margin-bottom:calc(-1.2 * var(--u));position:relative;z-index:1;filter:drop-shadow(0 calc(.8 * var(--u)) calc(1 * var(--u)) rgb(0 0 0 / .35));transition:transform .6s var(--ease)}.wall-count{font-size:calc(2.4 * var(--u));font-weight:800;font-variant-numeric:tabular-nums}.wall-name{margin-top:calc(.6 * var(--u));font-size:calc(1.05 * var(--u));font-weight:700;text-align:center;line-height:1.2;min-height:2.5em}.wall-lane.is-leader img{animation:wall-leader 1.6s ease-in-out infinite}.wall-lane.is-leader .wall-count{color:var(--accent)}@keyframes wall-leader{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(calc(-.8 * var(--u))) rotate(-3deg)}}.wall-ticker{display:flex;align-items:center;gap:calc(1 * var(--u));min-height:calc(5 * var(--u));padding:calc(.8 * var(--u)) calc(1.6 * var(--u));border-radius:calc(1 * var(--u));background:var(--surface);font-size:calc(1.8 * var(--u));font-weight:700;animation:wall-slide .6s var(--ease) both}.wall-ticker img{height:calc(4 * var(--u));width:auto}@keyframes wall-slide{0%{opacity:0;transform:translateY(calc(1.5 * var(--u)))}}.wall-stale{position:absolute;inset-block-start:0;inset-inline-start:50%;font-size:calc(1 * var(--u));color:var(--muted)}@media(prefers-reduced-motion:reduce){.wall-qr,.wall-lane.is-leader img,.wall-ticker{animation:none}}.wall-notice{position:absolute;inset:0 0 auto;padding:calc(.5 * var(--u)) calc(2 * var(--u));font-size:calc(1 * var(--u));font-weight:600;text-align:center;background:color-mix(in oklab,var(--fg) 12%,var(--bg))}.wall-credit{margin:0;font-size:calc(1.1 * var(--u));font-weight:600;color:var(--muted)}.match-waves{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.09;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='44' viewBox='0 0 160 44'%3E%3Cpath d='M0 22 C 20 6, 60 6, 80 22 S 140 38, 160 22' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E");background-size:160px 44px;animation:match-drift 14s linear infinite}@keyframes match-drift{to{background-position:160px 0}}.kit-shell>:not(.match-waves),.kit-main>:not(.match-waves),.wall-left,.wall-right{position:relative;z-index:1}.wall-notice{z-index:2}@media(prefers-reduced-motion:reduce){.match-waves{animation:none}}
