.dashboard-header { margin-bottom:0; }
.simple-dashboard { padding:24px 0 56px; background:#f4f7f8; }
.simple-dashboard .container { max-width:1040px; }
.dashboard-welcome { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:18px; }
.dashboard-welcome h1 { margin:0; color:#111820; font-size:clamp(1.75rem,6vw,2.5rem); }
.dashboard-welcome > div > p:last-child { margin:5px 0 0; color:#667085; }
.dashboard-eyebrow { margin:0 0 5px; color:#1479d4; font-size:.75rem; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.activation-journey { margin:0 0 22px; padding:22px; border:1px solid #dbe6ef; border-radius:16px; background:#fff; box-shadow:0 8px 24px rgba(16,42,67,.06); }
.activation-journey-head { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; }
.activation-journey-head h2 { margin:0; color:#111820; font-size:1.45rem; }
.activation-journey-head p:last-child { margin:5px 0 0; color:#667085; }
.activation-journey-head > strong { color:#1479d4; font-size:1.35rem; }
.activation-progress { height:8px; margin:17px 0; overflow:hidden; border-radius:999px; background:#e9eff4; }
.activation-progress span { display:block; width:0; height:100%; border-radius:inherit; background:#1479d4; transition:width .25s ease; }
.activation-steps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin:0; padding:0; list-style:none; }
.activation-steps li { display:grid; grid-template-columns:auto minmax(0,1fr); gap:9px; align-items:start; min-width:0; padding:12px; border:1px solid #e4e9ee; border-radius:12px; }
.activation-steps li.is-next { border-color:#1479d4; background:#f2f8fe; box-shadow:0 0 0 2px rgba(20,121,212,.08); }
.activation-step-icon { display:grid; place-items:center; width:24px; height:24px; color:#98a2b3; }
.activation-steps .is-complete .activation-step-icon { color:#16803c; }
.activation-steps strong,.activation-steps small { display:block; }
.activation-steps strong { color:#202b33; font-size:.88rem; }
.activation-steps small { margin-top:3px; color:#667085; font-size:.76rem; line-height:1.35; }
.activation-steps a { grid-column:2; color:#0969b5; font-size:.78rem; font-weight:800; }
.club-registration-banner { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:14px; align-items:center; min-height:94px; margin:-6px 0 22px; padding:17px 20px; overflow:hidden; color:#fff; border-radius:16px; background:linear-gradient(120deg,#101820,#203b50); box-shadow:0 12px 28px rgba(16,24,32,.18); text-decoration:none; }
.club-registration-banner[hidden] { display:none !important; }
.club-registration-banner:hover,.club-registration-banner:focus { color:#fff; transform:translateY(-1px); text-decoration:none; }
.club-registration-banner-icon { display:grid; width:52px; height:52px; place-items:center; border-radius:13px; background:#1479d4; font-size:1.35rem; }
.club-registration-banner small,.club-registration-banner strong,.club-registration-banner em { display:block; }
.club-registration-banner small { color:#8ecbff; font-size:.72rem; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.club-registration-banner strong { margin:1px 0 2px; font-size:1.25rem; }
.club-registration-banner em { color:#d7e1e8; font-size:.9rem; font-style:normal; }
.club-registration-banner-action { display:flex; align-items:center; gap:8px; padding:10px 13px; border-radius:10px; color:#fff; background:#1479d4; font-weight:900; white-space:nowrap; }
.dashboard-profile-link { display:flex; align-items:center; gap:10px; padding:9px 12px; color:#344054; border:1px solid #dbe3e8; border-radius:12px; background:#fff; text-decoration:none; }
.dashboard-profile-link img { width:42px; height:42px; object-fit:cover; border-radius:50%; }
.dashboard-profile-link strong,.dashboard-profile-link small { display:block; }
.dashboard-profile-link small { color:#667085; }
.ticket-primary-cta { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:14px; align-items:center; min-height:126px; margin-bottom:22px; padding:20px; color:#fff; border-radius:16px; background:linear-gradient(135deg,#0b65b1,#1479d4); box-shadow:0 14px 34px rgba(20,121,212,.24); text-decoration:none; }
.ticket-primary-cta:hover,.ticket-primary-cta:focus { color:#fff; transform:translateY(-1px); text-decoration:none; }
.ticket-primary-icon { display:grid; width:58px; height:58px; place-items:center; border-radius:14px; background:rgba(255,255,255,.16); font-size:1.7rem; }
.ticket-primary-cta small,.ticket-primary-cta strong,.ticket-primary-cta em { display:block; }
.ticket-primary-cta small { color:rgba(255,255,255,.78); font-weight:800; }
.ticket-primary-cta strong { margin:2px 0; font-size:clamp(1.35rem,5vw,1.85rem); }
.ticket-primary-cta em { color:rgba(255,255,255,.9); font-style:normal; }
.club-scan-cta { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:12px; align-items:center; min-height:78px; margin:-8px 0 22px; padding:14px 16px; color:#172d3d; border:2px solid #1479d4; border-radius:14px; background:#fff; text-decoration:none; }
.club-scan-cta[hidden] { display:none !important; }
.club-scan-cta:hover,.club-scan-cta:focus { color:#172d3d; background:#eff6ff; text-decoration:none; }
.club-scan-cta > span:first-child { display:grid; width:44px; height:44px; place-items:center; color:#fff; border-radius:11px; background:#1479d4; }
.club-scan-cta strong,.club-scan-cta small { display:block; }
.club-scan-cta small { margin-top:2px; color:#667085; }
.dashboard-section,.dashboard-alert-panel { margin-bottom:20px; padding:18px; border:1px solid #dbe3e8; border-radius:14px; background:#fff; box-shadow:0 8px 24px rgba(31,41,51,.05); }
.dashboard-engagement-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr); gap:20px; align-items:start; }
.dashboard-engagement-grid .dashboard-section { min-height:100%; }
.dashboard-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:14px; margin-bottom:14px; }
.dashboard-section-heading h2,.dashboard-alert-panel h2 { margin:0; color:#111820; font-size:1.3rem; }
.dashboard-section-heading > a { color:#0b65b1; font-weight:800; }
.dashboard-bookings { display:grid; gap:10px; }
.dashboard-booking-card { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:13px; align-items:center; padding:13px; border:1px solid #e4e9ed; border-radius:12px; }
.dashboard-booking-card time { display:grid; width:56px; height:60px; place-items:center; align-content:center; border-radius:10px; color:#fff; background:#111820; line-height:1; text-align:center; }
.dashboard-booking-card time strong { font-size:1.35rem; }
.dashboard-booking-card time span { margin-top:3px; font-size:.72rem; font-weight:900; text-transform:uppercase; }
.dashboard-booking-card h3 { margin:3px 0; color:#111820; font-size:1.05rem; }
.dashboard-booking-card p { margin:0; color:#667085; font-size:.88rem; }
.booking-state { display:inline-flex; padding:3px 7px; border-radius:999px; color:#166534; background:#dcfce7; font-size:.68rem; font-weight:900; text-transform:uppercase; }
.booking-state.is-waitlist { color:#92400e; background:#fef3c7; }
.dashboard-booking-card .btn { min-height:44px; display:inline-flex; align-items:center; justify-content:center; }
.dashboard-empty { display:grid; gap:8px; justify-items:start; padding:18px; color:#667085; border:1px dashed #cfd8df; border-radius:12px; background:#f8fafc; }
.dashboard-empty strong { color:#111820; font-size:1.05rem; }
.dashboard-alert-panel { display:flex; align-items:center; justify-content:space-between; gap:16px; border-color:#f5c451; background:#fffbeb; }
.dashboard-alert-panel p:last-child { margin:5px 0 0; color:#7c4a03; }
.dashboard-quick-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.dashboard-quick-links a { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:12px; align-items:center; min-height:76px; padding:14px; color:#344054; border:1px solid #e1e7eb; border-radius:12px; text-decoration:none; }
.dashboard-quick-links a:hover,.dashboard-quick-links a:focus { border-color:#93c5fd; background:#eff6ff; }
.dashboard-quick-links a > i:first-child { display:grid; width:42px; height:42px; place-items:center; color:#0b65b1; border-radius:10px; background:#e8f3fc; }
.dashboard-quick-links strong,.dashboard-quick-links small { display:block; }
.dashboard-quick-links small { margin-top:2px; color:#667085; line-height:1.3; }
.dashboard-footer-actions { display:flex; justify-content:center; gap:18px; padding-top:4px; }
.dashboard-footer-actions a,.dashboard-footer-actions button { min-height:44px; padding:10px; color:#475467; border:0; background:transparent; font-weight:800; text-decoration:underline; }
.engagement-feed { display:grid; gap:10px; }
.engagement-feed-item { display:grid; grid-template-columns:auto minmax(0,1fr); gap:12px; align-items:start; padding:12px; border:1px solid #e3e9ef; border-radius:10px; color:#344054; text-decoration:none; }
.engagement-feed-item:hover,.engagement-feed-item:focus { border-color:#9bc0e1; background:#f7fbff; color:#172d3d; text-decoration:none; }
.engagement-feed-icon { display:grid; width:38px; height:38px; place-items:center; border-radius:9px; color:#0b65b1; background:#e8f3fc; }
.engagement-feed-item strong,.engagement-feed-item em,.engagement-feed-item small { display:block; min-width:0; overflow-wrap:anywhere; }
.engagement-feed-item strong { color:#111820; }
.engagement-feed-item em { margin-top:2px; color:#667085; font-style:normal; line-height:1.35; }
.engagement-feed-item small { margin-top:5px; color:#7a8794; font-size:.78rem; font-weight:800; }
.engagement-empty { padding:18px; border:1px dashed #cfd8df; border-radius:12px; background:#f8fafc; color:#667085; }
.engagement-completion-top { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.engagement-completion-top h2 { margin:0; color:#111820; font-size:1.3rem; }
.engagement-completion-top strong { color:#0b65b1; font-size:2rem; line-height:1; }
.engagement-progress { height:11px; margin:14px 0; overflow:hidden; border-radius:999px; background:#e5edf3; }
.engagement-progress span { display:block; height:100%; border-radius:inherit; background:#1479d4; }
.engagement-muted { margin:0 0 12px; color:#667085; line-height:1.45; }
.engagement-checklist { display:grid; gap:8px; }
.engagement-checklist a { display:flex; align-items:center; gap:9px; min-height:42px; padding:9px 10px; border:1px solid #e3e9ef; border-radius:9px; color:#344054; font-weight:800; text-decoration:none; }
.engagement-checklist a:hover,.engagement-checklist a:focus { border-color:#93c5fd; background:#eff6ff; color:#172d3d; }
@media (max-width:767px) {
  .activation-journey { padding:17px; }
  .activation-steps { grid-template-columns:1fr; }
  .activation-steps li { grid-template-columns:auto minmax(0,1fr) auto; align-items:center; }
  .activation-steps a { grid-column:3; grid-row:1; white-space:nowrap; }
  .club-registration-banner { grid-template-columns:auto minmax(0,1fr); padding:16px; }
  .club-registration-banner-action { grid-column:1 / -1; justify-content:center; }
  .simple-dashboard { padding-top:18px; }
  .dashboard-welcome { align-items:flex-start; }
  .dashboard-profile-link span { display:none; }
  .ticket-primary-cta { min-height:116px; padding:17px; }
  .ticket-primary-icon { width:50px; height:50px; }
  .dashboard-section,.dashboard-alert-panel { padding:14px; border-radius:12px; }
  .dashboard-section-heading { align-items:flex-start; }
  .dashboard-booking-card { grid-template-columns:auto minmax(0,1fr); }
  .dashboard-booking-card .btn { grid-column:1 / -1; width:100%; }
  .dashboard-alert-panel { display:grid; }
  .dashboard-alert-panel .btn { width:100%; min-height:46px; }
  .dashboard-engagement-grid { grid-template-columns:1fr; }
  .dashboard-quick-links { grid-template-columns:1fr; }
}
@media (max-width:420px) {
  .ticket-primary-cta { grid-template-columns:auto minmax(0,1fr); }
  .ticket-primary-cta > i:last-child { display:none; }
  .ticket-primary-cta em { font-size:.85rem; }
  .dashboard-section-heading { display:grid; }
}
.club-application-panel{align-items:center;display:grid;gap:16px;grid-template-columns:52px minmax(0,1fr) auto;border-left:4px solid var(--color-warning)!important}.club-application-panel[hidden]{display:none}.club-application-panel.is-approved{border-left-color:var(--color-success)!important}.club-application-panel.is-rejected{border-left-color:var(--color-danger)!important}.club-application-state-icon{align-items:center;background:var(--color-primary-soft);border-radius:10px;color:var(--color-primary-bright);display:flex;font-size:1.3rem;height:52px;justify-content:center;width:52px}.club-application-panel h2{font-size:1.25rem;margin:2px 0 6px}.club-application-panel p,.club-application-panel small{display:block;margin:0}.club-application-state-action{justify-self:end}@media(max-width:767px){.club-application-panel{grid-template-columns:44px minmax(0,1fr);padding:16px!important}.club-application-state-icon{height:44px;width:44px}.club-application-state-action{grid-column:1/-1;justify-self:stretch}.club-application-state-action .btn{min-height:46px;width:100%}}
