.signup-page{background:var(--color-bg);min-height:100dvh;padding:24px}.signup-shell{width:min(1100px,100%);margin-inline:auto}.signup-header{justify-content:space-between;align-items:center;gap:16px;padding-block:10px 30px;display:flex}.signup-wordmark{font:800 27px/1 var(--font-heading);color:var(--color-text);text-decoration:none}.signup-wordmark span{color:var(--color-accent)}.signup-grid{grid-template-columns:minmax(0,1fr) minmax(0,520px);align-items:start;gap:clamp(30px,6vw,100px);padding-block:clamp(25px,6vw,70px);display:grid}.signup-intro{padding-top:30px}.signup-kicker,.signup-step-label{font:700 12px/1.4 var(--font-body);color:var(--color-accent);margin-bottom:16px}.signup-intro h1{letter-spacing:-.04em;margin-bottom:20px;font-size:clamp(42px,5vw,66px);line-height:1.02}.signup-intro p{color:var(--color-neutral-600);max-width:39ch;font-size:16px;line-height:1.6}.signup-court{outline-offset:-25px;background:#c04a36;border:12px solid #c04a36;outline:2px solid #fff2de;justify-content:space-around;align-items:center;width:min(390px,100%);height:190px;margin-top:55px;display:flex;position:relative;transform:rotate(-6deg);box-shadow:16px 15px #eee3cf}.signup-court:before{content:"";border-top:2px solid #fff2de;position:absolute;inset:50% 12px auto}.signup-court span{z-index:1;color:#9b3b2d;background:#fff2de;border-radius:50%;place-items:center;width:38px;height:38px;font-size:11px;font-weight:800;display:grid;position:relative}.signup-card{background:var(--color-card);border:1px solid var(--color-divider);box-shadow:var(--shadow-md);border-radius:20px;padding:clamp(22px,3.4vw,42px)}.signup-card h2{margin-bottom:18px;font-size:clamp(24px,3vw,32px)}.signup-card .field{margin-bottom:16px}.signup-card .field small{color:var(--color-neutral-600);margin-top:5px;font-size:11px;display:block}.signup-muted{color:var(--color-neutral-600);margin-top:-8px;margin-bottom:20px;font-size:13px;line-height:1.55}.signup-progress{grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:28px;display:grid}.signup-progress>div{border-top:3px solid var(--color-neutral-300);color:var(--color-neutral-500);flex-direction:column;gap:8px;padding-top:8px;font-size:11px;font-weight:600;line-height:1.2;display:flex}.signup-progress>.is-current{border-color:var(--color-accent);color:var(--color-text)}.signup-progress span{font-variant-numeric:tabular-nums}.signup-sports{grid-template-columns:repeat(2,1fr);gap:8px;margin:18px 0 24px;display:grid}.signup-sports button{cursor:pointer;border:1px solid var(--color-divider);background:var(--color-neutral-100);color:var(--color-text);text-align:start;border-radius:12px;padding:15px}.signup-sports button.is-picked{border:2px solid var(--color-accent);background:var(--color-accent-100);padding:14px}.signup-sports span{color:var(--color-neutral-600);margin-bottom:8px;font-size:10px;display:block}.signup-sports strong{font-size:14px}.signup-actions{flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:24px;display:flex}.signup-actions .btn-primary{flex:1}.signup-levels{gap:14px;display:grid}.signup-level{border:1px solid var(--color-divider);border-radius:12px;padding:15px}.signup-level label{justify-content:space-between;font-size:14px;font-weight:700;display:flex}.signup-level input{width:100%;accent-color:var(--color-accent);cursor:pointer;margin-top:16px;display:block}.signup-range{color:var(--color-neutral-500);justify-content:space-between;font-size:11px;display:flex}.signup-review{color:var(--color-neutral-700);background:var(--color-neutral-100);border-radius:10px;margin-top:18px;padding:13px;font-size:12px;line-height:1.55}.signup-signin{border-top:1px solid var(--color-divider);text-align:center;color:var(--color-neutral-600);margin:22px 0 0;padding-top:18px;font-size:13px}.signup-signin a{font-weight:700}@media (max-width:790px){.signup-grid{grid-template-columns:1fr;gap:24px;padding-top:0}.signup-intro{padding-top:0}.signup-intro h1{font-size:36px}.signup-court{display:none}}@media (max-width:450px){.signup-page{padding:14px}.signup-header{flex-wrap:wrap;padding-block:10px 20px}.signup-sports{gap:6px}.signup-sports button{padding:12px}.signup-sports button.is-picked{padding:11px}}
