@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#ecf2ee;--accent:#00c758;--accent-bright:#4ee68d;--text-strong:#f4f8f5;--text-soft:#d6ded8;--text-muted:#9ba8a0;--text-dim:#7b897f;--surface:#12121a;--surface-soft:#ffffff0a;--border-strong:#ffffff1a;--panel-border-color:#ffffff14;--panel-grad-top:#ffffff0b;--panel-grad-bottom:#ffffff05;--panel-bg-base:#0a0a0fd1;--surface-card:#ffffff0a;--surface-border:#ffffff14;--surface-muted:#ffffff0f;--input-bg:#ffffff0a;--input-border:#ffffff1a;--btn-border:#ffffff1f;--slot-disabled-bg:#ffffff05;--slot-disabled-color:#fff3;--divider:#ffffff14;--grid-line:#ffffff06;background:radial-gradient(circle at 0 0,#00c75829,#0000 28%),radial-gradient(circle at 80% 20%,#2796ff1a,#0000 22%),linear-gradient(#0a0a0f 0%,#12121a 100%);font-family:Inter,sans-serif;font-weight:400;line-height:1.5}[data-theme=light]{color:#1a2e1c;--text-strong:#0d180e;--text-soft:#2a3d2c;--text-muted:#4a6350;--text-dim:#6a8070;--surface:#f0f5f1;--surface-soft:#00000008;--border-strong:#0000001f;--panel-border-color:#00000014;--panel-grad-top:#ffffffe0;--panel-grad-bottom:#ffffffb8;--panel-bg-base:#f4f9f5e6;--surface-card:#00000008;--surface-border:#00000014;--surface-muted:#0000000d;--input-bg:#00000008;--input-border:#0000001f;--btn-border:#0000001f;--slot-disabled-bg:#0000000a;--slot-disabled-color:#00000047;--divider:#00000014;--grid-line:#0000000d;background:radial-gradient(circle at 0 0,#00c7581a,#0000 28%),radial-gradient(circle at 80% 20%,#2796ff12,#0000 22%),linear-gradient(#eef5ef 0%,#e2ede4 100%)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}body:before{content:"";background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);pointer-events:none;background-size:72px 72px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000000bf,#0000);mask-image:linear-gradient(#000000bf,#0000)}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}code{font-family:SFMono-Regular,ui-monospace,Menlo,Consolas,monospace}#root{min-height:100vh}body.widget-embed{background:0 0!important;min-height:auto!important;margin:0!important;padding:0!important}body.widget-embed #root{min-height:auto}:root{--widget-radius:12px}.widget-container{border:1px solid var(--surface-border);border-radius:var(--widget-radius);background:var(--panel-bg-base);max-width:600px;margin:0 auto;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;overflow:hidden}.widget-header{border-bottom:1px solid var(--divider);align-items:center;gap:10px;padding:14px 16px;display:flex}.widget-header__logo{border-radius:6px;width:auto;height:28px}.widget-header__name{color:var(--text-strong);font-size:.9rem;font-weight:700;line-height:1.2}.widget-header__sub{color:var(--text-muted);font-size:.72rem}.widget-days{scrollbar-width:none;gap:4px;padding:10px 12px;display:flex;overflow-x:auto}.widget-days::-webkit-scrollbar{display:none}.widget-day{border:1px solid var(--surface-border);background:var(--surface-card);cursor:pointer;min-width:46px;color:var(--text-soft);border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 4px;transition:all .15s;display:flex}.widget-day:hover{border-color:var(--accent)}.widget-day--active{background:var(--accent);border-color:var(--accent);color:#fff}.widget-day__label{text-transform:uppercase;letter-spacing:.03em;font-size:.62rem;font-weight:600}.widget-day__num{font-size:.9rem;font-weight:700}.widget-grid-wrap{scrollbar-width:thin;max-height:320px;overflow:auto}.widget-grid{border-collapse:collapse;width:100%;font-size:.72rem}.widget-grid thead{z-index:2;position:sticky;top:0}.widget-grid th,.widget-grid td{text-align:center;padding:0}.widget-grid__corner{background:var(--panel-bg-base);width:52px;min-width:52px}.widget-grid__court-th{color:var(--text-muted);background:var(--panel-bg-base);white-space:nowrap;padding:6px 4px;font-size:.68rem;font-weight:600}.widget-grid__time{color:var(--text-dim);text-align:right;white-space:nowrap;border-right:1px solid var(--grid-line);padding:0 6px;font-size:.68rem;font-weight:500}.widget-grid__cell{border:1px solid var(--grid-line);min-width:52px;height:24px;transition:background .1s}.widget-grid__cell--free{background:color-mix(in srgb, var(--accent) 15%, transparent)}.widget-grid__cell--free:hover{background:color-mix(in srgb, var(--accent) 30%, transparent)}.widget-grid__cell--taken{background:var(--slot-disabled-bg)}.widget-cta{padding:12px 16px 8px}.widget-cta__btn{text-align:center;background:var(--accent);color:#fff;border-radius:10px;width:100%;padding:10px;font-size:.85rem;font-weight:700;text-decoration:none;transition:filter .15s;display:block}.widget-cta__btn:hover{filter:brightness(1.1)}.widget-footer{text-align:center;padding:4px 16px 10px}.widget-footer__link{color:var(--text-dim);opacity:.7;font-size:.62rem;text-decoration:none}.widget-footer__link:hover{opacity:1}.widget-loading{justify-content:center;padding:40px 0;display:flex}.widget-spinner{border:3px solid var(--surface-border);border-top-color:var(--accent);border-radius:50%;width:24px;height:24px;animation:.7s linear infinite widget-spin}@keyframes widget-spin{to{transform:rotate(360deg)}}.widget-empty{text-align:center;color:var(--text-muted);padding:32px 16px;font-size:.82rem}.widget-error{text-align:center;color:#e55;padding:16px;font-size:.82rem}.mobile-app{min-height:100vh;padding:16px 12px 120px}.facility-hero{border-radius:24px;min-height:200px;margin-bottom:16px;position:relative;overflow:hidden}.facility-hero__cover{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.facility-hero__overlay{background:linear-gradient(#0000004d,#000c);position:absolute;inset:0}.facility-hero__content{z-index:1;text-align:center;flex-direction:column;align-items:center;padding:24px;display:flex;position:relative}.facility-hero__logo{max-height:48px;margin-bottom:8px}.facility-hero__name{color:#fff;margin:0;font-size:1.5rem;font-weight:700}.facility-hero__desc{color:#fffc;max-width:400px;margin:6px 0 0;font-size:.9rem}.facility-hero__info{color:#ffffffb3;flex-wrap:wrap;justify-content:center;gap:16px;margin-top:12px;font-size:.8rem;display:flex}.facility-hero__social{gap:12px;margin-top:8px;display:flex}.facility-hero__social a{color:var(--accent,#fff);opacity:.8;font-size:.8rem;text-decoration:none}.facility-hero__social a:hover{opacity:1}.phone-shell{width:min(100%,430px);margin:0 auto}.topbar,.hero-card,.panel-card,.notice-card{border:1px solid var(--panel-border-color);background:linear-gradient(180deg, var(--panel-grad-top), var(--panel-grad-bottom)), var(--panel-bg-base);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 20px 50px #0000002e}.topbar{border-radius:24px;justify-content:space-between;align-items:center;gap:12px;padding:18px 18px 16px;display:flex}.topbar-actions{align-items:center;gap:8px;display:flex}.topbar-label,.panel-kicker,.hero-copyline{color:var(--text-dim);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.topbar h1,.hero-card h2,.panel-head h3{color:var(--text-strong);margin:8px 0 0}.topbar h1{font-size:1.15rem;line-height:1.15}.top-logo{object-fit:contain;width:auto;max-height:36px;margin-top:6px}.status-dot,.panel-tag,.step-pill{text-transform:uppercase;border-radius:999px;padding:.42rem .68rem;font-size:.72rem;font-weight:700}.status-dot{background:var(--surface-muted);color:var(--text-muted)}.status-dot.is-live,.step-active,.step-done{color:var(--accent-bright);background:#00c75824}.topbar-logout{border:1px solid var(--btn-border);background:var(--surface-card);min-height:34px;color:var(--text-strong);cursor:pointer;border-radius:999px;padding:0 12px;font-size:.8rem;font-weight:700}.topbar-theme-toggle{border:1px solid var(--btn-border);background:var(--surface-card);width:34px;height:34px;color:var(--text-strong);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;font-size:1rem;transition:background-color .18s,border-color .18s;display:flex}.topbar-theme-toggle:hover{background:var(--surface-muted)}.hero-card{border-radius:28px;margin-top:14px;padding:22px 18px;position:relative;overflow:hidden}.hero-card:before{content:"";pointer-events:none;background:radial-gradient(circle,#00c7584d,#0000 68%);border-radius:999px;width:180px;height:180px;position:absolute;top:-90px;right:-60px}.hero-card h2{letter-spacing:-.05em;max-width:12ch;font-size:1.95rem;line-height:.95}.hero-card p,.support-copy,.welcome-strip span,.summary-block small,.debug-block code,.planner-selection-bar span,.planner-time{color:var(--text-muted)}.hero-card p{margin:14px 0 0}.step-strip{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.step-pill{background:var(--surface-card);color:var(--text-dim)}.notice-card{border-radius:18px;margin-top:14px;padding:14px 16px}.notice-error{color:#ffd6d6;background:#6c17178c;border-color:#ff626233}.notice-success{color:#d8ffe7;background:#0a4e2480;border-color:#00c7582e}.content-stack{gap:14px;margin-top:14px;display:grid}.content-stack-bookings{grid-template-columns:1fr}.view-switcher{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.view-switcher-button{border:1px solid var(--input-border);background:var(--surface-card);min-height:46px;color:var(--text-strong);cursor:pointer;border-radius:18px;font-weight:700}.view-switcher-button.is-active{color:var(--accent-bright);background:#00c75824;border-color:#00c7585c}.panel-card{border-radius:24px;padding:18px}.primary-panel{border-color:#00c75829}.panel-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.panel-tag{background:var(--surface-muted);color:var(--text-soft)}.field{gap:8px;display:grid}.field span{color:var(--text-dim);font-size:.84rem}.field input,.field select{border:1px solid var(--input-border);background:var(--input-bg);width:100%;min-height:52px;color:var(--text-strong);border-radius:16px;outline:none;padding:0 14px}.field input:focus,.field select:focus{border-color:#00c75870;box-shadow:0 0 0 4px #00c7581f}.stack-form,.planner-filters{gap:12px;margin-top:16px;display:grid}.compact-form{border-top:1px solid var(--divider);margin-top:12px;padding-top:12px}.primary-button,.secondary-button,.debug-toggle,.checkout-cta,.day-chip,.planner-slot{cursor:pointer;border-radius:18px;width:100%;font-weight:700;transition:transform .18s,opacity .18s,background-color .18s,border-color .18s}.primary-button,.checkout-cta{background:linear-gradient(135deg, var(--accent), var(--accent-bright));color:#081009;border:none;justify-content:center;align-items:center;min-height:54px;display:inline-flex}.secondary-button,.debug-toggle,.day-chip{border:1px solid var(--btn-border);background:var(--surface-card);min-height:52px;color:var(--text-strong)}.compact-button{min-height:44px}.primary-button:disabled,.secondary-button:disabled,.planner-slot:disabled{opacity:.6;cursor:not-allowed}.welcome-strip,.summary-block,.mini-card,.slot-empty-state,.planner-card,.auth-summary{border:1px solid var(--surface-border);background:var(--surface-card);border-radius:18px;margin-top:16px;padding:14px 16px}.welcome-strip{justify-content:space-between;align-items:center;gap:12px;display:flex}.welcome-strip strong,.summary-block strong,.slot-empty-state strong,.mini-card strong,.planner-selection-bar strong,.planner-court-head,.auth-summary strong{color:var(--text-strong)}.auth-summary{gap:6px;display:grid}.auth-summary span{color:var(--text-dim);text-transform:uppercase;letter-spacing:.12em;font-size:.78rem}.text-button{width:fit-content;color:var(--accent-bright);cursor:pointer;background:0 0;border:none;padding:0;font-weight:700}.day-strip{grid-auto-columns:74px;grid-auto-flow:column;gap:10px;margin-top:16px;padding-bottom:4px;display:grid;overflow-x:auto}.day-chip{border-radius:20px;gap:4px;min-height:76px;padding:10px 8px;display:grid}.day-chip span{color:var(--text-dim);font-size:.74rem}.day-chip strong{color:var(--text-strong);font-size:1.5rem;line-height:1}.day-chip.is-selected{background:linear-gradient(#00c75833,#00c7581f);border-color:#00c75866}.planner-card{padding:12px}.planner-selection-bar{justify-content:space-between;align-items:center;gap:12px;padding:4px 4px 12px;display:flex}.planner-grid-shell{overflow-x:auto}.planner-grid{grid-auto-rows:76px;align-items:start;gap:6px 8px;display:grid}.planner-corner,.planner-court-head,.planner-time,.planner-slot,.planner-slot-disabled{min-height:0}.planner-court-head{background:var(--surface-card);border-radius:14px;justify-content:center;align-items:center;display:flex}.planner-row{display:contents}.planner-time{justify-content:center;align-items:center;font-size:.84rem;display:flex}.planner-slot,.planner-slot-disabled{border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:4px;height:100%;padding:8px;display:flex}.planner-slot{border:1px solid var(--input-border);background:var(--surface-card);color:var(--text-strong)}.planner-slot-selected{color:#081009;background:linear-gradient(#00c758f2,#00c758d1);border-color:#00c75866;box-shadow:0 0 0 2px #00c75829}.planner-slot-merged{justify-content:center;align-self:stretch;gap:12px;padding:16px 10px}.planner-slot-selected strong,.planner-slot-selected span,.planner-slot-selected small{color:#081009}.planner-slot-selected strong{text-align:center;font-size:1.1rem;line-height:1.2}.planner-slot-selected small{font-size:.9rem;font-weight:700}.planner-slot-disabled{background:var(--slot-disabled-bg);color:var(--slot-disabled-color)}.summary-card .primary-button,.summary-card .checkout-cta{margin-top:16px}.mini-card,.summary-block,.debug-block{gap:6px;min-width:0;display:grid}.reservation-list{gap:10px;margin-top:16px;display:grid}.reservation-card{border:1px solid var(--surface-border);background:var(--surface-card);border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.reservation-actions{flex-shrink:0;justify-items:end;gap:8px;display:grid}.reservation-copy{gap:6px;display:grid}.reservation-copy strong{color:var(--text-strong)}.reservation-copy span{color:var(--text-muted)}.reservation-copy small{color:var(--text-dim)}.reservation-badge{text-align:center;border-radius:999px;flex-shrink:0;padding:.45rem .7rem;font-size:.76rem;font-weight:700}.reservation-pending{color:#ffd58a;background:#f59e0b29}.reservation-confirmed{color:#b8ffd2;background:#00c75829}.reservation-active{color:#d7ffe5;background:#00c75833;animation:1.4s ease-in-out infinite reservation-pulse}.reservation-completed{color:#d8e0ec;background:#94a3b829}.reservation-cancelled{color:#ffc3c3;background:#ef444429}.reservation-manage-button{border-radius:999px;min-height:38px;padding:0 14px}.booking-detail-stack,.access-grid{gap:12px;display:grid}.access-grid{grid-template-columns:1fr}.danger-button{color:#ffc3c3;border-color:#ef44444d}.code-value{word-break:break-all}.booking-panel{padding-bottom:20px}.debug-panel{grid-column:1/-1;padding-top:14px}.debug-toggle{min-height:44px}@keyframes reservation-pulse{0%,to{opacity:1;box-shadow:0 0 #00c7581f}50%{opacity:.88;box-shadow:0 0 0 6px #00c7580a}}.debug-block code{white-space:pre-wrap;word-break:break-word;font-size:.75rem}.benefit-card-number-input{border:1px solid var(--border-color,#e0e0e0);background:var(--input-bg,#fafafa);border-radius:8px;width:220px;margin:6px 0 4px 28px;padding:6px 10px;font-size:.85rem;display:block}.benefit-card-number-input:focus{border-color:var(--primary,#1e88e5);outline:none}.benefit-card-number-input[readonly]{background:var(--bg-success,#e8f5e9);opacity:.8}.phone-verification-inline{border:1px solid var(--border-color,#e0e0e0);background:var(--bg-warning,#fff8e1);border-radius:10px;flex-direction:column;gap:10px;margin-top:10px;padding:12px;display:flex}.phone-verification-notice{flex-direction:column;gap:2px;display:flex}.phone-verification-notice strong{font-size:.85rem}.phone-verification-notice span{opacity:.7;font-size:.78rem}.phone-verification-error{color:var(--color-error,#c62828);font-size:.8rem}@media (width>=700px){.mobile-app{padding:28px 18px 48px}.phone-shell{width:min(100%,720px)}.content-stack{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.content-stack-bookings{grid-template-columns:1fr}.primary-panel,.summary-card,.view-switcher{grid-column:span 2}.access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.pass-progress-track{background:var(--input-bg);border-radius:3px;height:6px}.pass-progress-fill{background:var(--accent);border-radius:3px;height:100%;transition:width .4s}.bookings-tabs{background:var(--input-bg);border-radius:12px;gap:4px;margin-bottom:16px;padding:4px;display:flex}.bookings-tab{color:var(--text-secondary,var(--text-muted));cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;padding:8px 16px;font-size:.85rem;font-weight:500;transition:all .2s}.bookings-tab.active{background:var(--surface-card,var(--card-bg));color:var(--text-primary,var(--text-strong));box-shadow:0 2px 8px #00000026}.date-header{color:var(--text-secondary,var(--text-muted));text-transform:uppercase;letter-spacing:.05em;padding:8px 0 4px;font-size:.75rem;font-weight:600}.load-more-button{border:1px solid var(--border,var(--surface-border));width:100%;color:var(--text-secondary,var(--text-muted));cursor:pointer;background:0 0;border-radius:10px;margin-top:12px;padding:10px;font-size:.85rem;transition:all .2s}.load-more-button:hover{background:var(--input-bg);color:var(--text-primary,var(--text-strong))}.empty-state{text-align:center;color:var(--text-secondary,var(--text-muted));padding:32px 0;font-size:.9rem}.loading-state{text-align:center;color:var(--text-secondary,var(--text-muted));padding:16px 0;font-size:.85rem}.recurring-list-header,.recurring-form-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.recurring-list-title,.recurring-form-title{color:var(--text-strong);margin:0;font-size:1.05rem}.recurring-add-button{padding:6px 14px;font-size:.82rem}.recurring-back-button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:.9rem}.recurring-list{flex-direction:column;gap:12px;display:flex}.recurring-card{background:var(--surface-card);border:1px solid var(--surface-border);border-radius:14px;padding:14px 16px}.recurring-card-top{color:var(--text-strong);flex-wrap:wrap;align-items:baseline;gap:8px;font-size:.92rem;display:flex}.recurring-card-days,.recurring-card-time{font-weight:600}.recurring-card-court{color:var(--text-soft)}.recurring-card-duration{color:var(--text-muted);font-size:.82rem}.recurring-card-dates{color:var(--text-muted);margin-top:4px;font-size:.82rem}.recurring-card-status{border-radius:8px;margin-top:8px;padding:3px 10px;font-size:.78rem;font-weight:600;display:inline-block}.recurring-status-pending{color:#eab308;background:#eab3081a}.recurring-status-active{color:var(--accent);background:#22c55e1a}.recurring-status-rejected{color:#ef4444;background:#ef44441a}.recurring-status-muted{color:var(--text-muted);background:var(--surface-muted)}.recurring-card-notes{color:var(--text-muted);margin-top:6px;font-size:.82rem;font-style:italic}.recurring-empty{text-align:center;color:var(--text-muted);padding:32px 0}.recurring-empty p{margin:4px 0;font-size:.9rem}.recurring-empty .primary-button{margin-top:16px}.recurring-form{flex-direction:column;gap:14px;display:flex}.weekday-picker{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.weekday-chip{border:1px solid var(--surface-border);background:var(--surface-card);color:var(--text-soft);cursor:pointer;border-radius:10px;padding:6px 12px;font-size:.82rem;font-weight:500;transition:all .15s}.weekday-chip.is-selected{background:var(--accent);color:#fff;border-color:var(--accent)}.recurring-info-notice{color:var(--text-muted);background:var(--surface-muted);border-radius:10px;padding:10px 14px;font-size:.82rem}.recurring-error{color:#ef4444;background:#ef444414;border-radius:10px;padding:10px 14px;font-size:.85rem}.recurring-success{color:var(--accent);background:#22c55e14;border-radius:10px;margin-bottom:12px;padding:10px 14px;font-size:.85rem}.recurring-form-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.recurring-form textarea{border:1px solid var(--input-border);background:var(--input-bg);width:100%;min-height:52px;color:var(--text-strong);resize:vertical;border-radius:12px;padding:12px 14px;font-family:inherit;font-size:.9rem}.profile-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.profile-modal{width:90%;max-width:400px}.profile-modal__close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:1.1rem;line-height:1;transition:background .15s}.profile-modal__close:hover{background:#ffffff14}.profile-modal__field{margin-bottom:16px}.profile-modal__label{color:var(--text-muted);margin-bottom:6px;font-size:.8rem;display:block}.profile-modal__input{box-sizing:border-box;border:1px solid var(--input-border);background:var(--input-bg);width:100%;color:var(--text-strong);border-radius:10px;padding:10px 12px;font-family:inherit;font-size:.9rem}.profile-modal__readonly{color:var(--text-strong);padding:10px 0;font-size:.9rem}.profile-modal__verified{color:#4ade80;margin-left:4px;font-size:.8rem}.profile-modal__hint{color:var(--text-muted);font-size:.85rem}.profile-modal__error{color:var(--error,#f87171);margin-top:4px;font-size:.8rem}.profile-modal__actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.profile-link{cursor:pointer;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;border-radius:6px;max-width:140px;padding:4px 8px;font-size:.85rem;transition:background .15s;overflow:hidden}.profile-link:hover{background:#ffffff14}.classes-screen{padding:16px}.classes-tabs{gap:8px;margin-bottom:16px;display:flex}.classes-tab{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:10px;flex:1;padding:10px 16px;font-size:.9rem;font-weight:500;transition:all .15s}.classes-tab.is-active{background:var(--primary);color:#fff;border-color:var(--primary)}.classes-loading,.classes-empty{text-align:center;color:var(--text-muted);padding:40px 16px;font-size:.95rem}.classes-error{color:#ef4444;background:#ef44441f;border-radius:10px;margin-bottom:12px;padding:10px 14px;font-size:.85rem}.classes-list{flex-direction:column;gap:12px;display:flex}.class-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px 16px}.class-card__header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.class-card__name{color:var(--text);margin:0;font-size:1rem;font-weight:600}.class-card__price{color:var(--primary);font-size:.9rem;font-weight:600}.class-card__price--free{color:#22c55e}.class-card__details{color:var(--text-muted);flex-wrap:wrap;gap:12px;margin-bottom:6px;font-size:.85rem;display:flex}.class-card__trainers{color:var(--text-muted);margin-bottom:8px;font-size:.82rem}.class-card__actions{justify-content:flex-end;margin-top:10px;display:flex}.class-card__enrolled-badge{color:#22c55e;border:1px solid #22c55e4d;border-radius:8px;padding:6px 14px;font-size:.82rem;font-weight:500}.class-card__full-badge{color:var(--text-muted);border:1px solid var(--border);border-radius:8px;padding:6px 14px;font-size:.82rem;font-weight:500}.enrollment-status{border-radius:6px;padding:3px 10px;font-size:.78rem;font-weight:500}.enrollment-status--pending{color:#eab308;background:#eab30826}.enrollment-status--confirmed{color:#22c55e;background:#22c55e26}.enrollment-status--canceled{color:#ef4444;background:#ef44441f}
