.season-passes{--tpfw-accent: #a8752c;--tpfw-accent-fg: #ffffff;--tpfw-ink: #1d2327;--tpfw-border: #dcdcde;--tpfw-bg: #fff;--tpfw-hint: #646970;--tpfw-error: #c0362c;--tpfw-sunk: color-mix(in srgb, var(--tpfw-bg) 94%, var(--tpfw-ink));--tpfw-danger-soft: color-mix(in srgb, var(--tpfw-bg) 88%, var(--tpfw-error));width:100%;max-width:620px;margin:24px 0;background:var(--tpfw-bg);color:var(--tpfw-ink);border:1px solid var(--tpfw-border);border-radius:14px;box-shadow:0 1px 2px rgba(24,38,28,.05),0 8px 20px rgba(24,38,28,.05)}.tpfw-roster-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 18px 14px}.tpfw-roster-head label{display:block;margin:0;font-size:1.05rem;font-weight:650;line-height:1.3;color:var(--tpfw-ink)}.tpfw-roster-hint{margin:4px 0 0;font-size:.85rem;line-height:1.5;color:var(--tpfw-hint);max-width:42ch}.tpfw-stepper{flex:none;display:flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--tpfw-border);border-radius:999px;background:var(--tpfw-sunk)}.tpfw-stepper button{width:28px;height:28px;padding:0;margin:0;border:none;border-radius:999px;background:rgba(0,0,0,0);box-shadow:none;color:var(--tpfw-ink);font:inherit;font-size:17px;line-height:1;cursor:pointer}.tpfw-stepper button:hover{background:var(--tpfw-bg);box-shadow:0 1px 2px rgba(0,0,0,.12)}.tpfw-stepper button:disabled{opacity:.3;cursor:not-allowed;background:rgba(0,0,0,0);box-shadow:none}.tpfw-stepper .tpfw-stepper-value{min-width:72px;text-align:center;font-size:.82rem;font-weight:650;font-variant-numeric:tabular-nums}.tpfw-roster-list{list-style:none;margin:0;padding:0}.tpfw-roster-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px 12px;align-items:center;margin:0;padding:12px 18px;border-top:1px solid var(--tpfw-border)}.tpfw-roster-row.is-open{background:var(--tpfw-sunk)}.tpfw-avatar{width:34px;height:34px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;background:var(--tpfw-sunk);border:1px dashed var(--tpfw-border);color:var(--tpfw-hint);font-variant-numeric:tabular-nums}.tpfw-roster-row.is-named .tpfw-avatar{background:var(--tpfw-accent);border:1px solid var(--tpfw-accent);color:var(--tpfw-accent-fg)}.tpfw-namefield{display:flex;border:1px solid var(--tpfw-border);border-radius:10px;background:var(--tpfw-bg);overflow:hidden;min-width:0}.tpfw-namefield:focus-within{border-color:var(--tpfw-accent);box-shadow:0 0 0 1px var(--tpfw-accent)}.tpfw-namefield input[type=text]{flex:1 1 50%;min-width:0;box-sizing:border-box;margin:0;height:auto;min-height:0;box-shadow:none;border:none;border-radius:0;padding:9px 11px;font:inherit;font-size:.9rem;color:var(--tpfw-ink);background:rgba(0,0,0,0)}.tpfw-namefield input[type=text]:focus{outline:none;box-shadow:none}.tpfw-namefield input[type=text]::placeholder{color:var(--tpfw-hint)}.tpfw-namefield input[type=text]+input[type=text]{border-left:1px solid var(--tpfw-border)}.tpfw-rowtools{display:flex;gap:4px}.tpfw-iconbtn{width:32px;height:32px;border:1px solid var(--tpfw-border);border-radius:10px;background:var(--tpfw-bg);color:var(--tpfw-hint);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.tpfw-iconbtn:hover{color:var(--tpfw-ink);border-color:var(--tpfw-ink)}.tpfw-iconbtn.is-on{background:var(--tpfw-accent);border-color:var(--tpfw-accent);color:var(--tpfw-accent-fg)}.tpfw-iconbtn svg{width:16px;height:16px;display:block}.tpfw-roster-email{grid-column:2/-1;display:none}.tpfw-roster-email input[type=text]{width:100%;box-sizing:border-box;margin:0;height:auto;min-height:0;box-shadow:none;padding:9px 11px;border:1px solid var(--tpfw-border);border-radius:10px;font:inherit;font-size:.9rem;background:var(--tpfw-bg);color:var(--tpfw-ink)}.tpfw-roster-email input[type=text]:focus{outline:none;border-color:var(--tpfw-accent);box-shadow:0 0 0 1px var(--tpfw-accent)}.tpfw-roster-email input[type=text]::placeholder{color:var(--tpfw-hint)}.tpfw-roster-row.is-open .tpfw-roster-email{display:block}.tpfw-roster-email-hint{margin:5px 2px 0;font-size:.78rem;line-height:1.4;color:var(--tpfw-hint)}.season-passes .field-error{display:none;grid-column:2/-1;margin:0;font-size:.78rem;line-height:1.4;color:var(--tpfw-error)}.tpfw-roster-email .field-error{margin-top:5px}.tpfw-roster-row.is-invalid .tpfw-namefield{border-color:var(--tpfw-error);background:var(--tpfw-danger-soft)}.tpfw-roster-row.is-invalid .tpfw-error-name{display:block}.tpfw-roster-row.is-invalid-email .tpfw-roster-email input[type=text]{border-color:var(--tpfw-error);background:var(--tpfw-danger-soft)}.tpfw-roster-row.is-invalid-email .tpfw-error-email{display:block}.tpfw-roster-row.is-invalid-email .tpfw-roster-email-hint{display:none}.tpfw-roster-add{width:100%;padding:12px 18px;border:none;border-top:1px solid var(--tpfw-border);background:rgba(0,0,0,0);color:var(--tpfw-hint);font:inherit;font-size:.85rem;font-weight:600;text-align:left;cursor:pointer}.tpfw-roster-add:hover{background:var(--tpfw-sunk);color:var(--tpfw-ink)}.tpfw-roster-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 18px;border-top:1px solid var(--tpfw-border);border-radius:0 0 14px 14px;background:var(--tpfw-sunk);font-size:.85rem;color:var(--tpfw-hint)}.tpfw-roster-foot strong{color:var(--tpfw-ink);font-variant-numeric:tabular-nums}.tpfw-progress{flex:1 1 auto;height:4px;max-width:120px;border-radius:999px;background:color-mix(in srgb, var(--tpfw-border) 25%, var(--tpfw-bg));overflow:hidden}.tpfw-progress i{display:block;height:100%;width:0;background:var(--tpfw-accent);transition:width .2s ease}@media(max-width: 420px){.tpfw-roster-row{grid-template-columns:34px 1fr}.tpfw-rowtools{grid-column:2;justify-content:flex-start}}
