@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Cormorant+Garamond:wght@500;600;700&display=swap";:root{color-scheme:light;font-family:Manrope,sans-serif;background:radial-gradient(circle at 10% 10%,rgba(205,173,126,.18),transparent 26%),radial-gradient(circle at 90% 10%,rgba(91,112,83,.14),transparent 24%),radial-gradient(circle at 50% 100%,rgba(193,154,107,.12),transparent 28%),linear-gradient(180deg,#f8f2e8,#f4eee3 48%,#efe7d9);color:#31281e;--surface: rgba(255, 249, 241, .76);--surface-strong: #fffaf2;--surface-muted: rgba(249, 239, 227, .82);--border: rgba(82, 61, 38, .12);--accent: #6d7f63;--accent-deep: #4f5f48;--accent-soft: #e1eadb;--warning: #9f5337;--warning-soft: #f5ddd2;--text-soft: #786a59;--text-strong: #2f261d;--surface-glass: rgba(255, 252, 247, .72);--surface-panel: linear-gradient(180deg, rgba(255, 251, 246, .94), rgba(246, 238, 226, .88));--shadow: 0 18px 48px rgba(111, 86, 53, .1);--shadow-soft: 0 12px 30px rgba(111, 86, 53, .07);--ring: 0 0 0 4px rgba(109, 127, 99, .14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;position:relative;overflow-x:hidden;background:inherit;color:inherit}body:before,body:after{content:"";position:fixed;z-index:-1;width:36vw;height:36vw;min-width:260px;min-height:260px;border-radius:50%;filter:blur(24px);pointer-events:none}body:before{top:-12vw;left:-10vw;background:radial-gradient(circle,rgba(205,173,126,.14),transparent 68%)}body:after{right:-12vw;bottom:-14vw;background:radial-gradient(circle,rgba(109,127,99,.12),transparent 70%)}::selection{background:#6d7f6338;color:var(--text-strong)}button,input,textarea,select{font:inherit;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,transform .18s ease}a{color:inherit;-webkit-tap-highlight-color:transparent}button{border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.app-shell{width:100%;padding-top:16px;position:relative}.shell{width:min(68vw,1120px);max-width:100%;margin:0 auto;padding:14px 20px 18px;position:relative}.topbar{display:grid;grid-template-columns:minmax(0,1fr);width:100%;gap:12px;align-items:center;justify-items:center;padding:12px 16px;border:1px solid var(--border);border-radius:999px;position:sticky;overflow:hidden;background:linear-gradient(180deg,#fffcf7eb,#f7efe4d6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 14px 30px #6f56351a,inset 0 1px #ffffffb8;top:12px;z-index:20}.topbar:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.44),transparent);pointer-events:none}.topbar h1,.hero-card h2,.section-title h3,.plan-card h4,.success-modal h3,.editorial-card h3,.step-card h3,.landing-copy h2,.editorial-title{margin:0;font-family:Cormorant Garamond,serif;font-weight:600;letter-spacing:-.04em}.brand-block{display:flex;align-items:center;gap:10px;min-width:0}.brand-block:before{content:"";width:42px;height:42px;flex:0 0 42px;border-radius:16px;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.82),transparent 38%),linear-gradient(160deg,#cdad7eeb,#6d7f63e6);box-shadow:inset 0 1px #fff9,0 16px 26px #6d7f6329}.brand-block h1{font-size:clamp(1.55rem,2.4vw,2rem)}.topbar-menu{display:grid;grid-template-columns:auto auto;align-items:center;gap:16px;justify-content:center;min-width:0}.menu-toggle{display:none;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border-radius:999px;background:#ffffffd1;color:#4b5b43;border:1px solid var(--border)}.nav{display:flex;gap:6px;flex-wrap:nowrap;justify-content:center;min-width:0;overflow-x:auto;padding:6px;border-radius:999px;background:#f8f0e4db;border:1px solid rgba(82,61,38,.08);box-shadow:inset 0 1px #ffffffb8}.nav-link{padding:9px 14px;border-radius:999px;color:inherit;text-decoration:none;font-size:.88rem;font-weight:600;white-space:nowrap}.nav-link.active{background:#fffdf8;box-shadow:0 10px 20px #6f563514,inset 0 1px #ffffffb3}.auth-actions{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:nowrap}.language-switcher{display:inline-flex;align-items:center;padding:4px;border-radius:999px;border:1px solid var(--border);background:#ffffffd1;box-shadow:0 9px 18px #6f563512}.language-option{min-width:44px;min-height:34px;padding:6px 10px;border-radius:999px;background:transparent;color:var(--text-soft);font-size:.78rem;font-weight:800;letter-spacing:.08em}.language-option.active{background:linear-gradient(180deg,var(--accent) 0%,var(--accent-deep) 100%);color:#f7f4ef}.user-pill{padding:8px 12px;border-radius:999px;background:#fffc;border:1px solid var(--border);font-size:.88rem;max-width:min(28vw,240px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;gap:8px;padding:10px 16px;border-radius:999px;font-weight:700;letter-spacing:.01em;transition:transform .18s ease,opacity .16s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}.primary-button{background:linear-gradient(180deg,var(--accent) 0%,var(--accent-deep) 100%);color:#f7f4ef;box-shadow:0 12px 22px #4f5f4829,inset 0 1px #ffffff29}.secondary-button{background:#ffffffe0;color:#4b5b43;border:1px solid var(--border);box-shadow:0 9px 18px #6f563512}.primary-button:disabled,.secondary-button:disabled{opacity:.55;cursor:not-allowed;transform:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none;box-shadow:var(--ring)}.page-grid{display:grid;gap:18px;padding-top:16px}.page-loader-shell{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px;background:linear-gradient(180deg,#f4eee3c7,#efe7d9e6),radial-gradient(circle at top,rgba(109,127,99,.18),transparent 34%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.page-loader-card{width:min(420px,100%);display:grid;justify-items:center;gap:12px;padding:28px 24px;text-align:center;border:1px solid rgba(82,61,38,.12);border-radius:28px;background:linear-gradient(180deg,#fffcf7f5,#f6eee2eb);box-shadow:0 22px 46px #6f563524,inset 0 1px #ffffffc2}.page-loader-mark{position:relative;width:86px;height:86px;display:grid;place-items:center}.page-loader-ring,.page-loader-core{position:absolute;border-radius:50%}.page-loader-ring-outer{inset:0;border:1px solid rgba(109,127,99,.18)}.page-loader-ring-inner{inset:14px;border:3px solid rgba(109,127,99,.16);border-top-color:#6d7f63e0;border-right-color:#cdad7ee6;animation:page-loader-spin 1.1s linear infinite}.page-loader-core{width:18px;height:18px;background:linear-gradient(180deg,#cdaa7e,#6d7f63);box-shadow:0 0 0 10px #cdad7e24}.page-loader-title{font-family:Cormorant Garamond,serif;font-size:clamp(1.9rem,3vw,2.4rem);font-weight:600;letter-spacing:-.04em;color:var(--text-strong)}.page-loader-card .muted{max-width:30ch}@keyframes page-loader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.page-grid>*{animation:page-rise .42s cubic-bezier(.2,.8,.2,1) both}.page-grid>*:nth-child(2){animation-delay:50ms}.page-grid>*:nth-child(3){animation-delay:90ms}.page-grid>*:nth-child(4){animation-delay:.13s}.page-grid>.modal-backdrop{animation:none}@keyframes page-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.hero-card,.membership-panel,.calendar-panel,.bookings-panel,.panel-card,.form-card,.alert-card,.selected-session-card{border:1px solid var(--border);border-radius:26px;position:relative;overflow:hidden;background:var(--surface-panel);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);box-shadow:0 18px 38px #6f56351a,inset 0 1px #ffffffb3}.calendar-panel{min-width:0;overflow:hidden}.hero-card{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;padding:22px}.landing-hero{position:relative;overflow:hidden;background:radial-gradient(circle at top right,rgba(109,127,99,.14),transparent 28%),linear-gradient(135deg,#fff8eeeb,#f6ecdbd9)}.landing-hero:after{content:"";position:absolute;right:-70px;bottom:-80px;width:260px;height:260px;background:radial-gradient(circle,rgba(109,127,99,.16),transparent 62%);border-radius:50%}.landing-copy{display:grid;gap:10px;align-content:start}.landing-copy h2{font-size:clamp(2rem,3.2vw,3rem);line-height:.98;max-width:12ch}.landing-copy .muted{max-width:56ch;font-size:.96rem}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.compact-hero{align-items:center;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}.compact-copy .muted{max-width:48ch}.compact-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-metrics-soft .metric{background:#fffaf2c7;min-height:112px;display:grid;align-content:end}.hero-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.metric{padding:16px;border-radius:20px;background:linear-gradient(180deg,#ffffffe0,#f8f1e7f0);border:1px solid rgba(82,61,38,.08);box-shadow:0 10px 22px #6f563512,inset 0 1px #ffffffbd}.metric span{display:block;font-size:2rem;font-weight:700;font-family:Cormorant Garamond,serif}.metric p{margin:8px 0 0}.page-badge-row{display:flex;flex-wrap:wrap;gap:10px}.page-badge{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;border:1px solid rgba(82,61,38,.1);background:#ffffffa3;color:var(--accent-deep);font-size:.82rem;font-weight:700;letter-spacing:.01em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.page-badge.is-warning{background:var(--warning-soft);color:var(--warning);border-color:#9f53372e}.eyebrow{margin:0 0 6px;text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;color:var(--text-soft)}.muted{color:var(--text-soft)}.membership-panel,.calendar-panel,.bookings-panel,.panel-card,.form-card{padding:22px}.admin-hero{align-items:start;background:radial-gradient(circle at top right,rgba(109,127,99,.2),transparent 34%),radial-gradient(circle at bottom left,rgba(205,173,126,.16),transparent 30%),linear-gradient(135deg,#fffbf6f5,#f2ebddf0)}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(82,61,38,.08)}.membership-status{display:grid;gap:4px;text-align:right}.membership-status strong{font-size:1rem;color:var(--text-strong)}.wide-status{text-align:left}.plan-grid,.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.plan-card{padding:18px;border-radius:20px;background:linear-gradient(180deg,#ffffffe6,#f9f0e4f5);border:1px solid var(--border);box-shadow:0 12px 24px #6f563512,inset 0 1px #ffffffb8}.membership-cta-card{display:grid;gap:12px;align-content:start}.plan-price{margin:10px 0 6px;font-size:1.6rem;font-weight:700}.membership-secondary-value{font-size:1.35rem;line-height:1.2}.calendar-groups,.booking-list,.stack-list{display:grid;gap:12px}.editorial-strip,.editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.editorial-card{padding:18px;border-radius:20px;border:1px solid var(--border);background:linear-gradient(180deg,#fff8eef0,#f6eee2d6);box-shadow:var(--shadow-soft)}.editorial-card h3{margin:8px 0 10px;font-size:1.7rem}.editorial-panel{background:radial-gradient(circle at top left,rgba(109,127,99,.08),transparent 22%),#fff9f1b8}.calendar-panel{position:relative;isolation:isolate;background:radial-gradient(circle at top right,rgba(109,127,99,.16),transparent 28%),radial-gradient(circle at bottom left,rgba(205,173,126,.16),transparent 34%),linear-gradient(180deg,#fffbf6f5,#f6eee2f0)}.portal-hero{background:radial-gradient(circle at top left,rgba(109,127,99,.18),transparent 28%),radial-gradient(circle at bottom right,rgba(205,173,126,.16),transparent 30%),linear-gradient(135deg,#fffbf6f5,#f2ece1f0)}.editorial-title{font-size:clamp(1.7rem,2.6vw,2.5rem);line-height:1}.day-group,.session-list{display:grid;gap:10px}.session-card,.booking-row,.stack-row{display:grid;grid-template-columns:1.2fr .8fr auto;align-items:center;gap:12px;padding:13px 15px;border-radius:16px;background:linear-gradient(180deg,#ffffffe0,#f9f2e8eb);border:1px solid rgba(82,61,38,.08);box-shadow:0 8px 18px #6f56350d,inset 0 1px #ffffffb8}.booking-row{grid-template-columns:1fr auto}.booking-row-admin{grid-template-columns:1fr auto auto}.stack-row{grid-template-columns:1fr}.stack-row-actions{grid-template-columns:1fr auto}.admin-management-row{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.week-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px;padding:8px;border-radius:14px;border:1px solid rgba(82,61,38,.1);background:#ffffffbd;box-shadow:none}.week-toolbar>*{flex:0 0 auto}.week-toolbar input,.checkbox-row input,.agreement-check input{accent-color:var(--accent)}.admin-tabs,.calendar-filter-bar{display:flex;flex-wrap:wrap;gap:12px}.admin-tabs{margin-bottom:16px;padding:6px;border-radius:999px;border:1px solid rgba(82,61,38,.08);background:#ffffff8f;box-shadow:inset 0 1px #ffffffa3}.admin-tab-button{padding:10px 14px;border-radius:999px;background:transparent;color:var(--accent);border:1px solid transparent;font-weight:700}.admin-tab-button.active{background:linear-gradient(180deg,var(--accent) 0%,var(--accent-deep) 100%);color:#f7f4ef;box-shadow:0 14px 24px #4f5f4829}.admin-tab-content{display:grid;gap:14px}.email-templates-layout{align-items:start}.email-admin-shell{gap:18px}.email-intro-card{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:18px;align-items:stretch;background:radial-gradient(circle at top right,rgba(109,127,99,.18),transparent 26%),linear-gradient(145deg,#fffcf7f5,#f3ebdff0)}.email-intro-copy{display:grid;gap:10px}.email-intro-copy h3{margin:0}.email-intro-copy .muted{max-width:62ch}.email-intro-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.email-intro-metric{display:grid;gap:4px;align-content:center;padding:16px 14px;border-radius:18px;border:1px solid rgba(82,61,38,.08);background:#ffffffc7;box-shadow:0 12px 24px #6f56350d,inset 0 1px #ffffffbd}.email-intro-metric strong{font-size:1.5rem;line-height:1;color:var(--accent-deep)}.email-intro-metric small{color:var(--text-soft);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.email-section-tabs{width:fit-content;padding:8px;border-radius:22px;background:linear-gradient(180deg,#ffffffd6,#f4ece1e0);box-shadow:inset 0 1px #fffc,0 12px 22px #6f56350f}.email-stage{align-items:start}.email-stage-reminders{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}.email-stage-send{grid-template-columns:minmax(300px,.92fr) minmax(0,1.08fr)}.email-card{position:relative;overflow:hidden;border-radius:24px;border:1px solid rgba(82,61,38,.08);box-shadow:0 18px 34px #6f563514,inset 0 1px #ffffffc7}.email-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#4f5f48cc,#c18d52b8);opacity:.9}.email-reminder-editor{background:radial-gradient(circle at top right,rgba(109,127,99,.16),transparent 28%),linear-gradient(180deg,#fffffff5,#f6efe4f0)}.email-context-card{background:radial-gradient(circle at top left,rgba(193,141,82,.16),transparent 24%),linear-gradient(180deg,#fffffff0,#f9f2e8e6)}.email-preview-card,.email-compose-card{background:radial-gradient(circle at top left,rgba(109,127,99,.13),transparent 24%),linear-gradient(180deg,#fffffff0,#f7efe4eb)}.email-recipient-picker{background:radial-gradient(circle at top right,rgba(193,141,82,.14),transparent 24%),linear-gradient(180deg,#fffffff5,#f5ece0f0)}.email-support-column{gap:16px}.email-action-bar{align-items:center;justify-content:flex-start;flex-wrap:wrap}.email-selection-summary{display:flex;flex-wrap:wrap;gap:10px}.email-selection-badge{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#4f5f481f;color:var(--accent-deep);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.email-recipient-grid{max-height:420px;overflow:auto;padding-right:4px}.email-recipient-card{min-height:92px;align-items:flex-start}.email-recipient-card .selection-card-copy{gap:6px}.email-selected-recipient-list{gap:10px}.email-selected-recipient-row{border-radius:18px;border:1px solid rgba(82,61,38,.08);background:#ffffffc2}.email-placeholder-pills{display:flex;flex-wrap:wrap;gap:10px}.email-placeholder-pill{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;border:1px solid rgba(82,61,38,.08);background:#ffffffd1;color:var(--accent-deep);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.8rem;font-weight:700}.email-warning-state{background:linear-gradient(180deg,#fff8f2f5,#fce7dbf0)}.email-empty-state{min-height:84px;align-items:center;justify-content:center}.admin-management-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:20px 22px;border-radius:22px;border:1px solid rgba(82,61,38,.08);background:linear-gradient(135deg,#fffffff0,#f2eadfeb);box-shadow:0 16px 34px #6f563514,inset 0 1px #fffc}.admin-toolbar-note{max-width:560px}.admin-management-add{min-width:220px}.field-block{display:grid;gap:8px}.field-label{margin:0;font-size:.92rem;color:var(--text-soft)}.admin-inner-card{border-radius:18px;box-shadow:none;background:linear-gradient(180deg,#fffffff0,#f8f0e5eb)}.version-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.version-banner-copy{display:grid;gap:10px}.version-banner-copy h3{margin:0}.version-banner-list{display:grid;gap:8px}.version-banner-item{display:inline-flex;width:fit-content;padding:8px 12px;border-radius:999px;background:#6d7f631f;color:var(--accent-deep);font-size:.86rem;font-weight:600}.version-banner-close{flex:0 0 auto}.people-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:center}.people-toolbar input{flex:1 1 280px}.template-list-row.is-active{border-color:#6d7f633d;background:linear-gradient(180deg,#f6fcf5fa,#edf5eaf5)}.email-preview-shell{display:grid;gap:12px;padding:16px;border-radius:18px;border:1px solid rgba(82,61,38,.08);background:#ffffffdb}.email-preview-subject{display:grid;gap:6px}.email-preview-body{white-space:pre-wrap;line-height:1.7;color:var(--text-strong)}.template-variable-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.template-variable-card{display:grid;gap:6px;padding:12px 14px;border-radius:16px;border:1px solid rgba(82,61,38,.08);background:linear-gradient(180deg,#ffffffe6,#f9f2e8db)}.template-variable-card code{font-size:.88rem;color:var(--accent-deep)}.data-table-shell{overflow:auto;border-radius:18px;border:1px solid rgba(82,61,38,.08);background:#ffffffd1}.data-table{width:100%;min-width:540px;border-collapse:collapse}.data-table th,.data-table td{padding:11px 12px;border-bottom:1px solid rgba(82,61,38,.08);text-align:left;font-size:.88rem}.data-table th{position:sticky;top:0;z-index:1;background:#f8f0e5f5;color:var(--accent-deep);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.data-table tbody tr:nth-child(2n){background:#f9f2e87a}.data-table tbody tr:last-child td{border-bottom:none}.table-action-group{display:flex;flex-wrap:wrap;gap:8px}.modal-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:#1f252052;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.success-modal{width:min(100%,360px);display:grid;gap:16px;padding:22px;border-radius:22px;border:1px solid var(--border);background:var(--surface-strong);box-shadow:var(--shadow)}.agreement-modal{width:min(100%,920px);max-height:min(92vh,980px);overflow:auto}.agreement-modal-actions{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px;border:1px solid rgba(82,61,38,.08);border-radius:16px;background:#faf5edf5;box-shadow:0 8px 24px #34271914;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.admin-form-modal{width:min(100%,760px);max-height:min(92vh,860px);padding:0;overflow:auto}.admin-modal-form{gap:18px;padding:24px;border-radius:22px;background:linear-gradient(180deg,#fffffffa,#f6efe5f0)}.admin-modal-form-row{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-modal-actions{justify-content:flex-end}.participants-modal{width:min(100%,680px);max-height:min(90vh,760px);gap:14px}.participants-modal-meta{display:flex;flex-wrap:wrap;gap:8px}.participants-modal-list{overflow:auto}.participants-modal .stack-row{display:grid;gap:4px;padding:12px 14px;border-radius:16px;border:1px solid rgba(82,61,38,.08);background:linear-gradient(180deg,#ffffffe0,#f9f2e8db)}.success-modal h3{margin:0;font-family:Fraunces,serif;font-weight:600;letter-spacing:-.04em}.locked-brand-card,.empty-state{padding:14px 16px;border-radius:16px;border:1px solid rgba(82,61,38,.08);background:linear-gradient(180deg,#ffffffe0,#f9f2e8e6);box-shadow:0 12px 26px #6f56350f,inset 0 1px #ffffffb3}.locked-brand-card{display:grid;gap:6px}.calendar-filter-bar{margin-bottom:4px}.action-row{display:flex;flex-wrap:wrap;gap:10px}.membership-actions{align-items:flex-start}.session-actions{display:grid;gap:10px;justify-items:end}.participants-card{display:grid;gap:12px;padding:14px;border-radius:18px;border:1px solid rgba(82,61,38,.08);background:linear-gradient(180deg,#ffffffd6,#f9f2e8db);box-shadow:0 10px 22px #6f56350d,inset 0 1px #ffffffad}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.checkbox-card{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;border:1px solid var(--border);background:#ffffffd6;color:var(--text-soft);box-shadow:inset 0 1px #ffffffb8}.selection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.selection-card{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 16px;border-radius:18px;border:1px solid var(--border);background:linear-gradient(180deg,#fffffff5,#f7efe5e6);color:var(--text-strong);text-align:left;box-shadow:0 12px 24px #6f56350f,inset 0 1px #ffffffb8}.selection-card:focus-visible{outline:none;box-shadow:var(--ring)}.selection-card.is-active{border-color:#4f5f4847;background:linear-gradient(180deg,#e1eadbf5,#cddfc2eb);box-shadow:0 16px 28px #4f5f481f,inset 0 1px #ffffffbd}.selection-card-copy{display:grid;gap:4px;min-width:0}.selection-card-copy strong{font-size:.98rem}.selection-card-meta{color:var(--text-soft);font-size:.82rem}.selection-card-check{flex-shrink:0;padding:8px 10px;border-radius:999px;background:#31281e0f;color:var(--text-soft);font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.selection-card.is-active .selection-card-check{background:#4f5f482e;color:var(--accent-deep)}.calendar-filter-bar select,.admin-tab-content input,.admin-tab-content textarea,.admin-tab-content select,.form-card input,.form-card textarea,.form-card select{width:100%;padding:11px 13px;border-radius:14px;border:1px solid rgba(82,61,38,.12);background:#ffffffd6;box-shadow:inset 0 1px #ffffffbd}.week-toolbar input{width:auto;min-width:164px;padding:10px 12px;border-radius:14px;border:1px solid rgba(82,61,38,.12);background:#ffffffd6;box-shadow:none}.week-toolbar .secondary-button{width:auto;min-width:126px;min-height:38px;padding-inline:12px}.calendar-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-bottom:14px}.calendar-stat{display:grid;gap:6px;padding:14px 16px;border-radius:18px;border:1px solid rgba(82,61,38,.1);background:#ffffffb8;box-shadow:0 10px 22px #6f563512}.calendar-stat span{font-size:.76rem;text-transform:uppercase;letter-spacing:.16em;color:var(--text-soft)}.calendar-stat strong{font-size:clamp(1.45rem,2.2vw,2rem);font-family:Cormorant Garamond,serif;line-height:.9}.calendar-stat small{color:var(--text-soft)}.schedule-grid{display:grid;grid-template-columns:72px repeat(7,minmax(128px,1fr));gap:6px;width:max-content;min-width:1000px}.schedule-scroll{position:relative;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;padding:8px;border-radius:16px;border:1px solid rgba(82,61,38,.12);background:#fffcf7b3;box-shadow:none;scrollbar-width:thin;scrollbar-color:rgba(109,127,99,.35) rgba(255,255,255,.45)}.schedule-scroll::-webkit-scrollbar{height:10px}.schedule-scroll::-webkit-scrollbar-track{background:#ffffff73;border-radius:999px}.schedule-scroll::-webkit-scrollbar-thumb{background:#6d7f6359;border-radius:999px}.grid-corner,.grid-day,.grid-time,.grid-cell{min-height:62px;padding:10px;border-radius:12px;border:1px solid rgba(82,61,38,.1);background:#fffcf8f5;box-shadow:none}.grid-corner,.grid-time{position:sticky;left:0;display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--accent-deep);background:#f4ede2fa;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.grid-corner{z-index:4;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}.grid-time{z-index:3;font-size:.82rem}.grid-day{display:grid;gap:4px;align-content:start;background:#f6f0e7fa}.grid-day strong{font-size:.9rem;text-transform:capitalize}.grid-day small{color:var(--text-soft);font-size:.7rem;line-height:1.1;display:inline-flex;width:fit-content;padding:2px 6px;border-radius:999px;background:#ffffffb3}.grid-day-name{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-soft);font-weight:800}.grid-day-badge{display:inline-flex;width:fit-content;align-items:center;padding:4px 8px;border-radius:999px;background:#6d7f6324;color:var(--accent-deep);font-size:.68rem;font-weight:700}.grid-day.is-today{border-color:#4f5f483d;background:#eef5eafa;box-shadow:none}.grid-cell{display:grid;gap:6px;align-content:start;min-height:72px;background:#ffffffb8}.empty-cell{display:flex;min-height:100%;align-items:center;justify-content:center;padding:8px;border-radius:10px;border:1px dashed rgba(82,61,38,.14);background:#ffffffd1;color:var(--text-soft);font-weight:600;font-size:.76rem}.slot-card{display:grid;gap:6px;width:100%;padding:10px;border-radius:12px;text-align:left;background:#fffffffa;border:1px solid rgba(79,95,72,.14);border-left:3px solid rgba(79,95,72,.45);box-shadow:0 4px 10px #4f5f480d;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}.slot-card:focus-visible{outline:2px solid rgba(79,95,72,.34);outline-offset:2px}.slot-card.is-full{background:#fff9f6fa;border-color:#9f53372e;border-left-color:#9f533780;box-shadow:0 4px 10px #9f53370d}.admin-slot-card{cursor:default}.admin-slot-card .secondary-button{min-height:32px;padding:7px 9px;font-size:.78rem;box-shadow:none}.admin-slot-card .session-actions{gap:8px;justify-items:start}.admin-slot-card .action-row,.admin-slot-card .stack-list{gap:8px}.admin-slot-card .stack-row{padding:10px 12px;border-radius:12px}.slot-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.slot-card strong{font-size:.88rem;line-height:1.15}.slot-price{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;background:#6d7f631f;color:var(--accent-deep);font-size:.7rem;font-weight:700;white-space:nowrap}.slot-card-instructor{color:var(--text-soft);font-size:.78rem}.slot-card-meta{display:flex;flex-wrap:wrap;gap:6px}.slot-chip{display:inline-flex;align-items:center;width:fit-content;padding:3px 7px;border-radius:999px;border:1px solid rgba(79,95,72,.12);background:#ffffffd1;color:var(--accent-deep);font-size:.7rem;font-weight:600;white-space:nowrap}.slot-chip.is-full{border-color:#9f53372e;background:var(--warning-soft);color:var(--warning)}.slot-card small{color:var(--text-soft)}.portal-grid{display:grid;grid-template-columns:1fr;gap:16px}.portal-stack{width:100%}.client-tab-panel{padding:20px;background:radial-gradient(circle at top left,rgba(109,127,99,.12),transparent 24%),linear-gradient(180deg,#fffbf6f0,#f5ede1eb)}.client-tabs{margin-bottom:14px}.step-card{padding:18px;border-radius:20px;border:1px solid rgba(82,61,38,.08);background:linear-gradient(180deg,#fffffff0,#f8f0e4e6);box-shadow:0 20px 42px #6f563514,inset 0 1px #ffffffb8;display:grid;gap:12px}.profile-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.profile-field{display:grid;gap:8px}.profile-field span{font-size:.9rem;color:var(--text-soft)}.profile-field input{width:100%;padding:11px 13px;border-radius:14px;border:1px solid rgba(82,61,38,.12);background:#ffffffe0;box-shadow:inset 0 1px #ffffffb8}.profile-form-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.selected-session-card{display:flex;justify-content:space-between;gap:14px;padding:18px;background:radial-gradient(circle at top right,rgba(109,127,99,.16),transparent 28%),linear-gradient(180deg,#fffbf6f5,#f3ece0eb)}.session-summary{display:grid;gap:8px;align-content:start}.agreement-copy{padding:14px;border-radius:14px;border:1px solid rgba(82,61,38,.08);background:#ffffffd1;line-height:1.6;white-space:pre-wrap}.agreement-document{display:grid;gap:12px}.agreement-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.agreement-frame{width:100%;min-height:620px;border:1px solid rgba(82,61,38,.08);border-radius:16px;background:#fff;box-shadow:inset 0 1px #ffffffb8}.agreement-check,.checkbox-row{display:flex;align-items:center;gap:10px;color:var(--text-soft)}.checkbox-warning-text{color:#b42318;font-weight:700}.agreement-modal-actions .agreement-check{flex:1 1 280px}.status-pill{display:inline-flex;align-items:center;width:fit-content;padding:8px 12px;border-radius:999px;font-weight:700;box-shadow:inset 0 1px #ffffff80}.status-success{background:var(--accent-soft);color:var(--accent)}.empty-state,.login-panel{display:grid;gap:14px}.login-panel{background:radial-gradient(circle at top left,rgba(109,127,99,.12),transparent 24%),linear-gradient(180deg,#fffbf6f0,#f4ece0eb)}.login-actions{display:flex;flex-wrap:wrap;gap:12px}.link-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.footer-bar{padding:10px 0 14px}.manage-booking-modal{width:min(100%,560px)}.compact-stack{gap:10px}.footer-shell{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;border-radius:18px;border:1px solid rgba(82,61,38,.08);background:linear-gradient(180deg,#fffbf6d6,#f7efe4c7);box-shadow:0 10px 22px #6f56350d,inset 0 1px #ffffffb3}.footer-copy,.footer-meta{display:block}.footer-bar a,.footer-bar span{color:var(--text-soft);text-decoration:none}.status-open,.status-full{display:inline-flex;margin:0;padding:6px 10px;border-radius:999px;font-weight:700}@media(max-width:1080px){.hero-card,.editorial-strip,.editorial-grid{grid-template-columns:1fr}.topbar{border-radius:24px}.email-intro-card,.email-stage-reminders,.email-stage-send{grid-template-columns:1fr}}@media(max-width:720px){.app-shell{padding-top:16px}.shell{width:100%;max-width:100%;padding:16px}.topbar,.panel-card,.form-card,.calendar-panel,.bookings-panel,.membership-panel,.hero-card,.selected-session-card{border-radius:20px}.hero-actions,.action-row,.footer-shell{flex-direction:column;align-items:stretch}.hero-metrics,.plan-grid,.admin-grid,.portal-grid,.checkbox-grid,.admin-modal-form-row,.session-card,.booking-row,.booking-row-admin,.stack-row,.stack-row-actions{grid-template-columns:1fr}.landing-copy h2{max-width:none;font-size:2.2rem}.profile-form-grid,.email-intro-metrics{grid-template-columns:1fr}.email-section-tabs{width:100%}.email-recipient-grid{max-height:none;overflow:visible;padding-right:0}.version-banner{flex-direction:column}.version-banner-close{width:100%}.week-toolbar{padding:8px;border-radius:12px}.week-toolbar>*{flex:1 1 100%}.week-toolbar input,.week-toolbar .secondary-button{width:100%;min-width:0}.schedule-scroll{padding:8px;border-radius:14px}.schedule-grid{gap:8px;min-width:920px}.grid-corner,.grid-day,.grid-time,.grid-cell{padding:8px;border-radius:10px}.slot-card{padding:10px;border-radius:10px}.slot-card-top{flex-direction:column}}.status-open{background:var(--accent-soft);color:var(--accent)}.status-full{background:var(--warning-soft);color:var(--warning)}.form-card{display:grid;gap:12px;background:linear-gradient(180deg,#fffcf8f0,#f6efe5eb)}.form-card input,.form-card textarea,.form-card select{width:100%;padding:11px 13px;border-radius:14px;border:1px solid rgba(82,61,38,.12);background:#ffffffe0;box-shadow:inset 0 1px #ffffffb8}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.alert-card{padding:14px 16px;border-left:4px solid rgba(159,83,55,.42);background:linear-gradient(180deg,#fff7f1f5,#fce4d7f0);color:#76371f}.maintenance-lock-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,rgba(255,255,255,.62),transparent 36%),linear-gradient(180deg,#f7ede1,#eed8c5)}.maintenance-banner{width:min(720px,100%);padding:40px 28px;border:1px solid rgba(159,83,55,.22);border-radius:30px;text-align:center;background:radial-gradient(circle at top center,rgba(255,255,255,.52),transparent 52%),linear-gradient(135deg,#9f5337fa,#77381ff5);color:#fff7ef;box-shadow:0 26px 52px #77381f2e,inset 0 1px #ffffff47}.maintenance-banner .eyebrow{color:#fff4e9d1}.maintenance-banner h2{margin:8px auto 10px;max-width:15ch;font-size:clamp(2rem,4vw,3.35rem);line-height:.95}.maintenance-banner p:last-child{max-width:40rem;margin:0 auto;font-size:1.05rem;color:#fff7efeb}@media(hover:hover)and (pointer:fine){.nav-link:hover{background:#ffffffa8}.primary-button:hover,.secondary-button:hover{transform:translateY(-2px);box-shadow:0 14px 24px #4f5f4824,inset 0 1px #ffffff2e}.admin-management-row:hover{transform:translateY(-2px);border-color:#6d7f632e;background:linear-gradient(180deg,#fffffff5,#f3ece2f0);box-shadow:0 14px 26px #6f563514,inset 0 1px #ffffffc7}.admin-tab-button:hover{background:#ffffffb8}.data-table tbody tr:hover{background:#fffffff5}.checkbox-card:hover{border-color:#6d7f632e;background:#fffffff0}.selection-card:hover{transform:translateY(-1px);border-color:#6d7f634d;box-shadow:0 14px 28px #6f563514,inset 0 1px #ffffffc7}.slot-card:hover{transform:translateY(-1px);box-shadow:0 8px 16px #4f5f4814;border-color:#4f5f4847}}@media(max-width:900px){.app-shell{padding-top:16px}.shell{width:100%;max-width:100%;padding:16px}.hero-card,.selected-session-card,.session-card,.booking-row,.booking-row-admin{grid-template-columns:1fr}.topbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.menu-toggle{display:inline-flex}.topbar-menu{display:none;grid-column:1 / -1;grid-template-columns:1fr;gap:12px}.topbar.menu-open .topbar-menu{display:grid}.nav,.auth-actions{width:100%;flex-direction:column;align-items:stretch;justify-content:flex-start}.nav{overflow:visible}.nav-link,.user-pill,.language-switcher,.primary-button,.secondary-button{width:100%}.user-pill{max-width:none;text-align:center}.selected-session-card{flex-direction:column}.auth-actions,.section-title,.membership-status,.admin-management-toolbar{justify-content:flex-start;text-align:left}.language-switcher{justify-content:center}.hero-metrics{grid-template-columns:1fr}.admin-management-add{min-width:0}.calendar-panel .membership-status{align-items:flex-start}}
