@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/playfair-display-latin-700-normal-CuDiGg7c.woff2)format("woff2"),url(/assets/playfair-display-latin-700-normal-Bc_1Q1cG.woff)format("woff")}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/playfair-display-latin-900-normal-oSb7_CWx.woff2)format("woff2"),url(/assets/playfair-display-latin-900-normal-DypQvTWf.woff)format("woff")}@font-face{font-family:Playfair Display;font-style:italic;font-display:swap;font-weight:700;src:url(/assets/playfair-display-latin-700-italic-CB566L-e.woff2)format("woff2"),url(/assets/playfair-display-latin-700-italic-DgrU7w_p.woff)format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-condensed-latin-500-normal-BgYH2mbd.woff2)format("woff2"),url(/assets/barlow-condensed-latin-500-normal-HIEiP5Ov.woff)format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-600-normal-DepVgxBB.woff2)format("woff2"),url(/assets/barlow-condensed-latin-600-normal-BFJEwTuo.woff)format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-700-normal-v1xN8_Wq.woff2)format("woff2"),url(/assets/barlow-condensed-latin-700-normal-Dmwat-ge.woff)format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/barlow-condensed-latin-800-normal-BKzMuPgK.woff2)format("woff2"),url(/assets/barlow-condensed-latin-800-normal-e9GbPXiK.woff)format("woff")}:root{--bg:#0b1f16;--bg-2:#10291d;--surface:#153426;--surface-2:#1b4231;--cream:#f4eddc;--cream-dim:#f4eddc9e;--cream-faint:#f4eddc1f;--gold:#c9a54c;--gold-bright:#e2c06a;--ink:#0b1f16;--serif:"Playfair Display", Georgia, serif;--cond:"Barlow Condensed", "Arial Narrow", system-ui, sans-serif;--water:#1d5270;--lost:#5e2429;--bunker:#8c6a33;--putt:#7c4a18;--birdie:#9b7b22;--chaos:#43305f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);color:var(--cream);margin:0}body{font-family:var(--cond);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;background:radial-gradient(120% 60% at 50% -10%, #c9a54c1a, transparent 60%), var(--bg);min-height:100dvh;font-size:18px;line-height:1.3}button,input{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none}button:disabled{cursor:default}.screen{max-width:520px;min-height:100dvh;padding:calc(env(safe-area-inset-top) + 14px) 16px calc(env(safe-area-inset-bottom) + 16px);flex-direction:column;gap:14px;margin:0 auto;display:flex}.center-screen{text-align:center;justify-content:center;align-items:center;gap:20px}.crest{color:var(--gold)}.logo{font-family:var(--serif);letter-spacing:.01em;text-align:center;font-size:clamp(46px,14vw,64px);font-weight:900;line-height:.95}.logo span:last-child{color:var(--gold)}.logo-sm{letter-spacing:.04em;font-size:22px}.tagline{font-family:var(--serif);color:var(--cream-dim);margin:0;font-size:19px;font-style:italic;font-weight:700}.kicker{letter-spacing:.3em;text-transform:uppercase;color:var(--gold);font-size:15px;font-weight:700}.round-name{letter-spacing:.16em;text-transform:uppercase;color:var(--cream-dim);font-size:14px;font-weight:700}.pulse{animation:1.4s ease-in-out infinite pulse}.btn{letter-spacing:.12em;text-transform:uppercase;border:0;border-radius:14px;min-height:56px;padding:0 20px;font-size:20px;font-weight:800;transition:transform 80ms,opacity .15s,background .15s}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.4}.btn-xl{width:100%;min-height:68px;font-size:24px}.btn-gold{background:linear-gradient(180deg, var(--gold-bright), var(--gold));color:var(--ink);box-shadow:0 6px 24px #c9a54c40}.btn-cream{background:var(--cream);color:var(--ink)}.btn-ghost{color:var(--cream);border:1.5px solid var(--cream-faint);background:0 0}.btn-square{flex:none;width:56px;padding:0;font-size:30px}.link{color:var(--cream-dim);text-underline-offset:4px;background:0 0;border:0;padding:12px;font-size:17px;text-decoration:underline}.icon-btn{width:48px;height:48px;color:var(--cream);background:0 0;border:0;place-items:center;font-size:26px;display:grid}.stack{flex-direction:column;gap:12px;display:flex}.row-2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.row-2 .btn{letter-spacing:.06em;padding:0 10px;font-size:16px}.bottom{margin-top:auto}.hint{color:var(--cream-dim);margin:0;font-size:17px}.center{text-align:center}.error{color:#f0a58f;text-align:center;margin:0 0 10px}.home{justify-content:space-between}.home-hero{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:40px 0 24px;animation:.6s both rise;display:flex}.btn-continue{letter-spacing:.06em;border-color:#c9a54c80;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:18px;display:flex}.btn-continue small{letter-spacing:.3em;color:var(--gold);font-size:12px}.join{gap:10px;display:flex}.join input{text-align:center;letter-spacing:.35em;text-transform:uppercase;flex:1;min-width:0;font-size:24px;font-weight:800}.bar{justify-content:space-between;align-items:center;display:flex}.field{flex-direction:column;gap:8px;margin:0;display:flex}.field>span{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-size:14px;font-weight:700}.field em{color:var(--cream-dim);letter-spacing:.1em;font-style:normal;font-weight:500}input{border:1.5px solid var(--cream-faint);background:var(--bg-2);border-radius:14px;outline:none;width:100%;height:56px;padding:0 16px;font-size:20px;font-weight:600}input:focus{border-color:var(--gold)}input::placeholder{color:#f4eddc4d}.add-row{gap:10px;display:flex}.roster{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1.5px solid var(--cream-faint);background:var(--bg-2);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;min-height:46px;padding:0 16px;font-size:18px;font-weight:700;transition:background .12s,color .12s,border-color .12s}.chip-on{background:var(--cream);color:var(--ink);border-color:var(--cream)}.chip-add{width:46px;color:var(--gold);padding:0;font-size:24px}.chip-remove span{color:var(--gold);margin-left:6px}.chip-form input{border-radius:999px;width:130px;height:46px;font-size:18px}.game{padding-bottom:calc(env(safe-area-inset-bottom) + 12px);gap:12px}.game-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.game-title .logo{text-align:left}.game-title .round-name{margin-top:3px;font-size:12px}.invite{background:var(--bg-2);border:1.5px solid var(--cream-faint);border-radius:12px;grid-template-columns:auto auto;align-items:center;column-gap:7px;min-height:46px;padding:6px 12px;display:grid}.invite span{letter-spacing:.2em;font-size:16px;font-weight:800}.invite small{letter-spacing:.16em;text-transform:uppercase;color:var(--cream-dim);text-align:center;grid-column:1/-1;font-size:11px}.dot{background:#d9a441;border-radius:50%;width:8px;height:8px}.dot-live{background:#6fd08c;box-shadow:0 0 8px #6fd08c}.dot-offline,.dot-notfound{background:#e06b5a}.hole{grid-template-columns:64px 1fr 64px;align-items:center;gap:8px;display:grid}.hole-btn{border:1.5px solid var(--cream-faint);background:var(--bg-2);border-radius:14px;height:60px;font-size:28px;font-weight:700}.hole-btn:disabled{opacity:.25}.hole-btn:active:not(:disabled){background:var(--surface-2)}.hole-finish{background:var(--gold);color:var(--ink);border-color:var(--gold);letter-spacing:.08em;text-transform:uppercase;font-size:15px;font-weight:800}.hole-label{justify-content:center;align-items:baseline;gap:8px;display:flex}.hole-label small{letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-size:15px;font-weight:700}.hole-label b{font-family:var(--serif);font-size:46px;font-weight:900;line-height:1}.players{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.conds{flex-direction:column;gap:6px;display:flex}.cond{background:#c9a54c1a;border:1px solid #c9a54c59;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 6px 6px 12px;font-size:16px;animation:.25s both rise;display:flex}.cond-emoji{font-size:20px}.cond-text{flex:1;min-width:140px;font-weight:600}.cond-picks{flex-wrap:wrap;order:3;gap:6px;width:100%;display:flex}.cond-yes{background:var(--gold);min-width:52px;min-height:40px;color:var(--ink);text-transform:uppercase;letter-spacing:.05em;border:0;border-radius:10px;padding:0 12px;font-size:16px;font-weight:800}.cond-x{width:40px;height:40px;color:var(--cream-dim);background:0 0;border:0;border-radius:10px;font-size:24px}.events{flex:1;grid-template-columns:1fr 1fr;gap:10px;min-height:300px;display:grid}.event{--tone:var(--surface);background:linear-gradient(160deg, #ffffff14, transparent 55%), linear-gradient(180deg, color-mix(in srgb, var(--tone) 70%, var(--surface)), color-mix(in srgb, var(--tone) 45%, var(--bg)));border:0;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:96px;transition:transform 80ms,filter .1s;display:flex;position:relative;box-shadow:inset 0 0 0 1.5px #f4eddc1a,0 6px 16px #00000040}.event:active{filter:brightness(1.2);transform:scale(.96)}.event-emoji{font-size:38px;line-height:1}.event-label{letter-spacing:.12em;text-transform:uppercase;font-size:21px;font-weight:800}.tone-water{--tone:var(--water)}.tone-lost{--tone:var(--lost)}.tone-bunker{--tone:var(--bunker)}.tone-putt{--tone:var(--putt)}.tone-birdie{--tone:var(--birdie)}.tone-chaos{--tone:var(--chaos)}.last{align-items:center;gap:8px;display:flex}.last-info{min-width:0;color:var(--cream-dim);text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:8px;padding:6px 0;font-size:16px;display:flex}.last-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.undo{border:1.5px solid var(--cream-faint);min-height:40px;color:var(--cream-dim);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;background:0 0;border-radius:10px;padding:0 14px;font-size:14px;font-weight:700}.undo-armed{color:var(--cream);background:#e06b5a;border-color:#e06b5a}.board{background:var(--bg-2);border:1px solid var(--cream-faint);border-radius:16px;padding:12px 14px}.board h2{letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin:0 0 6px;font-size:13px;font-weight:700}.board ol{grid-template-columns:1fr 1fr;column-gap:18px;margin:0;padding:0;list-style:none;display:grid}.board li{border-bottom:1px solid var(--cream-faint);align-items:baseline;gap:6px;padding:4px 0;font-size:17px;display:flex}.board .rank{color:var(--cream-dim);width:1.6em}.board .who{text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:600;overflow:hidden}.board b{font-weight:800}.board li.lead b,.board li.lead .who{color:var(--gold-bright)}.toast{left:50%;top:calc(env(safe-area-inset-top) + 10px);text-align:left;background:linear-gradient(180deg, color-mix(in srgb, var(--tone) 85%, #000), color-mix(in srgb, var(--tone) 60%, #000));z-index:30;border:0;border-radius:16px;align-items:center;gap:12px;width:min(488px,100% - 32px);padding:12px 16px;animation:.35s cubic-bezier(.2,1.4,.4,1) both drop;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 12px 30px #00000073,inset 0 0 0 1px #f4eddc26}.toast-emoji{font-size:32px}.toast b{letter-spacing:.08em;text-transform:uppercase;font-size:19px;display:block}.toast small{color:var(--cream-dim);font-size:15px}.flash{left:50%;bottom:calc(env(safe-area-inset-bottom) + 24px);background:var(--cream);color:var(--ink);letter-spacing:.1em;text-transform:uppercase;z-index:40;border-radius:999px;padding:10px 18px;font-weight:800;animation:.2s both rise;position:fixed;transform:translate(-50%)}.overlay{z-index:50;padding:calc(env(safe-area-inset-top) + 18px) 16px calc(env(safe-area-inset-bottom) + 16px);background:radial-gradient(90% 55% at 50% 22%, #ffffff24, transparent 70%), linear-gradient(180deg, color-mix(in srgb, var(--tone) 90%, #000), color-mix(in srgb, var(--tone) 45%, #000));flex-direction:column;animation:.18s both fade;display:flex;position:fixed;inset:0;overflow-y:auto}.card{text-align:center;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:520px;margin:auto auto 0;animation:.5s cubic-bezier(.18,1.5,.4,1) both slam;display:flex}.card-kicker{letter-spacing:.3em;text-transform:uppercase;color:var(--cream-dim);font-size:14px;font-weight:700}.card-emoji{filter:drop-shadow(0 10px 20px #00000059);font-size:96px;line-height:1.1}.card-title{font-family:var(--serif);text-transform:uppercase;text-wrap:balance;margin:4px 0 2px;font-size:clamp(40px,12vw,58px);font-weight:900;line-height:.98}.card-flavour{font-family:var(--serif);color:var(--cream-dim);margin:0;font-size:19px;font-style:italic;font-weight:700}.card-rules{margin:6px 0 0}.card-rules p{text-wrap:balance;margin:0 0 4px;font-size:25px;font-weight:700;line-height:1.2}.picker{width:100%;margin-top:10px}.picker-label{letter-spacing:.2em;text-transform:uppercase;color:var(--cream-dim);margin-bottom:8px;font-size:13px;font-weight:700}.picker-names{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.pick{letter-spacing:.08em;text-transform:uppercase;background:#0000002e;border:2px solid #f4eddc59;border-radius:14px;min-height:58px;font-size:20px;font-weight:800;transition:transform 80ms,background .12s;position:relative}.pick:active{transform:scale(.96)}.pick-on{background:var(--cream);color:var(--ink);border-color:var(--cream)}.pick-count{color:var(--tone);margin-left:6px;font-weight:900}.card-notes{background:#c9a54c2e;border:1px solid #e2c06a80;border-radius:12px;width:100%;padding:8px 12px}.card-notes p{margin:0;font-size:17px;font-weight:700}.card-sips{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:6px;display:flex}.sip-chip{letter-spacing:.05em;text-transform:uppercase;background:#00000040;border-radius:999px;padding:6px 12px;font-size:16px;font-weight:600}.sip-chip b{color:var(--gold-bright);font-size:19px}.card-actions{flex-direction:column;align-items:center;gap:6px;width:100%;max-width:520px;margin:22px auto 0;display:flex}.btn-reroll{color:var(--cream);letter-spacing:.14em;text-transform:uppercase;opacity:.85;background:0 0;border:0;padding:12px 18px;font-size:18px;font-weight:700}.btn-reroll small{opacity:.6;letter-spacing:.08em}.anim-water{animation:1.6s ease-in-out .4s infinite bob}.anim-lost{animation:1.8s ease-in-out .4s infinite vanish}.anim-bunker{animation:.9s ease-in-out .4s 2 shake}.anim-putt{animation:1.2s ease-in-out .4s infinite wobble}.anim-birdie{animation:1.4s ease-in-out .3s infinite fly}.anim-chaos{animation:.7s cubic-bezier(.3,1.6,.5,1) .2s both spin}.steps{flex-direction:column;gap:14px;margin:6px 0 0;padding:0;list-style:none;display:flex}.steps li{align-items:flex-start;gap:14px;display:flex}.steps b{border:1.5px solid var(--gold);width:40px;height:40px;color:var(--gold);font-family:var(--serif);border-radius:50%;flex:none;place-items:center;font-size:20px;display:grid}.steps h3{letter-spacing:.1em;text-transform:uppercase;margin:2px 0;font-size:21px}.steps p{color:var(--cream-dim);margin:0}.legend{grid-template-columns:1fr 1fr;gap:8px;margin-top:6px;display:grid}.legend-item{background:color-mix(in srgb, var(--tone) 55%, var(--bg));letter-spacing:.08em;text-transform:uppercase;border-radius:12px;padding:10px 12px;font-size:16px;font-weight:700}.finish-hero{text-align:center;flex-direction:column;align-items:center;gap:8px;padding-top:12px;animation:.5s both rise;display:flex}.awards{flex-direction:column;gap:8px;display:flex}.award{background:var(--bg-2);border:1px solid var(--cream-faint);border-radius:14px;align-items:center;gap:14px;padding:12px 14px;animation:.4s both rise;display:flex}.award:nth-child(2){animation-delay:60ms}.award:nth-child(3){animation-delay:.12s}.award:nth-child(4){animation-delay:.18s}.award:nth-child(5){animation-delay:.24s}.award:nth-child(6){animation-delay:.3s}.award:nth-child(n+7){animation-delay:.36s}.award-emoji{font-size:32px}.award h3{letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0;font-size:15px}.award p{text-transform:uppercase;letter-spacing:.04em;margin:2px 0 0;font-size:21px;font-weight:800}.award small{color:var(--cream-dim);text-transform:none;letter-spacing:0;font-size:15px;font-weight:500}.board-final ol{grid-template-columns:1fr}.board-final li{padding:6px 0;font-size:20px}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes drop{0%{opacity:0;transform:translate(-50%,-30px)}to{opacity:1;transform:translate(-50%)}}@keyframes slam{0%{opacity:0;transform:scale(1.4)rotate(-4deg)}60%{opacity:1}to{transform:none}}@keyframes pulse{50%{opacity:.4}}@keyframes bob{0%,to{transform:translateY(0)rotate(-4deg)}50%{transform:translateY(10px)rotate(4deg)}}@keyframes vanish{0%,to{opacity:1;transform:scale(1)}50%{opacity:.25;transform:scale(.85)rotate(-10deg)}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-10px)rotate(-6deg)}40%,80%{transform:translate(10px)rotate(6deg)}}@keyframes wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-12deg)}75%{transform:rotate(12deg)}}@keyframes fly{0%,to{transform:translate(0)}50%{transform:translate(8px,-14px)rotate(8deg)}}@keyframes spin{0%{transform:rotate(-540deg)scale(.3)}to{transform:rotate(0)scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (height<=700px){.event{min-height:80px}.event-emoji{font-size:30px}.hole-btn{height:52px}.hole-label b{font-size:38px}.card-emoji{font-size:72px}}
