/* Geometry and states observed on the approved loyalty reference. */
.ph-site .club-page{display:block;max-width:1280px;width:min(100% - 40px,1280px);padding:44px 0 64px}
.club-hero{padding:0;margin-bottom:40px;text-align:center}
.ph-site .club-title{margin:0 0 16px;background:linear-gradient(135deg,#22c55e,#06bfff 50%,#3b82f6);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:#06bfff;font:700 clamp(30px,4vw,42px)/1.25 var(--ph-display);letter-spacing:-1px}
.club-title .icon{width:44px;height:44px;vertical-align:-.12em;margin-right:8px;color:#fff}
.club-copy{max-width:700px;margin:0 auto;color:#a0aec0;font:400 16.8px/1.7 var(--ph-body)}
.club-copy strong,.club-copy a{color:#22c55e;text-decoration:none}
.club-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1000px;margin:0 auto 32px}
.club-benefit{position:relative;overflow:hidden;min-width:0;padding:28px 24px;border:1px solid rgba(255,255,255,.06);border-radius:20px;background:rgba(255,255,255,.03);transition:transform .4s,border-color .4s,box-shadow .4s}
.club-benefit::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#22c55e,#06bfff);opacity:0;transition:opacity .4s}
.club-benefit:hover{transform:translateY(-4px);border-color:rgba(34,197,94,.2);box-shadow:0 20px 50px #0004}
.club-benefit:hover::before{opacity:1}
.club-benefit-icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:16px;border:1px solid;border-radius:14px;font-size:22.4px}
.club-benefit-icon .icon{width:25px;height:25px}
.club-benefit-icon.green{color:#22c55e;background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.2)}
.club-benefit-icon.cyan{color:#06bfff;background:rgba(6,191,255,.12);border-color:rgba(6,191,255,.2)}
.club-benefit-icon.purple{color:#8b5cf6;background:rgba(139,92,246,.12);border-color:rgba(139,92,246,.2)}
.club-benefit h2{margin:17.6px 0 8px;color:#fff;font:700 17.6px/normal var(--ph-display);letter-spacing:normal}
.club-benefit p{margin:14.4px 0;color:#8f98a0;font:400 14.4px/1.6 var(--ph-body)}
.club-benefit a{color:#22c55e;text-decoration:none}
.club-overview{display:flex;justify-content:center;flex-wrap:wrap;gap:16px;max-width:1008px;margin:0 auto 40px}
.club-overview-card{--stat-color:#06bfff;position:relative;overflow:hidden;display:flex;flex:1 0 160px;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:22px 28px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.03);backdrop-filter:blur(20px);text-align:center;transition:transform .4s,border-color .4s,box-shadow .4s}
.club-overview-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--stat-color),transparent);opacity:0;transition:opacity .4s}
.club-overview-card{min-height:149px}
.club-overview-card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.15);box-shadow:0 16px 50px #0005}
.club-overview-card:hover::before{opacity:1}
.club-overview-card:nth-child(2){--stat-color:#22c55e}.club-overview-card:nth-child(3){--stat-color:#3b82f6}.club-overview-card:nth-child(4){--stat-color:#8b5cf6}
.club-overview-card>span{display:block;margin-bottom:8px;color:var(--stat-color)}
.club-overview-card>span .icon{width:29px;height:29px}
.club-overview-card strong{display:block;color:#fff;font:800 32px/normal var(--ph-body);overflow-wrap:anywhere}
.club-overview-card:nth-child(2) strong{display:inline-flex;padding:5px 14px;border:1px solid rgba(255,255,255,.1);border-radius:50px;background:rgba(255,255,255,.05);color:#8f98a0;font:700 12.8px/normal var(--ph-body);text-transform:uppercase;letter-spacing:1px}
.club-overview-card small{margin-top:4px;color:#a0aec0;font:400 12.8px/normal var(--ph-body);letter-spacing:0;line-height:1.5;}
.club-panel{min-width:0}
.club-level-panel{max-width:1100px;margin-inline:auto}
.club-progress{max-width:700px;margin:0 auto 24px}
.club-progress-head{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:10px;color:#c7d5e0;font:400 14.08px var(--ph-body)}
.club-progress-head h2,.club-progress-head p{margin:0;font:inherit;letter-spacing:normal}
.club-track{height:14px;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:50px;background:rgba(255,255,255,.06)}
.club-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#22c55e,#06bfff,#3b82f6);transition:width 1.5s}
.club-level-rail{position:relative;display:flex;overflow-x:auto;overscroll-behavior-x:contain;padding:24px 16px 32px;scrollbar-width:thin;scrollbar-color:rgba(34,197,94,.3) transparent}
.club-level-track{position:relative;display:flex;align-items:center;gap:0;min-width:max-content;padding:20px 0}
.club-road-line{position:absolute;top:50%;left:40px;right:40px;height:4px;border-radius:4px;transform:translateY(-50%);background:linear-gradient(90deg,rgba(34,197,94,.3),rgba(6,191,255,.3),rgba(59,130,246,.3),rgba(0,191,255,.3),rgba(255,140,0,.3),rgba(181,55,242,.3))}
.club-level-stop{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:3px;flex:0 0 140px;min-width:0;padding:0 8px;border:0;background:transparent;color:#8f98a0;cursor:pointer;text-align:center}
.club-level-emblem{position:relative;z-index:1;display:grid;place-items:center;width:68px;height:68px;margin-bottom:10px;border:2px dashed rgba(255,255,255,.1);border-radius:50%;background:rgba(255,255,255,.04);font:28px/1 'Segoe UI Emoji','Apple Color Emoji','Noto Color Emoji',sans-serif;opacity:.6}
.club-level-stop strong{color:#8f98a0;font:700 13.6px/normal var(--ph-display)}
.club-level-stop small{color:#a0aec0;font:400 11.52px/normal var(--ph-body);line-height:1.5;}
.club-level-gifts{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border:1px solid rgba(255,255,255,.06);border-radius:50px;background:rgba(255,255,255,.04);color:#8f98a0;font:700 11.52px/normal var(--ph-body);white-space:nowrap}
.club-level-stop.is-unlocked{color:#fff}.club-level-stop.is-unlocked .club-level-emblem{border:2px solid #22c55e;background:linear-gradient(135deg,rgba(34,197,94,.2),rgba(6,191,255,.15));opacity:1}
.club-level-stop.is-unlocked strong{color:#fff}.club-level-stop.is-unlocked .club-level-gifts{border-color:rgba(34,197,94,.3);background:linear-gradient(135deg,rgba(34,197,94,.2),rgba(6,191,255,.15));color:#22c55e}
.club-level-stop[aria-selected=true] .club-level-emblem{box-shadow:0 0 0 4px rgba(6,191,255,.12)}
.club-level-stop:focus-visible{outline:2px solid var(--ph-primary);outline-offset:4px}
.club-steps{display:grid;grid-template-columns:1fr;gap:18px;margin-top:18px}
.club-step{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:0;padding:24px 16px;border:1px solid var(--ph-line);border-radius:18px;background:var(--ph-darker);text-align:center}
.club-step[hidden]{display:none}.club-step.is-unlocked{border-color:rgba(6,191,255,.45)}
.club-step.is-locked{padding:0;border:0;background:none}
.club-step.is-locked .club-step-top,.club-step.is-locked .club-reward-total{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.club-step .club-road-hint{margin:0;color:#6b7280;font:400 14px var(--ph-body)}
.club-road-hint .icon{width:14px;height:14px;vertical-align:-2px}
.club-milestone-icon{display:grid;place-items:center;width:56px;height:56px;border:1px solid var(--ph-line);border-radius:16px;background:var(--ph-dark);font:28px/1 'Segoe UI Emoji','Apple Color Emoji','Noto Color Emoji',sans-serif}
.club-step-top{display:flex;flex-direction:column;align-items:center;gap:8px}.club-step h3{margin:0;color:#fff;font:700 16px/1.35 var(--ph-display)}
.club-count{color:var(--ph-primary);font:700 12.8px var(--ph-mono)}.club-step p{margin:0;color:var(--ph-muted);line-height:1.5}
.club-reward-total{color:var(--ph-text)!important;font-weight:600}
.club-status{display:inline-flex;align-items:center;padding:5px 10px;border:1px solid var(--ph-line);border-radius:999px;font-size:12px;font-weight:700;max-width:100%}
.club-status.ready{color:var(--ph-success);border-color:rgba(34,197,94,.4)}.club-status.pending{color:var(--ph-warning)}
.club-rewards{width:min(100%,700px);margin-inline:auto;text-align:center}
.club-rewards>summary{width:max-content;max-width:100%;margin:12px auto;padding:10px 18px;border:1px solid var(--ph-line);border-radius:999px;background:var(--ph-dark);color:var(--ph-primary);cursor:pointer}
.club-rewards>div{display:flex;flex-wrap:wrap;justify-content:center;gap:20px}
.club-reward{display:flex;flex-direction:column;align-items:center;gap:12px;flex:1 1 240px;max-width:340px;padding:22px;border:1px solid var(--ph-line);border-radius:16px;background:var(--ph-dark);box-shadow:0 8px 20px #0002}
.club-reward h4{margin:0}.club-reward button{padding:10px;border:1px solid var(--ph-line);border-radius:9px;color:#e8f8ff;background:rgba(6,191,255,.12);min-height:44px;}.club-reward button:disabled{opacity:.5;cursor:not-allowed}.club-reward form{display:grid;gap:10px;width:100%;min-width:0}
.club-code{display:block;width:100%;min-height:1.5em;padding:12px;border-radius:10px;background:var(--ph-darkest);color:var(--ph-success);font:700 20px var(--ph-mono);letter-spacing:.1em;overflow-wrap:anywhere}.club-code:empty{display:none}.club-use-code{font-size:13px}
@media(max-width:768px){.ph-site .club-title{font-size:32px}.club-benefits{grid-template-columns:1fr}.club-overview{gap:10px}.club-overview-card{padding:16px 14px;flex-basis:130px}.club-overview-card strong{font-size:24px}.club-level-stop{flex-basis:120px}.club-level-emblem{width:56px;height:56px}.club-reward{max-width:none}}
@media(max-width:480px){.ph-site .club-page{width:calc(100% - 20px);padding:20px 0 100px}.ph-site .club-title{font-size:25.6px}.club-title .icon{width:28px;height:28px}.club-overview-card{flex-basis:100%}.club-step{padding:20px 16px}}
@media(max-width:768px){.club-overview-card{min-height:126px}.club-overview-card:nth-child(2){min-height:129px}}
@media(prefers-reduced-motion:reduce){.club-benefit,.club-benefit::before,.club-overview-card,.club-overview-card::before,.club-track>span{transition:none}}
