@import url('data:text/css,');
:root{--ink:#153f2e;--cream:#fffdf4;--lime:#d9ff52;--pink:#ff4d9d;--yellow:#ffd950;--mint:#c9f7df;--paper:#fff;--line:#153f2e;--shadow:5px 5px 0 var(--ink);font-family:"Trebuchet MS","Avenir Next",system-ui,sans-serif;color:var(--ink);background:var(--cream);font-size:16px}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 10% 10%,#fff 0 3px,transparent 4px) 0 0/34px 34px,var(--cream)}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.topbar{height:76px;padding:0 clamp(18px,5vw,64px);display:flex;align-items:center;justify-content:space-between;background:var(--cream);border-bottom:2px solid var(--ink);position:sticky;top:0;z-index:10}.brand{display:flex;gap:10px;align-items:center;border:0;background:none;font-size:1.25rem}.ball{display:grid;place-items:center;background:var(--lime);border:2px solid var(--ink);border-radius:50%;width:40px;height:40px;font-size:10px;line-height:8px;letter-spacing:5px;padding-left:5px}.topbar nav{display:flex;gap:10px;align-items:center}.link{border:0;background:transparent;font-weight:800;padding:10px}.btn{border:2px solid var(--ink);background:var(--lime);padding:11px 18px;border-radius:999px;font-weight:900;box-shadow:3px 3px 0 var(--ink);transition:.15s transform,.15s box-shadow}.btn:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--ink)}.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.btn.pink{background:var(--pink);color:#fff}.btn.white{background:white}.btn.small{padding:8px 13px;font-size:.9rem}.btn:disabled{opacity:.45;cursor:not-allowed}main{max-width:1180px;margin:auto;padding:clamp(28px,6vw,76px) clamp(18px,5vw,54px)}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center;min-height:calc(100vh - 170px)}.eyebrow{display:inline-block;background:var(--yellow);border:2px solid var(--ink);border-radius:99px;padding:7px 12px;font-weight:900;transform:rotate(-2deg)}h1{font-size:clamp(3.2rem,8vw,6.8rem);line-height:.84;letter-spacing:-.07em;margin:24px 0}h1 em{font-style:normal;color:var(--pink);text-shadow:3px 3px 0 var(--ink);-webkit-text-stroke:1px var(--ink)}.lead{font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.55;max-width:630px}.hero-actions,.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.hero-art{position:relative}.hero-art img{width:100%;max-height:620px;object-fit:contain;filter:drop-shadow(12px 14px 0 rgba(21,63,46,.15))}.sticker{position:absolute;background:white;border:2px solid var(--ink);border-radius:20px;padding:12px 18px;font-weight:900;box-shadow:4px 4px 0 var(--ink)}.sticker.one{top:8%;right:-2%;transform:rotate(7deg)}.sticker.two{bottom:8%;left:-7%;transform:rotate(-6deg);background:var(--lime)}.auth-card,.card{background:var(--paper);border:2px solid var(--ink);border-radius:24px;box-shadow:var(--shadow)}.auth-page{max-width:480px;margin:3vh auto}.auth-card{padding:32px}.auth-card h1{font-size:3.3rem}.tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:24px;border:2px solid var(--ink);border-radius:999px;overflow:hidden}.tabs button{padding:11px;border:0;background:white;font-weight:900}.tabs button.active{background:var(--lime)}label{display:block;font-weight:900;margin:16px 0 7px}.field,input,select{width:100%;border:2px solid var(--ink);background:#fff;border-radius:12px;padding:13px 14px;outline:none}.field:focus,input:focus,select:focus{box-shadow:0 0 0 4px var(--mint)}.hint{font-size:.84rem;opacity:.75}.stack{display:grid;gap:14px}.dashboard-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:28px}.dashboard-head h1{font-size:clamp(2.8rem,7vw,5rem);margin:10px 0}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}.club-card{grid-column:span 6;padding:25px;min-height:225px;position:relative;overflow:hidden}.club-card:after{content:'••\A••';white-space:pre;position:absolute;right:-20px;bottom:-25px;width:130px;height:130px;display:grid;place-items:center;background:var(--lime);border:2px solid var(--ink);border-radius:50%;font-size:28px;letter-spacing:12px;padding-left:12px;line-height:25px}.club-card h2{font-size:2rem;margin:8px 0}.nickname{display:inline-block;background:var(--mint);border-radius:99px;padding:6px 10px;font-weight:800}.empty{grid-column:1/-1;padding:55px;text-align:center}.section{margin-top:38px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px}.section-head h2{font-size:2rem;margin:0}.member-list{display:flex;flex-wrap:wrap;gap:9px}.chip{border:2px solid var(--ink);border-radius:99px;background:white;padding:8px 12px;font-weight:800}.event-card{grid-column:span 4;padding:22px}.event-card h3{font-size:1.4rem;margin:8px 0}.meta{display:grid;gap:5px;color:#416153;margin:15px 0}.status{display:inline-block;padding:5px 9px;background:var(--yellow);border-radius:99px;font-size:.8rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.event-head{display:grid;grid-template-columns:1fr auto;gap:25px;align-items:start}.event-head h1{font-size:clamp(2.7rem,7vw,5.5rem);margin:14px 0}.scoreboard{width:100%;border-collapse:separate;border-spacing:0;background:white;border:2px solid var(--ink);border-radius:18px;overflow:hidden}.scoreboard th,.scoreboard td{padding:13px;text-align:left;border-bottom:1px solid #b9c8c0}.scoreboard th{background:var(--ink);color:white}.scoreboard tr:last-child td{border:0}.rank{font-size:1.25rem;font-weight:900}.round{margin:28px 0 14px;font-size:1.65rem}.matches{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.match{padding:20px}.teams{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}.team{font-weight:900;font-size:1.05rem}.vs{background:var(--pink);color:#fff;border:2px solid var(--ink);border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:.8rem;font-weight:900}.score-form{display:grid;grid-template-columns:1fr auto 1fr auto;gap:8px;align-items:center;margin-top:18px}.score-form input{min-width:0;text-align:center;font-size:1.25rem;font-weight:900}.modal-wrap{position:fixed;inset:0;background:rgba(21,63,46,.45);display:grid;place-items:center;padding:18px;z-index:40}.modal{width:min(540px,100%);max-height:90vh;overflow:auto;background:var(--cream);border:2px solid var(--ink);border-radius:24px;box-shadow:10px 10px 0 var(--ink);position:relative;padding:30px}.close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:2rem}.modal h2{font-size:2rem;margin:0 0 12px}.two{display:grid;grid-template-columns:1fr 1fr;gap:13px}.invite{background:var(--mint);border:2px dashed var(--ink);border-radius:14px;padding:13px;word-break:break-all;margin:14px 0;font-weight:800}.loading{text-align:center;padding:20vh 0;font-size:1.3rem;font-weight:900}#toast{position:fixed;right:24px;bottom:24px;z-index:60;background:var(--ink);color:white;padding:13px 18px;border-radius:14px;transform:translateY(120px);transition:.2s;max-width:350px}#toast.show{transform:none}.error{background:#ffe1e7;border:2px solid #a3123f;border-radius:12px;padding:11px;color:#7d1233}.kicker{font-weight:900;color:var(--pink);text-transform:uppercase;letter-spacing:.08em}.muted{color:#587066}.join-card{max-width:600px;margin:8vh auto;padding:35px;text-align:center}.join-card h1{font-size:clamp(3rem,8vw,5rem)}
@media(max-width:800px){.topbar{height:66px}.brand b{display:none}.hero{grid-template-columns:1fr;text-align:center;padding-top:10px}.lead{margin-inline:auto}.hero-actions{justify-content:center}.hero-art{order:-1}.hero-art img{max-height:310px}.sticker{font-size:.8rem}.club-card,.event-card{grid-column:1/-1}.event-head{grid-template-columns:1fr}.matches{grid-template-columns:1fr}.dashboard-head{align-items:start;flex-direction:column}.topbar nav .link{display:none}}
@media(max-width:480px){main{padding-inline:14px}.two{grid-template-columns:1fr}.auth-card,.modal{padding:24px 18px}.scoreboard th,.scoreboard td{padding:10px 7px;font-size:.86rem}.scoreboard th:nth-child(5),.scoreboard td:nth-child(5){display:none}.event-head h1{font-size:3rem}.score-form{grid-template-columns:1fr auto 1fr}.score-form .btn{grid-column:1/-1}}

/* Roomier shared rhythm and playful product controls */
body{line-height:1.5}main{padding-top:clamp(34px,5vw,64px);padding-bottom:80px}.wide{width:100%}.form-stack{display:grid;gap:18px}.form-stack label{margin:0 0 7px}.form-stack .hint{margin:-5px 0 0}.form-stack .btn{margin-top:4px}.card{padding:clamp(22px,3vw,30px)}.empty{padding:clamp(38px,7vw,64px)}.empty.compact{padding:30px}.empty h2,.empty h3{margin-top:0}.dashboard-head{gap:32px;margin-bottom:32px}.dashboard-head>div:first-child{max-width:760px}.dashboard-head h1{line-height:.95;margin:12px 0 16px}.section{margin-top:52px}.section-head{margin-bottom:22px}.grid{gap:24px}.club-grid{margin-top:24px}.event-grid .event-card{padding:26px}.match{padding:24px}.final-score{margin:18px 0 0}.link.active{background:var(--mint);border-radius:999px}.table-wrap{overflow:auto;border-radius:20px}.rank-name{display:block;color:#587066;font-weight:800;margin-top:2px}.scoreboard th,.scoreboard td{padding:15px 16px}.scoreboard tbody tr:nth-child(even){background:#f4fff8}

select{appearance:none;border-radius:999px;background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 19px) 50%,calc(100% - 14px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding:13px 44px 13px 18px;font-weight:800;box-shadow:3px 3px 0 var(--ink);cursor:pointer}.select-wrap{min-width:230px}.select-wrap label{margin:0 0 8px;font-size:.85rem}.select-wrap select{min-width:230px}

.control-bar{display:flex;justify-content:flex-end;margin:0 0 26px}.demo-toggle{margin:0;display:flex;align-items:center;gap:22px;background:#fff;border:2px solid var(--ink);border-radius:22px;padding:14px 16px 14px 20px;box-shadow:3px 3px 0 var(--ink);cursor:pointer}.demo-toggle>span:first-child{display:grid;gap:2px}.demo-toggle small{font-size:.78rem;color:#587066;font-weight:700}.switch{position:relative;display:block;width:54px;height:31px}.switch input{position:absolute;opacity:0;pointer-events:none}.switch>span{position:absolute;inset:0;background:#d7ded9;border:2px solid var(--ink);border-radius:999px;transition:.2s}.switch>span:after{content:'';position:absolute;width:21px;height:21px;left:3px;top:3px;background:#fff;border:2px solid var(--ink);border-radius:50%;transition:.2s}.switch input:checked+span{background:var(--lime)}.switch input:checked+span:after{transform:translateX(23px)}.switch input:focus-visible+span{box-shadow:0 0 0 4px var(--mint)}.demo-card{background:linear-gradient(145deg,#fff 0 65%,#ffe1f0)}.demo-ribbon{display:inline-block;margin-bottom:28px;padding:9px 14px;background:var(--yellow);border:2px solid var(--ink);border-radius:999px;font-weight:900}

.leaderboard-shell{background:linear-gradient(180deg,#efffe9 0,#fffdf4 45%);border:2px solid var(--ink);border-radius:30px;padding:clamp(20px,4vw,40px);box-shadow:7px 7px 0 var(--ink)}.leaderboard-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.leaderboard-banner h2{font-size:clamp(2rem,5vw,3.6rem);line-height:1;margin:8px 0 0}.pickle-badge{flex:0 0 auto;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--lime);border:2px solid var(--ink);font-size:15px;line-height:13px;letter-spacing:9px;padding-left:9px;transform:rotate(8deg);box-shadow:4px 4px 0 var(--ink)}.podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;max-width:780px;margin:42px auto 38px;text-align:center}.podium-player{position:relative;display:flex;flex-direction:column;align-items:center;min-width:0}.podium-icon{font-size:1.8rem;line-height:1;filter:drop-shadow(2px 2px 0 #fff)}.avatar{width:68px;height:68px;display:grid;place-items:center;border:3px solid var(--ink);border-radius:50%;background:var(--mint);font-size:1.65rem;font-weight:900;box-shadow:3px 3px 0 var(--ink);margin:6px 0 10px}.place-1 .avatar{width:82px;height:82px;background:var(--lime);font-size:2rem}.place-3 .avatar{background:#ffe2b8}.podium-player h3{font-size:clamp(.95rem,2vw,1.25rem);margin:0;overflow-wrap:anywhere}.podium-title{font-size:.76rem;font-weight:900;color:var(--pink);margin:3px 0 5px}.podium-player>b{font-size:.85rem}.podium-block{display:grid;place-items:center;width:100%;height:76px;margin-top:12px;border:2px solid var(--ink);border-radius:16px 16px 5px 5px;background:var(--mint);font-size:2rem;font-weight:900}.place-1 .podium-block{height:116px;background:var(--lime)}.place-3 .podium-block{height:58px;background:var(--yellow)}

.tour-modal{width:min(620px,100%);padding:0;overflow:hidden}.tour-modal>.close{display:none}.tour-card{padding:clamp(28px,6vw,48px)}.tour-top{display:flex;align-items:start;justify-content:space-between;margin-bottom:24px}.tour-icon{font-size:4rem;line-height:1}.tour-skip{border:0;background:transparent;text-decoration:underline;font-weight:800;color:#587066;padding:8px}.tour-card h2{font-size:clamp(2rem,5vw,3rem);line-height:1.05;margin:12px 0 16px}.tour-card p{font-size:1.12rem;line-height:1.65;margin:0;max-width:500px}.tour-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:36px}.tour-dots{display:flex;gap:8px}.tour-dots span{width:12px;height:12px;border:2px solid var(--ink);border-radius:50%;background:#fff}.tour-dots span.active{background:var(--pink)}

@media(max-width:800px){.topbar{padding-inline:12px}.topbar nav{gap:2px;overflow-x:auto}.topbar nav .link{display:inline-flex;font-size:.8rem;padding:8px}.topbar nav .link[data-action="tour"]{display:none}.topbar nav .btn{padding:8px 10px;font-size:.78rem}.dashboard-head{align-items:flex-start}.control-bar{justify-content:stretch}.demo-toggle{width:100%;justify-content:space-between}.leaderboard-head .select-wrap,.leaderboard-head select{width:100%}.podium{gap:6px;margin-top:32px}.leaderboard-shell{border-radius:22px}.section{margin-top:40px}}
@media(max-width:480px){main{padding-inline:16px}.topbar{height:64px}.ball{width:36px;height:36px}.topbar nav .link{font-size:.72rem;padding:7px 6px}.topbar nav .btn{font-size:.72rem;padding:7px 8px}.card{padding:20px}.leaderboard-shell{padding:18px 12px}.leaderboard-banner{padding-inline:6px}.pickle-badge{width:50px;height:50px}.avatar{width:54px;height:54px;font-size:1.25rem}.place-1 .avatar{width:62px;height:62px;font-size:1.5rem}.podium-player h3{font-size:.82rem}.podium-title{font-size:.65rem}.podium-block{height:58px}.place-1 .podium-block{height:88px}.place-3 .podium-block{height:44px}.scoreboard th,.scoreboard td{padding:11px 8px}.tour-footer{align-items:flex-end}.tour-footer .row{justify-content:flex-end}.demo-toggle{gap:10px;padding-left:14px}}
