:root{color:#171923;background:#f4f5f9;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{border:0;border-radius:8px;cursor:pointer;font-weight:800}button:disabled{cursor:not-allowed;opacity:.55}.primary-button{align-items:center;background:var(--brand, #f15a24);color:#fff;display:inline-flex;justify-content:center;line-height:1.1;min-height:48px;padding:14px 18px;text-align:center}.primary-button:hover,.primary-button:focus-visible{background:var(--brand-dark, #b6401d)}input,select,textarea{width:100%;border:1px solid #d8dfec;border-radius:8px;background:#fff;color:#171923;font-weight:650;outline:none;padding:13px 14px}input:focus,select:focus,textarea:focus{border-color:var(--brand, #f15a24);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand, #f15a24) 18%,transparent)}textarea{resize:vertical}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;gap:22px;height:100vh;padding:28px 20px;border-right:1px solid #dde3ee;background:#fff}.brand-block{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;padding:0;background:transparent;color:inherit;text-align:left}.brand-block img,.brand-block span{display:grid;width:48px;height:48px;place-items:center;border-radius:8px;background:var(--brand-soft, #fff0e9);color:var(--brand, #f15a24);font-size:12px;font-weight:900;object-fit:contain;padding:4px}.brand-block strong{overflow:hidden;font-size:18px;text-overflow:ellipsis;white-space:nowrap}.side-nav{display:grid;gap:8px}.side-nav button,.ghost-button,.secondary-button,.back-button,.toolbar button,.pager button{background:#eef2f7;color:#172033;padding:12px 14px}.side-nav button{text-align:left}.side-nav button.active{background:var(--brand, #f15a24);color:#fff}.sidebar-footer{display:grid;gap:8px;margin-top:auto}.box-switch{display:grid;gap:8px;color:#62708a;font-size:13px;font-weight:800}.main-panel{display:grid;align-content:start;gap:22px;width:min(1280px,100%);padding:30px}.topbar,.section-header{display:flex;align-items:center;justify-content:space-between;gap:18px}.topbar h1,.section-header h2,.login-card h1{margin:0;color:#151927;font-size:clamp(34px,5vw,58px);line-height:1}.section-header h2{font-size:clamp(28px,3vw,42px)}.section-header>button{background:var(--brand, #f15a24);color:#fff;padding:14px 18px}.eyebrow{margin:0 0 8px;color:#74809c;font-size:13px;font-weight:900;letter-spacing:0;text-transform:uppercase}.account-card{align-items:center;display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;border:1px solid #dbe2ed;border-radius:8px;background:#fff;color:#171923;padding:10px;text-align:left}.account-card:hover{border-color:var(--brand-border, #ffb69e);background:var(--brand-soft, #fff0e9)}.avatar-file-input{display:none}.account-avatar-button,.account-card-main{border:0;background:transparent;color:inherit;padding:0}.account-avatar-button{border-radius:14px;cursor:pointer}.account-avatar-button:disabled{cursor:wait;opacity:.7}.account-avatar-button:hover .participant-avatar,.account-avatar-button:focus-visible .participant-avatar{border-color:var(--brand, #f15a24);box-shadow:0 0 0 3px var(--brand-soft, #fff0e9)}.account-card-main{display:grid;gap:2px;min-width:0;text-align:left}.account-card-main:hover strong,.account-card-main:focus-visible strong{color:var(--brand, #f15a24)}.account-card strong{overflow:hidden;font-size:14px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.account-card small{color:#74809c;font-size:12px;font-weight:800;text-transform:lowercase}.view-stack{display:grid;gap:22px}.card{border:1px solid #dfe5ef;border-radius:8px;background:#fff;padding:24px;box-shadow:0 10px 28px #161f340a}.card h2,.card h3,.card h4{margin:0 0 14px;color:#171923}.card p{color:#69748e;font-weight:650;line-height:1.45}.notice{border:1px solid;border-radius:8px;padding:14px 16px;font-weight:800}.notice.success{border-color:#9bd8b4;background:#ecfff4;color:#167a3e}.notice.error{border-color:#f2b4b4;background:#fff0f0;color:#b42222}.notice.info{border-color:#bed0f5;background:#eef4ff;color:#2458b8}.login-screen{display:grid;min-height:100vh;place-items:center;padding:24px;background:linear-gradient(180deg,#ffffffd6,#f4f5f9),#f4f5f9}.login-card{display:grid;gap:16px;width:min(440px,100%);border:1px solid #dfe5ef;border-radius:8px;background:#fff;padding:30px}.login-card-branded{border-color:var(--brand-border, #dfe5ef);box-shadow:0 22px 60px color-mix(in srgb,var(--brand, #f15a24) 13%,transparent)}.login-brand{align-items:center;display:grid;gap:12px;grid-template-columns:56px minmax(0,1fr)}.login-brand img,.login-brand span{background:var(--brand-soft, #fff0e9);border-radius:8px;color:var(--brand, #f15a24);display:grid;font-size:12px;font-weight:900;height:56px;object-fit:contain;padding:6px;place-items:center;width:56px}.login-brand strong{color:#151927;display:block;font-size:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.box-select-card{gap:14px;width:min(420px,100%);border-radius:22px;padding:28px}.box-select-card h1{margin:0;font-size:30px;line-height:1.05}.box-select-subtitle{margin:-6px 0 4px;color:#6b7294;font-size:15px;font-weight:750;line-height:1.4}.box-select-card label{margin-top:4px}.box-select-card label>span{color:#6b7294;font-size:13px;font-weight:900;text-transform:uppercase}.box-select-card input{min-height:50px;border-color:#ececf3;border-radius:12px;background:#f4f5f9;font-size:16px;font-weight:700;padding:13px 14px}.box-select-list{display:block;max-height:420px;margin-top:2px;overflow:auto;width:100%}.box-select-card .box-select-row{align-items:center;background:#fff;border:0;border-bottom:1px solid #ececf3;border-radius:0;color:#151927;display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;min-height:58px;padding:12px 0;text-align:left;width:100%}.box-select-card .box-select-row:last-child{border-bottom:0}.box-select-card .box-select-row:hover,.box-select-card .box-select-row:focus-visible{background:#f8fafc;box-shadow:none}.box-select-logo-frame{align-items:center;background:#fff;border:1px solid #ececf3;border-radius:10px;display:flex;height:32px;justify-content:center;overflow:hidden;width:32px}.box-select-logo-frame img{display:block;height:24px;object-fit:contain;width:24px}.box-select-swatch{background:var(--brand, #2f3a4d);border-radius:10px;height:24px;width:24px}.box-select-card .box-select-row strong{overflow:hidden;color:#171923;font-size:17px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.box-select-chevron{color:#8d94ad;font-size:26px;font-weight:300;line-height:1}.login-card label,.form-stack label,.input-row label{display:grid;gap:8px;color:#5c6880;font-weight:900}.field-description,.field-hint{color:#74809c;font-size:13px;font-weight:750;line-height:1.45}.field-hint{color:#8a94aa}.login-card button,.form-stack button,.action-row button,.comment-form button{background:var(--brand, #f15a24);color:#fff;padding:14px 18px}.login-card .ghost-button{background:#eef2f7;color:#172033}.login-card .ghost-button:hover,.login-card .ghost-button:focus-visible{background:var(--brand-soft, #fff0e9);color:var(--brand-dark, #b6401d)}.toolbar,.action-row,.post-actions,.pager{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.schedule-header{align-items:flex-start;display:flex;gap:18px;justify-content:space-between}.schedule-header h2{margin:0;color:#151927;font-size:clamp(32px,4vw,48px);line-height:1}.schedule-mode-bar{align-items:center;display:flex;flex-wrap:wrap;column-gap:14px;row-gap:8px;justify-content:space-between}.member-schedule-mode-bar{margin-top:-10px}.schedule-mode-context{color:#66758a;flex:1 1 420px;font-size:13px;font-weight:750;line-height:18px;margin:0}.week-controls{align-items:center;display:flex;gap:8px}.week-controls strong{color:#162033;font-size:13px;font-weight:900}.member-week-nav{align-items:center;background:#fff;border:1px solid #d8dee9;border-radius:999px;display:inline-flex;gap:8px;padding:5px}.member-week-nav button{align-items:center;background:#eef2ff;border:1px solid #c7d2fe;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:28px;font-weight:900;height:38px;justify-content:center;line-height:1;padding:0 0 3px;width:38px}.member-week-nav strong{color:#162033;font-size:14px;font-weight:900;min-width:148px;text-align:center;white-space:nowrap}.schedule-filter-bar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin:-4px 0 0}.schedule-filter-chips{display:flex;flex-wrap:wrap;gap:8px}.schedule-filter-chip{align-items:center;background:#fff;border:1px solid #d8dee9;border-radius:999px;color:#162033;display:inline-flex;gap:8px;font-size:13px;font-weight:900;min-height:34px;padding:7px 11px}.schedule-filter-chip-inactive{background:#f8fafc;color:#8a97aa;text-decoration:line-through}.schedule-filter-dot{border-radius:999px;display:inline-block;height:10px;width:10px}.member-calendar-scroll{overflow-x:auto;padding-bottom:8px}.calendar-timeline{background:#fff;border:1px solid #d8dee9;border-radius:8px;display:grid;grid-template-columns:68px repeat(7,minmax(170px,1fr));min-width:1280px;overflow:hidden}.timeline-corner,.timeline-day-header{background:#fff;border-bottom:1px solid #d8dee9;min-height:58px}.timeline-corner{border-right:1px solid #e8edf5}.timeline-day-header{align-items:center;border-right:1px solid #e8edf5;display:flex;justify-content:space-between;padding:12px}.timeline-day-header h2{display:grid;gap:3px;font-size:15px;margin:0}.timeline-day-header h2 span,.timeline-day-header small{color:#66758a;font-size:12px;font-weight:800}.timeline-day-header small{align-items:center;background:#eef2ff;border:1px solid #c7d2fe;border-radius:999px;color:#1d4ed8;display:inline-flex;height:28px;justify-content:center;min-width:28px;padding:0 8px}.timeline-day-today{background:var(--brand-soft, #fff0e9)}.time-axis{background:#fbfcfe;border-right:1px solid #e8edf5;position:relative}.time-label{color:#66758a;font-size:12px;font-weight:900;position:absolute;right:12px;transform:translateY(-8px)}.timeline-day-lane{background:linear-gradient(#fff,#fff);border-right:1px solid #e8edf5;position:relative}.timeline-hour-line{border-top:1px solid #edf1f7;left:0;position:absolute;right:0}.template-card{border:1px solid;border-radius:8px;display:grid;gap:5px;min-height:0;padding:14px}.timeline-template-card{border-left-width:4px;box-shadow:0 8px 18px #0f172a0d;overflow:hidden;padding:8px 9px;position:absolute}.member-timeline-card{align-content:start;color:#162033;gap:4px;text-align:left}.member-timeline-card-past{opacity:.56}.member-timeline-card:hover{opacity:1;box-shadow:0 10px 24px #0f172a1a;transform:translateY(-1px)}.template-card-top{align-items:flex-start;display:flex;gap:8px;justify-content:space-between;min-width:0}.template-card-top strong{color:#162033;display:block;font-size:15px;font-weight:900;line-height:16px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline-template-card .status-chip{flex-shrink:0;font-size:9px;line-height:1;padding:4px 5px}.template-time,.template-meta{color:#516074;font-size:12px;font-weight:800;line-height:14px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-meta{color:#66758a;font-weight:700}.template-buddy-icon{align-items:center;display:flex;bottom:8px;justify-content:center;position:absolute;right:8px}.member-empty-lane{color:#9aa5b7;font-size:12px;font-weight:850;left:12px;position:absolute;right:12px;top:18px}.week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.week-strip div{display:grid;gap:4px;min-height:74px;border:1px solid #dfe5ef;border-radius:8px;background:#fff;padding:12px}.week-strip .today{border-color:var(--brand, #f15a24);background:var(--brand-soft, #fff0e9)}.week-strip strong{color:#171923;text-transform:capitalize}.week-strip span{color:#68738c;font-size:13px;font-weight:800}.day-list,.feed-list,.notification-list,.comment-list,.score-list,.profile-list,.form-stack{display:grid;gap:14px}.day-group{display:grid;gap:12px}.day-group h3{margin:0;text-transform:capitalize}.class-grid,.workout-grid,.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.class-card{display:grid;gap:8px;min-height:172px;border:1px solid #dfe5ef;border-radius:8px;background:#fff;color:#171923;padding:18px;text-align:left}.class-card:hover{border-color:var(--brand-border, #ffb69e);box-shadow:0 14px 28px #161f3414}.class-card strong{font-size:22px}.class-card span:not(.status-chip),.class-card small{color:#68738c;font-weight:800}.status-chip{display:inline-flex;width:fit-content;align-items:center;border:1px solid #dbe2ed;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.status-chip.good{border-color:#9bd8b4;background:#ecfff4;color:#167a3e}.status-chip.warn{border-color:#ffd29b;background:#fff7e8;color:#9b5b00}.status-chip.muted{background:#eef2f7;color:#69748e}.status-chip.open{border-color:var(--brand-border, #ffb69e);background:var(--brand-soft, #fff0e9);color:var(--brand-dark, #b6401d)}.back-button{width:fit-content}.detail-hero{display:flex;align-items:start;justify-content:space-between;gap:18px}.detail-hero h2{margin:0;font-size:clamp(34px,5vw,64px);line-height:1}.detail-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}.detail-stats div{display:grid;gap:4px;border:1px solid #e2e7f0;border-radius:8px;padding:14px}.detail-stats strong{font-size:28px;overflow-wrap:anywhere}.detail-stats span,.detail-stats small{color:#68738c;font-weight:800}.detail-stats small{font-size:13px;line-height:1.3}.past-class{opacity:.78}.class-detail-backdrop{align-items:flex-start;background:#0f172a6b;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:32px;position:fixed;z-index:30}.class-detail-modal{margin:auto 0;width:min(980px,100%)}.class-modal-toolbar{align-items:center;display:flex;gap:12px;justify-content:flex-end}.class-modal-toolbar button{background:#fff;color:#172033;padding:11px 14px}.class-detail-modal .card{box-shadow:0 18px 48px #0f172a29}.two-column{align-items:start;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}.profile-side-stack{display:grid;gap:22px}.workout-detail{display:grid;gap:12px}.photo-button{overflow:hidden;padding:0;border:1px solid #e2e7f0;background:#fff}.photo-button img,.inline-photo{display:block;width:100%;max-height:360px;border-radius:8px;object-fit:cover}.photo-error{border:1px solid #e2e7f0;border-radius:8px;color:#6d7894;margin:0;padding:14px 16px}.photo-modal{position:fixed;z-index:60;inset:0;display:grid;place-items:center;padding:26px;background:#0a0c12d1}.photo-modal button{position:fixed;top:18px;right:18px;background:#fff;color:#171923;padding:12px 14px}.photo-modal img{display:block;height:auto;width:auto;max-width:min(1100px,calc(100vw - 52px));max-height:88vh;border-radius:16px;object-fit:contain;touch-action:pinch-zoom}.member-list{display:flex;flex-wrap:wrap;gap:8px}.member-list span{border-radius:999px;background:#eef2f7;color:#44506a;padding:8px 12px;font-weight:800}.participant-column,.participant-card{align-content:start;display:grid;gap:14px}.participant-card-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.participant-card-header h3{margin:0}.participant-card-header span{color:#74809c;font-size:14px;font-weight:900}.participant-list{display:grid;gap:12px}.participant-row{align-items:center;display:grid;gap:12px;grid-template-columns:40px minmax(0,1fr)}.participant-avatar{align-items:center;background:var(--brand-soft, #fff0e9);border:1px solid var(--brand-border, #ffb69e);border-radius:14px;display:flex;height:40px;justify-content:center;overflow:hidden;width:40px}.participant-avatar img{display:block;height:100%;object-fit:cover;width:100%}.participant-avatar span{color:var(--brand, #f15a24);font-size:13px;font-weight:900}.participant-copy{display:grid;gap:2px;min-width:0}.participant-copy>span{align-items:center;color:#171923;display:flex;gap:8px;font-size:15px;font-weight:800;min-width:0}.participant-copy>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.participant-copy small{color:#74809c;font-size:12px;font-weight:800}.buddy-mark{background:#eef2ff;border-radius:999px;color:#2458d3!important;flex-shrink:0;padding:3px 7px}.buddy-mark-icon{display:inline-block;flex:0 0 auto;height:18px;position:relative;width:18px}.buddy-mark-icon span{background:var(--brand, #f15a24);border:1.5px solid #fff;border-radius:999px;height:10px;left:2px;position:absolute;top:3px;width:10px}.buddy-mark-icon span+span{background:var(--brand-dark, #b6401d);left:auto;right:2px;top:7px;z-index:2}.buddy-hero-card{align-items:center;display:flex;gap:16px}.buddy-hero-card h3,.buddy-hero-card p{margin:0}.buddy-hero-card p{color:#68738c;font-weight:750;line-height:1.45;margin-top:4px}.buddy-hero-icon{align-items:center;background:var(--brand-soft, #fff0e9);border-radius:8px;display:flex;height:48px;justify-content:center;width:48px}.buddy-hero-icon .buddy-mark-icon{height:28px;width:28px}.buddy-section-card{display:grid;gap:14px}.buddy-section-header{align-items:center;display:flex;justify-content:space-between;gap:12px}.buddy-section-header h3{margin:0}.buddy-section-header span{background:#eef2f7;border-radius:999px;color:#68738c;font-size:13px;font-weight:900;padding:6px 10px}.buddy-list,.buddy-search-results{display:grid;gap:10px}.buddy-member-row{align-items:center;border:1px solid #e4e9f2;border-radius:8px;display:grid;gap:12px;grid-template-columns:40px minmax(0,1fr) auto;padding:12px}.buddy-member-copy{display:grid;gap:3px;min-width:0}.buddy-member-copy>span{align-items:center;color:#171923;display:flex;gap:7px;font-size:15px;font-weight:900;min-width:0}.buddy-member-copy>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.buddy-member-copy small{color:#74809c;font-size:12px;font-weight:800}.buddy-row-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.buddy-invite-button{align-items:center;background:var(--brand, #f15a24);color:#fff;display:inline-flex;justify-content:center;line-height:1.1;min-height:44px;min-width:128px;padding:12px 16px;text-align:center}.buddy-status-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:900;justify-content:center;line-height:1;min-height:30px;padding:0 11px;white-space:nowrap}.buddy-status-pending{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}.buddy-primary-action{background:var(--brand-soft, #fff0e9);color:var(--brand, #f15a24)}.danger-button{background:#fee2e2;border:1px solid #fecaca;border-radius:999px;color:#dc2626;padding:10px 14px}.danger-button:hover{background:#fecaca}.site-modal{background:#fff;border:1px solid #d8dee9;border-radius:8px;box-shadow:0 22px 70px #0f172a38;display:grid;gap:16px;max-height:calc(100vh - 48px);overflow:auto;padding:24px;width:min(620px,100%)}.modal-title-row{align-items:flex-start;display:flex;justify-content:space-between;gap:18px}.modal-title-row h3{font-size:28px;line-height:1.05;margin:0}.avatar-preview-modal{width:min(520px,100%)}.avatar-preview-frame{align-items:center;aspect-ratio:1;background:var(--brand-soft, #fff0e9);border:1px solid var(--brand-border, #ffb69e);border-radius:8px;display:flex;justify-content:center;overflow:hidden;width:100%}.avatar-preview-frame img{display:block;height:100%;object-fit:cover;width:100%}.avatar-preview-frame span{color:var(--brand, #f15a24);font-size:clamp(72px,18vw,132px);font-weight:900}.avatar-modal-actions{display:flex;justify-content:flex-end}.avatar-modal-actions button{background:var(--brand, #f15a24);color:#fff;min-height:48px;min-width:180px;padding:14px 18px}.buddy-search-modal .buddy-member-row{grid-template-columns:40px minmax(0,1fr) auto}.stat-card{display:grid;gap:8px}.stat-card span,.stat-card small{color:#74809c;font-weight:900}.stat-card strong{overflow-wrap:anywhere;color:#171923;font-size:clamp(28px,5vw,48px);line-height:1}.membership-hero{display:grid;gap:14px;grid-template-columns:minmax(0,2fr) repeat(2,minmax(180px,1fr))}.membership-primary-card{display:grid;gap:10px}.membership-primary-card h3{font-size:clamp(30px,4vw,48px);line-height:1;margin:0;overflow-wrap:anywhere}.membership-primary-card p{margin:0}.membership-primary-card>span{align-items:center;background:var(--brand-soft, #fff0e9);border:1px solid var(--brand-border, #ffb69e);border-radius:999px;color:var(--brand-dark, #b6401d);display:inline-flex;font-size:13px;font-weight:900;padding:8px 11px;width:fit-content}.product-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.product-card{align-content:start;display:grid;gap:14px}.product-card-featured{border-color:var(--brand-border, #ffb69e)}.product-card-current{background:linear-gradient(180deg,color-mix(in srgb,var(--brand-soft, #fff0e9) 58%,#fff),#fff 64%);border-color:var(--brand-border, #ffb69e)}.product-card-header{align-items:center;display:flex;gap:10px;justify-content:space-between}.product-card-header span,.product-card-header small{color:#74809c;font-size:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}.mandate-form{display:grid;gap:16px}.mandate-form .eyebrow{margin-bottom:6px}.mandate-form-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.mandate-form-grid label:nth-child(4){grid-column:1 / -1}.mandate-text-box{background:#f8fafc;border:1px solid #d8dee9;border-radius:8px;display:grid;gap:8px;padding:14px}.mandate-text-box strong,.signature-pad-header strong{color:#171923;font-size:13px;font-weight:900}.mandate-text-box p{color:#516074;font-size:13px;font-weight:700;max-height:160px;overflow:auto;white-space:pre-wrap}.mandate-summary-list{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px}.mandate-upload-panel{align-items:end;background:#f8fafc;border:1px solid #d8dee9;border-radius:8px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));padding:14px}.mandate-upload-panel label{grid-column:1 / -1}.mandate-upload-panel input[type=file]{background:#fff}.mandate-upload-panel button{justify-self:start;min-height:44px;padding:11px 16px;width:auto}.signature-pad-block{display:grid;gap:8px}.signature-pad-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.signature-pad-header .secondary-button{min-height:34px;padding:7px 10px;width:auto}.signature-pad{background:linear-gradient(#fff,#fff) padding-box,repeating-linear-gradient(0deg,#fff 0 34px,#edf1f7 35px) border-box;border:1px solid #cfd8e6;border-radius:8px;height:170px;touch-action:none;width:100%}.mandate-status-card{display:grid;gap:14px}.mandate-status-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.mandate-status-header h3{margin:0}.mandate-management-card{display:grid;gap:16px}.mandate-management-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.mandate-management-header h3{margin:0}.mandate-management-actions,.button-row{display:flex;flex-wrap:wrap;gap:10px}.mandate-management-actions button,.button-row button{min-height:40px}.mandate-editor-panel{background:#fbfcfe;border:1px solid #d8dee9;border-radius:8px;display:grid;gap:14px;padding:14px}.mandate-editor-panel h4{color:#171923;font-size:16px;margin:0 0 4px}.mandate-editor-panel p{color:#5c6880;font-size:13px;font-weight:700;margin:0}.mandate-editor-modal{max-width:760px;width:min(760px,100%)}.mandate-editor-modal .eyebrow{margin-bottom:6px}.mandate-editor-modal .mandate-form-grid{background:#fbfcfe;border:1px solid #e6ecf5;border-radius:8px;padding:14px}.mandate-editor-modal .mandate-text-box p{color:#516074;font-size:13px;font-weight:700;max-height:160px;overflow:auto}.product-card-header small{background:var(--brand-soft, #fff0e9);border:1px solid var(--brand-border, #ffb69e);border-radius:999px;color:var(--brand-dark, #b6401d);padding:5px 8px;text-transform:none}.product-card h3{font-size:28px;line-height:1.05;margin:0;overflow-wrap:anywhere}.product-card p{margin:0}.product-price{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px}.product-price strong{color:#171923;font-size:34px;line-height:1}.product-price span{color:#68738c;font-weight:850}.product-meta-list{display:flex;flex-wrap:wrap;gap:8px}.product-meta-list span{background:#eef2f7;border-radius:999px;color:#4e5d74;font-size:13px;font-weight:850;padding:7px 10px}.product-card button,.modal-actions button:not(.secondary-button){align-items:center;background:var(--brand, #f15a24);color:#fff;display:inline-flex;justify-content:center;line-height:1.1;min-height:48px;padding:13px 16px;text-align:center}.product-card button{margin-top:auto;width:100%}.product-card button:disabled{background:#eef2f7;color:#68738c}.contact-card{align-content:start;display:grid;gap:18px}.contact-card h3,.contact-card p{margin:0}.contact-details{display:grid;gap:10px}.contact-detail-row{align-items:center;background:#f8fafc;border:1px solid #e1e7f0;border-radius:12px;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:12px 14px}.contact-detail-label{color:#68738c;display:block;font-size:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}.contact-detail-value{color:#121a2f;display:block;font-weight:850;margin-top:3px;overflow-wrap:anywhere}.contact-copy-button{align-items:center;background:#edf3ff;color:var(--brand, #f15a24);display:inline-flex;justify-content:center;min-height:40px;padding:0;width:40px}.contact-copy-button:hover{background:#e3ebff}.contact-copy-button:focus-visible{outline:3px solid color-mix(in srgb,var(--brand, #f15a24) 25%,transparent);outline-offset:2px}.contact-copy-button svg{fill:none;height:18px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;width:18px}.contact-detail-empty{color:#68738c;font-weight:800}.balance-list{display:grid;gap:10px}.balance-list+.balance-list{border-top:1px solid #edf0f5;margin-top:18px;padding-top:18px}.balance-list h4,.balance-list p{margin:0}.balance-row{align-items:center;border:1px solid #e4e9f2;border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:12px 14px}.balance-row span{display:grid;gap:3px;min-width:0}.balance-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.balance-row small{color:#74809c;font-weight:800}.balance-row b{color:#171923;white-space:nowrap}.membership-change-list{display:grid;gap:12px}.membership-change-list h3{margin-bottom:2px}.membership-change-card{border:1px solid #e4e9f2;border-radius:8px;display:grid;gap:6px;padding:14px}.membership-change-card.rejected{border-color:#f2b4b4;background:#fff8f8}.membership-change-card span{color:var(--brand, #f15a24);font-size:12px;font-weight:900;text-transform:uppercase}.membership-change-card strong{color:#171923;font-size:18px}.membership-change-card small{color:#68738c;font-weight:800}.membership-change-card button{justify-self:start;margin-top:6px}.payment-filter-card{align-items:end;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,260px))}.payment-filter-card label{display:grid;gap:8px;color:#5c6880;font-weight:900}.member-payment-panel{display:grid;gap:10px}.member-payment-row{align-items:center;border:1px solid #e4e9f2;border-radius:8px;display:grid;gap:14px;grid-template-columns:minmax(220px,1.4fr) minmax(120px,.65fr) minmax(110px,.55fr) minmax(220px,1fr) minmax(190px,.85fr);padding:14px 16px}.member-payment-head{background:#fbfcfe;color:#68738c;font-size:12px;font-weight:900;text-transform:uppercase}.member-payment-row strong,.member-payment-row small{display:block}.member-payment-row strong{color:#171923}.member-payment-row small{color:#74809c;font-size:12px;font-weight:800;line-height:1.35;margin-top:3px}.payment-row-actions{display:flex;justify-content:flex-end}.payment-row-actions .secondary-button{min-height:40px;padding:10px 12px;white-space:nowrap}.payment-row-actions small{text-align:right}.segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.segmented button{border:1px solid #dfe5ef;background:#fff;color:#68738c;padding:14px}.segmented button.active{border-color:var(--brand-border, #ffb69e);background:var(--brand-soft, #fff0e9);color:var(--brand, #f15a24)}.membership-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.input-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.check-line{display:flex!important;flex-direction:row;align-items:center}.check-line input{width:20px;height:20px}.score-list div,.profile-list div{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #edf0f5;padding-top:12px}.score-list span{display:grid;gap:4px}.score-list small,.profile-list dt{color:#74809c;font-weight:850}.score-list b{min-width:120px;color:#171923;text-align:right;overflow-wrap:anywhere}.profile-list{margin:0}.profile-list dd{margin:0;font-weight:900;text-align:right}.post-header{display:flex;align-items:start;justify-content:space-between;gap:14px}.post-header div{display:grid;gap:4px}.post-header strong{font-size:22px}.post-header span{color:#74809c;font-weight:800}.pinned-post{border-color:var(--brand-border, #ffb69e)}.comment-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:16px}.notification-list button{display:grid;gap:6px;border:1px solid #dfe5ef;border-radius:8px;background:#fff;color:#171923;padding:16px;text-align:left}.notification-list button.unread{border-color:var(--brand-border, #ffb69e);background:var(--brand-soft, #fff0e9)}.notification-list span{color:#74809c;font-size:13px;font-weight:900}.notification-list p{margin:0;color:#68738c;font-weight:650}.pager{justify-content:center}.pager span{color:#68738c;font-weight:900}.modal-backdrop{align-items:center;background:#0f172a6b;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:24px;position:fixed;z-index:50}.modal-panel{background:#fff;border:1px solid #d8dee9;border-radius:8px;box-shadow:0 22px 70px #0f172a38;display:grid;gap:14px;max-height:calc(100vh - 48px);max-width:560px;overflow:auto;padding:24px;width:100%}.modal-panel h3{font-size:28px;line-height:1.05;margin:0}.modal-panel p{color:#68738c;font-weight:750;line-height:1.45;margin:0}.modal-actions{align-items:center;display:flex;gap:12px;justify-content:flex-end;margin-top:6px}.modal-actions .secondary-button{min-height:48px}.modal-actions .danger-confirm-button{background:#dc2626}.modal-actions .danger-confirm-button:hover{background:#b91c1c}.legal-gate-view{max-width:980px}.legal-gate-card,.legal-document-card,.legal-gate-submit-card{border-radius:8px}.legal-document-card-header{align-items:flex-start;display:flex;justify-content:space-between;gap:16px}.legal-document-card-header span{color:var(--muted);display:block;font-weight:700;margin-top:4px}.legal-document-content{background:#f8fafc;border:1px solid var(--border);border-radius:8px;color:var(--text);line-height:1.55;margin-top:18px;max-height:420px;overflow:auto;padding:16px;white-space:pre-wrap}.legal-check-row{align-items:flex-start;border:1px solid var(--border);border-radius:8px;cursor:pointer;display:flex;gap:10px;margin-top:16px;padding:12px}.legal-check-row input{height:20px;margin-top:2px;width:20px}.legal-check-row span{color:var(--text);font-weight:800;line-height:1.45}.legal-gate-submit-card{align-items:center;display:flex;gap:16px;justify-content:space-between}.legal-gate-submit-card .primary-button{min-width:160px}@media(max-width:920px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:16px}.side-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.side-nav button{text-align:center}.buddy-member-row,.buddy-search-modal .buddy-member-row{grid-template-columns:40px minmax(0,1fr)}.buddy-member-row>button,.buddy-row-actions{grid-column:1 / -1;justify-self:stretch}.buddy-row-actions{justify-content:stretch}.buddy-row-actions button{flex:1}.buddy-status-pill{justify-self:flex-start}.main-panel{padding:18px}.topbar,.section-header,.legal-gate-submit-card,.schedule-header,.detail-hero{align-items:stretch;flex-direction:column}.sidebar-footer{margin-top:0}.member-week-nav{justify-content:space-between;width:100%}.week-strip{display:flex;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory}.week-strip div{min-width:132px;scroll-snap-align:start}.calendar-timeline{min-width:1120px}.two-column,.detail-stats,.mandate-form-grid,.mandate-upload-panel,.membership-hero,.payment-filter-card,.member-payment-row{grid-template-columns:1fr}.member-payment-head{display:none}.payment-row-actions{justify-content:stretch}.membership-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.side-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar button,.action-row button,.primary-button,.secondary-button{width:100%}.member-week-nav button{flex:0 0 38px;width:38px}.input-row,.comment-form,.score-list div,.profile-list div{grid-template-columns:1fr}.score-list div,.profile-list div{align-items:start;flex-direction:column}.score-list b,.profile-list dd{min-width:0;text-align:left}.modal-actions{align-items:stretch;flex-direction:column-reverse}.modal-actions button{width:100%}}
