/* Private Club screens (P2 bot parity); builds on app.css + phase3.css tokens. */
.club-member{text-align:left;padding:18px 16px}
.club-id{display:flex;align-items:center;gap:12px}
.club-id h2{margin:0 0 2px;font-size:1.15rem;color:var(--gold);overflow-wrap:anywhere}
.club-id p{margin:0}
.club-id .club-emblem{font-size:32px;line-height:1}
.club-meter{margin:12px 0 0}
.club-meter-copy{display:flex;justify-content:space-between;gap:8px;font-size:.8rem;color:var(--muted)}
.club-meter-copy strong{color:var(--text);font-weight:650;text-align:right}
.club-meter-track{display:block;height:6px;margin-top:6px;border-radius:var(--pill);background:var(--raised);overflow:hidden}
.club-meter-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold),var(--gold-end))}
.club-nudge{font-size:.8rem;color:var(--gold);margin:10px 0 0}
.club-member .switch{min-height:48px;margin:10px 0 0;padding:6px 0}
.club-plans{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.club-plans .tag,.club-plans button.tag{font-size:.75rem;padding:6px 10px;border:1px solid var(--line);background:var(--raised);color:var(--text)}
.club-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px 0 10px;margin:0 0 6px;overscroll-behavior-x:contain}
.club-tabs::-webkit-scrollbar{display:none}
.club-tabs button{flex:0 0 auto;font-size:.8rem;padding:9px 13px;border-radius:var(--pill);white-space:nowrap}
.club-tabs button[aria-selected=true]{background:var(--gold);border-color:var(--gold);color:var(--on-gold)}
.club-body .segments button{font-size:.78rem;padding:9px 4px;overflow-wrap:anywhere}
.club-marks{position:absolute;top:8px;left:8px;font-size:.75rem;padding:3px 7px;border-radius:var(--pill);background:rgba(0,0,0,.55);color:#fff;pointer-events:none}
.club-photos{display:flex;gap:6px;overflow-x:auto;scroll-snap-type:x mandatory;margin:4px -4px 10px;padding:0 4px;scrollbar-width:none}
.club-photos::-webkit-scrollbar{display:none}
.club-photos img{flex:0 0 86%;max-width:420px;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius);scroll-snap-align:center;background:var(--surface)}
.club-photos img:only-child{flex-basis:100%}
.club-summary{margin:12px 0;padding:10px 12px;border-left:3px solid var(--gold);background:var(--surface);border-radius:0 var(--radius) var(--radius) 0;font-size:.85rem}
.club-summary p{margin:4px 0 0;white-space:pre-line;overflow-wrap:anywhere}
.club-live{border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:12px 0;background:var(--surface)}
.club-live h3{margin:0 0 6px;font-size:.95rem}
.club-live p{margin:4px 0;font-size:.85rem}
.club-live .facts{margin:8px 0 0}
.club-about{border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:12px 0}
.club-about summary{font-weight:700;cursor:pointer}
.club-about p{font-size:.85rem;white-space:pre-line}
.club-role{border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:12px 0;background:var(--surface)}
.club-role h3{margin:0 0 6px;color:var(--gold)}
.club-role p{margin:4px 0;font-size:.85rem}
.club-row{flex-wrap:wrap;align-items:flex-start}
.club-row-person{display:flex;align-items:center;gap:10px;flex:1;min-width:0;border:0;background:none;padding:0;text-align:left}
.club-row-person .community-copy{display:flex;flex-direction:column;min-width:0}
.club-row-person strong{overflow-wrap:anywhere}
.club-row-person small{color:var(--muted);font-size:.75rem}
.club-row-note{flex-basis:100%;margin:6px 0 0;font-size:.8rem}
.club-row-actions{display:flex;gap:8px;flex-basis:100%}
.club-row-actions button{flex:1;font-size:.8rem;padding:9px 8px}
.club-state-approved{color:var(--success)}
.club-state-rejected{color:var(--danger)}
.club-state-pending{color:var(--gold)}
.club-field{margin:14px 0;padding:0 0 12px;border-bottom:1px solid var(--line)}
.club-field h3{margin:0 0 4px;font-size:.95rem}
.club-field h4{margin:12px 0 2px;font-size:.82rem;color:var(--muted)}
.club-field .chips{padding:4px 0}
.club-field .chips button{flex:0 1 auto;font-size:.8rem;padding:8px 11px}
.club-input{display:flex;flex-direction:column;gap:4px;margin:10px 0;font-size:.82rem;color:var(--muted)}
.club-input input{margin:0;font-size:.95rem;color:var(--text)}
.club-edit{border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:12px 0}
.club-edit summary{font-weight:700;cursor:pointer}
.club-edit>p{font-size:.85rem}
.club-toast{position:fixed;left:50%;bottom:calc(var(--nav-height,64px) + var(--safe-bottom,0px) + 14px);transform:translateX(-50%);
  max-width:min(92vw,420px);margin:0;padding:10px 14px;border-radius:12px;background:var(--raised);color:var(--text);
  border:1px solid var(--line);font-size:.85rem;z-index:50;box-shadow:0 8px 24px rgba(0,0,0,.45);text-align:center}
.club-sheet .profile-actions{flex-wrap:wrap}
.club-sheet .profile-actions button{flex:1 1 auto}
@media(max-width:360px){.club-tabs button{padding:8px 11px;font-size:.76rem}.club-meter-copy{flex-direction:column;gap:2px}.club-meter-copy strong{text-align:left}}
/* P3: joining in the app (form steps, showcase uploads, Stars plans). */
.club-join-progress{margin:6px 0 14px}
.club-join-step h3{font-size:1.05rem}
.club-join-chips button{flex:0 1 auto;font-size:.85rem;padding:9px 12px}
.club-join-ages{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.club-check{display:flex;gap:10px;align-items:flex-start;margin:12px 0;font-size:.88rem;line-height:1.35}
.club-check input{flex:0 0 auto;width:22px;height:22px;margin:0;accent-color:var(--gold)}
.club-input select{margin:0;font-size:.95rem;color:var(--text)}
.club-assets{border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:12px 0;background:var(--surface)}
.club-assets h3{margin:0 0 8px;font-size:.95rem}
.club-asset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.club-asset{position:relative;aspect-ratio:4/5;border-radius:10px;overflow:hidden;background:var(--raised)}
.club-asset img{width:100%;height:100%;object-fit:cover;display:block}
.club-asset-video{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:28px}
.club-asset-remove{position:absolute;top:4px;right:4px;min-width:32px;min-height:32px;padding:0;border-radius:var(--pill);background:rgba(0,0,0,.6);color:#fff;border:0;font-size:.85rem}
.club-asset-add{aspect-ratio:4/5;border:1px dashed var(--line);border-radius:10px;background:none;color:var(--gold);font-size:.8rem;padding:6px;overflow-wrap:anywhere}
.club-voice{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:12px 0 4px;font-size:.88rem}
.club-voice button{font-size:.8rem;padding:8px 12px}
.club-assets .profile-actions{flex-wrap:wrap;margin-top:8px}
.club-assets .profile-actions button{flex:1 1 auto}
.club-assets progress{width:100%;margin-top:8px}
button.recording{background:var(--danger);border-color:var(--danger);color:#fff}
.club-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:10px 0}
.club-plan{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;border:1px solid var(--gold);border-radius:12px;background:var(--surface);color:var(--text);text-align:left}
.club-plan strong{font-size:.9rem}
.club-plan-price{color:var(--gold);font-weight:700}
.club-join-action{margin:12px 0}
.club-event-admin{border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:0 0 12px;background:var(--surface)}
.club-event-admin h3{margin:0 0 8px;font-size:.95rem}
.club-event-admin .club-row-actions{flex-wrap:wrap}
.club-event-admin .club-row-actions button{flex:1 1 40%}
.profile-verify{margin:8px 0 0}
.club-event-media .club-asset{width:120px;margin:0 0 8px}
.club-event-cover{border-radius:12px;overflow:hidden;margin:0 0 10px;background:var(--raised)}
.club-event-cover img{width:100%;max-height:320px;object-fit:cover;display:block}
/* Entry: compact hero, one-row stats, role switch + one card, radio plans, docked primary action. */
.club-hero{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;margin:8px 0 12px;border:1px solid var(--line);border-radius:18px;background:radial-gradient(ellipse at top left,color-mix(in srgb,var(--gold) 14%,var(--surface)),var(--surface))}
.club-hero .club-emblem{font-size:30px;line-height:1.1}
.club-hero p{margin:0;font-size:.88rem;line-height:1.45}
.club-hero p+p{margin-top:6px}
.club-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 4px}
.club-stat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;border:1px solid var(--line);border-radius:14px;background:var(--surface);text-align:center;min-width:0}
.club-stat strong{font-size:1.25rem;color:var(--gold);line-height:1.1}
.club-stat small{font-size:.72rem;color:var(--muted);overflow-wrap:anywhere}
.club-role-switch button[aria-checked=true]{background:var(--raised);color:var(--gold)}
.club-role-card{margin:0 0 12px}
.club-role-card h4{margin:12px 0 0;font-size:.82rem;color:var(--muted)}
.club-plan[aria-checked=true]{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 14%,var(--surface));box-shadow:inset 0 0 0 1px var(--gold)}
.club-plan[aria-checked=false]{border-color:var(--line)}
.club-plan-grid{grid-template-columns:repeat(auto-fit,minmax(84px,1fr))}
.club-plan{padding:10px}.club-plan strong{font-size:.84rem;overflow-wrap:anywhere}
.club-dock{position:sticky;bottom:-24px;z-index:3;margin:16px -14px -24px;padding:14px 14px 16px;background:linear-gradient(to bottom,transparent,var(--bg) 26%)}
.club-dock>button,.club-dock>a{margin:0;width:100%}
.club-dock:empty{display:none}
