:root{--swiplo-primary: #ee2649;--swiplo-primary-strong: #cf1738;--swiplo-primary-soft: #fff1f4;--swiplo-tenant-accent: var(--swiplo-primary);--swiplo-tenant-accent-soft: var(--swiplo-primary-soft);--swiplo-success: #2f8f74;--swiplo-success-soft: #f1faf4;--swiplo-warning: #a16207;--swiplo-warning-soft: #fff9e8;--swiplo-danger: #a5263d;--swiplo-danger-soft: #fff5f7;--swiplo-info: #315f92;--swiplo-info-soft: #f1f6fd;--swiplo-bg: #edf1f5;--swiplo-surface: #ffffff;--swiplo-border: #d9e1ea;--swiplo-text: #172033;--swiplo-muted: #66758a;--swiplo-radius: 8px;--swiplo-shadow: 0 8px 20px rgb(23 32 51 / 5%);--color-brand-primary: var(--swiplo-primary);--color-brand-primary-dark: var(--swiplo-primary-strong);--color-brand-primary-soft: var(--swiplo-primary-soft);--swiplo-brand-accent: var(--swiplo-primary);--swiplo-brand-accent-soft: var(--swiplo-primary-soft);--swiplo-brand-accent-border: color-mix(in srgb, var(--swiplo-primary) 28%, #ffffff);--swiplo-brand-accent-text: #ffffff;--color-sidebar-bg: #151d2b;--color-sidebar-bg-deep: #101725;--color-sidebar-border: #0c1320;--color-sidebar-row-border: #2d374b;--color-content-bg: var(--swiplo-bg);--color-surface: var(--swiplo-surface);--color-surface-muted: #f7f9fc;--color-border: var(--swiplo-border);--color-border-soft: #e8edf3;--color-text: var(--swiplo-text);--color-text-main: var(--swiplo-text);--color-text-muted: var(--swiplo-muted);--color-bg: var(--swiplo-bg);--role-segment-active-bg: color-mix(in srgb, var(--swiplo-brand-accent-soft) 86%, #ffffff);--role-segment-active-border: var(--swiplo-brand-accent-border);--role-segment-active-text: color-mix(in srgb, var(--swiplo-brand-accent) 68%, var(--color-text));--role-segment-active-dot: var(--swiplo-brand-accent);--role-segment-active-dot-highlight: var(--swiplo-brand-accent-text);--role-segment-active-shadow: 0 0 0 1px var(--swiplo-brand-accent-border) inset, 0 6px 14px color-mix(in srgb, var(--swiplo-brand-accent) 12%, transparent);--shadow-soft: var(--swiplo-shadow);--public-brand-color: var(--color-brand-primary);--z-action-menu: 1200;--z-filter-dropdown: 1500;--z-toast: 3000;--z-modal: 7000;--z-modal-elevated: 7100;color:var(--color-text);background:var(--color-content-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.app-shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;align-self:start;height:100vh;border-right:1px solid var(--color-sidebar-border);background:linear-gradient(180deg,var(--color-sidebar-bg-deep),var(--color-sidebar-bg));box-shadow:12px 0 30px #1017251a;color:#eef4f7;overflow-y:auto}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:74px;border-bottom:1px solid var(--color-sidebar-row-border);padding:14px}.brand-block{display:flex;min-width:0;align-items:center;gap:10px;color:inherit;text-decoration:none}.brand-block-panel-logo{width:100%;min-height:46px;justify-content:center}.brand-panel-logo{display:block;width:auto;max-width:min(170px,calc(100% - 40px));max-height:40px;object-fit:contain}.brand-mark,.avatar,.staff-avatar{display:grid;flex:0 0 auto;place-items:center;border-radius:8px;color:#fff;font-weight:800}.brand-mark{width:38px;height:38px;background:var(--swiplo-brand-accent);box-shadow:0 8px 18px color-mix(in srgb,var(--swiplo-brand-accent) 28%,transparent);font-size:21px}.brand-label,.eyebrow,.sidebar-section-title{margin:0;color:#7b879a;font-size:12px;font-weight:750;letter-spacing:0;text-transform:uppercase}.brand-block strong{display:block;margin-top:2px;color:#fff;font-size:18px;line-height:1.15}.brand-block .brand-label,.sidebar-section-title{color:#96a1b2}.sidebar-toggle{display:grid;width:34px;height:34px;gap:4px;place-content:center;border:0;background:transparent;color:#9da8bb;cursor:default;padding:0}.sidebar-toggle span{display:block;width:17px;height:2px;border-radius:999px;background:currentcolor}.sidebar-nav{display:grid;border-bottom:1px solid var(--color-sidebar-row-border)}.nav-item{display:flex;min-height:42px;align-items:center;gap:10px;width:100%;border-top:1px solid var(--color-sidebar-row-border);border-left:3px solid transparent;color:#cbd4df;cursor:pointer;padding:9px 12px 9px 14px;text-align:left;text-decoration:none}.nav-item:hover,.nav-item:focus-visible{background:#ffffff0a;outline:none}.nav-item.active{border-left-color:var(--swiplo-brand-accent);background:#ffffff0d;color:#fff;font-weight:760}.nav-icon{display:block;flex:0 0 auto;width:19px;height:19px;color:#aeb8c7;fill:none;stroke:currentcolor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.nav-item.active .nav-icon{color:var(--swiplo-brand-accent)}.nav-label{min-width:0;flex:1}.nav-chevron{color:#8995a8;font-size:18px;line-height:1}.premium-nav{display:grid;gap:4px;margin-top:auto;border-top:1px solid var(--color-sidebar-row-border);padding:14px 0}.sidebar-section-title{padding:0 18px 8px}.premium-item{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:38px;border:0;background:transparent;color:#cbd4df;cursor:default;padding:8px 15px 8px 18px;text-align:left}.future-sidebar-item:disabled{cursor:default;opacity:.76}.future-sidebar-item small{color:#9aa6b8}.nav-badge{border:1px solid rgb(238 38 73 / 46%);border-radius:999px;color:#ffc1cb;font-size:11px;font-weight:760;padding:2px 7px}.workspace{min-width:0;background:var(--color-content-bg)}.topbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:74px;border-bottom:1px solid var(--color-border);background:#fffffff0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:14px 28px}.topbar-school{min-width:0}.tenant-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin-top:2px}.tenant-heading h1{margin:0;color:var(--color-text);font-size:22px;line-height:1.18}.tenant-heading span,.account-meta p,.metric-card span,.info-block p,.panel p,.news-row span,.lesson-card span,.timeline-row span,.muted{color:var(--color-text-muted)}.api-state{display:flex;flex-wrap:wrap;gap:6px;align-items:center;width:fit-content;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);color:var(--color-text-muted);font-size:12px;font-weight:700;margin:0;padding:7px 10px}.api-state.success{border-color:#c9ead7;background:#f0fbf4;color:#24663e}.api-state.error{border-color:#f4c7c9;background:#fff5f6;color:#9f2434}.api-state span{color:inherit;font-weight:600;opacity:.8}.user-panel{display:flex;flex:0 0 auto;align-items:center;gap:10px}.account-meta{text-align:right}.account-meta span{color:var(--color-text-muted);font-size:12px;font-weight:760}.account-meta p{margin:2px 0 0;font-size:13px}.avatar{width:38px;height:38px;background:#243049;font-size:12px}.workspace-content{display:grid;gap:12px;padding:18px 24px 32px}.page-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);box-shadow:var(--shadow-soft);padding:13px 16px}.page-hero h2{max-width:850px;margin:3px 0 0;font-size:22px;line-height:1.16}.page-description{max-width:860px;margin:6px 0 0;color:var(--color-text-muted);font-size:12px;line-height:1.35}.compact-page-hero{align-items:center;padding:9px 13px}.compact-page-hero h2{margin:2px 0 0;font-size:20px}.compact-page-hero .page-description{font-size:13px;line-height:1.4}.compact-page-hero .hero-actions{min-width:180px;max-width:280px}.hero-actions,.quick-actions,.inline-stats,.segment-bar{display:flex;flex-wrap:wrap;gap:8px}.hero-actions{justify-content:flex-end;min-width:190px;max-width:300px}.primary-button,.secondary-button,.danger-outline-button,.quick-actions button,.segment-bar button,.composer button,.row-action,.muted-actions button{min-height:36px;border-radius:var(--swiplo-radius);cursor:pointer;font-size:13px;font-weight:700;padding:7px 11px;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease,background-color .14s ease}.primary-button,.composer button{border:1px solid var(--swiplo-primary);background:var(--swiplo-primary);color:var(--swiplo-brand-accent-text)}.quick-actions .primary-button{border-color:var(--swiplo-primary);background:var(--swiplo-primary);color:var(--swiplo-brand-accent-text)}.primary-button:disabled,.quick-actions .primary-button:disabled,.secondary-button:disabled,.quick-actions button:disabled,.segment-bar button:disabled,.row-action:disabled,.danger-outline-button:disabled{cursor:not-allowed;opacity:.65}.secondary-button,.quick-actions button,.segment-bar button,.row-action{border:1px solid var(--swiplo-border);background:#ffffffc7;color:var(--swiplo-text);box-shadow:0 1px #ffffffb3 inset}.primary-button:hover:not(:disabled),.quick-actions .primary-button:hover:not(:disabled),.composer button:hover:not(:disabled){border-color:var(--swiplo-primary-strong);background:var(--swiplo-primary-strong)}.secondary-button:hover:not(:disabled),.quick-actions button:hover:not(:disabled),.segment-bar button:hover:not(:disabled),.row-action:hover:not(:disabled){border-color:color-mix(in srgb,var(--swiplo-primary) 18%,var(--swiplo-border));background:#fffffff0;box-shadow:0 1px #ffffffbd inset,0 8px 18px #0f172a0d}.primary-button:focus-visible,.secondary-button:focus-visible,.danger-outline-button:focus-visible,.quick-actions button:focus-visible,.segment-bar button:focus-visible,.composer button:focus-visible,.row-action:focus-visible,.muted-actions button:focus-visible{outline:3px solid color-mix(in srgb,var(--swiplo-primary) 14%,transparent);outline-offset:2px}.topbar-logout-button{flex:0 0 auto;min-height:32px;white-space:nowrap}.nav-group{display:grid;gap:3px}.nav-submenu{display:grid;gap:2px;margin:-2px 0 3px 38px}.nav-subitem{min-width:0;border-radius:7px;color:var(--color-text-muted);font-size:12px;font-weight:760;line-height:1.25;padding:5px 7px;text-decoration:none}.nav-subitem:hover,.nav-subitem:focus-visible{background:#f7f8fb;color:var(--color-text)}.nav-subitem.active{position:relative;background:#ffffff17;color:#fff}.nav-subitem.active:before{position:absolute;top:7px;bottom:7px;left:-9px;width:3px;border-radius:999px;background:var(--swiplo-brand-accent);content:""}.muted-actions{display:flex;flex-basis:100%;flex-wrap:wrap;justify-content:flex-end;gap:7px;color:var(--color-text-muted);font-size:12px}.muted-actions span{align-self:center}.muted-actions button{min-height:0;border:0;background:transparent;color:var(--color-text-muted);padding:0}.view-stack{display:grid;gap:12px}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.metric-card,.panel,.info-block,.day-column,.calendar-cell,.config-tile{border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);box-shadow:0 6px 16px #1720330a}.metric-card{display:grid;gap:4px;min-height:86px;border-left:3px solid var(--color-border);padding:11px}.metric-card p,.metric-card strong,.metric-card span,.panel h3,.info-block strong,.day-column h3,.lesson-card strong,.news-row strong,.staff-profile strong{overflow-wrap:anywhere}.metric-card p{margin:0;color:var(--color-text-muted);font-size:12px;font-weight:760}.metric-card strong{font-size:21px;line-height:1.1}.metric-card span{font-size:12px;line-height:1.35}.metric-card.tone-brand{border-left-color:var(--color-brand-primary)}.metric-card.tone-green{border-left-color:#9fb8ac}.metric-card.tone-blue{border-left-color:#9baec8}.metric-card.tone-red{border-left-color:#d7a2ad}.layout-two,.layout-three,.layout-four,.split-bar{display:grid;gap:12px}.layout-two{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-three,.split-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.layout-four{grid-template-columns:repeat(4,minmax(0,1fr))}.panel{display:grid;align-content:start;gap:9px;padding:12px}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.panel h3{margin:2px 0 0;font-size:15px;line-height:1.25}.panel p{margin:0;line-height:1.55}.settings-view{display:grid;gap:12px}.settings-view input,.settings-view textarea,.settings-view select,.settings-view button,.settings-view label{font-family:inherit;letter-spacing:0}.settings-header-actions,.settings-button-row{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.settings-tabs{display:flex;flex-wrap:wrap;gap:7px;align-items:center;border:1px solid var(--color-border);border-radius:8px;background:#ffffffd1;padding:7px}.settings-tabs button{flex:0 0 auto;min-height:30px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--color-text-muted);cursor:pointer;font-size:12px;font-weight:760;padding:6px 10px}.settings-tabs button:hover,.settings-tabs button.active{border-color:var(--swiplo-brand-accent-border);background:var(--swiplo-brand-accent-soft);color:var(--swiplo-brand-accent)}.settings-tab-content,.settings-tab-grid{display:grid;gap:12px}.settings-tab-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.settings-section-card.panel{align-self:start;gap:10px;padding:11px}.settings-wizard-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:11px;font-weight:820;padding:5px 8px}.settings-fees-layout{display:grid;gap:12px}.settings-fees-renewals-grid{display:grid;gap:8px;align-items:start}.settings-fees-toggle-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.settings-fees-fields-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.settings-fees-segment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.settings-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.settings-fees-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.settings-fees-principles article,.settings-fees-principles>span,.settings-renewal-option-card{min-width:0;display:grid;gap:5px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 9px}.settings-fees-principles strong,.settings-fees-principles>span,.settings-renewal-option-card strong{display:inline-flex;align-items:center;gap:6px;color:var(--color-text);font-size:13px;font-weight:820}.settings-fees-principles p,.settings-renewal-option-card p{color:var(--color-text-muted);font-size:12px;line-height:1.4}.settings-renewal-option-card.is-enabled{border-color:#15976a38;background:#f5fbf8}.settings-renewal-option-card.is-muted{background:#fbfcfd;opacity:.74}.settings-field-grid,.settings-form-grid,.settings-summary-strip,.settings-logo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.settings-form-grid{align-items:end}.settings-form-grid-compact{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.settings-summary-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-field-card{display:grid;min-width:0;gap:3px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 9px}.settings-field-card>span{display:inline-flex;align-items:center;flex-wrap:wrap;gap:5px;color:var(--color-text-muted);font-size:11px;font-weight:760}.settings-field-card>strong{min-width:0;color:var(--color-text);font-size:13px;font-weight:820;overflow-wrap:anywhere}.settings-field-card.is-muted>strong{color:var(--color-text-muted)}.settings-compact-list,.settings-list-columns{display:grid;gap:8px}.settings-list-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-compact-list>span,.settings-list-columns>span{border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;color:var(--color-text);font-size:12px;font-weight:720;padding:8px 9px}.settings-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 9px}.settings-toggle-control{width:100%;color:inherit;cursor:pointer;text-align:left}.settings-toggle-card-button{min-height:52px}.settings-toggle-card-button:hover:not(:disabled){border-color:var(--swiplo-brand-accent-border);background:var(--swiplo-brand-accent-soft)}.settings-toggle-card-button:focus-visible{outline:2px solid var(--swiplo-brand-accent-border);outline-offset:2px}.settings-toggle-control.is-selected{border-color:#15976a3d;background:#f5fbf8}.settings-toggle-control:disabled{cursor:not-allowed;opacity:.66}.settings-toggle-row div{display:grid;gap:2px}.settings-toggle-row strong{font-size:13px}.settings-toggle-row span{color:var(--color-text-muted);font-size:12px}.settings-toggle{position:relative;flex:0 0 auto;width:38px;height:22px;border:1px solid var(--color-border-soft);border-radius:999px;background:#e5e7eb}.settings-toggle span{position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:999px;background:#fff;box-shadow:0 1px 4px #0f172a2e}.settings-toggle.is-active{border-color:#15976a52;background:#dff2ea}.settings-toggle.is-active span{left:19px;background:#15976a}.settings-textarea-field,.settings-hex-field,.settings-input-field{display:grid;gap:6px}.settings-textarea-field span,.settings-hex-field span,.settings-input-field span{display:inline-flex;align-items:center;gap:6px;color:var(--color-text-muted);font-size:12px;font-weight:760}.settings-textarea-field textarea,.settings-hex-field input,.settings-input-field input,.settings-input-field select{width:100%;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);font-size:13px;font-weight:680;min-height:38px;padding:8px 10px}.settings-input-field input:focus,.settings-input-field select:focus,.settings-textarea-field textarea:focus,.settings-hex-field input:focus{border-color:var(--swiplo-brand-accent-border);box-shadow:0 0 0 3px var(--swiplo-brand-accent-soft);outline:none}.settings-input-field input[readonly]{background:#f8fafc;color:var(--color-text-muted)}.settings-textarea-field textarea{min-height:82px;resize:vertical}.settings-message-templates-layout{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(520px,1.18fr);gap:12px;align-items:start}.settings-message-template-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.settings-message-template-toolbar .settings-note{max-width:560px}.settings-message-template-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.settings-message-template-list{display:grid;gap:7px;max-height:560px;overflow:auto;padding-right:2px}.settings-message-template-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:8px;width:100%;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;color:var(--color-text);cursor:pointer;padding:9px;text-align:left}.settings-message-template-row:hover,.settings-message-template-row.is-selected{border-color:var(--swiplo-brand-accent-border);background:var(--swiplo-brand-accent-soft)}.settings-message-template-row:focus-visible{outline:2px solid var(--swiplo-brand-accent-border);outline-offset:2px}.settings-message-template-row>span:first-child{display:grid;min-width:0;gap:2px}.settings-message-template-row strong,.settings-message-template-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-message-template-row strong{font-size:13px;font-weight:820}.settings-message-template-row small{color:var(--color-text-muted);font-size:11px;font-weight:680}.settings-message-template-empty{display:grid;gap:3px;border:1px dashed var(--color-border);border-radius:8px;background:#f8fafc;padding:12px}.settings-message-template-empty span{color:var(--color-text-muted);font-size:12px}.settings-message-template-editor{display:grid;gap:12px}.settings-message-template-body-field{display:grid;gap:6px}.settings-message-template-body-field>span{color:var(--color-text-muted);font-size:12px;font-weight:760}.settings-message-template-body-field textarea{min-height:190px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);font:inherit;line-height:1.45;padding:10px;resize:vertical}.settings-message-template-body-field textarea:focus{border-color:var(--swiplo-brand-accent-border);box-shadow:0 0 0 3px var(--swiplo-brand-accent-soft);outline:none}.settings-message-template-variable-panel,.settings-message-template-preview{display:grid;gap:8px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:10px}.settings-message-template-variable-panel>div:first-child,.settings-message-template-preview>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.settings-message-template-variable-panel p,.settings-message-template-preview p{margin:0;color:var(--color-text-muted);font-size:12px;line-height:1.4}.settings-message-template-preview article{display:grid;gap:8px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:10px}.settings-message-template-preview article>span{color:var(--color-text);font-size:13px;font-weight:820}.settings-message-template-preview pre{margin:0;color:var(--color-text);font:inherit;font-size:12px;line-height:1.45;white-space:pre-wrap}.settings-automation-layout{display:grid;gap:12px}.settings-automation-intro{display:grid;gap:8px}.settings-automation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}.settings-automation-card{display:grid;gap:9px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:10px}.settings-automation-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.settings-automation-card header>div{display:grid;min-width:0;gap:3px}.settings-automation-card strong{color:var(--color-text);font-size:13px;font-weight:820;line-height:1.3}.settings-automation-card header span:not(.config-meta-chip),.settings-automation-channel-toggle small{color:var(--color-text-muted);font-size:12px;font-weight:680;line-height:1.35}.settings-automation-channel-list{display:grid;gap:7px}.settings-automation-channel-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;color:inherit;cursor:pointer;padding:8px 9px;text-align:left}.settings-automation-channel-toggle>span:first-child{display:grid;min-width:0;gap:2px}.settings-automation-channel-toggle:hover:not(:disabled),.settings-automation-channel-toggle.is-selected{border-color:var(--swiplo-brand-accent-border);background:var(--swiplo-brand-accent-soft)}.settings-automation-channel-toggle:focus-visible{outline:2px solid var(--swiplo-brand-accent-border);outline-offset:2px}.settings-automation-channel-toggle:disabled{cursor:not-allowed;opacity:.72}.settings-note,.settings-warning,.settings-section-description{color:var(--color-text-muted);font-size:12px;line-height:1.45}.settings-warning{border:1px solid rgb(238 38 73 / 18%);border-radius:8px;background:#fff8fa;color:#9f253c;padding:8px 9px}.settings-logo-preview,.settings-brand-preview,.settings-integration-account,.settings-integration-list article{border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;box-shadow:0 6px 14px #0f172a0a}.settings-logo-preview{display:flex;align-items:center;gap:10px;padding:9px}.settings-logo-preview>span,.settings-brand-preview>div>span{display:inline-grid;width:36px;height:36px;place-items:center;border-radius:8px;background:var(--color-brand-primary);color:#fff;font-weight:900}.settings-logo-preview>img,.settings-brand-preview>div>img{width:44px;height:44px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;object-fit:contain}.settings-logo-preview strong,.settings-brand-preview strong{display:block;font-size:13px}.settings-logo-preview p{color:var(--color-text-muted);font-size:12px;line-height:1.35}.settings-color-presets,.settings-choice-row,.settings-choice-grid,.settings-chip-grid{display:flex;flex-wrap:wrap;gap:7px}.settings-color-preset,.settings-choice-card{display:inline-flex;align-items:center;gap:7px;min-height:32px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);cursor:pointer;font-size:12px;font-weight:760;padding:7px 9px}.settings-choice-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.settings-choice-card-rich{display:grid;align-items:start;justify-items:start;flex:1 1 190px;min-height:0;text-align:left}.settings-choice-card-rich strong{display:inline-flex;align-items:center;gap:6px;font-size:12px;line-height:1.25}.settings-choice-card-rich span{color:var(--color-text-muted);font-size:11px;font-weight:680;line-height:1.35}.settings-choice-card-rich em{border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:10px;font-style:normal;font-weight:820;padding:2px 6px}.settings-fees-subsection,.settings-renewal-option-grid{display:grid;gap:8px}.settings-fees-subsection{border-top:1px solid var(--color-border-soft);padding-top:9px}.settings-fees-panel{border:1px solid var(--color-border-soft);border-radius:8px;background:#fbfcfd;padding:9px}.settings-fees-subsection.settings-fees-panel{border-top:1px solid var(--color-border-soft)}.settings-fees-panel .settings-form-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-fees-subsection>strong{color:var(--color-text);font-size:13px}.settings-fees-subsection-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.settings-fees-subsection-heading strong{color:var(--color-text);font-size:13px;font-weight:840}.settings-inline-note{display:inline-flex;align-items:center;flex-wrap:wrap;gap:5px;color:var(--color-text-muted);font-size:12px;line-height:1.4;margin:0}.settings-renewal-option-card header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:8px}.settings-renewal-option-card header strong{display:inline-flex;align-items:center;gap:6px}.settings-renewal-option-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-mini-segment button:disabled{cursor:not-allowed;opacity:.62}.settings-mini-segment{display:flex;flex-wrap:wrap;gap:5px}.settings-mini-segment button{border:1px solid var(--color-border-soft);border-radius:999px;background:#fff;color:var(--color-text-muted);cursor:pointer;font-size:11px;font-weight:780;padding:4px 7px}.settings-mini-segment button.active{border-color:var(--swiplo-brand-accent-border);background:var(--swiplo-brand-accent-soft);color:var(--swiplo-brand-accent)}.settings-color-preset span{width:14px;height:14px;border-radius:999px;box-shadow:0 0 0 2px #fff,0 0 0 3px #0f172a1a}.settings-color-preset.selected,.settings-choice-card.selected{border-color:var(--swiplo-brand-accent-border);background:var(--swiplo-brand-accent-soft);color:var(--swiplo-brand-accent)}.settings-choice-card.is-disabled{cursor:not-allowed;opacity:.62}.settings-chip-grid span{border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text);font-size:12px;font-weight:720;padding:6px 9px}.settings-chip-button{border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text);cursor:pointer;font-size:12px;font-weight:720;padding:6px 9px}.settings-chip-button.selected{border-color:var(--swiplo-brand-accent-border);background:var(--swiplo-brand-accent-soft);color:var(--swiplo-brand-accent)}.settings-field-error{margin:0;color:#991b1b;font-size:11px;font-weight:720}.settings-preset-description,.settings-empty-state{border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;color:var(--color-text);font-size:12px;font-weight:690;line-height:1.45;padding:8px 9px}.settings-empty-state{color:var(--color-text-muted)}.settings-tab-footer{display:grid;justify-items:end;gap:5px}.settings-pending-hint{color:var(--color-text-muted);font-size:11px;font-weight:680;line-height:1.35;text-align:right}.settings-pending-action,.settings-logo-upload-action{gap:7px}.settings-logo-upload-action span,.settings-pending-action span{border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:10px;font-weight:820;padding:2px 6px}.settings-logo-file-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.settings-logo-upload-action{display:inline-flex;align-items:center;justify-content:center;min-height:34px;cursor:pointer}.settings-logo-upload-status{display:grid;gap:3px}.settings-logo-upload-status p{margin:0;font-size:.82rem;font-weight:760}.settings-upload-helper{color:var(--color-text-muted);font-size:.78rem;font-weight:650}.settings-button-row .settings-pending-action{display:inline-flex;align-items:center}.settings-tab-footer .secondary-button:disabled,.settings-pending-action:disabled{cursor:not-allowed;opacity:.68}.settings-tab-footer .secondary-button{min-width:120px}.settings-contrast-ok{color:#167451}.settings-contrast-warning{color:#9f253c}.settings-notifications-layout{display:grid;gap:12px}.settings-notifications-bottom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settings-channel-grid,.settings-notification-primary-grid,.settings-notification-rules-list{display:grid;gap:8px}.settings-channel-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-notification-primary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-channel-card,.settings-notification-automation-card{display:grid;gap:7px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 9px}.settings-notification-automation-card{width:100%;color:inherit;cursor:pointer;text-align:left}.settings-notification-automation-card:hover{border-color:#ee264933;background:#fff7f9}.settings-notification-automation-card:focus-visible{outline:2px solid rgb(238 38 73 / 28%);outline-offset:2px}.settings-notification-automation-card.is-selected{border-color:#15976a3d;background:#f5fbf8}.settings-channel-card header,.settings-notification-automation-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.settings-channel-card strong,.settings-notification-automation-card strong{display:inline-flex;align-items:center;gap:6px;min-width:0;color:var(--color-text);font-size:13px;font-weight:820}.settings-channel-card p,.settings-notification-automation-card p{color:var(--color-text-muted);font-size:12px;line-height:1.4}.settings-notification-automation-meta,.settings-notification-rule-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:center}.settings-notification-automation-meta span,.settings-notification-rule-row span{min-width:0;color:var(--color-text-muted);font-size:11px;font-weight:760;line-height:1.35}.settings-notification-rule-row{grid-template-columns:minmax(170px,1.2fr) repeat(3,minmax(110px,1fr));border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 9px}.settings-notification-rule-row strong{min-width:0;color:var(--color-text);font-size:12px;font-weight:820;line-height:1.35}.settings-messenger-layout{display:grid;gap:12px}.settings-messenger-type-grid,.settings-messenger-notification-grid,.settings-messenger-availability-grid{display:grid;gap:8px}.settings-messenger-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-messenger-notification-grid,.settings-messenger-availability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-messenger-type-card{min-width:0;display:grid;gap:5px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 9px}.settings-messenger-type-card strong{color:var(--color-text);font-size:12px;font-weight:820;line-height:1.35}.settings-messenger-type-card span{color:var(--color-text-muted);font-size:11px;font-weight:700;line-height:1.35}.settings-security-layout{display:grid;gap:12px}.settings-security-role-grid,.settings-security-card-grid{display:grid;gap:8px}.settings-security-role-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-security-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-security-role-card,.settings-security-mini-card{min-width:0;display:grid;gap:6px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 9px}.settings-security-role-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.settings-security-role-card strong,.settings-security-mini-card strong{min-width:0;display:inline-flex;align-items:center;gap:6px;color:var(--color-text);font-size:12px;font-weight:820;line-height:1.35}.settings-security-role-card p,.settings-security-role-card>span,.settings-security-mini-card span{color:var(--color-text-muted);font-size:11px;font-weight:700;line-height:1.35}.settings-security-action-row,.settings-security-legend{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.settings-security-action-row>span{display:inline-flex;align-items:center;gap:5px}.settings-security-action-row .secondary-button{min-height:32px;padding:6px 9px}.settings-security-legend span{border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:11px;font-weight:760;padding:4px 8px}.settings-security-permission-table{display:grid;gap:5px;overflow-x:auto}.settings-security-permission-row{min-width:760px;display:grid;grid-template-columns:minmax(190px,1.4fr) repeat(5,minmax(82px,.8fr));gap:6px;align-items:center;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:7px 8px}.settings-security-permission-row.is-header{background:#fff;color:var(--color-text-muted);font-size:11px;font-weight:820;text-transform:none}.settings-security-permission-row strong{color:var(--color-text);font-size:12px;font-weight:820}.settings-security-permission-row span{color:var(--color-text-muted);font-size:11px;font-weight:760}.settings-import-export-layout{display:grid;gap:12px}.settings-import-export-grid,.settings-import-template-grid,.settings-import-validation-grid,.settings-import-history-grid{display:grid;gap:8px}.settings-import-export-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-import-template-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.settings-import-validation-grid,.settings-import-history-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-import-export-card,.settings-import-export-mini-card{min-width:0;display:grid;gap:6px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 9px}.settings-import-export-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.settings-import-export-card strong,.settings-import-export-mini-card strong{min-width:0;display:inline-flex;align-items:center;gap:6px;color:var(--color-text);font-size:12px;font-weight:820;line-height:1.35}.settings-import-export-card p,.settings-import-export-card>span,.settings-import-export-mini-card span{color:var(--color-text-muted);font-size:11px;font-weight:700;line-height:1.35}.settings-import-export-card .secondary-button,.settings-import-export-mini-card .secondary-button{justify-self:start;min-height:30px;padding:5px 8px}.settings-billing-layout{display:grid;gap:12px}.settings-billing-grid,.settings-billing-history-grid{display:grid;gap:8px}.settings-billing-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-billing-history-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.settings-billing-card,.settings-billing-mini-card{min-width:0;display:grid;gap:6px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 9px}.settings-billing-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.settings-billing-card strong,.settings-billing-mini-card strong{min-width:0;display:inline-flex;align-items:center;gap:6px;color:var(--color-text);font-size:12px;font-weight:820;line-height:1.35}.settings-billing-card p,.settings-billing-mini-card span{color:var(--color-text-muted);font-size:11px;font-weight:700;line-height:1.35}.settings-billing-card .secondary-button{justify-self:start;min-height:30px;padding:5px 8px}.settings-billing-alert-list{display:grid;gap:8px}.settings-billing-alert-list article{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 9px}.settings-billing-alert-list span{min-width:0;display:inline-flex;align-items:center;gap:6px;color:var(--color-text-muted);font-size:12px;font-weight:740;line-height:1.35}.settings-support-layout{display:grid;gap:12px}.settings-support-action-grid,.settings-support-diagnostics-grid,.settings-support-knowledge-grid,.settings-support-status-grid{display:grid;gap:8px}.settings-support-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-support-diagnostics-grid,.settings-support-status-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-support-knowledge-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-support-card,.settings-support-mini-card{min-width:0;display:grid;gap:6px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 9px}.settings-support-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.settings-support-card strong,.settings-support-mini-card strong{min-width:0;display:inline-flex;align-items:center;gap:6px;color:var(--color-text);font-size:12px;font-weight:820;line-height:1.35}.settings-support-card p,.settings-support-mini-card span{color:var(--color-text-muted);font-size:11px;font-weight:700;line-height:1.35}.settings-support-card .secondary-button{justify-self:start;min-height:30px;padding:5px 8px}.settings-brand-preview{display:grid;gap:7px;border-left-width:4px;padding:9px}.settings-brand-preview>div{display:flex;align-items:center;gap:8px}.settings-brand-preview p{color:var(--color-text-muted);font-size:12px}.settings-brand-preview button{justify-self:start;border:1px solid var(--color-brand-primary);border-radius:8px;color:#fff;cursor:pointer;font-size:12px;font-weight:800;padding:7px 10px}.settings-brand-preview em{font-size:12px;font-style:normal;font-weight:760}.settings-integration-account-grid,.settings-integration-list{display:grid;gap:10px}.settings-integration-account{display:grid;gap:9px;padding:10px}.settings-integration-account header,.settings-integration-list article{display:flex;align-items:center;justify-content:space-between;gap:10px}.settings-integration-account header>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.settings-integration-list article{align-items:flex-start;flex-wrap:wrap;padding:10px}.settings-integration-list article>span:not(.status-pill){flex:1 1 260px;color:var(--color-text-muted);font-size:12px}.settings-integrations-layout{display:grid;gap:12px}.settings-integration-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}.settings-integration-card{display:grid;min-width:0;gap:9px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:10px}.settings-integration-card header,.settings-integration-card-footer,.settings-integration-alert-list article{display:flex;align-items:center;justify-content:space-between;gap:10px}.settings-integration-card header{align-items:flex-start}.settings-integration-card strong{min-width:0;color:var(--color-text);font-size:13px;font-weight:840}.settings-integration-card p,.settings-integration-alert-list span{color:var(--color-text-muted);font-size:12px;line-height:1.4}.settings-integration-card-footer{flex-wrap:wrap;justify-content:flex-end}.settings-integration-alert-list{display:grid;gap:8px}.settings-integration-alert-list article{align-items:flex-start;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 9px}.settings-integration-alert-list span{min-width:0}.settings-online-payments-layout{display:grid;gap:12px}.settings-limit-hint{align-self:center;color:var(--color-text-muted);font-size:11px;font-weight:760}.settings-online-empty-state{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;color:var(--color-text-muted);font-size:12px;font-weight:690;padding:9px 10px}.settings-online-empty-state p{margin:0}.settings-online-account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:10px;align-items:start}.settings-online-account-card{display:grid;min-width:0;gap:10px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:10px}.settings-online-account-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.settings-online-account-card header strong{min-width:0;color:var(--color-text);font-size:13px;font-weight:840;overflow-wrap:anywhere}.settings-online-account-card header div{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:6px}.settings-online-account-field-grid,.settings-online-usage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.settings-online-account-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-online-account-form{display:grid;gap:10px}.settings-online-account-modal{gap:12px}.settings-online-account-modal .settings-form-grid{align-items:start}.settings-online-account-modal-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;border-top:1px solid var(--color-border-soft);padding-top:10px}.settings-sms-layout,.settings-invoices-layout{display:grid;gap:12px}.settings-sms-config-grid,.settings-invoices-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:start}.settings-tooltip{position:relative;display:inline-grid}.settings-help-trigger{width:18px;height:18px;border:1px solid var(--color-border-soft);border-radius:999px;background:#fff;color:var(--color-brand-primary);cursor:help;font-size:11px;font-weight:900}.settings-tooltip .swiplo-tooltip-card{width:min(300px,calc(100vw - 24px));transform:translate(-50%,4px)}.settings-tooltip:hover .swiplo-tooltip-card,.settings-tooltip:focus-within .swiplo-tooltip-card{transform:translate(-50%)}.info-block{padding:10px 12px}.info-block strong{display:block;font-size:14px}.info-block p{margin:5px 0 0;font-size:12px;line-height:1.35}.chart-card{display:grid;grid-template-columns:132px minmax(0,1fr);gap:14px;align-items:center;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-muted);padding:12px}.chart-card.compact{grid-template-columns:120px minmax(0,1fr)}.bar-chart{display:flex;align-items:end;gap:7px;height:86px;border-bottom:1px solid #cbd5e1;padding:0 8px}.bar-chart span{flex:1;min-width:14px;border-radius:6px 6px 0 0;background:#c8d2df}.bar-chart span:last-child{background:var(--color-brand-primary)}.timeline-list,.stack-list,.chat-preview,.sports-card-list{display:grid;gap:10px}.sports-card-row{display:grid;grid-template-columns:minmax(120px,1fr) auto auto auto;align-items:center;gap:10px;border-bottom:1px solid var(--color-border-soft);padding:8px 0}.sports-card-row:last-child{border-bottom:0}.sports-card-row strong,.sports-card-row span{display:block}.sports-card-row strong{font-size:14px}.sports-card-row span{color:var(--color-text-muted);font-size:12px}.trend{display:inline-flex;justify-content:center;min-width:42px;border-radius:999px;border:1px solid var(--color-border-soft);background:#f8fafc;color:#536174;font-size:12px;font-weight:730;padding:3px 7px}.trend.up:before{content:"↗ "}.trend.down:before{content:"↘ "}.traffic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.traffic-item{border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);padding:10px}.traffic-item span,.traffic-item p{color:var(--color-text-muted);font-size:12px}.traffic-item strong{display:block;margin-top:5px;font-size:20px;line-height:1.15}.traffic-item p{margin:5px 0 0}.owner-dashboard-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.owner-dashboard-finance-hero{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:12px}.owner-dashboard-finance-card,.owner-dashboard-business-section{border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:14px}.owner-dashboard-finance-card{display:grid;align-content:start;gap:12px}.owner-dashboard-card-header,.owner-dashboard-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.owner-dashboard-card-header h3,.owner-dashboard-section-header h3{margin:0;color:var(--color-text-main);font-size:18px;line-height:1.15}.owner-dashboard-card-header span{display:block;margin-top:4px;color:var(--color-text-muted);font-size:12px;line-height:1.35}.owner-dashboard-main-value{color:var(--color-text-main);font-size:34px;line-height:1}.owner-dashboard-method-list{display:grid;gap:7px}.owner-dashboard-method-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--color-border-soft);border-radius:7px;background:var(--color-surface-muted);padding:8px 10px}.owner-dashboard-method-row span{color:var(--color-text-muted);font-size:12px}.owner-dashboard-method-row strong{color:var(--color-text-main);font-size:14px;white-space:nowrap}.owner-dashboard-inline-link{display:inline-flex;align-items:center;justify-content:center;justify-self:start;min-height:30px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:#425066;cursor:pointer;font-size:12px;font-weight:720;line-height:1.2;padding:6px 9px;text-align:center;text-decoration:none;box-shadow:0 1px #ffffffb3 inset;transition:border-color .14s ease,box-shadow .14s ease,color .14s ease,background-color .14s ease;white-space:normal}.owner-dashboard-inline-link:hover{border-color:color-mix(in srgb,var(--swiplo-primary) 18%,var(--swiplo-border));background:#fffffff0;color:#425066;box-shadow:0 1px #ffffffbd inset,0 8px 18px #0f172a0d}.owner-dashboard-inline-link:focus-visible{outline:3px solid color-mix(in srgb,var(--swiplo-primary) 14%,transparent);outline-offset:2px}.owner-dashboard-inline-link:disabled,.owner-dashboard-inline-link[aria-disabled=true]{border-color:var(--color-border-soft);background:#f8fafc;color:var(--color-text-muted);cursor:not-allowed;box-shadow:none}.owner-dashboard-section-header .owner-dashboard-inline-link,.owner-dashboard-report-actions .owner-dashboard-inline-link{min-height:30px;white-space:nowrap}.owner-dashboard-chart-body{display:grid;gap:6px;margin-top:8px}.owner-dashboard-revenue-chart{display:block;width:100%;min-height:170px}.owner-dashboard-chart-grid{stroke:var(--color-border-soft);stroke-width:1}.owner-dashboard-chart-axis{fill:var(--color-text-muted);font-size:9px}.owner-dashboard-chart-area-current{fill:color-mix(in srgb,var(--swiplo-brand-accent, var(--color-brand-primary)) 16%,transparent)}.owner-dashboard-chart-line-current,.owner-dashboard-chart-line-previous{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.owner-dashboard-chart-line-current{stroke:var(--swiplo-brand-accent, var(--color-brand-primary))}.owner-dashboard-chart-line-previous{stroke:#94a3b8;stroke-dasharray:5 5;stroke-width:2}.owner-dashboard-chart-point{fill:#fff;stroke:var(--swiplo-brand-accent, var(--color-brand-primary));stroke-width:2}.owner-dashboard-chart-axis-labels{display:flex;justify-content:space-between;gap:12px;color:var(--color-text-muted);font-size:11px}.owner-dashboard-stat-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:12px}.owner-dashboard-stat-card,.owner-dashboard-insight-card{position:relative;overflow:hidden;border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:12px 12px 10px}.owner-dashboard-stat-card:before,.owner-dashboard-insight-card:before{position:absolute;inset:0 0 auto;height:2px;background:color-mix(in srgb,var(--swiplo-brand-accent, var(--color-brand-primary)) 68%,#ffffff);content:""}.owner-dashboard-stat-card{min-height:84px;display:grid;gap:6px;align-content:start}.owner-dashboard-stat-card span,.owner-dashboard-insight-card span{color:var(--color-text-muted);font-size:12px;line-height:1.25}.owner-dashboard-stat-card strong,.owner-dashboard-insight-card strong{display:block;color:var(--color-text-main);font-size:23px;line-height:1}.owner-dashboard-stat-card small,.owner-dashboard-insight-card small{display:block;color:var(--color-text-muted);font-size:11px;line-height:1.3}.owner-dashboard-report-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.owner-dashboard-insight-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.owner-dashboard-insight-card{min-height:88px;display:grid;gap:7px;align-content:start}.owner-dashboard-stat-card .status-pill{min-height:20px;margin-top:1px;border-color:var(--color-border-soft);background:#f8fafc;color:var(--color-text-muted);font-size:10px;opacity:.82;padding:3px 7px}.owner-dashboard-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.owner-dashboard-metric-card{display:grid;min-height:116px;align-content:space-between;gap:8px;border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:12px}.owner-dashboard-metric-card p,.owner-dashboard-metric-card span{margin:0;color:var(--color-text-muted);font-size:12px;line-height:1.35}.owner-dashboard-metric-card strong{display:block;margin-top:5px;color:var(--color-text-main);font-size:24px;line-height:1}.owner-dashboard-metric-card.tone-brand{border-top-color:var(--swiplo-brand-accent, var(--color-brand-primary))}.owner-dashboard-metric-card.tone-green{border-top-color:#64aa8f}.owner-dashboard-metric-card.tone-blue{border-top-color:#7194c9}.owner-dashboard-metric-card.tone-yellow{border-top-color:#ddb45a}.owner-dashboard-source-note{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);color:var(--color-text-muted);font-size:12px;padding:8px 10px}.owner-dashboard-source-note button{border:0;background:transparent;color:var(--role-segment-active-text, var(--color-brand-primary-dark));cursor:pointer;font-size:12px;font-weight:750;padding:0 2px}.owner-dashboard-section-grid,.owner-dashboard-tile-grid,.owner-dashboard-two-panels{display:grid;gap:10px}.owner-dashboard-monthly-panel{display:grid;grid-template-columns:minmax(240px,.74fr) minmax(0,1.26fr) auto;align-items:stretch;gap:12px}.owner-dashboard-monthly-summary{display:grid;gap:10px;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);padding:10px 12px}.owner-dashboard-monthly-summary p{margin:0 0 7px;color:var(--color-text-muted);font-size:12px;line-height:1.35}.owner-dashboard-monthly-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.owner-dashboard-monthly-kpis article{border:1px solid var(--color-border-soft);border-radius:7px;background:#fff;padding:8px}.owner-dashboard-monthly-kpis span,.owner-dashboard-monthly-chart-header span{display:block;color:var(--color-text-muted);font-size:11px;line-height:1.3}.owner-dashboard-monthly-kpis strong{display:block;margin-top:5px;color:var(--color-text-main);font-size:20px;line-height:1}.owner-dashboard-monthly-chart{display:grid;align-content:stretch;gap:10px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:10px 12px}.owner-dashboard-monthly-chart-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.owner-dashboard-monthly-chart-header strong{display:block;font-size:14px}.owner-dashboard-monthly-legend{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.owner-dashboard-monthly-legend span{position:relative;padding-left:15px;white-space:nowrap}.owner-dashboard-monthly-legend span:before{position:absolute;left:0;top:4px;width:9px;height:9px;border-radius:999px;background:var(--swiplo-brand-accent, var(--color-brand-primary));content:""}.owner-dashboard-monthly-legend span.previous:before{background:#cbd5e1}.owner-dashboard-monthly-empty{display:grid;min-height:78px;place-items:center;border:1px dashed var(--color-border);border-radius:8px;background:var(--color-surface-muted);color:var(--color-text-muted);font-size:12px;line-height:1.4;padding:14px;text-align:center}.owner-dashboard-report-link{align-self:stretch;min-width:148px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:#425066;cursor:pointer;font-size:12px;font-weight:760;padding:9px 12px}.owner-dashboard-row,.owner-dashboard-tile,.owner-dashboard-alert-row{border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:10px 12px}.owner-dashboard-row strong,.owner-dashboard-row span,.owner-dashboard-tile strong,.owner-dashboard-tile span,.owner-dashboard-alert-row strong,.owner-dashboard-alert-row span{display:block}.owner-dashboard-row strong,.owner-dashboard-tile strong,.owner-dashboard-alert-row strong{font-size:14px}.owner-dashboard-row span,.owner-dashboard-tile span,.owner-dashboard-alert-row span{margin-top:4px;color:var(--color-text-muted);font-size:12px;line-height:1.35}.owner-dashboard-section-grid{grid-template-columns:minmax(0,1.6fr) minmax(240px,.8fr);align-items:start}.owner-dashboard-two-panels{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-dashboard-compact-list,.owner-dashboard-link-grid,.owner-dashboard-alert-list{display:grid;gap:8px}.owner-dashboard-row,.owner-dashboard-tile,.owner-dashboard-alert-row{display:grid;align-items:center;gap:10px}.owner-dashboard-row{grid-template-columns:minmax(0,1fr) auto}.owner-dashboard-row-meta{display:grid;justify-items:end;gap:6px}.owner-dashboard-row-meta strong{color:var(--color-text-main);font-size:14px;line-height:1;white-space:nowrap}.owner-dashboard-link-grid{grid-template-columns:1fr}.owner-dashboard-link-grid button{min-height:32px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:#425066;cursor:pointer;font-size:12px;font-weight:750;padding:7px 10px;text-align:left}.text-button{border:0;background:transparent;color:var(--role-segment-active-text, var(--color-brand-primary-dark));cursor:pointer;font-size:12px;font-weight:750;min-height:auto;padding:0;text-align:left}.owner-dashboard-tile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.owner-dashboard-tile-grid.compact{grid-template-columns:1fr}.owner-dashboard-tile{grid-template-columns:minmax(0,1fr) auto}.owner-dashboard-tile-actions{display:grid;justify-items:end;gap:6px}.owner-dashboard-alert-row{position:relative;overflow:hidden;grid-template-columns:minmax(0,1fr) auto auto}.owner-dashboard-alert-row:before{position:absolute;inset:0 auto 0 0;width:3px;background:color-mix(in srgb,var(--swiplo-brand-accent, var(--color-brand-primary)) 62%,#ffffff);content:""}.owner-dashboard-alert-row .text-button{min-height:30px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:#425066;font-size:12px;font-weight:720;padding:6px 9px;text-align:center;white-space:nowrap;box-shadow:0 1px #ffffffb3 inset;transition:border-color .14s ease,box-shadow .14s ease,color .14s ease,background-color .14s ease}.owner-dashboard-alert-row .text-button:hover{border-color:color-mix(in srgb,var(--swiplo-primary) 18%,var(--swiplo-border));background:#fffffff0;color:#425066;box-shadow:0 1px #ffffffbd inset,0 8px 18px #0f172a0d}.owner-dashboard-alert-row .text-button:focus-visible{outline:3px solid color-mix(in srgb,var(--swiplo-primary) 14%,transparent);outline-offset:2px}.owner-dashboard-alert-empty{display:grid;gap:4px;border:1px dashed var(--color-border);border-radius:8px;background:#fff;color:var(--color-text-muted);padding:12px}.owner-dashboard-alert-empty strong,.owner-dashboard-alert-empty span{display:block}.owner-dashboard-alert-empty strong{color:var(--color-text-main);font-size:14px}.owner-dashboard-alert-empty span{font-size:12px;line-height:1.35}.reception-dashboard-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;max-width:min(100%,680px);overflow-x:auto;padding-bottom:1px;flex-wrap:nowrap}.compact-page-hero .hero-actions:has(.reception-dashboard-actions){min-width:min(100%,620px);max-width:none}.reception-dashboard-top-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:nowrap}.reception-dashboard-top-actions .primary-button,.reception-dashboard-top-actions .secondary-button,.reception-dashboard-actions>.secondary-button{min-height:32px;border-radius:7px;font-size:12px;padding:6px 12px;white-space:nowrap}.reception-dashboard-context-strip{display:flex;flex-direction:column;gap:9px;border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:10px 12px}.reception-dashboard-location-row{min-width:0}.reception-dashboard-work-location{display:flex;width:100%;min-width:0;align-items:flex-start;gap:10px}.reception-dashboard-work-location>span{flex:0 0 auto;padding-top:8px;color:var(--color-text-muted);font-size:11px;font-weight:760}.reception-dashboard-context-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;gap:10px;border-top:1px solid color-mix(in srgb,var(--color-border-soft) 70%,transparent);padding-top:9px}.reception-dashboard-context-stat{display:inline-flex;position:relative;min-width:0;min-height:58px;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:5px;overflow:hidden;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;color:#5c6677;font-size:12px;font-weight:700;line-height:1.12;padding:12px 12px 10px;white-space:nowrap}.reception-dashboard-context-stat:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:color-mix(in srgb,var(--swiplo-brand-accent) 70%,#ffffff)}.reception-dashboard-context-stat strong{color:var(--color-text-main);font-size:22px;line-height:1}.reception-dashboard-context-stat-label{color:var(--color-text-muted);font-size:12px;font-weight:760}@media (max-width: 1100px){.reception-dashboard-context-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 720px){.reception-dashboard-context-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.reception-dashboard-context-stat.is-warning{border-color:color-mix(in srgb,#d9a33f 24%,var(--color-border-soft));background:color-mix(in srgb,#d9a33f 7%,#ffffff)}.reception-dashboard-context-stat.is-warning:before{background:color-mix(in srgb,#d9a33f 72%,#ffffff)}.reception-dashboard-context-stat.is-alert{border-color:color-mix(in srgb,#d64b68 24%,var(--color-border-soft));background:color-mix(in srgb,#d64b68 6%,#ffffff)}.reception-dashboard-context-stat.is-alert:before{background:color-mix(in srgb,#d64b68 72%,#ffffff)}.reception-dashboard-location-switcher{display:flex;min-width:0;flex:1 1 auto;gap:6px;flex-wrap:wrap}.reception-dashboard-location-switcher button{display:inline-flex;min-height:30px;align-items:center;gap:6px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:#425066;cursor:pointer;font-size:12px;font-weight:720;padding:6px 9px;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease,color .14s ease}.reception-dashboard-location-switcher button.active{border-color:var(--role-segment-active-border);background:var(--role-segment-active-bg);box-shadow:var(--role-segment-active-shadow);color:var(--role-segment-active-text);font-weight:820}.reception-dashboard-location-switcher button.active:before,.instructor-dashboard-day-switcher button.active:before{content:"";width:6px;height:6px;flex:0 0 auto;border-radius:999px;background:var(--role-segment-active-dot);box-shadow:0 0 0 1px color-mix(in srgb,var(--role-segment-active-dot-highlight) 64%,transparent) inset}.reception-dashboard-location-switcher button.is-all-locations{border-color:var(--color-border-soft);background:#f8fafc;color:#5c6677}.reception-dashboard-location-switcher button.is-all-locations.active{border-color:var(--role-segment-active-border);background:var(--role-segment-active-bg);box-shadow:var(--role-segment-active-shadow);color:var(--role-segment-active-text)}.reception-dashboard-location-switcher button:disabled,.instructor-dashboard-day-switcher button:disabled{border-color:#d7dee8;background:#eef2f7;box-shadow:none;color:#8a97a8;cursor:default}.reception-dashboard-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.reception-dashboard-metric-card{display:grid;min-height:82px;align-content:start;gap:7px;border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:9px 10px}.reception-dashboard-metric-top{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.reception-dashboard-metric-status{flex:0 0 auto;opacity:.78}.reception-dashboard-metric-card p,.reception-dashboard-metric-card>div>span{margin:0;color:var(--color-text-muted);font-size:11px;line-height:1.35}.reception-dashboard-metric-card strong{display:block;margin-bottom:3px;color:var(--color-text-main);font-size:22px;line-height:1}.reception-dashboard-metric-card.tone-brand{border-top-color:var(--swiplo-brand-accent, var(--color-brand-primary))}.reception-dashboard-metric-card.tone-green{border-top-color:#64aa8f}.reception-dashboard-metric-card.tone-blue{border-top-color:#7194c9}.reception-dashboard-metric-card.tone-yellow{border-top-color:#ddb45a}.reception-dashboard-metric-card.tone-red{border-top-color:#dc6070}.reception-dashboard-classes-panel,.reception-dashboard-class-actions,.reception-dashboard-quick-actions,.reception-dashboard-alert-list,.reception-dashboard-communication-actions,.reception-dashboard-shift-panel{display:grid;gap:8px}.reception-dashboard-operational-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);align-items:start;gap:12px}.reception-dashboard-class-columns{display:grid;grid-template-columns:64px minmax(160px,1.25fr) 72px 92px 98px 88px 74px;gap:8px;color:var(--color-text-muted);font-size:11px;font-weight:760;text-transform:uppercase;padding:0 0 5px}.reception-dashboard-empty{display:grid;min-height:42px;place-items:center;border:1px dashed var(--color-border);border-radius:8px;background:var(--color-surface-muted);color:var(--color-text-muted);font-size:12px;line-height:1.4;padding:8px 10px;text-align:center}.reception-dashboard-empty.is-error{border-color:color-mix(in srgb,#e25565 28%,var(--color-border));background:color-mix(in srgb,#e25565 7%,#ffffff);color:#8f3a45}.reception-dashboard-class-list{display:grid;gap:0}.reception-dashboard-class-row{display:grid;position:relative;grid-template-columns:64px minmax(160px,1.25fr) 72px 92px 98px 88px 74px;align-items:center;gap:8px;border-top:1px solid var(--color-border-soft);background:#fff;padding:8px 0}.reception-dashboard-class-row:hover{background:#fbfcfe}.reception-dashboard-class-row>strong,.reception-dashboard-class-row>span,.reception-dashboard-class-main-cell{min-width:0;color:var(--color-text-main);font-size:12px}.reception-dashboard-class-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reception-dashboard-capacity-pill{display:inline-flex;min-width:54px;min-height:26px;align-items:center;justify-content:center;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:#566274;font-size:12px;font-weight:760;line-height:1;padding:5px 10px}.reception-dashboard-capacity-pill.tone-green{border-color:color-mix(in srgb,#5b9d80 22%,var(--color-border-soft));background:color-mix(in srgb,#5b9d80 10%,#ffffff);color:#3e7d64}.reception-dashboard-capacity-pill.tone-yellow{border-color:color-mix(in srgb,#d9a33f 28%,var(--color-border-soft));background:color-mix(in srgb,#d9a33f 10%,#ffffff);color:#8a6928}.reception-dashboard-capacity-pill.tone-red{border-color:color-mix(in srgb,#d64b68 28%,var(--color-border-soft));background:color-mix(in srgb,#d64b68 9%,#ffffff);color:#a43d53}.reception-dashboard-class-main-cell{display:grid;gap:2px}.reception-dashboard-class-main-cell small{overflow:hidden;color:var(--color-text-muted);font-size:11px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.reception-dashboard-class-row .row-action-menu{z-index:70}.reception-dashboard-class-row>small{color:var(--color-text-muted);font-size:11px}.reception-dashboard-class-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.reception-dashboard-class-actions article,.reception-dashboard-alert-row,.reception-dashboard-alert-empty,.reception-dashboard-shift-grid article{border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);padding:8px 10px}.reception-dashboard-class-actions article{display:flex;min-height:38px;align-items:center;justify-content:space-between;gap:8px}.reception-dashboard-class-actions strong,.reception-dashboard-alert-row strong{display:block;font-size:13px}.reception-dashboard-quick-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.reception-dashboard-quick-actions button{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:#425066;cursor:pointer;font-size:13px;font-weight:760;padding:9px 10px;text-align:left}.reception-dashboard-quick-actions button:disabled{cursor:default;opacity:.72}.reception-dashboard-quick-actions button small{color:var(--color-text-muted);font-size:11px;font-weight:760}.reception-dashboard-alert-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px}.reception-dashboard-alert-row span{display:block;margin-top:4px;color:var(--color-text-muted);font-size:12px;line-height:1.35}.reception-dashboard-alert-empty{display:grid;gap:4px;min-height:42px}.reception-dashboard-alert-empty strong{font-size:13px}.reception-dashboard-alert-empty span{color:var(--color-text-muted);font-size:12px;line-height:1.35}.reception-dashboard-communication-actions{grid-template-columns:1fr}.reception-dashboard-communication-actions .secondary-button{width:100%;justify-content:center}.reception-dashboard-shift-panel{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;padding:2px 0}.reception-dashboard-shift-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.reception-dashboard-shift-grid span{display:block;color:var(--color-text-muted);font-size:11px}.reception-dashboard-shift-grid strong{display:block;margin-top:3px;font-size:15px;line-height:1}.instructor-dashboard-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:nowrap}.instructor-dashboard-top-actions{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.instructor-dashboard-day-switcher{display:flex;gap:6px;flex-wrap:nowrap}.instructor-dashboard-day-switcher button,.instructor-dashboard-top-actions .secondary-button,.instructor-dashboard-actions>.secondary-button{display:inline-flex;min-height:30px;align-items:center;gap:6px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:#425066;cursor:pointer;font-size:12px;font-weight:720;padding:6px 9px;white-space:nowrap;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease,color .14s ease}.instructor-dashboard-day-switcher button.active{border-color:var(--role-segment-active-border);background:var(--role-segment-active-bg);box-shadow:var(--role-segment-active-shadow);color:var(--role-segment-active-text);font-weight:820}.instructor-dashboard-day-switcher button.active:before{content:none}.instructor-dashboard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.instructor-dashboard-metric-card{display:inline-flex;position:relative;min-width:0;min-height:58px;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:5px;overflow:hidden;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;color:#5c6677;font-size:12px;font-weight:700;line-height:1.12;padding:12px 12px 10px;white-space:nowrap}.instructor-dashboard-metric-card:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:color-mix(in srgb,var(--swiplo-brand-accent) 70%,#ffffff)}.instructor-dashboard-metric-top{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.instructor-dashboard-metric-status{flex:0 0 auto;opacity:.78}.instructor-dashboard-metric-card p,.instructor-dashboard-metric-card>div>span{margin:0;color:var(--color-text-muted);font-size:12px;font-weight:760;line-height:1.2}.instructor-dashboard-metric-card strong{display:block;color:var(--color-text-main);font-size:22px;line-height:1}.instructor-dashboard-metric-card.tone-brand:before{background:color-mix(in srgb,var(--swiplo-brand-accent) 70%,#ffffff)}.instructor-dashboard-classes-panel,.instructor-dashboard-class-actions,.instructor-dashboard-compact-list,.instructor-dashboard-communication-grid,.instructor-dashboard-alert-list{display:grid;gap:8px}.instructor-dashboard-operational-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);align-items:start;gap:12px}.instructor-dashboard-class-columns{display:grid;grid-template-columns:68px minmax(170px,1fr) minmax(96px,.55fr) 110px 102px 74px;gap:8px;color:var(--color-text-muted);font-size:11px;font-weight:760;text-transform:uppercase;padding:0 0 5px}.instructor-dashboard-preview-note{display:flex;min-height:34px;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;color:var(--color-text-muted);font-size:12px;padding:7px 10px}.instructor-dashboard-preview-note strong{color:var(--color-text-main);font-size:13px}.instructor-dashboard-empty{display:grid;min-height:42px;place-items:center;border:1px dashed var(--color-border);border-radius:8px;background:var(--color-surface-muted);color:var(--color-text-muted);font-size:12px;line-height:1.4;padding:8px 10px;text-align:center}.instructor-dashboard-empty.is-error{border-color:color-mix(in srgb,#e25565 28%,var(--color-border));background:color-mix(in srgb,#e25565 7%,#ffffff);color:#8f3a45}.instructor-dashboard-class-list{display:grid;gap:6px}.instructor-dashboard-class-row{display:grid;grid-template-columns:68px minmax(170px,1fr) minmax(96px,.55fr) 110px 102px 74px;align-items:center;gap:8px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:8px 10px}.instructor-dashboard-class-row>strong,.instructor-dashboard-class-row>span{min-width:0;color:var(--color-text-main);font-size:12px}.instructor-dashboard-class-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.instructor-dashboard-class-main-cell{display:grid;min-width:0;gap:2px}.instructor-dashboard-class-main-cell small{overflow:hidden;color:var(--color-text-muted);font-size:11px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.instructor-dashboard-class-row>small{grid-column:1 / -1;color:var(--color-text-muted);font-size:11px;line-height:1.35}.instructor-dashboard-row-actions{display:flex;gap:5px;justify-content:flex-end;flex-wrap:wrap}.instructor-dashboard-row-actions button{min-height:28px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:#425066;cursor:pointer;font-size:11px;font-weight:760;padding:5px 7px}.instructor-dashboard-row-actions button:disabled{cursor:default;opacity:.68}.instructor-dashboard-class-actions{grid-template-columns:repeat(5,minmax(0,1fr))}.instructor-dashboard-class-actions article,.instructor-dashboard-row,.instructor-dashboard-communication-card,.instructor-dashboard-alert-row{border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);padding:8px 10px}.instructor-dashboard-class-actions article{display:flex;min-height:38px;align-items:center;justify-content:space-between;gap:8px}.instructor-dashboard-class-actions strong,.instructor-dashboard-row strong,.instructor-dashboard-communication-card strong,.instructor-dashboard-alert-row strong{display:block;color:var(--color-text);font-size:13px}.instructor-dashboard-two-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.instructor-dashboard-row,.instructor-dashboard-communication-card,.instructor-dashboard-alert-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.instructor-dashboard-row span,.instructor-dashboard-communication-card span,.instructor-dashboard-alert-row span{display:block;margin-top:3px;color:var(--color-text-muted);font-size:12px;line-height:1.35}.instructor-dashboard-communication-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.instructor-dashboard-communication-panel{display:grid;gap:10px}.instructor-dashboard-communication-empty{display:grid;gap:5px;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);padding:10px 11px}.instructor-dashboard-communication-empty strong{color:var(--color-text-main);font-size:13px}.instructor-dashboard-communication-empty span{color:var(--color-text-muted);font-size:12px;line-height:1.4}.instructor-dashboard-quick-strip,.instructor-dashboard-check-strip{display:grid;gap:8px;border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:10px}.instructor-dashboard-quick-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.instructor-dashboard-quick-strip button{display:flex;min-height:38px;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);color:#425066;cursor:pointer;font-size:13px;font-weight:760;padding:8px 10px;text-align:left}.instructor-dashboard-quick-strip button:disabled{cursor:default;opacity:.72}.instructor-dashboard-check-strip{grid-template-columns:auto repeat(3,minmax(0,1fr));align-items:center}.instructor-dashboard-check-strip>strong{color:var(--color-text);font-size:13px}.instructor-dashboard-check-strip article{display:flex;min-height:34px;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);padding:7px 9px}.instructor-dashboard-check-strip article span{color:#425066;font-size:12px;font-weight:760;line-height:1.3}.client-portal-shell{display:grid;min-height:100vh;grid-template-columns:236px minmax(0,1fr);background:var(--color-content-bg);color:var(--color-text)}.client-portal-nav-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-right:0;border-bottom:0;background:transparent;color:#cbd4df;justify-content:space-between}.client-portal-nav-item small{flex:0 0 auto;border:1px solid rgb(255 255 255 / 14%);border-radius:999px;background:#ffffff12;color:#d7deea;font-size:10px;font-weight:820;line-height:1;padding:4px 6px}.client-portal-main{display:grid;min-width:0;align-content:start}.client-portal-content{width:min(1120px,100%);margin:0 auto;padding:clamp(16px,3vw,28px)}.client-portal-content:has(.client-dashboard-primary-section){display:grid;gap:8px}.client-portal-view{display:grid;gap:12px}.client-portal-list{display:grid;gap:8px}.client-portal-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:10px 12px}.client-portal-row>div:first-child{display:grid;min-width:0;gap:3px}.client-portal-row strong{color:var(--color-text-main);font-size:14px;line-height:1.25}.client-portal-row span{color:var(--color-text-muted);font-size:12px;line-height:1.35}.client-portal-row-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:6px}.client-portal-row-actions button:not(.primary-button):not(.secondary-button):not(.danger-outline-button):not(.client-portal-class-purchase-button){border:1px solid var(--color-border-soft);border-radius:999px;background:var(--color-surface-muted);color:var(--color-text);font-size:11px;font-weight:760;padding:6px 8px}.client-portal-row-actions button:not(.primary-button):not(.secondary-button):not(.danger-outline-button):not(.client-portal-class-purchase-button):disabled{color:var(--color-text-muted);cursor:default}.client-portal-class-panel{position:relative;overflow:hidden;border:1px solid var(--color-border-soft);border-radius:12px;background:#fff;box-shadow:0 1px #fffc inset}.client-portal-class-panel:before{position:absolute;top:0;right:0;left:0;height:1px;background:color-mix(in srgb,var(--swiplo-brand-accent, var(--color-brand-primary)) 34%,#ffffff);content:""}.client-portal-class-table{--client-portal-classes-grid-template: [class-start] minmax(130px, 1.12fr) [term-start] minmax(118px, .82fr) [participant-start] minmax(108px, .78fr) [pass-start] minmax(150px, .95fr) [payment-start] minmax(176px, 176px) [actions-start] minmax(206px, 206px) [actions-end];display:grid;min-width:0}.client-portal-class-table-head,.client-portal-class-table-row{display:grid;grid-template-columns:var(--client-portal-classes-grid-template);gap:12px;align-items:center;padding:11px 14px}.client-portal-class-table-head{border-bottom:1px solid var(--color-border-soft);background:color-mix(in srgb,var(--color-surface-muted) 45%,#ffffff);color:var(--color-text-muted);font-size:11px;font-weight:820;letter-spacing:0}.client-portal-class-pass-header{display:flex;width:100%;align-items:center;grid-column:pass-start / payment-start;justify-content:center;justify-self:stretch;padding-inline:0;text-align:center}.client-portal-class-payment-header{display:flex;width:100%;align-items:center;grid-column:payment-start / actions-start;justify-content:center;justify-self:stretch;padding-inline:0;text-align:center}.client-portal-class-actions-header{grid-column:actions-start / actions-end;justify-self:end;text-align:right}.client-portal-class-table-row+.client-portal-class-table-row{border-top:1px solid color-mix(in srgb,var(--color-border-soft) 72%,transparent)}.client-portal-class-cell{display:grid;min-width:0;gap:3px;color:var(--color-text-muted);font-size:12px;line-height:1.3}.client-portal-class-cell strong{overflow:hidden;color:var(--color-text-main);font-size:13px;font-weight:820;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.client-portal-class-cell>span,.client-portal-class-cell>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-portal-class-title-cell strong{color:var(--swiplo-brand-accent)}.client-portal-class-pass-value{display:inline-flex;min-width:0;align-items:center;flex-wrap:wrap;gap:5px}.client-portal-class-pass-value .status-pill{min-height:21px;padding:3px 7px}.client-portal-class-pass-value .status-green{border-color:color-mix(in srgb,var(--swiplo-success) 16%,var(--color-border-soft));background:color-mix(in srgb,var(--swiplo-success-soft) 56%,#ffffff);color:color-mix(in srgb,var(--swiplo-success) 78%,var(--color-text))}.client-portal-class-pass-value small{color:var(--color-text-muted);font-size:11px;font-weight:720}.client-portal-class-status-cell{display:flex;width:100%;align-items:center;justify-content:center;justify-items:center;flex-direction:column;text-align:center}.client-portal-class-status-line{display:inline-flex;width:100%;max-width:150px;margin-inline:auto;min-height:24px;align-items:center;justify-content:center;gap:5px;overflow:visible;text-overflow:clip;white-space:normal}.client-portal-class-status-cell .status-pill{width:fit-content;max-width:min(100%,150px);min-height:22px;padding:4px 8px;text-align:center;white-space:normal}.client-portal-class-payment-cell .status-pill{max-width:100%}.client-portal-class-pass-cell{grid-column:pass-start / payment-start;justify-self:stretch;padding-inline:0}.client-portal-class-pass-cell .client-portal-class-status-line{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:5px;justify-items:center}.client-portal-class-pass-cell .client-portal-class-status-line>.status-pill{grid-column:2}.client-portal-class-pass-cell .pass-activation-tooltip{position:static;grid-column:3;justify-self:start;margin-left:0;z-index:2}.client-portal-class-payment-cell{align-self:center;grid-column:payment-start / actions-start;justify-self:stretch;padding-inline:0}.client-portal-class-payment-cell .client-portal-class-status-line{display:flex;width:100%;max-width:none;align-items:center;justify-content:center;margin-inline:0;padding-inline:0}.client-portal-class-payment-cell>span:not(.client-portal-class-status-line),.client-portal-class-payment-cell>small{max-width:min(100%,150px);margin-inline:auto;text-align:center}.client-portal-class-status-cell>span:not(.client-portal-class-status-line){display:-webkit-box;width:100%;max-width:min(100%,150px);margin-inline:auto;overflow:hidden;text-align:center;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.client-portal-class-status-cell small{width:100%;max-width:min(100%,150px);margin-inline:auto;color:var(--color-text-muted);font-size:11px;font-weight:720;text-align:center}.client-class-details-modal header span{display:block;margin-top:4px;color:var(--color-text-muted);font-size:13px;font-weight:680}.client-class-details-status-heading,.client-portal-pass-status{display:inline-flex;align-items:center;justify-content:center;gap:5px}.client-class-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:4px 0 2px}.client-class-details-grid>div{position:relative;display:grid;gap:4px;min-width:0;border:1px solid var(--color-border-soft);border-radius:10px;background:#fff;padding:10px 12px}.client-class-details-grid>div:before{position:absolute;top:0;right:12px;left:12px;height:1px;background:color-mix(in srgb,var(--swiplo-brand-accent, var(--color-brand-primary)) 24%,#ffffff);content:""}.client-class-details-grid span{color:var(--color-text-muted);font-size:11px;font-weight:760}.client-class-details-grid strong{overflow:hidden;color:var(--color-text-main);font-size:14px;font-weight:820;text-overflow:ellipsis;white-space:nowrap}.client-class-details-grid small{overflow:hidden;color:var(--color-text-muted);font-size:12px;font-weight:680;text-overflow:ellipsis;white-space:nowrap}.client-portal-class-actions{grid-column:actions-start / actions-end;justify-content:flex-end}.client-portal-class-actions button:not(.primary-button):not(.secondary-button):not(.danger-outline-button):not(.client-portal-class-purchase-button){background:#fff}.client-portal-class-actions button:not(.primary-button):not(.secondary-button):not(.danger-outline-button):not(.client-portal-class-purchase-button):not(:disabled):hover,.client-portal-class-actions button:not(.primary-button):not(.secondary-button):not(.danger-outline-button):not(.client-portal-class-purchase-button):not(:disabled):focus-visible{border-color:var(--swiplo-brand-accent-border);background:var(--swiplo-brand-accent-soft);color:color-mix(in srgb,var(--swiplo-brand-accent) 72%,var(--color-text));box-shadow:0 0 0 3px color-mix(in srgb,var(--swiplo-brand-accent) 10%,transparent);outline:none}.client-portal-class-actions .client-portal-class-purchase-button{border:1px solid color-mix(in srgb,var(--swiplo-brand-accent) 52%,var(--color-border-soft));border-radius:999px;background:var(--swiplo-brand-accent);color:var(--swiplo-brand-accent-text);cursor:pointer;font-size:11px;font-weight:760;padding:6px 8px;box-shadow:0 8px 18px color-mix(in srgb,var(--swiplo-brand-accent) 14%,transparent);transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease;white-space:nowrap}.client-portal-class-actions .client-portal-class-purchase-button:not(:disabled):hover,.client-portal-class-actions .client-portal-class-purchase-button:not(:disabled):focus-visible{border-color:color-mix(in srgb,var(--swiplo-brand-accent) 78%,var(--color-border-soft));background:color-mix(in srgb,var(--swiplo-brand-accent) 88%,#ffffff);color:var(--swiplo-brand-accent-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--swiplo-brand-accent) 13%,transparent);outline:none}.client-portal-class-actions .client-portal-class-purchase-button:disabled{cursor:progress}.client-portal-class-purchase-error{display:inline-flex;width:fit-content;max-width:100%;border:1px solid color-mix(in srgb,var(--swiplo-danger) 12%,var(--color-border-soft));border-radius:999px;background:color-mix(in srgb,var(--swiplo-danger-soft) 48%,#ffffff);color:color-mix(in srgb,var(--swiplo-danger) 72%,var(--color-text));font-size:11px;font-weight:760;padding:4px 8px}@media (max-width: 980px){.client-portal-class-table-head{display:none}.client-portal-class-table-row{grid-template-columns:1fr;gap:8px}.client-portal-class-payment-cell,.client-portal-class-actions{grid-column:auto}.client-portal-class-actions{justify-content:flex-start}.client-class-details-grid{grid-template-columns:1fr}}.client-pass-purchase-modal-subtitle{color:var(--color-text-muted);font-size:12px;font-weight:700}.client-pass-purchase-modal .client-dashboard-online-payment-error{margin:10px 0 0}.client-pass-purchase-options{display:grid;gap:8px}.client-pass-purchase-option{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--color-border-soft);border-radius:10px;background:#fff;color:var(--color-text);cursor:pointer;font:inherit;padding:10px 12px;text-align:left}.client-pass-purchase-option:hover:not(:disabled),.client-pass-purchase-option:focus-visible:not(:disabled),.client-pass-purchase-option.is-selected{border-color:var(--swiplo-brand-accent-border);background:var(--swiplo-brand-accent-soft);box-shadow:0 0 0 3px color-mix(in srgb,var(--swiplo-brand-accent) 10%,transparent);outline:none}.client-pass-purchase-option.is-selected{box-shadow:inset 3px 0 color-mix(in srgb,var(--swiplo-brand-accent) 58%,#ffffff)}.client-pass-purchase-option:disabled{background:var(--color-surface-muted);color:var(--color-text-muted);cursor:default}.client-pass-purchase-option span{display:grid;gap:2px}.client-pass-purchase-option strong{color:var(--color-text-main);font-size:13px;font-weight:820}.client-pass-purchase-option small{color:var(--color-text-muted);font-size:11px;font-weight:700}.client-pass-purchase-alert{border:1px solid color-mix(in srgb,var(--swiplo-danger) 12%,var(--color-border-soft));border-radius:10px;background:color-mix(in srgb,var(--swiplo-danger-soft) 40%,#ffffff);padding:9px 10px}.client-pass-purchase-modal-footer{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--color-border-soft);margin-top:12px;padding-top:12px}.client-portal-pass-sections{display:grid;gap:12px}.client-portal-pass-section{display:grid;gap:8px}.client-portal-pass-panel{border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:12px;box-shadow:0 1px #fffc inset}.client-portal-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.client-portal-section-heading h3{position:relative;margin:0;padding-left:10px;color:var(--color-text-main);font-size:15px;font-weight:820;line-height:1.25}.client-portal-section-heading h3:before{position:absolute;top:2px;bottom:2px;left:0;width:3px;border-radius:999px;background:color-mix(in srgb,var(--swiplo-brand-accent) 78%,#ffffff);content:""}.client-portal-section-heading span{color:var(--color-text-muted);font-size:12px;font-weight:760}.client-portal-pass-list{gap:10px}.client-portal-pass-card{position:relative;overflow:hidden;align-items:flex-start;padding:12px 14px;box-shadow:0 1px #fffc inset}.client-portal-pass-card:before{position:absolute;top:0;right:0;left:0;height:1px;background:color-mix(in srgb,var(--swiplo-brand-accent, var(--color-brand-primary)) 28%,#ffffff);content:""}.client-portal-pass-card-main{display:grid;min-width:0;gap:4px}.client-portal-pass-table-wrap{overflow-x:auto;border:1px solid var(--color-border-soft);border-radius:8px}.client-portal-pass-history-table{width:100%;min-width:720px;border-collapse:collapse;background:#fff}.client-portal-pass-history-table th,.client-portal-pass-history-table td{padding:9px 10px;border-bottom:1px solid color-mix(in srgb,var(--color-border-soft) 82%,#ffffff);color:var(--color-text);font-size:12px;line-height:1.35;text-align:left;vertical-align:middle}.client-portal-pass-history-table th{background:color-mix(in srgb,var(--color-surface-muted) 64%,#ffffff);color:var(--color-text-muted);font-size:11px;font-weight:820;letter-spacing:0;text-transform:uppercase}.client-portal-pass-history-table td strong{color:var(--color-text-main);font-size:13px;font-weight:820}.client-portal-pass-history-table tr:last-child td{border-bottom:0}.client-portal-pass-panel .client-dashboard-empty.is-compact{border-style:solid;background:color-mix(in srgb,#ffffff 88%,var(--color-surface-muted))}.client-portal-attendance-panel{display:grid;gap:8px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:12px;box-shadow:0 1px #fffc inset}.client-portal-attendance-table-wrap{overflow-x:auto;border:1px solid var(--color-border-soft);border-radius:8px}.client-portal-attendance-table{width:100%;min-width:620px;border-collapse:collapse;background:#fff}.client-portal-attendance-table th,.client-portal-attendance-table td{padding:9px 10px;border-bottom:1px solid color-mix(in srgb,var(--color-border-soft) 82%,#ffffff);color:var(--color-text);font-size:12px;line-height:1.35;text-align:left;vertical-align:middle}.client-portal-attendance-table th{background:color-mix(in srgb,var(--color-surface-muted) 64%,#ffffff);color:var(--color-text-muted);font-size:11px;font-weight:820;letter-spacing:0;text-transform:uppercase}.client-portal-attendance-table td strong{color:var(--color-text-main);font-size:13px;font-weight:820}.client-portal-attendance-table tr:last-child td{border-bottom:0}.client-portal-attendance-panel .client-dashboard-empty.is-compact{border-style:solid;background:color-mix(in srgb,#ffffff 88%,var(--color-surface-muted))}.client-dashboard-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.client-dashboard-profile-switcher{display:flex;gap:6px;flex-wrap:wrap}.client-dashboard-profile-switcher button{display:inline-flex;min-height:28px;align-items:center;gap:6px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:#425066;cursor:pointer;font-size:11px;font-weight:720;padding:5px 8px;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease,color .14s ease}.client-dashboard-profile-switcher button.active{border-color:var(--role-segment-active-border);background:var(--role-segment-active-bg);box-shadow:var(--role-segment-active-shadow);color:var(--role-segment-active-text);font-weight:820}.client-dashboard-profile-switcher button.active:before{content:"";width:6px;height:6px;flex:0 0 auto;border-radius:999px;background:var(--role-segment-active-dot);box-shadow:0 0 0 1px color-mix(in srgb,var(--role-segment-active-dot-highlight) 64%,transparent) inset}.client-dashboard-profile-switcher button:disabled{border-color:#d7dee8;background:#eef2f7;box-shadow:none;color:#8a97a8;cursor:default}.client-dashboard-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.client-dashboard-status-card{display:grid;min-height:68px;align-content:start;gap:5px;border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:9px 10px}.client-dashboard-status-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.client-dashboard-status-card p,.client-dashboard-status-card>div>span{margin:0;color:var(--color-text-muted);font-size:11px;line-height:1.35}.client-dashboard-status-card strong{display:block;margin-bottom:3px;color:var(--color-text-main);font-size:18px;line-height:1}.client-dashboard-status-card.tone-brand{border-top-color:var(--swiplo-brand-accent, var(--color-brand-primary))}.client-dashboard-status-card.tone-green{border-top-color:#64aa8f}.client-dashboard-status-card.tone-blue{border-top-color:#7194c9}.client-dashboard-status-card.tone-yellow{border-top-color:#ddb45a}.client-dashboard-primary-section{display:block}.client-dashboard-primary-section,.client-dashboard-main-row,.client-dashboard-week-section,.client-dashboard-quick-actions{margin:0}.client-dashboard-next-card,.client-dashboard-compact-list,.client-dashboard-message-card,.client-dashboard-communication-grid,.client-dashboard-inline-actions,.client-dashboard-quick-actions{display:grid;gap:8px}.client-dashboard-profile-context{display:flex;min-height:36px;align-items:center;justify-content:space-between;gap:8px;color:var(--color-text-muted);font-size:12px}.client-dashboard-profile-context>div{display:grid;min-width:0;gap:2px}.client-dashboard-profile-context>div>span{color:var(--color-text-muted);font-size:10px;font-weight:820;line-height:1.1;text-transform:uppercase}.client-dashboard-profile-name{display:block;overflow:hidden;color:var(--color-text-main);font-size:14px;font-weight:840;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.client-dashboard-empty{display:grid;min-height:42px;place-items:center;border:1px dashed var(--color-border);border-radius:8px;background:var(--color-surface-muted);color:var(--color-text-muted);font-size:12px;line-height:1.4;padding:8px 10px;text-align:center}.client-dashboard-empty.is-compact{min-height:36px}.client-dashboard-empty.is-error{border-color:color-mix(in srgb,#e25565 28%,var(--color-border));background:color-mix(in srgb,#e25565 7%,#ffffff);color:#8f3a45}.client-dashboard-upcoming-card{display:grid;gap:10px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:12px}.client-dashboard-upcoming-main{display:grid;gap:4px}.client-dashboard-upcoming-date{color:var(--swiplo-brand-accent-text, var(--color-brand-primary));font-size:12px;font-weight:800}.client-dashboard-upcoming-card strong{display:block;color:var(--color-text-main);font-size:18px;line-height:1.2}.client-dashboard-upcoming-card span{display:block;color:var(--color-text-muted);font-size:12px;line-height:1.35}.client-dashboard-upcoming-card-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.client-dashboard-upcoming-card-actions article,.client-dashboard-upcoming-card-actions button,.client-dashboard-row,.client-dashboard-communication-grid article{border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);padding:8px 10px}.client-dashboard-upcoming-card-actions article,.client-dashboard-upcoming-card-actions button,.client-dashboard-communication-grid article{display:flex;min-height:38px;align-items:center;justify-content:space-between;gap:8px}.client-dashboard-upcoming-card-actions button{color:var(--color-text);cursor:pointer;text-align:left}.client-dashboard-upcoming-card-actions button:disabled{color:var(--color-text-muted);cursor:default}.client-dashboard-upcoming-card-actions button:not(:disabled):hover{border-color:var(--swiplo-brand-accent-border);background:var(--swiplo-brand-accent-soft);color:var(--color-text-main)}.client-dashboard-upcoming-card-actions strong,.client-dashboard-row strong,.client-dashboard-communication-grid strong{display:block;color:var(--color-text);font-size:13px}.client-dashboard-main-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.client-dashboard-week-section{display:block}.client-dashboard-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.client-dashboard-week-day{display:grid;min-height:116px;align-content:start;gap:8px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:8px}.client-dashboard-week-day.is-today{border-color:var(--swiplo-brand-accent-border);background:color-mix(in srgb,var(--swiplo-brand-accent-soft) 58%,#ffffff);box-shadow:0 0 0 1px color-mix(in srgb,var(--swiplo-brand-accent-border) 28%,transparent)}.client-dashboard-week-day header{display:flex;min-height:22px;align-items:center;justify-content:space-between;gap:6px;color:var(--color-text-muted);font-size:11px;font-weight:800}.client-dashboard-week-day header strong{color:var(--color-text-main);font-size:14px;line-height:1}.client-dashboard-week-day-items{display:grid;align-content:start;gap:6px}.client-dashboard-week-entry,.client-dashboard-week-more{width:100%;border:1px solid var(--color-border-soft);border-radius:7px;background:var(--color-surface-muted);color:var(--color-text);cursor:pointer;text-align:left;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease,color .14s ease}.client-dashboard-week-entry{display:grid;gap:2px;border-left:3px solid var(--swiplo-brand-accent, var(--color-brand-primary));padding:6px 7px}.client-dashboard-week-entry.type-groupNote{border-left-color:#c28d40}.client-dashboard-week-entry span,.client-dashboard-week-entry em{overflow:hidden;color:var(--color-text-muted);font-size:10px;font-style:normal;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.client-dashboard-week-entry strong{overflow:hidden;color:var(--color-text-main);font-size:11px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.client-dashboard-week-entry:hover,.client-dashboard-week-entry:focus-visible,.client-dashboard-week-more:hover,.client-dashboard-week-more:focus-visible{border-color:var(--swiplo-brand-accent-border);background:var(--swiplo-brand-accent-soft);color:var(--color-text-main);outline:none;box-shadow:var(--role-segment-active-shadow)}.client-dashboard-week-more{display:inline-flex;min-height:28px;align-items:center;justify-content:center;color:#425066;font-size:11px;font-weight:760;padding:5px 7px}.client-dashboard-week-empty{display:inline-flex;min-height:30px;align-items:center;color:var(--color-text-muted);font-size:11px}.client-dashboard-payment-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.client-dashboard-payment-card article{display:grid;gap:5px;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);padding:9px 10px}.client-dashboard-payment-card article span{color:var(--color-text-muted);font-size:12px;font-weight:760}.client-dashboard-payment-card article strong{color:var(--color-text);font-size:18px;line-height:1}.client-dashboard-online-payment{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:10px 12px}.client-dashboard-online-payment>div:first-child{display:grid;min-width:0;gap:4px}.client-dashboard-online-payment span{color:var(--color-text-muted);font-size:11px;font-weight:760;text-transform:uppercase}.client-dashboard-online-payment strong{overflow:hidden;color:var(--color-text);font-size:14px;font-weight:820;text-overflow:ellipsis;white-space:nowrap}.client-dashboard-online-payment small{color:var(--color-text-muted);font-size:12px;font-weight:680}.client-dashboard-online-payment-actions{display:inline-flex;flex:0 0 auto;align-items:center;gap:8px}.client-dashboard-online-payment-error{margin:8px 0 0;border:1px solid color-mix(in srgb,var(--color-danger, #dc2626) 20%,transparent);border-radius:8px;background:color-mix(in srgb,var(--color-danger, #dc2626) 8%,#ffffff);color:var(--color-danger, #b91c1c);font-size:12px;font-weight:720;line-height:1.35;padding:8px 10px}.client-dashboard-message-card{align-content:start}.client-dashboard-message-card p{min-height:42px;display:grid;place-items:center;margin:0;border:1px dashed var(--color-border);border-radius:8px;background:var(--color-surface-muted);color:var(--color-text-muted);font-size:12px;line-height:1.4;padding:8px 10px;text-align:center}.client-dashboard-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.client-dashboard-row span{display:block;margin-top:3px;color:var(--color-text-muted);font-size:12px;line-height:1.35}.client-dashboard-inline-actions,.client-dashboard-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px}.client-dashboard-quick-actions{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:0}.client-dashboard-inline-actions button,.client-dashboard-quick-actions button{display:flex;min-height:40px;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--swiplo-border);border-radius:8px;background:#fff;box-shadow:0 1px #ffffffb3 inset;color:var(--swiplo-text);cursor:pointer;font-size:13px;font-weight:760;padding:8px 10px;text-align:left;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease,color .14s ease}.client-dashboard-inline-actions button:disabled,.client-dashboard-quick-actions button:disabled{cursor:default;opacity:.72}.client-dashboard-quick-actions button:not(:disabled):hover,.client-dashboard-quick-actions button:not(:disabled):focus-visible{border-color:color-mix(in srgb,var(--swiplo-primary) 18%,var(--swiplo-border));background:#fffffff0;box-shadow:0 1px #ffffffbd inset,0 8px 18px #0f172a0d;outline:none}.client-dashboard-quick-actions button:not(:disabled):focus-visible{outline:3px solid color-mix(in srgb,var(--swiplo-primary) 14%,transparent);outline-offset:2px}.client-dashboard-chip-list{display:flex;gap:6px;flex-wrap:wrap}.client-dashboard-chip-list>span{display:inline-flex;min-height:30px;align-items:center;gap:6px;border:1px solid var(--color-border-soft);border-radius:999px;background:var(--color-surface-muted);color:#425066;font-size:12px;font-weight:760;padding:5px 8px}.client-calendar-view{gap:12px}.client-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.client-calendar-toolbar>div:first-child{display:grid;gap:3px}.client-calendar-toolbar strong{color:var(--color-text-main);font-size:20px;line-height:1.15}.client-calendar-toolbar span{color:var(--color-text-muted);font-size:12px}.client-calendar-toolbar-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.client-calendar-toolbar-actions button:not(.primary-button):not(.secondary-button):not(.danger-outline-button),.client-calendar-detail-actions button:not(.primary-button):not(.secondary-button):not(.danger-outline-button){min-height:32px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;color:#425066;cursor:pointer;font-size:12px;font-weight:760;padding:7px 10px;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease,color .14s ease}.client-calendar-toolbar-actions button:not(.primary-button):not(.secondary-button):not(.danger-outline-button):hover,.client-calendar-detail-actions button:not(.primary-button):not(.secondary-button):not(.danger-outline-button):hover{border-color:var(--swiplo-brand-accent-border, var(--color-border));background:var(--swiplo-brand-accent-soft, #fff5f7);color:var(--color-text-main)}.client-calendar-detail-actions button:not(.primary-button):not(.secondary-button):not(.danger-outline-button):disabled{background:var(--color-surface-muted);color:var(--color-text-muted);cursor:default}.client-calendar-detail-actions button:not(.primary-button):not(.secondary-button):not(.danger-outline-button):disabled:hover{border-color:var(--color-border-soft);background:var(--color-surface-muted);color:var(--color-text-muted)}.client-calendar-notices{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.client-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));overflow:visible;border:1px solid var(--color-border-soft);border-radius:10px;background:#fff}.client-calendar-weekday{min-height:34px;border-bottom:1px solid var(--color-border-soft);background:var(--color-surface-muted);color:var(--color-text-muted);font-size:11px;font-weight:820;line-height:34px;text-align:center;text-transform:uppercase}.client-calendar-day{position:relative;display:grid;min-height:104px;align-content:start;gap:6px;border:0;border-right:1px solid var(--color-border-soft);border-bottom:1px solid var(--color-border-soft);background:#fff;color:var(--color-text);cursor:pointer;outline:none;padding:8px;text-align:left}.client-calendar-day:focus-visible{box-shadow:inset 0 0 0 2px var(--swiplo-brand-accent-border, var(--color-border))}.client-calendar-day:nth-child(7n+7){border-right:0}.client-calendar-day.is-muted{background:#f8fafc;color:var(--color-text-muted)}.client-calendar-day.is-today .client-calendar-day-number{background:var(--swiplo-brand-accent-soft, #fff1f4);color:color-mix(in srgb,var(--swiplo-brand-accent, var(--color-brand-primary)) 58%,var(--color-text-main));box-shadow:inset 0 0 0 1px var(--swiplo-brand-accent-border, var(--color-border))}.client-calendar-day.is-selected{background:color-mix(in srgb,var(--swiplo-brand-accent-soft, #fff1f4) 72%,#ffffff);box-shadow:inset 0 0 0 2px var(--swiplo-brand-accent-border, var(--color-border))}.client-calendar-day.is-today.is-selected .client-calendar-day-number{background:color-mix(in srgb,var(--swiplo-brand-accent-soft, #fff1f4) 84%,#ffffff);color:var(--color-text-main)}.client-calendar-day-number{display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;border-radius:999px;color:var(--color-text-main);font-size:12px;font-weight:820}.client-calendar-day-items{display:grid;gap:4px;min-width:0}.client-calendar-entry,.client-calendar-more{position:relative;display:inline-flex;min-width:0;align-items:center;gap:6px;overflow:visible;border:1px solid var(--color-border-soft);border-radius:7px;background:var(--color-surface-muted);color:#425066;font-size:11px;font-weight:760;line-height:1.25;padding:4px 6px;text-overflow:ellipsis;white-space:nowrap}.client-calendar-entry:before{content:"";width:6px;height:6px;flex:0 0 6px;border-radius:999px;background:var(--color-border)}.client-calendar-entry-label{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-calendar-entry--class{border-left:3px solid var(--swiplo-brand-accent, var(--color-brand-primary));background:color-mix(in srgb,var(--swiplo-brand-accent-soft, #fff5f7) 38%,#ffffff)}.client-calendar-entry--class:before{background:var(--swiplo-brand-accent, var(--color-brand-primary))}.client-calendar-entry--holiday{border-color:color-mix(in srgb,#d39a2c 34%,var(--color-border-soft));border-left:3px solid #d39a2c;background:color-mix(in srgb,#d39a2c 15%,#ffffff);color:#6f4b12}.client-calendar-entry--holiday:before{width:7px;height:7px;flex-basis:7px;background:#d39a2c}.client-calendar-entry--event{border-color:color-mix(in srgb,#2f8f74 26%,var(--color-border-soft));border-left:3px solid color-mix(in srgb,var(--swiplo-brand-accent, #ee2649) 34%,#2f8f74);background:color-mix(in srgb,#2f8f74 12%,#ffffff);color:#244f45}.client-calendar-entry--event:before{background:color-mix(in srgb,var(--swiplo-brand-accent, #ee2649) 34%,#2f8f74)}.client-calendar-entry--groupNote{border-color:color-mix(in srgb,var(--swiplo-brand-accent, var(--color-brand-primary)) 18%,var(--color-border-soft));border-left:3px solid color-mix(in srgb,var(--swiplo-brand-accent, var(--color-brand-primary)) 52%,#475569);background:color-mix(in srgb,var(--swiplo-brand-accent-soft, #fff5f7) 54%,#ffffff);color:#344155}.client-calendar-entry--groupNote:before{width:7px;height:7px;flex-basis:7px;background:color-mix(in srgb,var(--swiplo-brand-accent, var(--color-brand-primary)) 52%,#475569)}.client-calendar-entry:focus{outline:none}.client-calendar-entry:hover,.client-calendar-entry:focus-visible{z-index:25;border-color:var(--swiplo-brand-accent-border, var(--color-border));box-shadow:0 0 0 2px var(--swiplo-brand-accent-soft, #fff5f7)}.client-calendar-entry-preview{position:absolute;left:-1px;bottom:calc(100% + 8px);z-index:30;display:grid;width:min(270px,calc(100vw - 32px));max-width:calc(100vw - 32px);gap:6px;visibility:hidden;border:1px solid var(--color-border);border-radius:10px;background:#fff;box-shadow:0 16px 36px #0f172a24;color:var(--color-text);opacity:0;padding:10px;pointer-events:none;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease,visibility .12s ease;overflow-wrap:anywhere;white-space:normal}.client-calendar-entry-preview--left{right:-1px;left:auto}.client-calendar-entry-preview:after{content:"";position:absolute;left:14px;bottom:-6px;width:10px;height:10px;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:#fff;transform:rotate(45deg)}.client-calendar-entry-preview--left:after{right:14px;left:auto}.client-calendar-entry-preview strong{color:var(--swiplo-brand-accent-text, var(--color-text-main));font-size:11px;font-weight:820;letter-spacing:0;text-transform:uppercase}.client-calendar-entry-preview>span:first-of-type{color:var(--color-text-main);font-size:13px;font-weight:820;line-height:1.25}.client-calendar-entry-preview span:not(:first-of-type){display:grid;gap:2px}.client-calendar-entry-preview em{color:var(--color-text-muted);font-size:10px;font-style:normal;font-weight:760;text-transform:uppercase}.client-calendar-entry-preview b{color:#425066;font-size:12px;font-weight:760;line-height:1.3}.client-calendar-entry:hover .client-calendar-entry-preview,.client-calendar-entry:focus-visible .client-calendar-entry-preview{visibility:visible;opacity:1;transform:translateY(0)}.client-dashboard-confirmation-alert{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0;border:1px solid color-mix(in srgb,var(--swiplo-brand-accent, var(--color-brand-primary)) 24%,var(--color-border-soft));border-left:5px solid var(--swiplo-brand-accent, var(--color-brand-primary));border-radius:8px;background:linear-gradient(90deg,color-mix(in srgb,var(--swiplo-brand-accent-soft, #fff5f7) 76%,#ffffff),#fff 78%);box-shadow:0 12px 28px #0f172a0f;padding:13px 14px}.client-dashboard-confirmation-alert div{display:grid;gap:3px;min-width:0}.client-dashboard-confirmation-alert strong{color:var(--color-text-main);font-size:14px}.client-dashboard-confirmation-alert span{overflow:hidden;color:var(--color-text-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.action-modal.action-modal-medium.group-calendar-entry-modal{width:min(760px,calc(100vw - 48px));max-height:calc(100vh - 48px);grid-template-rows:auto minmax(0,1fr);overflow:hidden}.group-calendar-entry-form{display:grid;min-height:0;overflow-y:auto;gap:14px;padding-right:2px}.group-calendar-entry-form:before{content:"";width:36px;height:3px;border-radius:999px;background:var(--swiplo-brand-accent, var(--color-brand-primary))}.swiplo-form-control{box-sizing:border-box;width:100%;min-width:0;min-height:36px;border:1px solid var(--swiplo-border);border-radius:var(--swiplo-radius);background:var(--swiplo-surface);box-shadow:0 1px #ffffffb8 inset;color:var(--swiplo-text);font:inherit;font-size:13px;font-weight:600;line-height:1.35;padding:7px 10px}.swiplo-form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--color-text-muted) 50%),linear-gradient(135deg,var(--color-text-muted) 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:30px}.swiplo-form-control:focus{border-color:var(--swiplo-brand-accent-border, var(--swiplo-primary));box-shadow:0 0 0 3px var(--swiplo-primary-soft);outline:none}textarea.swiplo-form-control{resize:vertical}.swiplo-checkbox-control{width:16px;height:16px;border-radius:4px;accent-color:var(--swiplo-primary)}.swiplo-checkbox-control:focus-visible{outline:3px solid color-mix(in srgb,var(--swiplo-primary) 14%,transparent);outline-offset:2px}.group-calendar-entry-form label{display:grid;gap:6px;color:var(--color-text-main);font-size:12px;font-weight:780}.group-calendar-entry-form .swiplo-form-control{box-sizing:border-box;width:100%;min-width:0;min-height:36px;border:1px solid var(--swiplo-border);border-radius:var(--swiplo-radius);background:var(--swiplo-surface);color:var(--swiplo-text);font:inherit;font-size:13px;font-weight:600;line-height:1.35;padding:7px 10px}.group-calendar-entry-form textarea.swiplo-form-control{min-height:96px;resize:vertical}.group-calendar-entry-form .swiplo-form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--color-text-muted) 50%),linear-gradient(135deg,var(--color-text-muted) 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:30px}.group-calendar-entry-form .swiplo-form-control:focus{border-color:var(--swiplo-brand-accent-border, var(--color-brand-primary));box-shadow:0 0 0 3px var(--swiplo-brand-accent-soft, #fff5f7);outline:none}.group-calendar-entry-form .swiplo-checkbox-control{width:16px;height:16px;border-radius:4px;accent-color:var(--swiplo-primary)}.group-calendar-entry-form .swiplo-checkbox-control:focus-visible{outline:3px solid color-mix(in srgb,var(--swiplo-primary) 14%,transparent);outline-offset:2px}.group-calendar-entry-context{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);padding:10px 12px}.group-calendar-entry-context span{color:var(--color-text-muted);font-size:12px}.group-calendar-entry-context strong{margin-right:auto;color:var(--color-text-main)}.group-calendar-entry-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.group-calendar-entry-checkbox{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:8px!important}.group-calendar-entry-checkbox input{width:16px;height:16px}.group-calendar-entry-actions{position:sticky;bottom:-1px;margin-top:2px;background:#fffffff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.group-calendar-entry-panel{display:grid;gap:12px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;box-shadow:0 8px 22px #0f172a0a;padding:12px}.group-calendar-entry-panel>header button:not(.primary-button):not(.secondary-button):not(.row-action),.group-calendar-entry-row-actions button:not(.primary-button):not(.secondary-button):not(.row-action),.group-tab-empty button:not(.primary-button):not(.secondary-button):not(.row-action){min-height:28px;border:1px solid var(--color-border-soft);border-radius:999px;background:#fff;color:var(--color-text);cursor:pointer;font:inherit;font-size:12px;font-weight:780;padding:5px 10px}.group-calendar-entry-panel>header button:not(.primary-button):not(.secondary-button):not(.row-action):hover:not(:disabled),.group-calendar-entry-row-actions button:not(.primary-button):not(.secondary-button):not(.row-action):hover:not(:disabled),.group-tab-empty button:not(.primary-button):not(.secondary-button):not(.row-action):hover:not(:disabled){border-color:var(--swiplo-brand-accent-border, rgb(238 38 73 / 24%));background:var(--swiplo-brand-accent-soft, #fff8fa);color:var(--color-text-main)}.group-calendar-entry-panel button:disabled,.group-calendar-entry-row-actions button:disabled{cursor:not-allowed;opacity:.58}.group-calendar-entry-list{display:grid;gap:0;overflow-x:auto;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff}.group-calendar-entry-list-head,.group-calendar-entry-row{display:grid;grid-template-columns:48px minmax(180px,1.4fr) minmax(110px,.7fr) minmax(150px,.9fr) minmax(130px,.75fr) minmax(112px,.65fr) minmax(160px,.9fr) minmax(120px,.6fr);min-width:980px;gap:8px;align-items:center}.group-calendar-entry-list-head{border-bottom:1px solid var(--color-border-soft);background:#f8fafc;color:var(--color-text-muted);font-size:11px;font-weight:780;letter-spacing:0;padding:8px 10px;text-transform:uppercase}.group-calendar-entry-row{border-bottom:1px solid var(--color-border-soft);background:#fff;padding:10px}.group-calendar-entry-row:last-child{border-bottom:0}.group-calendar-entry-row-main,.group-calendar-entry-row-meta{display:grid;min-width:0;gap:3px}.group-calendar-entry-row-main span,.group-calendar-entry-row-main p,.group-calendar-entry-row-meta span{min-width:0;color:var(--color-text-muted);font-size:11.5px;line-height:1.3;overflow-wrap:anywhere}.group-calendar-entry-row-main strong,.group-calendar-entry-row-meta strong{min-width:0;color:var(--color-text);font-size:12.5px;font-weight:820;line-height:1.25;overflow-wrap:anywhere}.group-calendar-entry-row-main p{margin:0}.group-calendar-entry-row-number,.group-calendar-entry-row-type,.group-calendar-entry-row-visibility,.group-calendar-entry-row-status,.group-calendar-entry-row-confirmation{display:flex;min-width:0;align-items:center}.group-calendar-entry-row-visibility span,.group-calendar-entry-row-meta strong{color:var(--color-text);font-size:12px;font-weight:760;line-height:1.25}.group-calendar-entry-row-actions{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px}.group-calendar-confirmations-modal{width:min(1120px,calc(100vw - 48px))}.group-calendar-confirmations-content{display:grid;gap:12px}.group-calendar-confirmations-modal-header{display:flex;min-width:0;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px}.group-calendar-confirmations-modal-header div{display:grid;min-width:0;gap:2px}.group-calendar-confirmations-modal-header strong{color:var(--color-text);font-size:13px;font-weight:840}.group-calendar-confirmations-modal-header span{color:var(--color-text-muted);font-size:12px}.group-calendar-confirmation-summary{display:flex;min-width:0;flex-wrap:wrap;gap:6px}.group-calendar-confirmation-summary span{display:inline-flex;align-items:baseline;gap:4px;border:1px solid var(--color-border-soft);border-radius:999px;background:#fff;color:var(--color-text-muted);font-size:11px;font-weight:720;padding:4px 8px}.group-calendar-confirmation-summary strong{color:var(--color-text);font-size:12px}.group-calendar-confirmation-table{display:grid;overflow-x:visible;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff}.group-calendar-confirmation-table-head,.group-calendar-confirmation-table-row{display:grid;grid-template-columns:44px minmax(160px,1.15fr) minmax(150px,1fr) minmax(120px,.7fr) minmax(140px,.8fr) minmax(130px,.85fr);min-width:0;gap:8px;align-items:center;padding:8px 10px}.group-calendar-confirmation-table-head{border-bottom:1px solid var(--color-border-soft);background:#f8fafc;color:var(--color-text-muted);font-size:11px;font-weight:780;text-transform:uppercase}.group-calendar-confirmation-table-row{border-bottom:1px solid var(--color-border-soft)}.group-calendar-confirmation-table-row:last-child{border-bottom:0}.group-calendar-confirmation-table-row strong,.group-calendar-confirmation-table-row span{min-width:0;color:var(--color-text);font-size:12.5px;line-height:1.25;overflow-wrap:anywhere}.group-calendar-confirmation-table-row span{color:var(--color-text-muted)}@media (max-width: 820px){.group-calendar-entry-list,.group-calendar-confirmation-table{overflow-x:auto}.group-calendar-confirmation-table-head,.group-calendar-confirmation-table-row{min-width:820px}.group-calendar-entry-row-actions{justify-content:flex-start}}.client-calendar-more{border-style:dashed;color:var(--color-text-muted)}.client-calendar-day-details{display:grid;gap:10px}.client-calendar-day-details>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.client-calendar-day-details>header strong{color:var(--color-text-main);font-size:16px}.client-calendar-day-details>header span{color:var(--color-text-muted);font-size:12px}.client-calendar-detail-list{display:grid;gap:8px}.client-calendar-detail-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:10px 12px}.client-calendar-detail-card--holiday{border-color:color-mix(in srgb,#d39a2c 28%,var(--color-border-soft));background:color-mix(in srgb,#d39a2c 8%,#ffffff)}.client-calendar-detail-card--event{border-color:color-mix(in srgb,#2f8f74 24%,var(--color-border-soft));background:color-mix(in srgb,#2f8f74 7%,#ffffff)}.client-calendar-detail-card--groupNote{border-color:color-mix(in srgb,var(--swiplo-brand-accent, var(--color-brand-primary)) 20%,var(--color-border-soft));border-left:4px solid var(--swiplo-brand-accent, var(--color-brand-primary));background:color-mix(in srgb,var(--swiplo-brand-accent-soft, #fff5f7) 44%,#ffffff)}.client-calendar-detail-card>div:first-child{display:grid;gap:3px}.client-calendar-detail-card span{color:var(--swiplo-brand-accent-text, var(--color-brand-primary));font-size:11px;font-weight:820;text-transform:uppercase}.client-calendar-detail-card strong{color:var(--color-text-main);font-size:15px;line-height:1.25}.client-calendar-detail-card p{margin:0;color:var(--color-text-muted);font-size:12px;line-height:1.35}.client-calendar-detail-card.type-holiday span{color:color-mix(in srgb,var(--color-text-muted) 80%,var(--color-text))}.client-calendar-detail-card.type-event span{color:color-mix(in srgb,var(--swiplo-brand-accent) 42%,#2f735f)}.client-calendar-detail-card.type-groupNote span{color:var(--color-text-muted)}.client-calendar-detail-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.client-calendar-detail-card--groupNote .client-calendar-detail-actions{align-items:center}.client-dashboard-communication-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.reception-context{display:grid;gap:9px;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);padding:11px}.reception-context>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.reception-context span{color:var(--color-text-muted);font-size:12px}.reception-context strong{font-size:14px}.location-switcher{display:flex;flex-wrap:wrap;gap:7px}.location-switcher button{min-height:28px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:#425066;cursor:default;font-size:12px;font-weight:700;padding:5px 9px}.location-switcher button.active{border-color:#ee264947;background:#fff7f9;color:var(--color-brand-primary-dark)}.timeline-row,.news-row{display:grid;align-items:center;gap:10px;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);padding:10px 12px}.timeline-row{grid-template-columns:58px minmax(0,1fr) auto}.timeline-row.reception-row{grid-template-columns:54px minmax(0,1fr) minmax(92px,auto)}.timeline-row time{color:var(--color-brand-primary);font-weight:780}.timeline-row strong,.timeline-row span{display:block}.timeline-row span{margin-top:3px;font-size:13px}.badge{display:inline-flex;min-width:0;align-items:center;justify-content:center;width:fit-content;min-height:22px;border-radius:999px;border:1px solid var(--color-border);font-size:11px;font-weight:700;line-height:1;padding:4px 8px;overflow-wrap:anywhere;white-space:normal}.badge.tone-brand{border-color:color-mix(in srgb,var(--swiplo-primary) 22%,var(--swiplo-border));background:var(--swiplo-primary-soft);color:var(--swiplo-danger)}.badge.tone-green{border-color:color-mix(in srgb,var(--swiplo-success) 24%,var(--swiplo-border));background:var(--swiplo-success-soft);color:var(--swiplo-success)}.badge.tone-blue{border-color:color-mix(in srgb,var(--swiplo-info) 24%,var(--swiplo-border));background:var(--swiplo-info-soft);color:var(--swiplo-info)}.badge.tone-yellow{border-color:color-mix(in srgb,var(--swiplo-warning) 24%,var(--swiplo-border));background:var(--swiplo-warning-soft);color:var(--swiplo-warning)}.badge.tone-red{border-color:color-mix(in srgb,var(--swiplo-danger) 22%,var(--swiplo-border));background:var(--swiplo-danger-soft);color:var(--swiplo-danger)}.badge.tone-neutral{border-color:var(--color-border-soft);background:#f8fafc;color:var(--swiplo-muted)}.segment-bar{align-items:center;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:6px}.segment-bar.compact{gap:5px;padding:5px}.segment-bar.compact button{min-height:26px;font-size:12px;padding:4px 8px}.segment-bar button.active{border-color:#ee264947;background:#fff7f9;color:var(--color-brand-primary-dark)}.student-profile-operations-bar{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;min-width:0;align-items:center;gap:8px;overflow:visible;border:1px solid #dfe6ee;border-radius:8px;background:#fff;box-shadow:0 8px 18px #0f172a08;padding:5px}.student-profile-section-nav{display:flex;min-width:0;flex-wrap:nowrap;gap:2px;overflow-x:auto;overflow-y:hidden;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;scrollbar-width:none}.student-profile-section-nav::-webkit-scrollbar{display:none}.student-profile-section-nav button{flex:0 0 auto;min-width:max-content;min-height:27px;border:0;border-radius:6px;background:transparent;color:#718096;cursor:pointer;font:inherit;font-size:11px;font-weight:740;line-height:1.2;padding:5px 11px;white-space:nowrap}.student-profile-section-nav button.active{background:#fff3f7;color:var(--color-brand-primary);box-shadow:inset 0 -2px 0 var(--color-brand-primary)}.student-profile-section-nav button:focus-visible,.student-profile-actions-trigger:focus-visible{outline:2px solid rgb(238 38 73 / 34%);outline-offset:2px}.student-profile-anchor-section{scroll-margin-top:18px}.student-profile-topbar{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:10px 12px}.student-profile-topbar h2{margin:0;color:var(--color-text);font-size:20px;font-weight:860;letter-spacing:0}.student-profile-actions-trigger{min-width:0;min-height:27px;border:1px solid var(--color-border-soft);border-radius:999px;background:#fff;color:var(--color-text);cursor:pointer;font:inherit;font-size:11px;font-weight:760;line-height:1.2;padding:5px 10px;white-space:nowrap}.student-profile-actions-trigger:hover,.student-profile-actions-trigger[aria-expanded=true]{border-color:#ee264942;background:#fff8fa;color:var(--color-brand-primary)}.student-profile-global-actions-menu{z-index:calc(var(--z-action-menu) + 2)}.student-profile-global-actions-menu .row-action-menu{right:0;left:auto;min-width:210px;text-align:left}.student-profile-facts-card{gap:9px;padding:10px}.student-profile-badge-row{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:5px}.student-profile-active-tab{display:grid;min-width:0;gap:10px}.student-profile-anchor-header{display:flex;min-width:0;flex-wrap:wrap;align-items:baseline;gap:8px}.student-profile-anchor-header strong{color:var(--color-text);font-size:15px;font-weight:760;line-height:1.2}.student-profile-anchor-header small{color:var(--color-text-muted);font-size:11.5px;font-weight:680;line-height:1.2}.student-profile-tab-table{min-width:680px}.student-profile-tab-table th:first-child,.student-profile-tab-table td:first-child{width:44px;text-align:center}.student-profile-tab-table th:last-child,.student-profile-tab-table td:last-child{width:auto;text-align:left}.student-profile-tab-table tr.is-linked-group:hover td{background:#fffafb}.student-profile-group-link{color:var(--color-text);font-weight:760;text-decoration:none;text-underline-offset:3px}.student-profile-group-link:hover,.student-profile-group-link:focus-visible{color:var(--color-brand-primary);text-decoration:underline}.student-profile-group-link:focus-visible{border-radius:4px;outline:2px solid rgb(238 38 73 / 28%);outline-offset:2px}.student-profile-section-panel-grid,.student-profile-relation-grid{display:grid;min-width:0;gap:9px}.student-profile-section-panel-grid{grid-template-columns:minmax(0,1fr)}.student-profile-relation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-profile-table-card,.student-profile-relation-card{display:grid;min-width:0;gap:9px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:9px}.student-profile-subsection-header{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:8px}.student-profile-subsection-header strong{color:var(--color-text);font-size:13px;font-weight:760;line-height:1.2}.student-profile-subsection-header small{color:var(--color-text-muted);font-size:11px;font-weight:680;line-height:1.2;white-space:nowrap}.student-profile-table-shell{border-color:var(--color-border-soft);box-shadow:none}.student-profile-compact-table{min-width:760px}.student-profile-payment-dues-table{min-width:840px}.student-profile-payment-history-table{min-width:860px}.student-profile-attendance-table{min-width:900px}.student-profile-consent-table{min-width:820px}.student-profile-compact-table th{background:#fbfcfe;color:#7a8798;font-size:10px;font-weight:780}.student-profile-compact-table td{color:var(--color-text-muted);font-size:12px;font-weight:650}.student-profile-compact-table tr:last-child td{border-bottom:0}.student-profile-table-title{display:block;max-width:260px;overflow:hidden;color:var(--color-text);font-size:12.5px;font-weight:760;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.student-profile-meta-line{display:block;margin-top:2px;color:var(--color-text-muted);font-size:11px;font-weight:650;line-height:1.25}.student-profile-document-title{color:var(--color-brand-primary)}.student-profile-amount-cell{color:var(--color-text);font-weight:780;white-space:nowrap}.student-profile-muted-cell{color:#8a96a8;font-size:11px;font-weight:680;line-height:1.25}.student-profile-inline-link{display:inline-flex;min-width:0;border:0;background:transparent;color:var(--color-brand-primary);cursor:pointer;font:inherit;font-size:12.5px;font-weight:760;line-height:1.25;padding:0;text-align:left;text-decoration:none}.student-profile-inline-link:hover,.student-profile-inline-link:focus-visible{text-decoration:underline;text-underline-offset:3px}.student-profile-inline-link:focus-visible{border-radius:4px;outline:2px solid rgb(238 38 73 / 28%);outline-offset:2px}.table-shell{width:100%;overflow-x:auto;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);box-shadow:none}table{width:100%;min-width:860px;border-collapse:collapse}th,td{border-bottom:1px solid var(--color-border-soft);padding:6px 8px;text-align:left;vertical-align:top}th{background:#f6f8fb;color:#5d6b7f;font-size:11px;font-weight:760;text-transform:uppercase}td{color:var(--color-text);font-size:13px;line-height:1.35}.table-status{display:inline-flex;max-width:260px;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:#536174;font-size:12px;line-height:1.25;padding:4px 8px}.table-status-group{display:flex;flex-wrap:wrap;gap:4px;max-width:260px}.status-icon{display:inline-grid;width:24px;height:24px;place-items:center;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:#526073;font-size:12px;font-weight:860;line-height:1}.status-icon.tone-green{border-color:#cfe1d6;background:#f5fbf7;color:#2f6c47}.status-icon.tone-blue{border-color:#d6e0ee;background:#f3f6fb;color:#435f86}.status-icon.tone-yellow{border-color:#e4d3a2;background:#fff9e8;color:#7a5c14}.status-icon.tone-red{border-color:#ee26493d;background:#fff8fa;color:#a5263d}.status-icon.tone-neutral{border-color:var(--color-border-soft);background:#f8fafc;color:#536174}.table-number-header,.table-number-cell{width:42px;min-width:42px;text-align:center}.table-row-number{display:inline-grid;width:22px;height:22px;place-items:center;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:11px;font-weight:820;line-height:1}.work-table-shell{overflow:visible;box-shadow:0 8px 18px #1720330a}.work-table{min-width:1040px}.participants-table{min-width:1160px}.attendance-session-table{min-width:760px}.attendance-participants-table{min-width:860px}.revenue-report-table{min-width:1080px}.pass-report-table{min-width:1320px}.sports-card-report-table{min-width:940px}.sports-card-operator-report-table{min-width:820px}.sports-card-report-tabs{display:flex;justify-content:flex-start}.sports-card-report-tab-segment{width:auto;max-width:100%}.sports-card-entry-date-cell{display:grid;gap:2px;min-width:84px;white-space:nowrap}.sports-card-entry-date-main{color:var(--color-text);font-weight:720;line-height:1.2}.sports-card-entry-time{margin-top:0}.sports-card-student-cell,.sports-card-report-table td:nth-child(3),.sports-card-report-table td:nth-child(5){min-width:150px}.sports-card-student-link{display:inline-block;max-width:100%;color:var(--color-text);font-weight:850;line-height:1.2}.sports-card-operator-chip{display:inline-flex;min-height:22px;align-items:center;border:1px solid rgb(59 130 246 / 18%);border-radius:999px;background:#eff6ffc7;color:#245f9f;font-size:11px;font-weight:850;line-height:1;padding:4px 8px;white-space:nowrap}.sports-card-entry-status-cell{min-width:112px}.sports-card-operator-note{display:inline-grid;width:18px;height:18px;margin-left:6px;place-items:center;border:1px solid rgb(245 158 11 / 32%);border-radius:999px;background:#fef3c7b8;color:#a16207;font-size:11px;font-weight:850;line-height:1}.sports-card-row-action-menu>div{width:min(230px,76vw)}.staff-report-table{min-width:1120px}.staff-report-table .numeric-cell{white-space:nowrap}.staff-role-chip{display:inline-flex;min-height:22px;align-items:center;border:1px solid rgb(220 38 38 / 16%);border-radius:999px;background:#fef2f2b8;color:#b91c1c;font-size:11px;font-weight:850;line-height:1;padding:4px 8px}.staff-rate-cell{display:inline-grid;gap:2px}.staff-payroll-status-trigger{display:inline-flex}.staff-payroll-row-action-menu>div{width:min(220px,76vw)}.staff-payroll-action-menu{position:relative;display:inline-flex;justify-content:flex-end}.staff-payroll-action-menu-button{display:inline-flex;min-height:28px;align-items:center;border:1px solid var(--color-border-soft);border-radius:7px;background:#fff;color:var(--color-text);cursor:pointer;font-size:11px;font-weight:780;line-height:1;padding:5px 7px}.staff-payroll-action-menu-button[aria-expanded=true]{border-color:#ee26493d;color:var(--color-brand-primary)}.staff-payroll-action-menu-popover{position:fixed;z-index:calc(var(--z-action-menu) + 20);display:grid;width:min(220px,76vw);gap:3px;border:1px solid rgb(226 232 240 / 82%);border-radius:10px;background:#fffffff7;box-shadow:0 18px 44px #0f172a24;padding:6px}.staff-payroll-action-menu-popover button{display:block;width:100%;border:0;border-radius:6px;background:transparent;color:var(--color-text);cursor:pointer;font:inherit;font-size:12px;font-weight:760;line-height:1.25;padding:6px 7px;text-align:left}.staff-payroll-action-menu-popover button:hover:not(:disabled){background:color-mix(in srgb,var(--color-brand-primary) 7%,#ffffff)}.staff-payroll-action-menu-popover button:disabled{color:var(--color-text-muted);cursor:not-allowed}.stats-report-table{min-width:920px}.statistics-filter-panel{gap:10px}.statistics-filter-grid{grid-template-columns:repeat(4,minmax(150px,1fr))}.statistics-filter-segments{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.statistics-filter-segments>div{display:grid;min-width:0;gap:5px}.statistics-filter-segments>div>span{color:var(--color-text-muted);font-size:11px;font-weight:820}.statistics-filter-segments .segment-bar.compact{justify-content:flex-start}.statistics-chart-toolbar{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.statistics-trend-grid{display:grid;min-width:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.statistics-trend-card{display:grid;min-width:0;gap:10px;border:1px solid var(--color-border-soft);border-radius:12px;background:#ffffffc7;box-shadow:0 10px 22px #0f172a0a;padding:10px}.statistics-trend-card>div:first-child{display:grid;min-width:0;gap:2px}.statistics-trend-card strong{color:var(--color-text);font-size:12px;line-height:1.2}.statistics-trend-card span{color:var(--color-text-muted);font-size:11px;font-weight:720;line-height:1.25}.statistics-mini-chart{display:grid;min-height:82px;grid-template-columns:repeat(8,minmax(10px,1fr));align-items:end;gap:5px;border-radius:10px;background:#f8fafcd1;padding:8px}.statistics-mini-chart-day{display:flex;min-width:0;height:66px;align-items:end;justify-content:center;gap:2px}.statistics-mini-chart .swiplo-tooltip{width:100%;align-self:end}.statistics-mini-chart-tooltip-trigger{width:100%}.statistics-mini-chart-tooltip-card{width:min(310px,72vw)}.trend-tooltip-grid{display:grid;min-width:0;gap:5px}.swiplo-tooltip-card .trend-tooltip-grid{color:var(--color-text);font-size:12px;font-weight:680}.trend-tooltip-row{display:grid;min-width:0;grid-template-columns:minmax(112px,1fr) auto;align-items:baseline;gap:12px}.swiplo-tooltip-card .trend-tooltip-row>span:first-child{color:var(--color-text-muted);font-size:11px;font-weight:760}.swiplo-tooltip-card .trend-tooltip-value{color:var(--color-text);font-size:12px;font-weight:760;text-align:right;white-space:nowrap}.swiplo-tooltip-card .trend-tooltip-row.is-current .trend-tooltip-value{color:var(--color-brand-primary);font-weight:900}.swiplo-tooltip-card .trend-tooltip-delta.is-positive .trend-tooltip-value{color:#2f7a5b}.swiplo-tooltip-card .trend-tooltip-delta.is-negative .trend-tooltip-value{color:#be123c}.swiplo-tooltip-card .trend-tooltip-delta.is-neutral .trend-tooltip-value,.swiplo-tooltip-card .trend-tooltip-delta.is-missing .trend-tooltip-value{color:var(--color-text-muted)}.statistics-mini-bar{display:block;width:6px;min-height:10px;border-radius:999px 999px 2px 2px}.statistics-mini-bar.current{background:var(--color-brand-primary)}.statistics-mini-bar.previous{background:#cbd5e1}.statistics-scroll-section{position:relative}.statistics-comparison-table,.statistics-top-table,.statistics-low-table{min-width:760px}.statistics-comparison-table td:nth-child(n+2),.statistics-comparison-table th:nth-child(n+2),.statistics-top-table td:nth-child(n+3),.statistics-top-table th:nth-child(n+3),.statistics-low-table td:nth-child(n+3),.statistics-low-table th:nth-child(n+3){white-space:nowrap}.statistics-performance-grid{align-items:start}.statistics-report-view .table-scroll-hint{margin-bottom:6px}.pass-report-table th:nth-child(9),.pass-report-table td:nth-child(9){min-width:112px;white-space:nowrap}.pass-report-table th:nth-child(11),.pass-report-table td:nth-child(11){min-width:142px}.pass-report-table .status-pill{white-space:nowrap}.pass-report-sale-date-cell{display:grid;gap:2px;min-width:84px;white-space:nowrap}.pass-report-sale-date-main{color:var(--color-text);font-weight:720;line-height:1.2}.pass-report-sale-time{margin-top:0}.pass-report-student-cell,.pass-report-table td:nth-child(3),.pass-report-table td:nth-child(6){min-width:150px}.pass-report-student-link{display:inline-block;max-width:100%;color:var(--color-text);font-weight:850;line-height:1.2}.pass-report-table td:nth-child(4) strong{display:inline-block;max-width:150px;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap}.pass-row-action-menu>div{width:min(210px,74vw)}.staff-payout-cell{display:inline-grid;min-width:108px;gap:2px;border:1px solid rgb(220 38 38 / 12%);border-radius:12px;background:linear-gradient(180deg,#ffffffe0,#fef2f29e);box-shadow:0 8px 16px #0f172a0a;padding:7px 9px}.staff-payout-cell strong{color:var(--color-text);font-size:13px;line-height:1.1;white-space:nowrap}.staff-payout-cell span{color:var(--color-text-muted);font-size:10px;font-weight:780;line-height:1.1;text-transform:uppercase}.revenue-report-view{display:grid;min-width:0;max-width:100%;gap:12px;overflow-x:clip}.revenue-report-view .metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.revenue-report-view>.metrics-grid .metric-card{min-height:74px;padding:9px}.revenue-report-view>.metrics-grid .metric-card strong{font-size:17px}.revenue-report-view>.metrics-grid .metric-card p,.revenue-report-view>.metrics-grid .metric-card span{font-size:11px}.staff-report-view>.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.staff-report-view>.metrics-grid .metric-card{min-height:76px;padding:9px}.staff-report-view>.metrics-grid .metric-card strong{font-size:17px}.staff-report-view>.metrics-grid .metric-card p,.staff-report-view>.metrics-grid .metric-card span{font-size:11px}.revenue-report-view .report-list-toolbar{align-items:flex-start;gap:12px}.revenue-report-view .report-list-toolbar>div:first-child{min-width:min(240px,100%)}.revenue-report-view .panel{min-width:0}.revenue-report-controls{display:flex;min-width:0;max-width:100%;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.revenue-report-controls .segment-bar.compact{max-width:100%;flex-wrap:wrap}.revenue-mode-row{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--color-border-soft);border-radius:14px;background:#ffffffb3;padding:8px}.revenue-mode-segment{flex:0 1 auto}.revenue-mode-tooltip-trigger{display:inline-grid;width:24px;height:24px;place-items:center;border:1px solid rgb(220 38 38 / 22%);border-radius:999px;background:#fef2f2b8;color:#b91c1c;font-size:12px;font-weight:850}.revenue-data-notes{min-width:0;border:1px solid rgb(226 232 240 / 82%);border-radius:12px;background:#ffffffbd;box-shadow:0 8px 18px #0f172a0a}.revenue-data-notes summary{display:flex;min-height:34px;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none;padding:7px 10px}.revenue-data-notes summary::-webkit-details-marker{display:none}.revenue-data-notes summary span{color:var(--color-text);font-size:12px;font-weight:820}.revenue-data-notes summary b{display:inline-flex;min-height:22px;align-items:center;border:1px solid rgb(185 129 34 / 20%);border-radius:999px;background:#fffaebc7;color:#8a5a00;font-size:11px;font-weight:820;padding:3px 8px;white-space:nowrap}.revenue-data-notes ul{display:grid;gap:6px;margin:0;border-top:1px solid var(--color-border-soft);padding:8px 12px 10px 26px}.revenue-data-notes li{color:var(--color-text-muted);font-size:12px;line-height:1.4}.revenue-model-note{margin:-4px 0 0;color:var(--color-text-muted);font-size:12px;line-height:1.45}.report-period-row{display:flex;min-width:0;flex-wrap:wrap;gap:6px;margin-top:8px}.report-period-chip{display:inline-flex;min-height:22px;align-items:center;border:1px solid var(--color-border-soft);border-radius:999px;background:#ffffffb8;color:var(--color-text-muted);font-size:11px;font-weight:790;line-height:1;padding:4px 8px}.revenue-report-shell.work-table-shell{min-width:0;max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.revenue-filter-heading-actions{display:inline-flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px}.revenue-filter-heading-actions button{min-height:30px;border:1px solid rgb(203 213 225 / 78%);border-radius:10px;background:#ffffffc7;color:var(--color-text);cursor:pointer;font-size:12px;font-weight:780;padding:6px 10px}.revenue-filter-segment-field{display:grid;min-width:0;gap:4px}.revenue-filter-segment-field>span{color:var(--color-text-muted);font-size:11px;font-weight:760}.revenue-filter-segment-field .segment-bar.compact{justify-content:flex-start}.revenue-group-cell{min-width:190px}.revenue-group-link{display:inline-block;max-width:100%;color:var(--color-text);font-weight:850;line-height:1.2;text-decoration:none}.revenue-group-link:hover,.revenue-group-link:focus-visible{color:#b91c1c;text-decoration:underline;text-underline-offset:3px}.revenue-participant-lines{display:grid;min-width:108px;gap:3px}.revenue-participant-lines span{display:flex;align-items:baseline;justify-content:space-between;gap:8px;color:var(--color-text-muted);font-size:11px;line-height:1.2}.revenue-participant-lines small{color:var(--color-text-muted);font-size:11px;font-weight:720}.revenue-participant-lines b{color:#2563eb;font-size:12px;font-weight:760}.revenue-money-cell{white-space:nowrap}.revenue-money-cell strong,.revenue-total-cell{color:var(--color-text);font-weight:820}.revenue-breakdown-text{max-width:210px}.revenue-detail-modal{max-height:calc(100vh - 36px);overflow:auto}.revenue-detail-content{display:grid;min-width:0;gap:12px}.revenue-detail-heading{display:flex;min-width:0;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid var(--color-border-soft);border-radius:14px;background:#f8fafcbd;padding:12px}.revenue-detail-heading h3,.revenue-detail-section h3{margin:2px 0 0;color:var(--color-text);font-size:16px;line-height:1.2}.revenue-detail-heading p{margin:4px 0 0;color:var(--color-text-muted);font-size:12px;line-height:1.4}.revenue-detail-modal .metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.revenue-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.revenue-source-list{display:grid;gap:7px;margin-top:4px}.revenue-source-list span{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px;color:var(--color-text-muted);font-size:12px}.revenue-source-list b{color:var(--color-text)}.revenue-report-api-state,.revenue-report-warning-list{border:1px solid var(--color-border-soft);border-radius:14px;background:#ffffffbd;color:var(--color-text-muted);font-size:12px;line-height:1.45;padding:10px 12px}.revenue-report-api-state.is-live{border-color:#2f7a5b33;background:#f2faf6b8;color:#2f6d4f}.revenue-report-api-state.is-demo,.revenue-report-warning-list{border-color:#b9812238;background:#fffaebbd;color:#8a5a00}.revenue-report-warning-list{display:grid;gap:6px}.revenue-report-warning-list p{display:flex;min-width:0;flex-wrap:wrap;gap:6px;margin:0}.revenue-report-warning-list strong{color:inherit;font-size:11px;letter-spacing:0}.revenue-report-warning-list .report-warning-code{color:#684700ad;font-size:11px;white-space:nowrap}.revenue-detail-section{display:grid;min-width:0;gap:8px}.revenue-detail-table{width:100%;min-width:980px}.revenue-detail-footer{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--color-border-soft);padding-top:10px}.revenue-detail-future-actions{display:flex;min-width:0;flex-wrap:wrap;gap:8px}@media (max-width: 980px){.revenue-report-view .metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 620px){.revenue-report-view .metrics-grid{grid-template-columns:1fr}}.table-scroll-hint{width:fit-content;margin:0 0 8px;border:1px solid var(--color-border-soft);border-radius:999px;background:#ffffffb8;color:var(--color-text-muted);font-size:11px;font-weight:760;padding:4px 8px}.statistics-comparison-panel{display:grid;gap:12px}.statistics-comparison-header{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.statistics-chart-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.8fr);gap:12px}.statistics-chart-card{display:grid;min-width:0;gap:12px;border:1px solid var(--color-border-soft);border-radius:16px;background:#f8fafcb8;box-shadow:0 10px 20px #0f172a0a;padding:14px}.statistics-chart-legend{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:12px;color:var(--color-text-muted);font-size:12px;font-weight:760}.statistics-chart-legend i{display:inline-block;width:10px;height:10px;margin-right:5px;border-radius:999px;vertical-align:-1px}.statistics-chart-legend i.current{background:var(--color-brand-primary)}.statistics-chart-legend i.previous{background:#cbd5e1}.comparison-bars,.source-share-chart{display:grid;gap:12px}.comparison-bar-row{display:grid;grid-template-columns:minmax(104px,.32fr) minmax(160px,1fr) minmax(94px,auto);align-items:center;gap:10px}.comparison-bar-row div:first-child{display:grid;gap:2px}.comparison-bar-row strong{color:var(--color-text);font-size:13px}.comparison-bar-row span,.comparison-bar-row small{color:var(--color-text-muted);font-size:11px;font-weight:740}.comparison-bars-track{display:grid;gap:4px}.comparison-bar{display:block;height:9px;border-radius:999px}.comparison-bar.previous{background:#cbd5e1}.comparison-bar.current{background:linear-gradient(90deg,var(--color-brand-primary),var(--color-brand-primary-dark))}.source-share-row{display:grid;grid-template-columns:92px minmax(120px,1fr) 42px;align-items:center;gap:10px;color:var(--color-text-muted);font-size:12px;font-weight:760}.source-share-track{height:10px;overflow:hidden;border-radius:999px;background:#e2e8f0cc}.source-share-track span{display:block;height:100%;border-radius:inherit;background:var(--color-brand-primary)}.source-share-row strong{color:var(--color-text);text-align:right}@media (max-width: 920px){.revenue-detail-modal .metrics-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.revenue-detail-grid{grid-template-columns:1fr}.revenue-detail-table{min-width:860px}.statistics-chart-grid,.comparison-bar-row{grid-template-columns:1fr}}.table-subtext{display:block;color:var(--color-text-muted);font-size:11px;line-height:1.25;margin-top:2px}.work-table th,.work-table td{padding:5px 7px}.work-table th{font-size:10px}.work-table td{font-size:12px;line-height:1.25;vertical-align:middle}.compact-empty-row{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:8px;color:var(--color-text-muted)}.compact-empty-row button{min-height:24px;border:1px solid rgb(238 38 73 / 26%);border-radius:6px;background:#fff7f9;color:#be123c;cursor:pointer;font-size:11px;font-weight:760;padding:3px 7px}.superadmin-hero-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.superadmin-app-shell .workspace{background:linear-gradient(180deg,rgb(248 250 252 / 84%),transparent 360px),var(--color-background)}.superadmin-sidebar .brand-label,.superadmin-topbar .eyebrow{color:var(--color-brand-primary)}.superadmin-mode-note{gap:8px}.superadmin-mode-note button,.superadmin-switch-link{border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text);cursor:pointer;font:inherit;font-size:.82rem;font-weight:720;padding:7px 10px}.superadmin-mode-note span{color:var(--color-text-muted);font-size:.78rem;line-height:1.35}.superadmin-switch-link{white-space:nowrap}.superadmin-section-header{margin-bottom:0}.superadmin-filter-panel{margin-top:0}.superadmin-list,.superadmin-alert-list{display:grid;gap:8px}.superadmin-list-row{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:10px 12px;text-align:left}.superadmin-list-row span:first-child{display:grid;gap:3px}.superadmin-list-row small,.superadmin-table-row small{color:var(--color-text-muted);font-size:.78rem}.superadmin-alert-list span,.pending-note{color:var(--color-text-muted);font-size:.86rem}.pending-note{margin:12px 0 0}.superadmin-table{background:var(--color-panel);border:1px solid var(--color-border);border-radius:10px;overflow:visible}.superadmin-table-header,.superadmin-table-row{align-items:center;display:grid;gap:12px;grid-template-columns:46px minmax(170px,1.45fr) minmax(130px,1fr) minmax(104px,.72fr) minmax(82px,.55fr) minmax(82px,.55fr) minmax(154px,1fr);padding:10px 14px}.superadmin-table-header{background:color-mix(in srgb,var(--color-brand-primary) 6%,transparent);border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-size:.74rem;font-weight:760;text-transform:uppercase}.superadmin-table-row{border-bottom:1px solid var(--color-border-subtle);font-size:.88rem}.superadmin-table-row:last-child{border-bottom:0}.superadmin-table-row>span{min-width:0}.superadmin-table-row>span:not(:first-child){display:grid;gap:3px}.superadmin-client-form-panel{display:grid;width:100%;gap:14px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-panel);padding:14px}.superadmin-form-section,.superadmin-modal-section{display:grid;min-width:0;gap:10px}.superadmin-form-section+.superadmin-form-section,.superadmin-modal-section+.superadmin-modal-section{border-top:1px solid var(--color-border-subtle);padding-top:12px}.form-section-title{margin:0}.form-section-title strong{display:flex;min-width:0;align-items:center;gap:7px;color:var(--color-text);font-size:14px;font-weight:840}.form-section-title strong:before{display:inline-block;flex:0 0 auto;width:3px;height:14px;border-radius:999px;background:var(--color-brand-primary);content:""}.superadmin-form-grid{display:grid;min-width:0;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.superadmin-form-grid label{display:grid;min-width:0;gap:5px;color:var(--color-text);font-size:12px;font-weight:760}.superadmin-form-grid input,.superadmin-form-grid select{width:100%;min-width:0;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);font:inherit;font-size:13px;padding:8px 9px}.superadmin-form-actions-section{align-items:start}.modal-form-stack{display:grid;gap:12px}.modal-form-stack label{display:grid;gap:6px}.form-checkbox-label{align-items:center;display:flex;gap:8px;min-height:34px}.form-checkbox-label input{accent-color:var(--color-brand-primary)}.danger-button{border:1px solid rgb(190 18 60 / 22%);border-radius:8px;background:#fff1f2;color:#be123c;cursor:pointer;font:inherit;font-weight:760;padding:8px 12px}.superadmin-feature-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.superadmin-user-modal{width:min(760px,100%)}.superadmin-user-form{width:100%;min-width:0}.superadmin-outbox-filters{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:12px}.superadmin-outbox-filters label{display:grid;gap:5px;color:var(--color-text);font-size:12px;font-weight:760}.superadmin-outbox-filters input,.superadmin-outbox-filters select{width:100%;min-width:0;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);font:inherit;font-size:13px;padding:8px 9px}.superadmin-outbox-row-actions{justify-content:flex-start}.superadmin-outbox-details{width:min(760px,calc(100vw - 32px))}.superadmin-outbox-detail-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.superadmin-outbox-detail-grid span{display:grid;gap:3px;min-width:0;color:var(--color-text-muted);font-size:.84rem}.superadmin-outbox-detail-grid strong{color:var(--color-text);font-size:.76rem;text-transform:uppercase}.superadmin-outbox-body-preview,.superadmin-outbox-json{max-height:260px;overflow:auto;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-muted);color:var(--color-text);font:.82rem/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;margin:0;padding:10px;white-space:pre-wrap}.service-access-banner{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px;border:1px solid #c9dfd3;border-radius:10px;background:#f5fbf7;color:#2f6c47;padding:10px 12px}.service-access-banner div{display:grid;min-width:0;gap:2px}.service-access-banner span{min-width:0;color:#47715a;font-size:12px;overflow-wrap:anywhere}.inline-row-actions{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:5px}.table-name{display:block;min-width:0;font-size:13px;overflow-wrap:anywhere}.student-profile-link{color:var(--color-text);font-weight:850;text-decoration:none}.student-profile-link:hover{color:var(--color-brand-primary-dark);text-decoration:underline;text-decoration-color:#ee264942;text-underline-offset:3px}.student-child-profile-icon{display:inline-flex;flex:0 0 auto;width:18px;height:18px;align-items:center;justify-content:center;align-self:center;border:1px solid #dfe6ee;border-radius:999px;background:#f5f7fb;color:#7d899a;box-shadow:inset 0 0 0 1px #ffffffbd;vertical-align:-1px}.student-child-profile-svg{display:block;width:12.5px;height:12.5px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.35px}.student-cell{display:grid;min-width:210px;gap:2px}.student-name-line{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:5px}.student-meta,.student-note{display:block;max-width:260px;min-width:0;overflow:hidden;color:var(--color-text-muted);font-size:10.5px;line-height:1.25;text-overflow:ellipsis;overflow-wrap:anywhere;white-space:normal}.student-note{color:#6c5970}.participant-notes-list{display:grid;max-width:320px;min-width:0;gap:2px;padding:0;margin:2px 0 0;color:var(--color-text-muted);font-size:10.5px;line-height:1.35;list-style:none}.participant-notes-list li{display:block;min-width:0}.participant-note-row{display:inline-flex;max-width:100%;min-width:0;align-items:center;gap:4px;border:1px solid var(--color-border-soft);border-radius:6px;background:#f8fafc;padding:2px 4px;vertical-align:middle}.participant-note-text{min-width:0;overflow-wrap:anywhere;white-space:normal}.participant-note-delete-button{display:inline-flex;flex:0 0 auto;width:15px;height:15px;align-items:center;justify-content:center;align-self:center;border:0;border-radius:3px;background:transparent;color:#8d99aa;cursor:pointer;padding:0;line-height:1;opacity:.78;transition:color .12s ease,opacity .12s ease,background .12s ease}.participant-note-delete-button:hover,.participant-note-delete-button:focus-visible{background:#fff3f6;color:#b64060;opacity:1;outline:none}.participant-trash-icon{display:block;width:11.5px;height:11.5px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.4px}.participants-table th:nth-child(4),.participants-table td:nth-child(4),.participants-table th:nth-child(8),.participants-table td:nth-child(8){width:70px;text-align:center}.participants-table th:nth-child(9),.participants-table td:nth-child(9){width:92px}.group-participants-section{overflow:visible;border-color:#dce4ee;border-radius:8px;background:#fff;box-shadow:0 12px 26px #0f172a0a}.group-participants-section-header{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px 8px}.group-participants-section-title{display:inline-flex;min-width:0;align-items:center;gap:7px}.group-participants-section-title:before{display:inline-block;flex:0 0 auto;width:3px;height:16px;border-radius:999px;background:var(--color-brand-primary);content:""}.group-participants-section-title strong{color:var(--color-text);font-size:14px;font-weight:780;line-height:1.2}.group-participants-section-title span{color:#7a8799;font-size:11px;font-weight:700;line-height:1.2}.group-participants-table{min-width:1100px;table-layout:fixed}.group-participants-table th,.group-participants-table td{border-bottom-color:#e2e8f094;padding:7px 8px}.group-participants-table th{background:#fbfcfe;color:#8a96a8;font-size:9px;font-weight:760;letter-spacing:0}.group-participants-table td{color:#223047;font-size:11.5px;line-height:1.26;vertical-align:middle}.group-participants-table tbody tr{background:#fff}.group-participants-table tbody tr:hover{background:#fcfdff}.participants-table.group-participants-table .participant-col-lp{width:42px;text-align:center}.participants-table.group-participants-table .participant-col-student{width:260px}.participants-table.group-participants-table .participant-col-confirmed{width:58px;text-align:center}.participants-table.group-participants-table .participant-col-pass{width:126px;text-align:center}.participants-table.group-participants-table .participant-col-sports-card{width:124px;text-align:center}.participants-table.group-participants-table .participant-col-payment{width:142px;text-align:center}.participants-table.group-participants-table .participant-col-presence{width:92px;text-align:center}.participants-table.group-participants-table .participant-col-sms{width:74px;text-align:center}.participants-table.group-participants-table .participant-col-actions{width:78px;text-align:right}.group-participants-table .student-cell{min-width:0;gap:2px}.group-participants-table .student-profile-link{color:#d13f70;font-size:12px;font-weight:820;line-height:1.2}.group-participants-table .student-meta{max-width:300px;color:#7d8798;font-size:9.8px;font-weight:640}.group-participants-table .participant-notes-list{margin-top:0;color:#6f7a8c;font-size:9.8px;font-weight:640}.group-participants-table .participant-note-row{align-items:center;gap:4px;border-color:transparent;background:transparent;padding:0}.group-participants-table .participant-note-delete-button{color:#97a3b5;opacity:.72}.group-participants-table .participant-note-delete-button:hover{color:#b64060;opacity:1}.group-participants-table .status-pill,.group-participants-table .status-button,.group-participants-table .badge{min-height:20px;border-color:transparent;box-shadow:none;font-size:10.5px;font-weight:760;padding:3px 8px}.group-participants-table .status-green,.group-participants-table .confirm-ok{border-color:transparent;background:#e9f6ef;color:#3f8060}.group-participants-table .status-yellow,.group-participants-table .confirm-trial{border-color:transparent;background:#fff4df;color:#986a24}.group-participants-table .status-red,.group-participants-table .confirm-no{border-color:transparent;background:#fff0f4;color:#b64060}.group-participants-table .status-blue{border-color:transparent;background:#edf5ff;color:#416b9b}.group-participants-table .status-neutral,.group-participants-table .confirm-pending{border-color:transparent;background:#f3f6fa;color:#718096}.group-participants-table .badge.tone-yellow{border-color:transparent;background:#fff1d8;color:#9a6519}.group-participants-table button.status-button:not(:disabled){cursor:pointer}.group-participants-table .status-button:disabled{opacity:1}.group-participants-table .pass-status-button{width:96px;min-width:96px;max-width:96px;border-radius:999px;padding:3px 9px}.group-participants-table button.status-red.pass-status-button{border-color:#eac7d2;background:#fff8fb;color:#a93d59}.group-participants-table .pass-status-button small{font-size:9.5px;font-weight:640}.group-participants-table .pass-covered-by-card{justify-items:center}.group-participants-table .participant-pass-activation-row{display:inline-flex;min-width:0;align-items:center;justify-content:center;gap:4px}.group-participants-table .participant-pass-last{max-width:120px;margin-top:1px;color:#7c8798;font-size:9.5px;font-weight:640;line-height:1.2;text-align:center}.group-participants-table .participant-pass-activation-hint{display:inline-flex;align-items:center;justify-content:center;gap:3px}.group-participants-table .confirm-status{width:22px;height:22px;border-radius:999px;font-size:11px;font-weight:840}.group-participants-table .presence-toggle{width:36px;min-width:36px;height:20px;border-color:transparent;background:#eef2f7;cursor:pointer}.group-participants-table .presence-toggle span{width:14px;height:14px;background:#9aa7b8}.group-participants-table .presence-toggle.on span{background:#4e8f6a;transform:translate(16px)}.group-participants-table .presence-toggle.on{border-color:transparent;background:#e8f5ef}.participant-message-button{max-width:96px}.group-participants-table .participant-message-button{max-width:88px}.group-participants-table .participant-message-button:disabled{border-color:#dfe6ee;background:#fff;color:#7b8798;opacity:1}.group-participants-table .sports-card-fee-badges{gap:3px;margin-top:3px}.group-participants-table .participant-payment-warning{margin-top:3px;color:#7a8798;font-size:10px;font-weight:640;line-height:1.2;text-align:left}.group-participants-table .compact-row-action{min-height:24px;border-color:#dfe6ee;background:#fff;color:#475569;font-size:11.5px;font-weight:760;padding:3px 8px}.group-participants-table .compact-row-action:hover:not(:disabled){border-color:#d6deea;background:#fbfcfe}.group-participants-table .row-action-menu-wrapper{z-index:calc(var(--z-action-menu) + 1)}.group-participants-table .participant-row-action-menu.is-open{z-index:calc(var(--z-action-menu) + 12)}.group-participants-table .row-action-menu{z-index:calc(var(--z-action-menu) + 13);width:min(245px,78vw);min-width:220px;border-color:#dfe6ee;border-radius:10px;background:#fff;box-shadow:0 18px 42px #0f172a29;-webkit-backdrop-filter:none;backdrop-filter:none}.compact-row-action{min-height:26px;font-size:12px;padding:4px 8px}.table-action-group{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:6px}.status-icon-badge{display:inline-grid;width:24px;height:24px;place-items:center;border:1px solid var(--color-border-soft);border-radius:999px;background:#ffffffc7;color:var(--color-text-muted);font-size:12px;font-weight:860;line-height:1}.status-icon-badge.status-green{border-color:color-mix(in srgb,var(--swiplo-success) 24%,var(--swiplo-border));background:var(--swiplo-success-soft);color:var(--swiplo-success)}.status-icon-badge.status-yellow{border-color:color-mix(in srgb,var(--swiplo-warning) 24%,var(--swiplo-border));background:var(--swiplo-warning-soft);color:var(--swiplo-warning)}.status-icon-badge.status-red{border-color:color-mix(in srgb,var(--swiplo-danger) 24%,var(--swiplo-border));background:var(--swiplo-danger-soft);color:var(--swiplo-danger)}.status-icon-badge.status-neutral{border-color:var(--color-border-soft);background:#f1f5f9c7;color:var(--color-text-muted)}.payroll-status-tooltip{position:relative;display:inline-flex;align-items:center;justify-content:center;outline:none}.payroll-status-tooltip:after{position:absolute;right:50%;bottom:calc(100% + 8px);z-index:var(--z-action-menu);min-width:max-content;max-width:min(280px,calc(100vw - 32px));border:1px solid rgb(217 225 234 / 86%);border-radius:10px;background:#fffffff5;box-shadow:0 12px 28px #0f172a24;color:var(--color-text);content:attr(data-tooltip);font-size:11px;font-weight:760;line-height:1.25;opacity:0;padding:7px 9px;pointer-events:none;text-align:center;transform:translate(50%) translateY(3px);transition:opacity .1s ease,transform .1s ease,visibility 0s linear .1s;visibility:hidden;white-space:nowrap}.payroll-status-tooltip:before{position:absolute;right:50%;bottom:calc(100% + 4px);z-index:var(--z-action-menu);width:8px;height:8px;border-right:1px solid rgb(217 225 234 / 86%);border-bottom:1px solid rgb(217 225 234 / 86%);background:#fffffff5;content:"";opacity:0;pointer-events:none;transform:translate(50%) rotate(45deg);transition:opacity .1s ease,visibility 0s linear .1s;visibility:hidden}.payroll-status-tooltip:hover:after,.payroll-status-tooltip:hover:before,.payroll-status-tooltip:focus-visible:after,.payroll-status-tooltip:focus-visible:before{opacity:1;transform:translate(50%) translateY(0);transition-delay:0s;visibility:visible}.payroll-status-tooltip:hover:before,.payroll-status-tooltip:focus-visible:before{transform:translate(50%) rotate(45deg)}.payroll-status-tooltip:focus-visible .status-icon-badge{outline:2px solid rgb(238 38 73 / 22%);outline-offset:2px}.status-pill,.status-button{display:inline-flex;min-width:0;align-items:center;justify-content:center;gap:4px;width:fit-content;max-width:180px;min-height:24px;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:#526073;font-size:11px;font-weight:760;line-height:1.2;padding:4px 8px;overflow-wrap:anywhere;white-space:normal}.status-button{cursor:default}.status-button:disabled{cursor:not-allowed;opacity:.62}.pass-status-button{flex-direction:column;gap:1px;min-width:58px;max-width:92px;border-radius:8px;line-height:1.05;overflow-wrap:normal;white-space:nowrap}.pass-status-button>span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pass-status-button small{max-width:100%;overflow:hidden;font-size:10px;font-weight:680;text-overflow:ellipsis;white-space:nowrap}.pass-covered-by-card{display:grid;min-width:0;gap:3px;justify-items:start}.sports-card-provider-picker{display:grid;min-width:180px;max-width:260px;gap:5px;margin-top:6px;border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:6px}.sports-card-provider-picker button{display:grid;min-width:0;gap:2px;border:1px solid var(--color-border-soft);border-radius:7px;background:#fbfcfe;color:var(--color-text);cursor:pointer;font:inherit;padding:6px 7px;text-align:left}.sports-card-provider-picker button:disabled{cursor:wait;opacity:.65}.sports-card-provider-picker strong,.sports-card-provider-picker span{min-width:0;overflow-wrap:anywhere}.sports-card-provider-picker strong{font-size:11.5px}.sports-card-provider-picker span{color:var(--color-text-muted);font-size:10.5px;line-height:1.25}.sports-card-fee-badges{display:flex;min-width:0;flex-wrap:wrap;gap:4px;margin-top:4px}.sports-card-assign-grid{display:grid;min-width:0;gap:6px}.sports-card-assign-grid button{display:grid;min-width:0;gap:2px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fbfcfe;color:var(--color-text);cursor:pointer;font:inherit;padding:8px 9px;text-align:left}.sports-card-assign-grid button:hover:not(:disabled){border-color:#ee264938;background:#fff8fa}.sports-card-assign-grid button:disabled{cursor:wait;opacity:.65}.sports-card-assign-grid strong,.sports-card-assign-grid span{min-width:0;overflow-wrap:anywhere}.sports-card-assign-grid strong{font-size:12px}.sports-card-assign-grid span{color:var(--color-text-muted);font-size:11px;line-height:1.25}.row-action-menu-wrapper{position:relative;display:inline-flex;min-width:0}.row-action-menu{position:absolute;z-index:var(--z-action-menu);top:calc(100% + 5px);right:0;display:grid;width:min(230px,72vw);gap:3px;border:1px solid rgb(226 232 240 / 82%);border-radius:14px;background:#fffffff0;box-shadow:0 18px 44px #0f172a1f;-webkit-backdrop-filter:blur(18px) saturate(1.04);backdrop-filter:blur(18px) saturate(1.04);padding:6px}.row-action-menu button{display:block;min-width:0;border:0;border-radius:6px;background:transparent;color:var(--color-text);cursor:pointer;font:inherit;font-size:12px;font-weight:760;line-height:1.25;padding:6px 7px;text-align:left;overflow-wrap:anywhere}.row-action-menu button:hover:not(:disabled){background:color-mix(in srgb,var(--swiplo-primary) 7%,#ffffff)}.row-action-menu .danger-menu-item{color:#b4233a}.row-action-menu .danger-menu-item:hover:not(:disabled){background:#fff5f7}.row-action-menu button:disabled{color:var(--color-text-muted);cursor:not-allowed}.auth-shell{min-height:100vh;display:grid;place-items:center;background:var(--color-bg);padding:24px}.online-payment-return-shell{display:grid;min-height:100vh;place-items:center;background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--swiplo-brand-accent-soft) 46%,transparent),transparent 34%),var(--color-content-bg);color:var(--color-text-main);padding:24px}.online-payment-return-card{position:relative;display:grid;width:min(560px,100%);gap:18px;overflow:hidden;border:1px solid var(--color-border-soft);border-radius:14px;background:#fff;box-shadow:0 24px 64px #1720331f;padding:22px}.online-payment-return-card:before{position:absolute;top:0;right:0;left:0;height:2px;background:color-mix(in srgb,var(--swiplo-brand-accent) 42%,#ffffff);content:""}.online-payment-return-card.is-success:before{background:color-mix(in srgb,var(--swiplo-success) 34%,#ffffff)}.online-payment-return-card.is-danger:before{background:color-mix(in srgb,var(--swiplo-danger) 32%,#ffffff)}.online-payment-return-brand{display:flex;align-items:center;gap:10px}.online-payment-return-brand>div{display:grid;gap:2px}.online-payment-return-brand span:not(.brand-mark){color:var(--color-text-muted);font-size:11px;font-weight:820;letter-spacing:.04em;text-transform:uppercase}.online-payment-return-brand strong{color:var(--color-text-main);font-size:17px;line-height:1.2}.online-payment-return-status{display:grid;gap:10px}.online-payment-return-status .status-pill{width:fit-content}.online-payment-return-status h1{margin:0;color:var(--color-text-main);font-size:clamp(24px,4vw,34px);letter-spacing:0;line-height:1.08}.online-payment-return-status p{max-width:48ch;margin:0;color:var(--color-text-muted);font-size:14px;line-height:1.5}.online-payment-return-actions{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--color-border-soft);padding-top:16px}.auth-card{display:grid;width:min(460px,100%);gap:16px;border:1px solid var(--color-border);border-radius:10px;background:#fff;box-shadow:0 18px 48px #1720331f;padding:20px}.auth-brand{display:flex;min-width:0;align-items:center;gap:10px}.auth-heading{display:grid;gap:5px}.auth-heading h1{margin:0;color:var(--color-text);font-size:24px}.auth-heading p,.auth-muted{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.45}.auth-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.auth-provider-button{display:grid;grid-template-columns:22px minmax(0,1fr);min-height:36px;align-items:center;gap:9px;border:1px solid var(--color-border);border-radius:15px;background:#ffffffbd;color:var(--color-text);cursor:pointer;font:inherit;font-size:13px;font-weight:760;padding:10px;text-align:left}.auth-provider-button:hover,.auth-provider-button:focus-visible{border-color:color-mix(in srgb,var(--color-brand-primary) 32%,var(--color-border));outline:none;box-shadow:0 0 0 3px #ee26491a}.auth-provider-button>span{display:grid;gap:2px;min-width:0}.auth-provider-button small{color:var(--color-text-muted);font-size:11px;font-weight:760}.auth-provider-message{margin:-4px 0 0;border:1px solid rgb(226 232 240 / 86%);border-radius:10px;background:#f8fafce0;color:var(--color-text-muted);font-size:12px;font-weight:720;padding:8px 10px}.auth-separator{display:flex;align-items:center;gap:10px;color:var(--color-text-muted);font-size:12px;font-weight:760}.auth-separator:before,.auth-separator:after{height:1px;flex:1;background:var(--color-border-soft);content:""}.auth-form{display:grid;gap:10px}.auth-form label{display:grid;gap:5px;color:var(--color-text);font-size:12px;font-weight:780}.auth-form input{width:100%;min-width:0;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);font:inherit;font-size:14px;padding:9px 10px}.auth-error{margin:0;border:1px solid #f2c7c7;border-radius:8px;background:#fff5f5;color:#a43a3a;font-size:12px;font-weight:760;padding:8px 10px}.auth-link-button{justify-self:start;border:0;background:transparent;color:var(--color-brand-primary);font:inherit;font-size:13px;font-weight:780;padding:0}.auth-dev-hints{display:grid;gap:3px;color:var(--color-text-muted);font-size:11px}.tenant-selection-card{width:min(720px,100%)}.tenant-choice-list{display:grid;gap:8px}.tenant-choice-card{display:grid;min-width:0;align-items:center;gap:10px;grid-template-columns:minmax(0,1fr) auto;border:1px solid var(--color-border-subtle);border-radius:8px;padding:10px}.tenant-choice-card div{display:grid;min-width:0;gap:2px}.tenant-choice-card strong{min-width:0;overflow-wrap:anywhere;color:var(--color-text);font-size:14px}.tenant-choice-card span,.tenant-choice-card p{margin:0;color:var(--color-text-muted);font-size:12px}.action-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:grid;place-items:center;background:#0f172a2e;padding:18px}.action-modal{display:grid;width:min(420px,100%);max-height:calc(100vh - 48px);gap:10px;border:1px solid rgb(255 255 255 / 78%);border-radius:16px;background:#fffffff0;box-shadow:0 24px 64px #0f172a29;-webkit-backdrop-filter:blur(22px) saturate(1.04);backdrop-filter:blur(22px) saturate(1.04);overflow:auto;padding:14px}.action-modal.action-modal-wide{width:min(1100px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto}.action-modal.action-modal-medium{width:min(820px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto}.staff-payroll-action-modal{gap:12px}.staff-payroll-modal-sections{display:grid;gap:12px}.staff-payroll-modal-sections section{display:grid;gap:10px;border:1px solid var(--color-border-soft);border-radius:12px;background:#ffffffb8;padding:12px}.staff-payroll-modal-sections h4{margin:0;color:var(--color-text);font-size:13px;font-weight:850}.staff-payroll-modal-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.staff-payroll-modal-info-grid span{display:grid;gap:2px;border:1px solid rgb(226 232 240 / 78%);border-radius:10px;background:#f8fafcb8;padding:8px}.staff-payroll-modal-info-grid small{color:var(--color-text-muted);font-size:10px;font-weight:800;line-height:1.1;text-transform:uppercase}.staff-payroll-modal-info-grid strong{color:var(--color-text);font-size:13px;line-height:1.2}.staff-payroll-modal-grid{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.staff-payroll-modal-notes{grid-column:1 / -1}.staff-payroll-modal-notes textarea{min-height:104px}.participant-action-modal{width:min(460px,100%)}.sports-card-surcharge-modal{width:min(520px,100%)}.sports-card-assign-modal{width:min(540px,100%)}.participant-action-modal-section{display:grid;min-width:0;gap:9px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fbfcfe;padding:10px}.participant-action-modal-footer{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:7px;border-top:1px solid var(--color-border-soft);padding-top:10px}.participant-action-modal-footer button{min-height:30px;border:1px solid var(--color-border-soft);border-radius:999px;background:#fff;color:var(--color-text);cursor:pointer;font:inherit;font-size:12px;font-weight:780;line-height:1.15;padding:6px 11px}.participant-action-modal-footer button:disabled{cursor:not-allowed;opacity:.62}.participant-action-modal-footer .primary-button{border-color:var(--swiplo-primary);background:var(--swiplo-primary);color:var(--swiplo-brand-accent-text)}.participant-action-modal-footer .primary-button:hover:not(:disabled){border-color:var(--swiplo-primary-strong);background:var(--swiplo-primary-strong)}.participant-action-modal-footer .secondary-button{border-color:var(--swiplo-border);background:#ffffffdb;color:var(--swiplo-text)}.participant-action-modal-footer .danger-outline-button{border-color:color-mix(in srgb,var(--swiplo-danger) 22%,var(--swiplo-border));background:var(--swiplo-danger-soft);color:var(--swiplo-danger)}.sports-card-inline-button{display:inline-flex;max-width:100%;align-items:center;border:1px solid #cfe1d6;border-radius:999px;background:#f5fbf7;color:#2f6c47;font:inherit;font-size:12px;font-weight:780;line-height:1.15;padding:4px 7px;white-space:nowrap}.sports-card-inline-button:hover:not(:disabled){border-color:#9cc5aa;background:#eef8f1}.sports-card-inline-button:disabled{opacity:.55}.action-modal header{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.action-modal header strong{color:var(--color-text);font-size:14px;font-weight:840;min-width:0;overflow-wrap:anywhere}.action-modal .text-link-button{min-height:32px;border:1px solid rgb(203 213 225 / 78%);border-radius:999px;background:#ffffffbd;color:var(--color-text);cursor:pointer;padding:6px 10px;text-decoration:none}.action-modal .text-link-button:hover:not(:disabled){background:#fffffff5;box-shadow:0 8px 18px #0f172a0d}.action-modal label{display:grid;min-width:0;gap:4px;color:var(--color-text);font-size:12px;font-weight:780}.action-modal input,.action-modal select,.action-modal textarea{box-sizing:border-box;width:100%;min-width:0;min-height:36px;border:1px solid var(--swiplo-border);border-radius:var(--swiplo-radius);background:var(--swiplo-surface);color:var(--swiplo-text);font:inherit;font-size:13px;font-weight:600;padding:7px 10px}.action-modal select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--swiplo-muted) 50%),linear-gradient(135deg,var(--swiplo-muted) 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:30px}.action-modal input:focus,.action-modal select:focus,.action-modal textarea:focus{border-color:var(--swiplo-brand-accent-border, var(--swiplo-primary));box-shadow:0 0 0 3px var(--swiplo-primary-soft);outline:none}.action-modal textarea{min-height:72px;resize:vertical}.student-profile-action-modal{width:min(820px,calc(100vw - 48px));gap:14px;padding:18px}.student-profile-action-modal.student-payment-modal{grid-template-rows:auto minmax(0,1fr);width:min(820px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:hidden;padding:16px}.student-profile-modal-form{display:grid;gap:13px}.student-profile-modal-section{display:grid;min-width:0;gap:9px}.student-profile-modal-section+.student-profile-modal-section{border-top:1px solid var(--color-border-soft);padding-top:12px}.student-profile-modal-section-title{display:grid;min-width:0;gap:2px}.student-profile-modal-section-title strong{color:var(--color-text);font-size:13.5px;font-weight:780;line-height:1.25}.student-profile-modal-section-title p{max-width:58ch;margin:0;color:var(--color-text-muted);font-size:12px;font-weight:650;line-height:1.45}.student-payment-modal-form{min-height:0;grid-template-rows:minmax(0,1fr) auto;gap:10px;overflow:hidden}.student-payment-modal-body{display:grid;min-height:0;gap:9px;overflow-y:auto;padding-right:3px}.student-payment-compact-section{padding:9px}.student-payment-compact-section>strong{color:var(--color-text);font-size:12px;font-weight:820;line-height:1.2}.student-profile-modal-form label{gap:6px}.student-profile-modal-form input,.student-profile-modal-form select,.student-profile-modal-form textarea{min-height:38px;padding:9px 10px}.student-profile-modal-form .student-profile-large-textarea{min-height:150px}.student-profile-modal-form .config-modern-section{gap:10px}.student-profile-fact-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.student-profile-fact-grid article{display:grid;min-width:0;gap:4px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 10px}.student-profile-fact-grid span{overflow:hidden;color:var(--color-text-muted);font-size:11px;font-weight:720;line-height:1.2;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.student-profile-fact-grid strong{overflow:hidden;color:var(--color-text);font-size:12.5px;font-weight:780;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.student-profile-fact-grid .student-profile-fact-value.is-muted{color:#8a96a8;font-weight:660}.student-profile-fact-grid .student-profile-fact-value.is-warning{color:var(--color-danger)}.student-family-overdue-list,.overdue-override-panel{display:grid;gap:10px}.student-profile-family-overdue-list{gap:6px}.student-family-overdue-row{align-items:center;border:1px solid rgba(239,23,77,.14);border-radius:8px;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto auto;padding:10px}.student-family-overdue-row small,.participant-payment-warning{color:var(--color-text-muted);display:block;font-size:12px}.participant-payment-status{display:inline-flex;max-width:100%;align-items:center}.participant-payment-status-tooltip,.participant-pass-helper-tooltip{max-width:100%;vertical-align:top}.participant-payment-status-tooltip:after,.participant-pass-helper-tooltip:after{min-width:180px;max-width:min(300px,calc(100vw - 32px));line-height:1.35;overflow-wrap:anywhere;text-align:left;white-space:normal}.participant-payment-status-tooltip:after{min-width:210px}.participant-pass-helper-tooltip{justify-content:flex-start}.student-family-overdue-amount{color:var(--color-danger);font-weight:700;white-space:nowrap}.participant-payment-warning{margin-top:4px}.overdue-override-panel{background:#ef174d0f;border:1px solid rgba(239,23,77,.16);border-radius:10px;padding:12px}.student-pass-card-grid{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.student-pass-empty-state{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.student-pass-compact-card{display:grid;min-width:0;gap:7px;border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:9px 10px}.student-pass-compact-card .compact-actions{justify-content:flex-start}.student-pass-card-top{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px}.student-pass-card-top>strong{color:var(--color-text);font-size:18px;font-weight:860;letter-spacing:0}.student-pass-card-meta{display:flex;min-width:0;flex-wrap:wrap;gap:5px}.student-pass-card-meta span{min-height:24px;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:11px;font-weight:760;padding:4px 8px}.student-payment-summary-section{margin-top:-2px}.student-profile-payment-summary{margin-bottom:10px;padding:8px 9px}.student-payment-dues-table{min-width:940px}.student-payment-history-table{min-width:900px}.student-payment-due-choice-grid,.student-payment-method-choice-grid{display:grid;min-width:0;gap:7px}.student-payment-due-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-payment-method-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.student-payment-modal .small-choice-card{min-height:40px;padding:6px 8px}.student-payment-modal textarea{min-height:76px}.student-profile-note-lines{display:grid;gap:7px;margin:0;padding:0}.student-profile-note-lines li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;align-items:center;border-bottom:1px solid var(--color-border-soft);padding:8px 0}.student-profile-note-lines li:last-child{border-bottom:0}.student-profile-note-lines li>div,.student-profile-note-header{display:flex;flex-wrap:wrap;gap:5px 7px;min-width:0;align-items:center}.student-profile-note-lines span,.student-profile-note-lines small{color:var(--color-text-muted);font-size:11px;font-weight:700}.student-profile-note-lines strong{color:var(--color-text);font-size:12px;font-weight:760}.student-profile-note-lines p{grid-column:1 / 2;margin:0;color:var(--color-text);font-size:12px;font-weight:650;line-height:1.4;overflow-wrap:anywhere}.student-note-delete-button{grid-column:2;grid-row:1 / span 2;min-height:24px;border:0;border-radius:6px;background:#f8fafc;color:var(--color-text-muted);cursor:pointer;font-size:11px;font-weight:780;padding:3px 7px}.student-note-delete-button:hover:not(:disabled){background:#fff3f6;color:var(--color-brand-primary)}.student-note-delete-button:focus-visible{outline:2px solid rgb(238 38 73 / 30%);outline-offset:2px}.student-profile-relation-list{display:grid;min-width:0;gap:7px;margin:0;padding:0}.student-profile-relation-list li{display:grid;min-width:0;gap:7px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:9px}.student-profile-relation-list li>div:first-child{display:grid;min-width:0;gap:2px}.student-profile-relation-list strong{overflow:hidden;color:var(--color-text);font-size:12.5px;font-weight:780;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.student-profile-relation-list span:not(.status-pill){color:var(--color-text-muted);font-size:11px;font-weight:660;line-height:1.3}.student-profile-relation-statuses{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:6px}.student-profile-modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:9px;margin-top:8px;border-top:1px solid var(--color-border-soft);padding-top:14px}.student-profile-modal-footer .text-link-button{color:var(--color-text-muted)}.student-profile-modal-footer .primary-button{min-height:36px;padding:8px 13px}@media (max-width: 720px){.student-profile-section-panel-grid,.student-profile-relation-grid,.student-pass-card-grid,.student-profile-fact-grid,.student-profile-operations-bar{grid-template-columns:1fr}.student-profile-global-actions-menu{justify-self:start}.superadmin-form-grid{grid-template-columns:1fr}.service-access-banner{align-items:flex-start;flex-direction:column}.action-modal-backdrop{align-items:end;padding:10px}.action-modal,.participant-action-modal,.sports-card-surcharge-modal,.sports-card-assign-modal,.group-enrollment-modal,.report-exceptional-class-modal,.group-attendance-preview-modal,.revenue-detail-modal{width:100%;max-height:calc(100vh - 20px);overflow:auto}.revenue-detail-grid{grid-template-columns:1fr}.action-modal.action-modal-wide,.action-modal.action-modal-medium{width:100%;max-height:calc(100vh - 20px)}.student-profile-action-modal{width:100%;padding:14px}.student-profile-modal-footer{justify-content:stretch}.student-profile-modal-footer button{flex:1 1 130px}.staff-payroll-modal-grid,.report-exceptional-form{grid-template-columns:1fr}}.participant-action-grid{display:grid;grid-template-columns:minmax(110px,180px) minmax(0,1fr);gap:8px}.danger-outline-button{border-color:color-mix(in srgb,var(--swiplo-danger) 24%,var(--swiplo-border));background:#fff;color:var(--swiplo-danger)}.danger-outline-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--swiplo-danger) 36%,var(--swiplo-border));background:var(--swiplo-danger-soft);color:color-mix(in srgb,var(--swiplo-danger) 86%,#4c0519)}.danger-outline-button:disabled{opacity:.62}.public-schedule-shell{min-height:100vh;background:#f6f7f9;color:var(--color-text);display:grid;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;gap:14px;padding:28px clamp(16px,4vw,56px) 44px}.public-schedule-shell.is-embed{min-height:auto;gap:12px;padding:14px}.public-events-shell.is-dark-embed{background:radial-gradient(circle at 12% -8%,rgb(238 38 73 / 20%),transparent 30%),radial-gradient(circle at 88% 0%,color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 18%,transparent),transparent 28%),linear-gradient(180deg,#0d1320,#111827);color:#e5edf7}.public-schedule-compact-header,.public-schedule-toolbar,.public-filter-toolbar,.public-location-bar,.public-filter-panel,.public-day-section,.public-empty-state,.public-blocked-state{width:min(1328px,100%);margin-inline:auto}.public-schedule-compact-header{display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}.public-schedule-compact-header h1{margin:0;font-size:clamp(22px,2.4vw,28px);line-height:1.25}.public-school-logo{display:block;width:auto;max-width:min(220px,100%);max-height:48px;margin:2px 0 6px;object-fit:contain}.public-events-list,.public-events-layout{width:min(1160px,100%);margin-inline:auto}.public-events-list{display:grid;gap:14px}.public-events-card,.public-events-summary,.public-events-form{border:1px solid var(--color-border);border-radius:14px;background:#ffffffdb;box-shadow:0 14px 36px #0f172a0f}.public-events-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px}.public-events-card h2,.public-events-summary h2,.public-events-form h2{margin:0;letter-spacing:0}.public-events-card-meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--color-muted);font-size:.9rem}.public-events-layout{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.3fr);gap:18px;align-items:start}.public-events-layout-embed{grid-template-columns:minmax(0,1fr);width:min(1160px,100%)}.public-events-summary,.public-events-form{padding:20px}.public-events-summary dl{display:grid;gap:10px;margin:18px 0 0}.public-events-summary dt{color:var(--color-muted);font-size:.78rem;text-transform:uppercase}.public-events-summary dd{margin:0;font-weight:700}.public-events-form{display:grid;gap:18px}.public-events-form-embed{padding:clamp(18px,3vw,30px)}.public-events-shell.is-dark-embed .public-events-form{border-color:#94a3b838;background:#111827eb;box-shadow:0 18px 44px #00000047;color:#e5edf7}.public-events-form-intro{display:grid;gap:6px}.public-events-form-intro p:not(.eyebrow){color:var(--color-muted);margin:0}.public-events-shell.is-dark-embed .public-events-form-intro p:not(.eyebrow),.public-events-shell.is-dark-embed .public-events-inline-note,.public-events-shell.is-dark-embed .public-events-field-description{color:#aebbd0}.public-events-form-section{border:1px solid var(--color-border);border-radius:12px;background:#f8fafcb8;display:grid;gap:14px;padding:16px}.public-events-shell.is-dark-embed .public-events-form-section{border-color:#94a3b833;background:#0f172aad}.public-events-form-section-compact{gap:10px}.public-events-section-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.public-events-section-header h3{font-size:1rem;letter-spacing:0;margin:0}.public-events-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.public-events-form label,.public-events-dynamic-fields,.public-events-multiselect{display:grid;gap:7px}.public-events-form label,.public-events-multiselect legend{color:var(--color-text);font-size:.9rem;font-weight:700}.public-events-shell.is-dark-embed .public-events-form label,.public-events-shell.is-dark-embed .public-events-multiselect legend,.public-events-shell.is-dark-embed .public-events-section-header h3,.public-events-shell.is-dark-embed .public-events-form h2{color:#f8fafc}.public-events-form input,.public-events-form select,.public-events-form textarea{background:#fff;border:1px solid var(--color-border);border-radius:10px;color:var(--color-text);font:inherit;min-height:42px;padding:10px 12px;width:100%}.public-events-shell.is-dark-embed .public-events-form input,.public-events-shell.is-dark-embed .public-events-form select,.public-events-shell.is-dark-embed .public-events-form textarea{border-color:#94a3b847;background:#020617c7;color:#f8fafc}.public-events-shell.is-dark-embed .public-events-form input::placeholder,.public-events-shell.is-dark-embed .public-events-form textarea::placeholder{color:#94a3b8}.public-events-form input:focus,.public-events-form select:focus,.public-events-form textarea:focus{border-color:var(--public-brand-color, var(--swiplo-brand-accent));box-shadow:0 0 0 3px color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 12%,transparent);outline:none}.public-events-form input[type=checkbox]{accent-color:var(--public-brand-color, var(--swiplo-brand-accent))}.public-events-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--color-muted) 50%),linear-gradient(135deg,var(--color-muted) 50%,transparent 50%);background-position:calc(100% - 18px) 18px,calc(100% - 12px) 18px;background-repeat:no-repeat;background-size:6px 6px;padding-right:34px}.public-events-shell.is-dark-embed .public-events-select{background-image:linear-gradient(45deg,transparent 50%,#cbd5e1 50%),linear-gradient(135deg,#cbd5e1 50%,transparent 50%)}.public-events-form textarea{min-height:128px;resize:vertical}.public-events-form-wide{grid-column:1 / -1}.public-events-inline-note{border:1px solid var(--color-border);border-radius:10px;background:#fff;color:var(--color-muted);margin:0;padding:10px 12px}.public-events-shell.is-dark-embed .public-events-inline-note,.public-events-shell.is-dark-embed .public-events-choice-card,.public-events-shell.is-dark-embed .public-events-consent-card,.public-events-shell.is-dark-embed .public-events-consent-section{border-color:#94a3b83d;background:#0206178c}.public-events-consent-card{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--color-border);border-radius:12px;background:#fff;color:var(--color-text);cursor:pointer;padding:12px 14px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.public-events-consent-card:hover,.public-events-consent-card:focus-visible{border-color:color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 36%,var(--color-border));box-shadow:0 0 0 3px color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 10%,transparent);outline:none}.public-events-consent-card.is-selected{border-color:color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 32%,var(--color-border));background:color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 7%,#ffffff)}.public-events-consent-check{flex:0 0 auto;padding-top:2px}.public-events-consent-copy{display:grid;min-width:0;gap:5px}.public-events-consent-copy strong{font-size:.93rem;line-height:1.35}.public-events-consent-check input,.public-events-choice-card input{flex:0 0 auto;margin-top:2px;min-height:auto;padding:0;width:auto}.public-events-field-description{display:grid;gap:5px}.public-events-field-description{color:var(--color-muted);font-size:.82rem;line-height:1.4}.public-events-field-description.has-inline-link{display:block}.public-events-field-description.has-inline-link span,.public-events-field-description.has-inline-link a{display:inline}.public-events-field-description a{color:color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 76%,var(--color-text));font-weight:740;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:2px}.public-events-helper-link{width:fit-content}.public-events-shell.is-dark-embed .public-events-consent-card.is-selected{border-color:#4ade808c;background:#14532d59}.public-events-shell.is-dark-embed .public-events-consent-copy strong{color:#f8fafc}.public-events-shell.is-dark-embed .public-events-field-description a{color:color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 58%,#ffffff)}.public-events-multiselect{border:0;margin:0;padding:0}.public-events-multiselect legend{margin:0 0 7px;padding:0}.public-events-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.public-events-choice-card{align-items:center;border:1px solid var(--color-border);border-radius:10px;background:#fff;cursor:pointer;display:flex;gap:9px;min-height:42px;padding:10px 12px}.public-events-choice-card.is-selected{border-color:var(--public-brand-color, var(--swiplo-brand-accent));background:color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 8%,#ffffff)}.public-events-shell.is-dark-embed .public-events-choice-card.is-selected{border-color:var(--public-brand-color, #f43f5e);background:color-mix(in srgb,var(--public-brand-color, #f43f5e) 24%,#111827);color:#fff}.public-events-consent-section{background:#fff}.public-events-errors,.public-events-success{border-radius:10px;padding:10px 12px}.public-events-errors{background:#fff1f2;color:#be123c}.public-events-success{background:#ecfdf3;color:#166534}.public-events-errors p,.public-events-success,.public-events-success p{margin:0}.public-events-payment-state{display:grid;gap:10px;border:1px solid color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 16%,var(--color-border));background:color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 7%,#ffffff);color:color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 68%,var(--color-text))}.public-events-payment-action{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.public-events-payment-action span{color:color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 72%,var(--color-text));font-weight:700}.public-events-payment-error{color:#be123c;font-weight:700}.public-events-payment-modal{position:relative;width:min(540px,calc(100vw - 36px));gap:14px;border-color:color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 18%,var(--color-border));border-radius:18px;overflow:hidden;padding:18px}.public-events-payment-modal:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 76%,#ffffff)}.public-events-payment-modal-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.public-events-payment-modal-header strong{display:block;color:var(--color-text);font-size:22px;line-height:1.2}.public-events-payment-modal-body{display:grid;gap:12px}.public-events-payment-modal-body p{margin:0;color:var(--color-text-muted);line-height:1.5}.public-events-payment-modal-amount{align-items:center;display:flex;gap:12px;justify-content:space-between;border:1px solid color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 18%,var(--color-border));border-radius:12px;background:color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 7%,#ffffff);padding:12px}.public-events-payment-modal-amount span{color:var(--color-text-muted);font-size:13px;font-weight:800}.public-events-payment-modal-amount strong{color:var(--color-text);font-size:18px;font-weight:900;white-space:nowrap}.public-events-payment-modal-error{border:1px solid #fecdd3;border-radius:10px;background:#fff1f2;color:#be123c!important;font-weight:800;padding:10px 12px}.public-events-payment-modal-footer{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;border-top:1px solid var(--color-border-soft);padding-top:12px}.public-events-form-footer{display:flex;justify-content:flex-end}.events-public-link-box{display:grid;gap:10px}.events-public-link-box p{margin:0;color:var(--color-muted)}.events-public-link-box a,.events-public-link-box code{border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface-muted);color:var(--color-text);display:block;overflow-wrap:anywhere;padding:10px 12px}@media (max-width: 720px){.public-events-card,.public-events-layout,.public-events-field-grid,.public-events-choice-grid{grid-template-columns:1fr}.public-events-card{align-items:stretch;flex-direction:column}}.public-schedule-actions,.public-schedule-toolbar,.public-filter-toolbar,.public-location-bar,.public-modal-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.public-schedule-actions{justify-content:flex-end}.public-filter-toolbar{justify-content:space-between;border:1px solid #dde3ea;border-radius:8px;background:#fff;padding:10px 14px}.public-filter-toolbar-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.public-filter-count{min-width:18px;min-height:18px;display:inline-grid;place-items:center;border-radius:999px;background:#eef6ff;color:#1f5f93;font-size:11px;margin-left:4px}.public-schedule-view-switch{display:inline-flex;align-items:center;gap:4px;border:1px solid #dde3ea;border-radius:8px;background:#f6f7f9;box-shadow:none;padding:3px}.public-schedule-view-switch button{min-height:32px;border:0;border-radius:6px;background:transparent;color:var(--color-text-muted);cursor:pointer;font:inherit;font-size:12px;font-weight:700;padding:6px 12px}.public-schedule-view-switch button:hover,.public-schedule-view-switch button:focus-visible{color:color-mix(in srgb,var(--public-brand-color) 76%,#0f172a);outline:none}.public-schedule-view-switch button.active{background:color-mix(in srgb,var(--public-brand-color) 9%,#ffffff);box-shadow:none;color:color-mix(in srgb,var(--public-brand-color) 78%,#0f172a)}.public-schedule-toolbar{justify-content:space-between;border:1px solid #dde3ea;border-radius:8px;background:#fff;box-shadow:none;padding:12px 14px}.public-schedule-toolbar strong{font-size:14px}.public-week-title{display:grid;gap:2px}.public-week-title strong{color:var(--color-text);font-size:15px}.public-week-title span{color:var(--color-text-muted);font-size:12px}.public-week-actions{display:flex;flex-wrap:wrap;gap:8px}.public-location-bar{justify-content:flex-start;border:1px solid #dde3ea;border-radius:8px;background:#fff;padding:8px 14px}.public-location-bar>span{color:var(--color-text-muted);font-size:12px;font-weight:820;padding-inline:6px}.public-location-bar button{border:0;border-radius:6px;background:transparent;color:var(--color-text-muted);font-size:12px;font-weight:600;padding:8px 14px}.public-location-bar button.active{background:color-mix(in srgb,var(--public-brand-color) 10%,#ffffff);color:color-mix(in srgb,var(--public-brand-color) 82%,#14181f);font-weight:700}.public-location-bar button:disabled{cursor:default;opacity:1}.public-filter-panel{position:relative;z-index:90;overflow:visible;border:1px solid #dde3ea;border-radius:8px;background:#fff;box-shadow:none;padding:14px}.public-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px;overflow:visible}.public-filter-grid label,.public-filter-field{display:grid;gap:5px;min-width:0;color:var(--color-text-muted);font-size:11px;font-weight:760;position:relative}.public-filter-label{color:var(--color-text-muted)}.public-filter-grid input,.public-filter-select{height:38px;min-width:0;border:1px solid #c7d0dc;border-radius:6px;background-color:#fff;color:var(--color-text);font:inherit;font-size:13px;line-height:1.2;padding:8px 11px;box-shadow:none}.public-filter-select{display:flex;align-items:center;justify-content:space-between;cursor:pointer;text-align:left}.public-filter-select:hover,.public-filter-select:focus-visible{border-color:color-mix(in srgb,var(--public-brand-color) 36%,#cbd5e1);outline:none;box-shadow:0 1px #ffffffb8 inset,0 0 0 3px color-mix(in srgb,var(--public-brand-color) 12%,transparent)}.public-filter-chevron{color:var(--color-text-muted);font-size:16px;line-height:1}.public-filter-menu{position:fixed;z-index:var(--z-filter-dropdown);display:grid;max-height:240px;overflow-y:auto;border:1px solid rgb(226 232 240 / 78%);border-radius:14px;background:#ffffffeb;box-shadow:0 18px 44px #0f172a1f;-webkit-backdrop-filter:blur(22px) saturate(1.05);backdrop-filter:blur(22px) saturate(1.05);padding:5px}.public-filter-menu-portal{pointer-events:auto}.public-filter-menu button{border:0;border-radius:10px;background:transparent;color:var(--color-text);cursor:pointer;font:inherit;font-size:13px;padding:9px 10px;text-align:left}.public-filter-menu button:hover,.public-filter-menu button.active{background:color-mix(in srgb,var(--public-brand-color) 9%,#ffffff);color:color-mix(in srgb,var(--public-brand-color) 78%,#0f172a)}.public-week-grid,.public-week-list{width:min(1328px,100%);margin-inline:auto;display:grid;gap:12px}.public-day-section{border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:14px}.public-day-section>header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.public-day-section h2{margin:0;font-size:17px}.public-day-section--compact{overflow:visible;border-color:#dde3ea;border-radius:8px;background:#fff;box-shadow:none}.public-day-section>header>span{display:grid;gap:2px}.public-day-section>header strong{color:var(--color-text);font-size:16px}.public-day-section>header small,.public-day-section>header em,.public-day-empty{color:var(--color-text-muted);font-size:12px}.public-day-section>header em{font-style:normal;font-weight:760}.public-class-card-list{display:grid;gap:8px;overflow:visible}.public-class-card{position:relative;display:grid;grid-template-columns:minmax(220px,.85fr) minmax(180px,.7fr) auto;gap:12px;align-items:center;border:1px solid #dde3ea;border-radius:8px;background:#fff;cursor:pointer;padding:11px 12px 11px 18px;box-shadow:none}.public-class-card:hover,.public-class-card:focus-within{z-index:20;border-color:#c7d0dc;background:#fff;box-shadow:0 8px 22px #0f172a14}.public-class-card:before{position:absolute;top:0;bottom:0;left:0;width:4px;border-radius:2px 0 0 2px;background:var(--public-class-color);content:"";opacity:.9}.public-class-main{min-width:0;border:0;background:transparent;color:var(--color-text);display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;padding:0;text-align:left}.public-class-main strong,.public-class-main small,.public-class-meta span,.public-class-footer span{min-width:0;overflow-wrap:anywhere}.public-class-main small{display:block;color:var(--color-text-muted);font-size:12px;margin-top:3px}.public-class-time{border-radius:6px;background:#f6f7f9;color:#0f172a;font-size:13px;font-weight:700;padding:7px 9px;white-space:nowrap}.public-class-meta{display:grid;gap:3px;color:var(--color-text-muted);font-size:12px}.public-class-footer{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;color:var(--color-text-muted);font-size:12px}.public-class-card.is-muted,.public-calendar-event.is-muted,.public-class-card.is-closed,.public-calendar-event.is-closed{opacity:.78;filter:saturate(.82)}.public-class-card.is-actionable,.public-calendar-event.is-actionable{border-color:#dde3ea}.public-card-cta{white-space:nowrap}.public-class-preview{position:absolute;z-index:46;display:grid;width:min(304px,calc(100vw - 32px));max-height:min(260px,calc(100vh - 120px));gap:8px;border:1px solid #c7d0dc;border-radius:8px;background:#fff;box-shadow:0 18px 44px #0f172a1f;color:#526073;font-size:12px;font-weight:500;opacity:0;overflow:auto;padding:14px 16px;pointer-events:none;transform:translateY(-6px) scale(.98);transition:opacity .12s ease,transform .15s ease}.public-class-preview strong{color:var(--color-text);font-size:15px;line-height:1.2}.public-class-preview span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-class-preview-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding-top:2px}.public-class-preview .primary-button,.public-class-preview .secondary-button{min-height:38px;border-radius:6px;font-size:13px;padding:8px 12px}.public-class-preview .primary-button{border-color:var(--public-brand-color);background:var(--public-brand-color);color:#fff}.public-class-card-preview{top:calc(100% + 8px);left:0;transform-origin:top left}.public-class-card-preview.public-class-preview--left{right:0;left:auto;transform-origin:top right}.public-class-card-preview.public-class-preview--up,.public-class-card-preview.public-schedule-preview--open-up{top:auto;bottom:calc(100% + 8px);transform:translateY(6px) scale(.98);transform-origin:bottom left}.public-class-card-preview.public-class-preview--up.public-class-preview--left,.public-class-card-preview.public-schedule-preview--open-up.public-class-preview--left{transform-origin:bottom right}.public-class-card:hover .public-class-card-preview,.public-class-card:focus-within .public-class-card-preview{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.public-class-card:hover .public-class-card-preview span,.public-class-card:focus-within .public-class-card-preview span{overflow:visible;text-overflow:clip;white-space:normal}.public-availability-badge{border-radius:999px;border:1px solid var(--color-border);background:#fff;color:var(--color-text-muted);font-size:11px;font-weight:500;padding:4px 8px}.public-availability-badge.tone-green{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.public-availability-badge.tone-yellow{border-color:#fde68a;background:#fffbeb;color:#92400e}.public-availability-badge.tone-red{border-color:#fecaca;background:#fff1f2;color:#be123c}.public-availability-badge.tone-neutral{border-color:#dde3ea;background:#fafbfc;color:#526073}.public-empty-state{border:1px dashed var(--color-border);border-radius:14px;background:#ffffffbd;color:var(--color-text-muted);display:grid;gap:12px;justify-items:center;padding:24px;text-align:center;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.public-blocked-state{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;border:1px solid #dde3ea;border-radius:8px;background:#fff;box-shadow:none;color:var(--color-text);padding:22px}.public-blocked-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:999px;background:#fff7ed;color:#9a3412;font-size:16px;font-weight:900}.public-blocked-state p,.public-blocked-state small{display:block;margin:6px 0 0;color:var(--color-text-muted);line-height:1.5}.public-class-modal,.public-enrollment-modal{max-width:960px}.public-enrollment-modal{display:flex;flex-direction:column;width:min(940px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100vh - 48px);box-sizing:border-box;overflow:hidden;border:1px solid #dde3ea;border-radius:8px;background:#fff;box-shadow:0 18px 54px #0f172a21;-webkit-backdrop-filter:none;backdrop-filter:none;gap:0;padding:0}.public-class-modal{width:min(760px,calc(100vw - 28px));max-height:min(92vh,860px);overflow:hidden;border:1px solid #dde3ea;border-radius:8px;background:#fff;box-shadow:0 18px 54px #0f172a21;-webkit-backdrop-filter:none;backdrop-filter:none;gap:0;padding:0}.public-class-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:1px solid #dde3ea;background:#fff;padding:18px 20px 16px}.public-class-modal-header>div{display:grid;gap:4px;min-width:0}.public-class-modal-header span{color:#4a5565;font-size:12px;font-weight:400;line-height:18px}.public-class-modal-header strong{color:#14181f;font-size:18px;font-weight:600;line-height:24px}.public-class-modal-header .secondary-button,.public-class-cta-row .primary-button,.public-class-cta-row .secondary-button{min-height:38px;border-radius:6px;font-size:13px;font-weight:500;line-height:18px;padding:8px 14px}.public-class-modal-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.36fr);max-height:calc(min(92vh,860px) - 74px);gap:14px;align-items:start;overflow-x:hidden;overflow-y:auto;padding:16px 20px 20px}.public-class-modal-main,.public-class-modal-aside{display:grid;gap:12px;min-width:0}.public-class-modal-aside{position:sticky;top:8px}.public-class-modal-summary,.public-pass-summary,.public-pricing-box{border:1px solid #edf1f5;border-radius:8px;background:#fafbfc;display:grid;gap:6px;padding:10px}.public-class-note,.public-summary-note{border:1px solid #dde3ea;border-radius:8px;background:#fff;color:#4a5565;font-size:12px;font-weight:500;line-height:1.45;margin:0;padding:10px}.public-class-fact-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.public-info-line,.public-class-status-card{display:grid;grid-template-columns:20px minmax(0,1fr);gap:4px;align-items:start;border:1px solid #dde3ea;border-radius:8px;background:#fff;padding:9px}.public-class-status-card{grid-template-columns:1fr}.public-class-status-card .public-info-line{border:0;border-radius:6px;background:#fafbfc}.public-status-helper{margin:0;color:#4a5565;font-size:12px;font-weight:400;line-height:18px}.public-icon{width:18px;height:18px;color:color-mix(in srgb,var(--public-brand-color) 78%,#475569)}.public-info-line>span{display:grid;gap:2px;min-width:0}.public-info-line small{color:var(--color-text-muted);font-size:11px;font-weight:500;line-height:15px}.public-info-line strong{min-width:0;color:var(--color-text);font-size:13px;font-weight:600;line-height:18px;overflow-wrap:anywhere}.public-instructor-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;border:1px solid #dde3ea;border-radius:8px;background:#fff;padding:10px}.public-instructor-card span:last-child{display:grid;gap:2px;min-width:0}.public-instructor-card small{color:var(--color-text-muted);font-size:11px;font-weight:500;line-height:15px}.public-instructor-avatar{display:grid;width:38px;height:38px;place-items:center;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--public-brand-color) 14%,#ffffff);color:color-mix(in srgb,var(--public-brand-color) 72%,#0f172a);font-size:12px;font-weight:650}.public-instructor-avatar img{width:100%;height:100%;object-fit:cover}.public-class-modal-summary strong{font-size:13px}.public-pass-summary>strong,.public-pricing-box>span>strong{color:#14181f;font-size:13px;font-weight:600;line-height:18px}.public-class-description-line.public-info-line{background:#fff}.public-class-description-line.public-info-line strong{color:#4a5565;font-weight:400;line-height:20px}.public-pricing-box{grid-template-columns:20px minmax(0,1fr);align-items:start;background:#fff}.public-pricing-box>span{display:grid;gap:2px;min-width:0}.public-pricing-box small{color:var(--color-text-muted);font-size:11px;font-weight:500;line-height:15px}.public-pricing-box em{color:#4a5565;font-size:12px;font-style:normal;font-weight:400;line-height:18px}.public-class-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.public-class-modal-grid>div{border:1px solid var(--color-border);border-radius:10px;background:#fff;cursor:pointer;display:grid;gap:4px;padding:10px}.public-class-modal-grid span,.public-class-modal-summary span,.public-pass-summary span{color:var(--color-text-muted);font-size:12px;line-height:1.45}.public-class-description{color:var(--color-text);font-size:13px;line-height:20px;margin:0}.public-pass-summary ul,.public-pricing-box ul{color:var(--color-text-muted);font-size:12px}.public-pricing-box ul{display:grid;grid-column:2;gap:5px;margin:4px 0 0;padding:0;list-style:none}.public-pricing-box li{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:8px;border-top:1px solid #edf1f5;padding-top:5px}.public-pricing-box li span{min-width:0;color:#4a5565;overflow-wrap:anywhere}.public-pricing-box li strong{flex:0 0 auto;color:#14181f;font-size:12px;font-weight:500}.public-modal-actions{justify-content:flex-end;position:sticky;bottom:0;border-top:1px solid #dde3ea;background:#fff;padding:12px 0 0}.public-enrollment-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:1px solid #dde3ea;background:#fff;padding:18px 20px 16px}.public-enrollment-header>div{display:grid;gap:4px;min-width:0}.public-enrollment-header span{color:color-mix(in srgb,var(--public-brand-color) 82%,#14181f);font-size:12px;font-weight:600;line-height:18px}.public-enrollment-header strong{color:#14181f;font-size:18px;font-weight:600;line-height:24px}.public-enrollment-header small{color:#4a5565;font-size:12px;font-weight:400;line-height:18px}.public-enrollment-header .secondary-button,.public-enrollment-actions .secondary-button,.public-enrollment-actions .primary-button{min-height:38px;border-radius:6px;font-size:13px;font-weight:500;line-height:18px;padding:8px 14px}.public-class-cta-row{display:flex;justify-content:stretch}.public-class-cta-row .primary-button,.public-enrollment-actions .primary-button,.public-card-cta.primary-button,.public-calendar-event-expanded .primary-button{border-color:var(--public-brand-color);background:var(--public-brand-color);color:#fff}.public-class-cta-row .primary-button,.public-class-cta-row .secondary-button{width:100%}.public-signup-methods,.public-social-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.public-signup-methods button,.public-social-methods button{display:grid;grid-template-columns:22px minmax(0,1fr);gap:9px;align-items:center;min-width:0;border:1px solid #c7d0dc;border-radius:6px;background:#fff;color:var(--color-text);cursor:pointer;font:inherit;min-height:38px;padding:8px 10px;text-align:left;transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.public-signup-methods button{min-height:42px}.public-social-methods button{color:#14181f;grid-template-columns:20px minmax(0,1fr)}.public-brand-logo{width:21px;height:21px;justify-self:center}.public-brand-logo.google{color:initial}.public-brand-logo.apple{color:#111827}.public-signup-methods button.active,.public-social-methods button.active{border-color:color-mix(in srgb,var(--public-brand-color) 46%,#c7d0dc);background:color-mix(in srgb,var(--public-brand-color) 8%,#ffffff);box-shadow:none}.public-signup-methods button.is-disabled,.public-social-methods button.is-disabled{cursor:not-allowed;opacity:.62}.public-signup-methods span,.public-social-methods span{display:grid;gap:2px;min-width:0}.public-signup-methods strong,.public-social-methods strong{font-size:12px;font-weight:500;line-height:18px}.public-signup-methods small,.public-social-methods small{color:#7b8492;font-size:11px;font-weight:400;line-height:15px}.public-passkey-note{display:flex;align-items:center;gap:7px;margin:-2px 0 0;color:var(--color-text-muted);font-size:12px;line-height:1.35}.public-passkey-note .public-icon{width:16px;height:16px}.public-provider-coming-soon{grid-template-columns:30px minmax(0,1fr);align-items:center;border:1px solid #dde3ea;border-radius:8px;background:#fafbfc;padding:10px 12px}.public-provider-coming-soon span{display:grid;gap:3px}.public-provider-coming-soon small{color:var(--color-text-muted);font-size:12px;line-height:1.45}.public-enrollment-form-shell,.public-enrollment-section,.public-enrollment-form{display:grid;gap:12px}.public-enrollment-form-shell{display:flex;flex:1 1 auto;min-height:0;gap:0;flex-direction:column;overflow:hidden;padding:0}.public-enrollment-body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:16px 20px 18px}.public-enrollment-layout{display:grid;grid-template-columns:minmax(220px,.38fr) minmax(0,1fr);gap:16px;align-items:start;min-height:0}.public-enrollment-summary-card{display:grid;grid-column:1;grid-template-columns:1fr;gap:8px;border:1px solid #dde3ea;border-radius:8px;background:#fff;max-height:calc(100vh - 190px);overflow-y:auto;padding:10px}.public-enrollment-main-section{grid-column:1}.public-enrollment-side-section{grid-column:1;align-self:start}.public-enrollment-summary-card{position:sticky;top:0;align-self:start}.public-enrollment-summary-card .public-info-line{grid-template-columns:18px minmax(0,1fr);gap:2px;border:1px solid #edf1f5;border-radius:8px;background:#fafbfc;padding:8px}.public-enrollment-summary-card .public-icon{display:block;width:16px;height:16px}.public-enrollment-summary-card .public-info-line small{color:#7b8492;font-size:11px;font-weight:500;line-height:15px}.public-enrollment-summary-card .public-info-line strong{color:#14181f;font-size:12px;font-weight:500;line-height:17px}.public-enrollment-form-column{display:grid;grid-column:2;align-content:start;gap:14px;min-width:0}.public-enrollment-flow-scroll{display:grid;grid-column:1;align-content:start;gap:14px;min-height:0;overflow:visible;padding:0}.public-enrollment-flow-scroll>.public-enrollment-main-section,.public-enrollment-flow-scroll>.public-enrollment-side-section,.public-enrollment-flow-scroll>.public-enrollment-error,.public-enrollment-flow>.public-enrollment-actions{grid-column:1}.public-enrollment-actions{position:static;z-index:4;flex:0 0 auto;justify-content:flex-end;min-width:0;margin:0;border-top:1px solid #dde3ea;border-radius:0;background:#fff;box-shadow:0 -8px 18px #0f172a0f;padding:12px 20px 14px}.public-enrollment-form-shell>.public-enrollment-actions,.public-enrollment-modal>.public-enrollment-actions{padding:10px 20px 14px}.public-enrollment-summary-card>div{display:grid;gap:3px;min-width:0}.public-enrollment-summary-card span,.public-enrollment-section-heading,.public-enrollment-summary-heading{color:var(--color-text-muted);font-size:12px}.public-enrollment-summary-card strong{min-width:0;overflow-wrap:anywhere}.public-enrollment-summary-heading,.public-enrollment-section-heading{display:flex;align-items:center;gap:8px;color:#14181f;font-size:14px;font-weight:600;line-height:20px}.public-enrollment-section-heading>span,.public-enrollment-summary-heading>span{width:4px;height:16px;border-radius:2px;background:var(--public-brand-color)}.public-enrollment-summary-card>.public-enrollment-summary-heading{display:flex;align-items:center;gap:8px}.public-enrollment-summary-card>.public-enrollment-summary-heading>span{flex:0 0 auto;width:3px;height:16px}.public-enrollment-section{border:0;background:transparent;padding:0}.public-enrollment-path-section{gap:10px}.public-enrollment-choice-grid{display:inline-grid;width:fit-content;max-width:100%;grid-template-columns:repeat(2,minmax(0,auto));gap:8px;border:0;border-radius:0;background:transparent;padding:0}.public-enrollment-choice-grid button{border:1px solid #c7d0dc;border-radius:6px;background:#fff;color:var(--color-text);cursor:pointer;font:inherit;font-size:12px;font-weight:500;min-height:38px;padding:8px 12px;text-align:center;white-space:nowrap}.public-enrollment-choice-grid button.active{border-color:color-mix(in srgb,var(--public-brand-color) 46%,#c7d0dc);background:color-mix(in srgb,var(--public-brand-color) 8%,#ffffff);box-shadow:none;color:color-mix(in srgb,var(--public-brand-color) 78%,#0f172a)}.public-enrollment-choice-grid button{display:block}.public-enrollment-choice-grid button span{display:none}.public-enrollment-choice-grid span,.public-enrollment-hint,.public-enrollment-success span,.public-enrollment-success small,.public-consent-list small{color:var(--color-text-muted);font-size:12px;line-height:1.45}.public-enrollment-grid{display:grid;gap:9px}.public-enrollment-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.public-enrollment-grid label,.public-consent-list label{display:grid;gap:5px;min-width:0;color:#4a5565;font-size:11px;font-weight:500;line-height:16px}.public-enrollment-grid input,.public-enrollment-grid select{height:38px;min-width:0;border:1px solid #c7d0dc;border-radius:6px;background:#fff;color:#14181f;font:inherit;font-size:13px;line-height:18px;padding:8px 11px}.public-enrollment-grid select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#7b8492 50%),linear-gradient(135deg,#7b8492 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:30px}.public-enrollment-grid input:focus,.public-enrollment-grid select:focus{border-color:color-mix(in srgb,var(--public-brand-color) 62%,#c7d0dc);box-shadow:0 0 0 3px color-mix(in srgb,var(--public-brand-color) 12%,transparent);outline:none}.public-consent-list{display:grid;gap:8px}.public-consent-row{display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;align-items:flex-start;border:0;border-radius:6px;background:transparent;cursor:pointer;padding:3px 0;transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.public-consent-row:hover,.public-consent-row:focus-within{box-shadow:none}.public-consent-row.is-checked{background:transparent}.public-consent-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.public-consent-box{display:grid;width:16px;height:16px;place-items:center;border:1px solid #c7d0dc;border-radius:4px;background:#fff;color:#fff;transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.public-consent-box:after{width:4px;height:8px;border:solid currentColor;border-width:0 2px 2px 0;content:"";opacity:0;transform:rotate(45deg) scale(.8)}.public-consent-input:checked+.public-consent-box{border-color:var(--public-brand-color);background:var(--public-brand-color);box-shadow:none}.public-consent-input:checked+.public-consent-box:after{opacity:1}.public-consent-copy{display:grid;gap:4px;min-width:0}.public-consent-copy strong{display:flex;align-items:center;gap:4px;flex-wrap:wrap;color:#4a5565;font-size:12px;font-weight:400;line-height:18px}.public-consent-copy em{border-radius:6px;background:#fff3e4;color:#a15c17;font-size:10px;font-style:normal;font-weight:500;padding:2px 6px}.public-consent-link{width:fit-content;display:inline;align-items:center;border:0;background:transparent;color:color-mix(in srgb,var(--public-brand-color, var(--swiplo-brand-accent)) 76%,var(--swiplo-brand-accent));cursor:pointer;font:inherit;font-size:12px;font-weight:500;padding:0;text-align:left;text-decoration:underline;text-underline-offset:3px}.public-consent-link:hover,.public-consent-link:focus-visible{color:color-mix(in srgb,var(--public-brand-color) 86%,#14181f)}.public-consent-document-title{color:#4a5565;font-weight:500}.public-consent-preview-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal-elevated);display:grid;place-items:center;background:#0f172a42;padding:20px}.public-consent-preview-modal{display:grid;width:min(620px,calc(100vw - 32px));max-height:min(78vh,680px);gap:12px;overflow:auto;border:1px solid var(--color-border);border-radius:18px;background:#fff;box-shadow:0 24px 70px #0f172a2e;padding:16px}.public-consent-preview-modal header{display:flex;align-items:center;justify-content:space-between;gap:12px}.public-consent-preview-modal p{margin:0;color:var(--color-text);line-height:1.6;white-space:pre-wrap}.public-enrollment-error{grid-column:1;border:1px solid #fecaca;border-radius:8px;background:#fff1f2;color:#be123c;font-size:12px;font-weight:500;margin:0;padding:9px}.public-enrollment-success{display:grid;gap:6px;border:1px solid #bbf7d0;border-radius:12px;background:#f0fdf4;color:#166534;padding:12px}.public-enrollment-message{border-radius:9px;background:#eef6ff;color:#1f5f93;font-size:12px;font-weight:760;margin:0;padding:9px}@media (max-width: 860px){.public-schedule-shell{padding:14px 12px 28px}.public-schedule-compact-header,.public-schedule-toolbar,.public-filter-toolbar,.public-location-bar,.public-day-section>header{align-items:stretch;flex-direction:column}.public-schedule-compact-header,.public-class-card{display:grid;grid-template-columns:1fr}.public-schedule-toolbar,.public-filter-toolbar,.public-location-bar{justify-content:stretch}.public-schedule-toolbar button,.public-schedule-toolbar strong,.public-filter-toolbar button,.public-location-bar button,.public-schedule-actions button{width:100%}.public-filter-grid,.public-class-modal-grid,.public-class-modal-content,.public-class-fact-list,.public-enrollment-layout,.public-social-methods,.public-signup-methods,.public-enrollment-grid.two-columns,.public-enrollment-choice-grid,.public-enrollment-summary-card{grid-template-columns:1fr}.public-enrollment-summary-card,.public-enrollment-form-column,.public-enrollment-flow,.public-enrollment-main-section,.public-enrollment-side-section,.public-enrollment-error,.public-enrollment-actions{grid-column:1}.public-enrollment-summary-card{position:static}.public-enrollment-form-shell{min-height:0;overflow:hidden;padding:0}.public-enrollment-body{padding:14px}.public-enrollment-flow{height:auto;overflow:visible}.public-enrollment-flow-scroll{overflow:visible;padding:0}.public-enrollment-actions{padding:10px 14px 12px}.public-class-modal-aside{position:static}.public-enrollment-choice-grid{width:100%}.public-class-footer{justify-content:flex-start}}.public-calendar-desktop,.public-mobile-timeline{width:min(1328px,100%);margin-inline:auto}.public-calendar-desktop{border:1px solid #dde3ea;border-radius:8px;background:#fff;box-shadow:none;overflow:visible}.public-calendar-header{display:grid;grid-template-columns:74px repeat(var(--public-calendar-days, 7),minmax(136px,1fr));border-bottom:1px solid #dde3ea;border-radius:8px 8px 0 0;background:#fff}.public-calendar-header>span,.public-calendar-header>strong{min-width:0;padding:12px 10px;color:var(--color-text);font-size:12px;font-weight:840}.public-calendar-header>strong{display:grid;gap:3px;border-left:1px solid rgb(226 232 240 / 42%)}.public-calendar-header small{color:var(--color-text-muted);font-size:11px;font-weight:700}.public-calendar-body{display:grid;grid-template-columns:74px minmax(0,1fr);height:var(--public-calendar-height, 560px);min-height:300px;max-height:724px;overflow:visible}.public-time-axis,.public-calendar-day-lane{position:relative}.public-time-axis{border-right:1px solid #dde3ea;background:#fff}.public-time-axis span{position:absolute;right:10px;transform:translateY(-50%);color:var(--color-text-muted);font-size:11px;font-weight:760}.public-calendar-lanes{display:grid;grid-template-columns:repeat(var(--public-calendar-days, 7),minmax(136px,1fr));min-width:0;overflow:visible}.public-calendar-day-lane{min-width:0;border-left:1px solid #edf1f5;background:#fff;overflow:visible}.public-calendar-lane-lines{position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 58px,#edf1f5 58px,#edf1f5 59px);pointer-events:none}.public-calendar-event{position:absolute;z-index:1;display:grid;min-height:64px;align-content:start;gap:4px;border:1px solid #dde3ea;border-radius:6px;background:#fff;box-shadow:none;cursor:pointer;padding:7px 8px 7px 12px;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.public-calendar-event:before{position:absolute;top:0;bottom:0;left:0;width:4px;border-radius:2px 0 0 2px;background:var(--public-class-color);content:"";opacity:.95}.public-calendar-event:hover,.public-calendar-event:focus-within{z-index:36;border-color:#c7d0dc;background:#fff;box-shadow:0 12px 30px #0f172a1a;overflow:visible}.public-calendar-event:hover .public-calendar-event-basic strong,.public-calendar-event:focus-within .public-calendar-event-basic strong{overflow:visible;white-space:normal}.public-calendar-event-basic{display:grid;gap:3px;min-width:0;color:var(--color-text);line-height:1.2}.public-calendar-event-basic strong,.public-calendar-event-time{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-calendar-event-basic strong{font-size:11px;line-height:1.25}.public-calendar-event-time{color:#4a5565;font-size:10px;font-weight:500}.public-availability-dot{width:fit-content;max-width:100%;overflow:hidden;background:#fafbfc;border-radius:999px;color:var(--color-text-muted);font-size:10px;font-weight:500;line-height:1;opacity:.82;padding:5px 8px;text-overflow:ellipsis;white-space:nowrap}.public-availability-dot.tone-green{background:#e8f4ed;color:#166534}.public-availability-dot.tone-yellow{background:#fff3e4;color:#92400e}.public-availability-dot.tone-red{background:#fdecec;color:#be123c}.public-availability-dot.tone-neutral{background:#fafbfc;color:#526073}.public-calendar-event-expanded{position:absolute;top:calc(100% + 8px);left:0;z-index:40;display:grid;width:min(304px,calc(100vw - 32px));max-height:min(260px,calc(100vh - 120px));gap:8px;border:1px solid #c7d0dc;border-radius:8px;background:#fff;box-shadow:0 18px 44px #0f172a1f;color:#526073;font-size:12px;font-weight:500;opacity:0;overflow:auto;padding:14px 16px;pointer-events:none;transform:translateY(-6px) scale(.98);transform-origin:top left;transition:opacity .12s ease,transform .15s ease}.public-calendar-event--preview-left .public-calendar-event-expanded,.public-calendar-day-lane:last-child .public-calendar-event-expanded{right:0;left:auto;transform-origin:top right}.public-calendar-event--preview-up .public-calendar-event-expanded.public-class-preview--up,.public-calendar-event-expanded.public-class-preview--up{top:auto;bottom:calc(100% + 8px);transform:translateY(6px) scale(.98);transform-origin:bottom left}.public-calendar-event--preview-left .public-calendar-event-expanded.public-class-preview--up,.public-calendar-day-lane:last-child .public-calendar-event-expanded.public-class-preview--up{transform-origin:bottom right}.public-calendar-event-expanded strong{color:var(--color-text);font-size:15px;line-height:1.2}.public-calendar-event-expanded span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-calendar-event:hover .public-calendar-event-expanded,.public-calendar-event:focus-within .public-calendar-event-expanded{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.public-calendar-event:hover .public-calendar-event-expanded span,.public-calendar-event:focus-within .public-calendar-event-expanded span{overflow:visible;text-overflow:clip;white-space:normal}.public-calendar-event-note{display:block;border-top:1px solid rgb(226 232 240 / 64%);padding-top:6px;white-space:normal}.public-calendar-event-expanded .public-availability-badge{width:fit-content;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-calendar-event.is-actionable:hover,.public-calendar-event.is-actionable:focus-within{box-shadow:0 10px 28px #0f172a14,0 0 0 1px color-mix(in srgb,var(--public-brand-color) 14%,transparent)}.public-calendar-day-empty{position:absolute;inset:16px 10px auto;color:var(--color-text-muted);font-size:12px}.public-mobile-timeline{display:none}.public-mobile-day-chips{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:none}.public-mobile-day-chips::-webkit-scrollbar{display:none}.public-mobile-day-chips button{min-width:74px;min-height:48px;border:1px solid #dde3ea;border-radius:8px;background:#fff;color:var(--color-text-muted);display:grid;gap:1px;padding:8px 11px;text-align:center}.public-mobile-day-chips button.active{border-color:color-mix(in srgb,var(--public-brand-color) 28%,#dde3ea);background:color-mix(in srgb,var(--public-brand-color) 10%,#ffffff);color:color-mix(in srgb,var(--public-brand-color) 82%,#14181f);box-shadow:none}.public-mobile-day-chips span{font-size:11px;font-weight:780}.public-mobile-day-chips strong{font-size:13px}.public-mobile-day-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border:1px solid #dde3ea;border-radius:8px;background:#fff;padding:13px 14px;box-shadow:none}.public-mobile-day-heading span{color:var(--color-text);font-size:18px;font-weight:880}.public-mobile-day-heading strong{color:var(--color-text-muted);font-size:12px}.public-mobile-timeline-list{position:relative;display:grid;gap:12px;padding:10px 0 0 24px}.public-mobile-timeline-list:before{position:absolute;top:14px;bottom:12px;left:7px;width:2px;border-radius:999px;background:#dce5ee;content:""}.public-mobile-time-marker{position:absolute;top:21px;left:-22px;width:12px;height:12px;border:3px solid #ffffff;border-radius:999px;background:var(--public-class-color);box-shadow:0 0 0 1px color-mix(in srgb,var(--public-class-color) 46%,#ffffff)}@media (max-width: 860px){.public-calendar-desktop,.public-class-preview{display:none}.public-mobile-timeline{display:grid;gap:12px}.public-schedule-shell{background:#f6f7f9}.public-schedule-compact-header h1{font-size:28px}.public-class-card{position:relative;grid-template-columns:1fr;border-color:#dde3ea;border-radius:8px;background:#fff;box-shadow:none;padding:14px 14px 14px 19px}.public-class-main{grid-template-columns:1fr;gap:7px}.public-class-main strong{font-size:18px}.public-class-time{width:fit-content;background:#f8fafc;color:#0f172a}.public-class-footer{align-items:flex-start;justify-content:space-between}.public-class-footer .primary-button,.public-class-footer .secondary-button{margin-left:auto}.public-class-modal{align-self:end;width:min(100%,680px);max-height:88vh;border-radius:8px 8px 0 0}}.status-green{border-color:color-mix(in srgb,var(--swiplo-success) 24%,var(--swiplo-border));background:var(--swiplo-success-soft);color:var(--swiplo-success)}.status-yellow{border-color:color-mix(in srgb,var(--swiplo-warning) 24%,var(--swiplo-border));background:var(--swiplo-warning-soft);color:var(--swiplo-warning)}.status-red{border-color:color-mix(in srgb,var(--swiplo-danger) 24%,var(--swiplo-border));background:var(--swiplo-danger-soft);color:var(--swiplo-danger)}.status-blue{border-color:color-mix(in srgb,var(--swiplo-info) 24%,var(--swiplo-border));background:var(--swiplo-info-soft);color:var(--swiplo-info)}.status-blue.selected{border-color:color-mix(in srgb,var(--swiplo-info) 38%,var(--swiplo-border));background:color-mix(in srgb,var(--swiplo-info-soft) 70%,#ffffff);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--swiplo-info) 24%,var(--swiplo-border))}.status-neutral{border-color:var(--color-border-soft);background:#f8fafc;color:#526073}.confirm-status{display:inline-grid;width:22px;height:22px;place-items:center;border:1px solid var(--color-border-soft);border-radius:999px;font-size:12px;font-weight:850;line-height:1}.confirm-ok{border-color:#b9d9c6;background:#f1faf4;color:#2f6c47}.confirm-pending{border-color:#d6dbe4;background:#f8fafc;color:#7a8799}.confirm-no{border-color:#e9b5be;background:#fff5f7;color:#a5263d}.confirm-trial{border-color:#b7cbe5;background:#f1f6fd;color:#315f92}.mini-action{min-height:24px;border:1px solid var(--color-border-soft);border-radius:999px;background:#fff;color:#425066;cursor:default;font-size:11px;font-weight:760;padding:4px 8px}.presence-cell{display:flex;align-items:center;justify-content:center;gap:5px}.presence-toggle{display:inline-flex;align-items:center;width:38px;min-width:38px;height:22px;border:1px solid var(--color-border);border-radius:999px;background:#f8fafc;color:#536174;cursor:default;padding:2px}.presence-toggle span{display:block;width:16px;height:16px;border-radius:999px;background:#c6cfda;box-shadow:inset 0 0 0 1px #0000000a;transition:transform .14s ease,background .14s ease}.presence-toggle.on{border-color:#b9d9c6;background:#f1faf4;color:#2f6c47}.presence-toggle.on span{background:#4d9b6a;transform:translate(16px)}.attention-dot{display:inline-grid;width:17px;height:17px;align-items:center;place-items:center;border-radius:999px;background:#fff5f7;color:#a5263d;font-size:10px;font-weight:780;line-height:1}.row-action{border-color:var(--color-border-soft);color:#425066}.reception-dashboard-class-title-link{max-width:100%;cursor:pointer;padding:0;text-align:left}.reception-dashboard-class-title-link:disabled{cursor:default;color:var(--color-text-muted);text-decoration:none}.instructor-dashboard-class-title-link{max-width:100%;cursor:pointer;padding:0;text-align:left}.instructor-dashboard-class-title-link:disabled{cursor:default;color:var(--color-text-muted);text-decoration:none}tr:last-child td{border-bottom:0}.week-grid{display:grid;grid-template-columns:repeat(5,minmax(180px,1fr));gap:10px;overflow-x:auto}.day-column{display:grid;align-content:start;gap:9px;min-height:330px;padding:12px}.day-column h3{margin:0 0 3px;font-size:16px}.lesson-card{display:grid;gap:5px;border-left:3px solid #cfd8e3;border-radius:7px;background:var(--color-surface-muted);padding:9px}.lesson-card time{color:var(--color-brand-primary);font-weight:830}.lesson-card span{font-size:13px}.internal-schedule-header-actions,.internal-schedule-toolbar,.internal-schedule-branch-bar,.internal-schedule-filters{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.internal-schedule-header-actions{justify-content:flex-end}.internal-schedule-toolbar{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:8px;justify-content:space-between;padding:12px}.internal-schedule-week-title{display:grid;gap:2px}.internal-schedule-week-title span{color:var(--color-text-muted);font-size:12px}.internal-schedule-week-title strong{font-size:15px}.internal-schedule-week-actions{display:flex;flex-wrap:wrap;gap:8px}.internal-schedule-branch-bar{background:var(--color-surface-muted);border:1px solid var(--color-border-soft);border-radius:8px;padding:8px}.internal-schedule-branch-bar button{background:#fff;border:1px solid var(--color-border-soft);border-radius:999px;color:var(--color-text);cursor:pointer;font:inherit;font-size:13px;font-weight:760;min-height:34px;padding:7px 12px}.internal-schedule-branch-bar button.active{background:#0f172a;border-color:#0f172a;color:#fff}.internal-schedule-filters{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:8px;padding:12px}.internal-schedule-filters label{color:var(--color-text-muted);display:grid;flex:1 1 180px;font-size:12px;font-weight:760;gap:5px}.internal-schedule-filters select{background:#fff;border:1px solid var(--color-border-soft);border-radius:8px;color:var(--color-text);font:inherit;min-height:38px;padding:8px 10px}.internal-schedule-readonly-filter{align-items:center;background:#fff;border:1px solid var(--color-border-soft);border-radius:8px;color:var(--color-text);display:flex;font-size:13px;font-weight:760;min-height:38px;padding:8px 10px}.internal-schedule-week-grid{display:grid;gap:10px;grid-template-columns:repeat(7,minmax(188px,1fr));overflow-x:auto;overflow-y:visible;padding-bottom:170px}.internal-schedule-day-column{align-content:start;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:8px;display:grid;gap:10px;min-height:340px;overflow:visible;padding:10px}.internal-schedule-day-column header{align-items:baseline;display:flex;justify-content:space-between;gap:8px}.internal-schedule-day-column header span{font-size:14px;font-weight:820}.internal-schedule-day-column header strong{color:var(--color-text-muted);font-size:12px}.internal-schedule-day-list{display:grid;gap:7px;overflow:visible}.internal-schedule-empty-day{background:var(--color-surface-muted);border:1px dashed var(--color-border-soft);border-radius:8px;color:var(--color-text-muted);font-size:12px;margin:0;padding:8px}.internal-schedule-class-card{border:1px solid var(--color-border-soft);border-left:3px solid var(--color-brand-primary);border-radius:8px;background:#fff;display:grid;gap:6px;padding:8px;position:relative;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;z-index:1}.internal-schedule-class-card:hover,.internal-schedule-class-card:focus,.internal-schedule-class-card:focus-within{border-color:#ee264957;box-shadow:0 16px 36px #0f172a2e;outline:none;transform:translateY(-1px);z-index:45}.internal-schedule-class-main{display:grid;gap:5px}.internal-schedule-compact-heading{display:block}.internal-schedule-class-main time{color:var(--color-brand-primary);display:block;font-size:12px;font-weight:840;line-height:1.2;white-space:nowrap}.internal-schedule-class-main strong{font-size:13px;line-height:1.25}.internal-schedule-compact-meta{color:var(--color-text-muted);display:flex;flex-wrap:wrap;gap:3px 7px;line-height:1.3}.internal-schedule-compact-meta span{align-items:center;display:inline-flex;font-size:11px;min-width:0}.internal-schedule-compact-meta span+span:before{color:#c7d2df;content:"·";margin-right:7px}.internal-schedule-hover-layer{background:#fff;border:1px solid rgb(238 38 73 / 20%);border-radius:0 0 8px 8px;box-shadow:0 18px 36px #0f172a29;display:none;gap:8px;left:-1px;padding:9px;position:absolute;right:-1px;top:calc(100% - 2px);z-index:46}.internal-schedule-class-card:hover .internal-schedule-hover-layer,.internal-schedule-class-card:focus .internal-schedule-hover-layer,.internal-schedule-class-card:focus-within .internal-schedule-hover-layer{display:grid}.internal-schedule-hover-meta{display:grid;gap:6px;margin:0}.internal-schedule-hover-meta div{display:grid;gap:2px}.internal-schedule-hover-meta dt{color:var(--color-text-muted);font-size:10px;font-weight:780;text-transform:uppercase}.internal-schedule-hover-meta dd{font-size:12px;margin:0}.internal-schedule-badges,.internal-schedule-hover-actions{display:flex;flex-wrap:wrap;gap:6px}.internal-schedule-hover-actions .row-action{font-size:12px;min-height:30px;padding:5px 8px}.internal-schedule-hover-actions .row-action:disabled{opacity:.58}@media (max-width: 900px){.internal-schedule-toolbar{align-items:stretch;flex-direction:column}.internal-schedule-week-actions .secondary-button,.internal-schedule-header-actions .secondary-button{flex:1 1 150px}}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(118px,1fr));gap:7px;overflow-x:auto}.calendar-cell{display:grid;align-content:start;gap:8px;min-height:94px;padding:9px}.calendar-cell.has-event{border-color:#ee264938;background:#fffafb}.calendar-cell strong{color:var(--color-text-muted);font-size:13px}.calendar-cell span{color:var(--color-text);font-size:13px;line-height:1.35}.news-list{display:grid;gap:10px}.news-row{grid-template-columns:64px minmax(0,1fr) auto auto auto}.news-row p{margin:6px 0 0;color:var(--color-text-muted);font-size:13px}.news-admin-list,.news-admin-form,.news-admin-preview,.client-news-list{display:grid;gap:10px}.client-news-panel{display:grid;gap:10px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:12px;box-shadow:0 1px #fffc inset}.news-admin-card,.news-admin-form-card{border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;box-shadow:0 12px 32px #0f172a0d}.news-admin-card-header,.news-admin-form-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--color-border-soft)}.news-admin-card-header>div,.news-admin-form-header>div{position:relative;padding-left:12px}.news-admin-card-header>div:before,.news-admin-form-header>div:before{position:absolute;top:2px;left:0;width:4px;height:22px;border-radius:999px;background:var(--swiplo-brand-accent);content:""}.news-admin-card-header h2,.news-admin-form-header h2{margin:0;color:var(--color-text-main);font-size:18px}.news-admin-card-header p,.news-admin-form-header p{margin:4px 0 0;color:var(--color-text-muted);font-size:13px;line-height:1.35}.news-admin-table{overflow:hidden;background:#fff}.news-admin-header,.news-admin-row{display:grid;grid-template-columns:44px 96px minmax(220px,1.4fr) 112px 150px 128px 112px 118px;align-items:center;gap:10px;padding:10px 12px}.news-admin-header{background:var(--color-surface-muted);color:var(--color-text-muted);font-size:11px;font-weight:800;text-transform:uppercase}.news-admin-row{border-top:1px solid var(--color-border-soft);color:var(--color-text);font-size:13px;min-height:66px}.news-admin-row strong,.client-news-card strong{color:var(--color-text-main)}.news-admin-row small{display:block;margin-top:3px;color:var(--color-text-muted);font-size:12px;line-height:1.35}.news-admin-thumbnail{display:grid;width:72px;height:44px;place-items:center;overflow:hidden;border:1px solid var(--color-border-soft);border-radius:7px;background:var(--color-surface-muted);color:var(--color-text-muted);font-size:11px;font-weight:760;text-align:center}.news-admin-thumbnail img{width:100%;height:100%;object-fit:cover}.news-admin-muted-stat{color:var(--color-text-muted);font-weight:800}.news-admin-actions-menu{position:relative;justify-self:end}.news-admin-actions-menu summary{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border:1px solid var(--color-border);border-radius:7px;color:var(--color-text);font-size:12px;font-weight:800;cursor:pointer;list-style:none}.news-admin-actions-menu summary::-webkit-details-marker{display:none}.news-admin-actions-menu[open] summary{border-color:var(--swiplo-brand-accent-border);color:var(--swiplo-brand-accent-text);background:var(--swiplo-brand-accent-soft)}.news-admin-actions-menu div{position:absolute;right:0;z-index:12;display:grid;gap:4px;min-width:170px;margin-top:6px;padding:7px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;box-shadow:0 18px 40px #0f172a24}.news-admin-actions-menu .text-button{justify-content:flex-start;text-align:left}.news-admin-state{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:94px;padding:16px;color:var(--color-text-muted);font-size:14px}.news-admin-state div{display:grid;gap:4px}.news-admin-state strong{color:var(--color-text-main)}.news-admin-state span{color:var(--color-text-muted)}.news-admin-state.is-error,.news-admin-state.is-error span{color:var(--color-danger)}.news-admin-form label{display:grid;gap:5px;color:var(--color-text);font-size:12px;font-weight:800}.news-admin-form input,.news-admin-form select,.news-admin-form textarea{width:100%;min-height:40px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);font:inherit;padding:9px 10px}.news-admin-form select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--color-text-muted) 50%),linear-gradient(135deg,var(--color-text-muted) 50%,transparent 50%);background-position:calc(100% - 16px) 17px,calc(100% - 11px) 17px;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:32px}.news-admin-form textarea{resize:vertical}.news-admin-form-view{display:grid;gap:12px;width:min(100%,940px);margin:0 auto}.news-admin-form-card{padding:0}.news-admin-form-card>.config-message,.news-admin-form-card>.news-admin-field-stack,.news-admin-form-card>.news-admin-body-field{margin:14px 16px 0}.news-admin-field-stack{display:grid;gap:14px}.news-admin-form small{color:var(--color-text-muted);font-size:11px;font-weight:650;line-height:1.35}.news-admin-form small .status-pill{margin-left:4px}.news-admin-file-field{display:grid;gap:6px;color:var(--color-text);font-size:12px;font-weight:800}.news-admin-file-control{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.news-admin-file-control label{display:inline-flex;width:auto;cursor:pointer}.news-admin-file-control input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.news-admin-file-control>span{color:var(--color-text-muted);font-size:13px;font-weight:650}.news-admin-cover-field{display:grid;grid-template-columns:minmax(168px,220px) 1fr;gap:12px;align-items:center}.news-admin-cover-preview{display:grid;min-height:124px;place-items:center;overflow:hidden;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);color:var(--color-text-muted);font-size:12px;font-weight:750}.news-admin-cover-preview img{width:100%;height:124px;object-fit:cover}.news-admin-body-field{display:grid;gap:6px}.news-admin-editor{overflow:hidden;border:1px solid var(--color-border);border-radius:8px;background:#fff}.news-admin-editor-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:8px;border-bottom:1px solid var(--color-border-soft);background:linear-gradient(180deg,#ffffff,var(--color-surface-muted))}.news-admin-editor-toolbar button{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 8px;border:1px solid var(--color-border);border-radius:6px;background:#fff;color:var(--color-text);font-size:12px;font-weight:800;line-height:1;white-space:nowrap;box-shadow:0 1px 2px #0f172a0a}.news-admin-editor-toolbar button:hover,.news-admin-editor-toolbar button:focus-visible,.news-admin-editor-toolbar button.is-active{border-color:var(--swiplo-brand-accent-border);color:var(--color-text-main);background:#fff;box-shadow:inset 0 -2px 0 var(--swiplo-brand-accent),0 0 0 2px var(--swiplo-brand-accent-soft);outline:none}.news-admin-editor-toolbar button:focus-visible{box-shadow:inset 0 -2px 0 var(--swiplo-brand-accent),0 0 0 3px var(--swiplo-brand-accent-soft)}.news-admin-editor textarea{border:0;border-radius:0;min-height:260px}.news-admin-active-control{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:10px 12px;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted)}.news-admin-active-control>span{display:grid;gap:2px;color:var(--color-text);font-size:12px;font-weight:800}.news-admin-form-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:16px;padding:14px 16px;border-top:1px solid var(--color-border-soft);background:var(--color-surface-muted)}.news-admin-preview{color:var(--color-text);line-height:1.55}.news-admin-preview span,.client-news-card span{color:var(--color-text-muted);font-size:12px;font-weight:760}.news-admin-preview h3{margin:0;color:var(--color-text-main)}.news-admin-preview-event,.client-news-event-card{display:grid;gap:6px;margin-top:8px;padding:10px;border:1px solid var(--swiplo-brand-accent-border);border-radius:8px;background:var(--swiplo-brand-accent-soft)}.news-admin-preview-event strong,.client-news-event-card strong{color:var(--color-text-main)}.news-admin-preview-event p,.client-news-event-card p{margin:0}.news-admin-notification-modal{display:grid;gap:14px;color:var(--color-text)}.news-admin-notification-modal header{position:relative;display:grid;gap:3px;padding-left:12px}.news-admin-notification-modal header:before{position:absolute;top:2px;left:0;width:4px;height:30px;border-radius:999px;background:var(--swiplo-brand-accent);content:""}.news-admin-notification-modal header span,.news-admin-notification-recipients>span{color:var(--color-text-muted);font-size:12px;font-weight:800;text-transform:uppercase}.news-admin-notification-modal h3{margin:0;color:var(--color-text-main);font-size:18px}.news-admin-notification-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.news-admin-notification-summary>div{display:grid;gap:3px;padding:10px;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted)}.news-admin-notification-summary span,.news-admin-notification-note,.news-admin-notification-recipients li span{color:var(--color-text-muted);font-size:12px;font-weight:700}.news-admin-notification-summary strong{color:var(--color-text-main);font-size:15px}.news-admin-notification-recipients{display:grid;gap:8px}.news-admin-notification-recipients ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.news-admin-notification-recipients li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff}.news-admin-notification-recipients li strong{color:var(--color-text-main);font-size:13px}.news-admin-notification-note{margin:0;padding:10px;border:1px solid var(--swiplo-brand-accent-border);border-radius:8px;background:var(--swiplo-brand-accent-soft)}.news-admin-notification-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.client-news-event-card .secondary-button{justify-self:start;margin-top:2px}.client-news-card .client-news-event-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:2px}.client-news-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:12px}.client-news-card div{display:grid;gap:5px}.client-news-card p{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.45}.client-news-thumbnail{width:92px;height:62px;border-radius:8px;object-fit:cover;border:1px solid var(--color-border-soft);background:var(--color-surface-muted)}.client-news-thumbnail.is-compact{width:100%;max-width:180px;height:84px}@media (max-width: 980px){.news-admin-table{overflow-x:auto}.news-admin-header,.news-admin-row{min-width:900px}}@media (max-width: 640px){.news-admin-card-header,.news-admin-form-header,.news-admin-state{align-items:stretch;flex-direction:column}.client-news-card{grid-template-columns:1fr}.client-news-thumbnail{width:100%;height:140px}}.sent-notifications-view{display:grid;gap:12px}.history-send-actions,.sent-notifications-filter-toolbar,.sent-notifications-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.history-send-actions,.sent-notifications-filter-toolbar{justify-content:flex-end}.sent-notifications-summary{justify-content:space-between}.sent-notifications-summary p{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;margin:0;color:var(--color-text-muted);font-size:12px;line-height:1.45}.sent-notifications-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.sent-notification-metric-card{display:grid;gap:3px;border:1px solid var(--color-border-soft);border-left:3px solid var(--swiplo-brand-accent);border-radius:8px;background:#fff;padding:9px}.sent-notification-metric-card span,.sent-notification-metric-card small{color:var(--color-text-muted);font-size:11px;font-weight:760}.sent-notification-metric-card strong{color:var(--color-text);font-size:18px;line-height:1.1}.sent-notifications-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.sent-notifications-filter-grid label{display:grid;gap:5px}.sent-notifications-filter-grid span{display:inline-flex;align-items:center;gap:5px;color:var(--color-text-muted);font-size:11px;font-weight:780;text-transform:uppercase}.sent-notifications-filter-grid input,.sent-notifications-filter-grid select{min-width:0;width:100%;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);font-size:12px;font-weight:680;min-height:34px;padding:7px 9px}.sent-notifications-date-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.sent-notifications-table-header{display:grid;gap:8px}.sent-notifications-type-chips{display:flex;flex-wrap:wrap;gap:6px}.sent-notifications-type-chips span{border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:11px;font-weight:760;padding:4px 7px}.sent-notifications-table-shell table{min-width:980px}.sent-notification-subtext{display:block;margin-top:3px;color:var(--color-text-muted);font-size:11px;font-weight:650}.sent-notifications-table-shell .settings-empty-state{margin:0}.sent-notification-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sent-notification-body-preview{display:grid;gap:6px;margin-top:12px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:10px}.sent-notification-body-preview strong{color:var(--color-text);font-size:12px}.sent-notification-body-preview p{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.45}@media (max-width: 1100px){.sent-notifications-metrics,.sent-notifications-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 720px){.sent-notifications-metrics,.sent-notifications-filter-grid,.sent-notification-details-grid{grid-template-columns:1fr}}.thumb{display:grid;width:54px;height:42px;place-items:center;border-radius:7px;border:1px solid var(--color-border);background:#f0f3f7;color:#66758a;font-weight:850}.composer,.demo-form{display:grid;gap:12px}.group-enrollment-form,.student-create-form{display:grid;gap:10px}.students-view{display:grid;gap:12px;overflow:visible}.students-header-actions,.student-filter-heading-actions{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px}.compact-page-hero .hero-actions:has(.student-list-actions-row){max-width:min(760px,62vw);min-width:0}.compact-page-hero .hero-actions:has(.group-details-page-badges){max-width:min(520px,46vw);min-width:0}.student-list-actions-row{flex-wrap:nowrap;gap:6px}.student-list-actions-row .primary-button,.student-list-actions-row .secondary-button{min-height:30px;border-radius:8px;font-size:12px;line-height:1.1;padding:6px 9px;white-space:nowrap}.student-list-actions-row .secondary-button:disabled{cursor:default;opacity:.58}.students-filter-panel{display:grid;min-width:0;gap:8px;padding:10px}.students-filter-heading{align-items:center}.students-filter-heading>div{display:grid;gap:2px}.students-filter-heading>.student-filter-heading-actions{display:flex;flex-wrap:nowrap;justify-self:end}.students-filter-heading>div>span{color:var(--color-text-muted);font-size:11px;font-weight:760}.student-filter-toggle{display:inline-flex;align-items:center;gap:6px}.student-filter-clear{min-height:30px}.student-filter-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:7px 10px}.student-filter-search-fields{display:grid;min-width:0;grid-column:1 / -1;grid-template-columns:repeat(4,minmax(118px,1fr)) auto;align-items:end;gap:6px}.student-filter-search-fields label{display:grid;min-width:0;gap:4px;color:var(--color-text-muted);font-size:11px;font-weight:820;letter-spacing:0;text-transform:uppercase}.student-filter-search-fields input{width:100%;min-width:0;box-sizing:border-box;border:1px solid rgb(203 213 225 / 78%);border-radius:8px;background:#ffffffe0;color:var(--color-text);font:inherit;font-size:12px;min-height:30px;padding:6px 8px}.student-filter-submit{justify-self:start;min-height:30px}.student-filter-group{display:grid;min-width:0;gap:6px}.student-filter-group>span{color:var(--color-text-muted);font-size:11px;font-weight:820;letter-spacing:0;text-transform:uppercase}.student-filter-options{display:flex;min-width:0;flex-wrap:wrap;gap:6px}.student-filter-tile{display:inline-flex;min-height:28px;align-items:center;justify-content:center;border:1px solid rgb(203 213 225 / 78%);border-radius:999px;background:#ffffffc7;color:var(--color-text);cursor:pointer;font:inherit;font-size:11px;font-weight:780;line-height:1.15;padding:5px 9px;box-shadow:0 1px #ffffffb8 inset}.student-filter-tile:hover:not(:disabled){background:#fffffff5;box-shadow:0 1px #ffffffbd inset,0 8px 18px #0f172a0d}.student-filter-tile.is-active{border-color:#ee264952;background:#fff7f9;color:var(--color-brand-primary);box-shadow:0 1px #ffffffc7 inset,0 8px 22px #ee264912}.student-modern-form{gap:12px}.student-create-action-modal{grid-template-rows:auto minmax(0,1fr);width:min(900px,calc(100vw - 48px));max-height:calc(100vh - 48px);gap:12px;overflow:hidden;padding:16px}.student-create-action-modal .student-modern-form{max-width:none;min-height:0;overflow-y:auto;padding-right:2px}.student-create-modal-footer{margin-top:2px}.student-form-section,.student-modal-section,.student-profile-overview-card{min-width:0}.student-modern-form .form-grid{gap:8px}.student-modern-form .student-type-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.student-create-form .student-type-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.student-profile-type-card{display:grid;gap:4px;text-align:left}.student-profile-type-card span{display:flex;align-items:center;gap:5px;color:var(--color-text-muted);font-size:12px;font-weight:680;line-height:1.35}.student-create-form .student-profile-type-card{min-height:54px;align-content:center;gap:2px;border-color:#cbd5e1bd;border-radius:9px;background:#fff;color:var(--color-text);padding:8px 9px;box-shadow:none}.student-create-form .student-profile-type-card:hover:not(:disabled){border-color:#ee26493d;background:snow}.student-create-form .student-profile-type-card.selected{border-color:#ee264952;background:#fff9fb;color:var(--color-text);box-shadow:inset 0 -2px #ee2649c2}.student-create-form .student-profile-type-card strong{color:var(--color-text);font-size:12.5px;font-weight:780;line-height:1.2}.student-create-form .student-profile-type-card.selected strong{color:var(--color-brand-primary)}.student-create-form .student-profile-type-card span{display:block;color:var(--color-text-muted);font-size:11px;font-weight:650;line-height:1.25}.student-modern-tooltip{display:inline-flex;margin-left:5px;vertical-align:middle}.student-create-form .student-profile-type-card.is-disabled,.student-profile-type-card.is-disabled{cursor:default;opacity:.62}.student-create-action-modal .student-create-modal-footer{position:sticky;z-index:2;bottom:0;margin:0;background:linear-gradient(180deg,#ffffffdb,#fff 52%);padding:12px 0 0}.student-modern-note{margin:0;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;color:var(--color-text-muted);font-size:12px;font-weight:650;line-height:1.45;padding:9px 10px}.student-child-preview-card{display:grid;gap:3px;border:1px solid var(--color-border-soft);border-radius:10px;background:#fff;padding:10px}.student-child-preview-card strong{color:var(--color-text);font-size:13px;font-weight:820}.student-child-preview-card span{color:var(--color-text-muted);font-size:12px;font-weight:650}.student-form-actions{justify-content:flex-end}.students-list-section{overflow:visible}.students-list-section .table-shell{overflow:visible;border-color:var(--color-border-soft);background:#fff}.students-list-heading{margin-bottom:8px}.student-page-size-field{display:inline-grid;min-width:92px;gap:4px;color:var(--color-text-muted);font-size:11px;font-weight:820;letter-spacing:0;text-transform:uppercase}.student-page-size-field .swiplo-form-select{min-height:30px;font-size:12px;padding:5px 28px 5px 8px}.student-list-page-actions{display:inline-flex;min-width:0;align-items:center;gap:6px;color:var(--color-text-muted);font-size:12px;font-weight:760}.student-list-page-actions .secondary-button{min-height:30px;border-radius:8px;font-size:12px;line-height:1.1;padding:6px 9px}.students-list-section table{min-width:1120px;table-layout:fixed}.students-list-section th:nth-child(2),.students-list-section td:nth-child(2){width:250px}.students-list-section th:nth-child(3),.students-list-section td:nth-child(3){width:205px}.students-list-section th:nth-child(4),.students-list-section td:nth-child(4){width:330px}.students-list-section th:nth-child(5),.students-list-section td:nth-child(5),.students-list-section th:nth-child(6),.students-list-section td:nth-child(6),.students-list-section th:nth-child(7),.students-list-section td:nth-child(7){width:82px}.students-list-section th:nth-child(8),.students-list-section td:nth-child(8){width:88px}.student-list-person{display:grid;min-width:0;gap:3px}.student-list-name-line{display:inline-flex;min-width:0;align-items:center;gap:6px}.student-list-person strong,.student-list-person span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-list-person span{color:var(--color-text-muted);font-size:12px;font-weight:650}.student-list-child-lines{display:grid;gap:2px;margin:4px 0 0;padding:0;list-style:none}.student-list-child-lines li{display:grid;min-width:0;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:5px}.student-list-child-lines li>span:last-child{display:grid;min-width:0;gap:1px}.student-list-child-lines a,.student-list-child-lines strong,.student-list-child-lines small{min-width:0;overflow:visible;color:var(--color-text-muted);font-size:11px;font-weight:720;text-overflow:clip;white-space:nowrap}.student-list-child-lines a{color:var(--color-text-muted);text-decoration:none}.student-list-child-lines a:hover{color:var(--color-brand-primary-dark);text-decoration:underline;text-decoration-color:#ee264942;text-underline-offset:3px}.student-list-child-lines small{color:#7b8794;font-weight:650}.student-mobile-app-icon{display:inline-flex;flex:0 0 auto;width:15px;height:15px;align-items:center;justify-content:center;border:1px solid rgb(59 130 246 / 32%);border-radius:4px;background:#eff6ff;color:#2563eb}.student-mobile-app-icon:before{width:5px;height:8px;border:1.5px solid currentColor;border-radius:2px;content:""}.student-list-type-compact{display:inline-flex;align-items:center;min-height:22px;color:var(--color-text-muted);font-size:11px;font-weight:780;gap:4px}.student-list-type-pill{border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;padding:4px 8px}.student-contact-lines{display:grid;min-width:0;gap:4px}.student-contact-lines>span{display:inline-flex;min-width:0;align-items:center;gap:6px;color:var(--color-text-muted);font-size:12px;font-weight:680;line-height:1.25}.student-contact-lines>span>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-contact-lines.is-empty{color:var(--color-text-muted);font-size:12px;font-weight:680}.student-contact-icon{display:inline-flex;flex:0 0 auto;width:15px;height:15px;align-items:center;justify-content:center;color:#64748b}.student-contact-icon svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;fill:none}.student-active-status-icon{display:inline-grid;width:22px;height:22px;place-items:center;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:#64748b}.student-active-status-icon>span{position:relative;display:inline-block;width:10px;height:10px}.student-active-status-icon.is-active{border-color:#cfe8dc;background:#f4f8f6;color:#3e7464}.student-active-status-icon.is-active>span:before{position:absolute;left:1px;top:1px;width:7px;height:4px;border-bottom:2px solid currentColor;border-left:2px solid currentColor;content:"";transform:rotate(-45deg)}.student-active-status-icon.is-inactive>span:before,.student-active-status-icon.is-inactive>span:after{position:absolute;left:1px;top:4px;width:8px;height:2px;border-radius:999px;background:currentColor;content:""}.student-active-status-icon.is-inactive>span:before{transform:rotate(45deg)}.student-active-status-icon.is-inactive>span:after{transform:rotate(-45deg)}.student-list-pass-cell{display:grid;min-width:0;justify-items:start;gap:3px}.student-list-pass-cell strong{color:var(--color-text);font-size:12px;font-weight:850}.student-list-pass-cell small{color:var(--color-text-muted);font-size:11px;font-weight:650}.student-list-pass-cell.is-empty{display:inline-flex;color:var(--color-text-muted);font-size:12px;font-weight:680}.student-list-operations{display:grid;min-width:0;gap:6px}.student-list-operation-line{display:grid;min-width:0;gap:3px;border-bottom:1px solid rgb(226 232 240 / 70%);padding-bottom:5px}.student-list-operation-line:last-child{border-bottom:0;padding-bottom:0}.student-pass-summary-main,.student-pass-summary-meta{display:grid;min-width:0;gap:3px}.student-pass-summary-main strong,.student-pass-summary-main span,.student-pass-summary-meta small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-pass-summary-main strong{color:var(--color-text);font-size:12px;font-weight:820}.student-pass-summary-main span,.student-pass-summary-meta small{color:var(--color-text-muted);font-size:11px;font-weight:680}.student-pass-summary-child,.student-pass-summary-meta{display:inline-flex;min-width:0;flex-wrap:wrap;align-items:center;gap:5px}.student-list-pass-chip{display:inline-flex;min-width:0;align-items:center;gap:4px;justify-self:start;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:#64748b;font-size:11px;font-weight:850;line-height:1;padding:4px 7px;white-space:nowrap}.student-list-pass-chip.tone-green{border-color:#cfe8dc;background:#f4f8f6;color:#3e7464}.student-list-pass-chip.tone-yellow{border-color:#e4d3a2;background:#fff9e8;color:#7a5c14}.student-list-pass-chip.tone-neutral{border-color:var(--color-border-soft);background:#f8fafc;color:#64748b}.student-list-pass-chip.tone-red{border-color:#ee26493d;background:#fff8fa;color:#a5263d}.student-list-pass-chip.is-empty{font-weight:800}.student-search-action-modal{width:min(560px,calc(100vw - 48px))}.student-search-modal-form{display:grid;gap:12px}.student-row-action-menu{position:relative;display:inline-flex;justify-content:flex-end}.student-row-action-menu summary{min-height:26px;border:1px solid var(--color-border-soft);border-radius:7px;background:#fff;color:var(--color-text);cursor:pointer;font-size:11px;font-weight:820;list-style:none;padding:4px 8px}.student-row-action-menu summary::-webkit-details-marker{display:none}.student-row-action-menu summary:after{color:var(--color-text-muted);content:" ▾"}.student-row-action-menu[open] summary{border-color:#ee264952;color:var(--color-brand-primary)}.student-row-action-menu>div{position:absolute;z-index:var(--z-action-menu);top:calc(100% + 5px);right:0;display:grid;width:184px;border:1px solid var(--color-border-soft);border-radius:10px;background:#fff;box-shadow:0 16px 36px #0f172a29;gap:3px;padding:6px}.student-row-action-menu button{min-height:28px;border:0;border-radius:7px;background:transparent;color:var(--color-text);cursor:pointer;font-size:12px;font-weight:730;text-align:left;padding:5px 7px}.student-row-action-menu button:hover{background:#f8fafc;color:var(--color-brand-primary)}.student-profile-enrollment-form{gap:10px}.student-profile-enrollment-choice-grid{display:grid;min-width:0;gap:7px}.student-profile-enrollment-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-profile-enrollment-choice-grid .small-choice-card strong{display:inline-flex;min-width:0;align-items:center;gap:6px}.student-profile-group-list-shell{max-height:246px;overflow:auto;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff}.student-profile-group-list{width:100%;min-width:720px;border-collapse:collapse}.student-profile-group-list th,.student-profile-group-list td{border-bottom:1px solid var(--color-border-soft);padding:7px 9px;text-align:left;vertical-align:middle}.student-profile-group-list th{position:sticky;z-index:1;top:0;background:#f8fafc;color:var(--color-text-muted);font-size:10px;font-weight:850;letter-spacing:0;text-transform:uppercase}.student-profile-group-list td{color:var(--color-text-muted);font-size:12px;font-weight:650}.student-profile-group-list tr[role=button]{cursor:pointer}.student-profile-group-list tbody tr:hover{background:snow}.student-profile-group-list tbody tr.selected{background:#fff7f9;box-shadow:inset 3px 0 #ee2649bd}.student-profile-group-list tbody tr[aria-disabled=true]{cursor:wait;opacity:.62}.student-profile-group-list tr:last-child td{border-bottom:0}.student-profile-group-list strong{display:block;max-width:210px;overflow:hidden;color:var(--color-text);font-size:13px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.student-profile-enrollment-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.student-profile-enrollment-summary span{display:grid;min-width:0;gap:2px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;color:var(--color-text);font-size:12px;font-weight:700;padding:8px 9px}.student-profile-enrollment-summary strong{color:var(--color-text-muted);font-size:11px;font-weight:820;text-transform:uppercase}.composer label,.group-enrollment-form label,.student-create-form label,.demo-form label,.demo-form fieldset{display:grid;gap:6px;margin:0;color:var(--color-text-muted);font-size:13px;font-weight:730}.composer input,.composer textarea,.group-enrollment-form input,.student-create-form input,.demo-form input,.demo-form select,.demo-form textarea{width:100%;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);padding:9px 10px}.form-grid{display:grid;gap:10px}.form-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.student-type-picker{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.student-picker-list{display:grid;gap:7px;grid-template-columns:repeat(2,minmax(0,1fr))}.student-picker-row{display:grid;gap:2px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);padding:8px 10px;text-align:left}.student-picker-row.selected{border-color:#ee26497f;background:#fff7f9;box-shadow:inset 0 0 0 1px #ee26491f}.student-picker-row span{color:var(--color-text-muted);font-size:12px}.student-search-field{display:grid;gap:6px}.student-search-results{display:grid;gap:6px;max-height:232px;overflow:auto;padding-right:4px}.student-search-result{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);padding:8px 10px;text-align:left}.student-search-result.selected{border-color:#ee26497f;background:#fff7f9;box-shadow:inset 0 0 0 1px #ee26491f}.student-search-result span:first-child{display:grid;gap:2px}.student-search-result small{color:var(--color-text-muted);font-size:12px}.student-search-result .guardian-enrollment-hint{color:#66758a;font-weight:700}.result-statuses,.selected-student-summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.selected-student-summary{justify-content:space-between;border:1px solid var(--color-border);border-radius:7px;background:#f8fafc;padding:8px 10px}.empty-search-state{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;border:1px dashed var(--color-border);border-radius:7px;padding:10px}.enrollment-options-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.inline-checkbox{display:inline-flex;align-items:center;gap:7px;color:var(--color-text);font-size:13px;font-weight:700}.inline-checkbox input{width:auto;margin:0}.duplicate-warning{display:grid;gap:4px;border:1px solid #f0d58e;border-radius:8px;background:#fffaf0;color:#7a5518;font-size:12px;padding:9px 10px}.duplicate-warning strong{color:#67430d}.composer textarea,.demo-form textarea{min-height:82px;resize:vertical}.demo-form fieldset{border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-muted);padding:10px}.demo-form fieldset label{display:flex;align-items:center;gap:8px;font-weight:600}.stack-list span,.chat-preview span{display:block;border:1px solid var(--color-border-soft);border-radius:7px;background:var(--color-surface-muted);padding:9px 10px;color:#536174;font-size:13px}.stack-list .status-pill{display:inline-flex;width:fit-content;max-width:100%;min-height:24px;padding:4px 8px;font-size:11px}.chat-preview p{margin-top:-6px;padding:0 3px 2px}.staff-profile{display:flex;gap:14px;align-items:flex-start}.staff-avatar{width:54px;height:54px;background:#243049;font-size:16px}.tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.config-tile{display:grid;gap:7px;min-height:118px;color:inherit;cursor:default;padding:13px;text-align:left}.config-tile.clickable{cursor:pointer}.config-tile.clickable:hover,.config-tile.clickable:focus-visible{border-color:#ee264952;outline:none;box-shadow:0 8px 20px #ee264914}.config-tile.disabled{opacity:.86}.config-tile span{width:fit-content;border-radius:999px;background:#eef2f7;color:#526073;font-size:11px;font-weight:780;padding:3px 8px;text-transform:uppercase}.config-tile.v2{border-color:#d9e1ea}.config-tile.v2 span{border:1px solid #b7cbe5;background:#f1f6fd;color:#315f92}.config-tile strong{font-size:15px}.config-tile p{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.45}.config-subnav,.section-inline-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.config-subnav{border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:8px 10px}.config-subnav>span{min-width:0;flex:1;color:var(--color-text-muted);font-size:13px;font-weight:700}.config-subnav-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.config-subnav-actions button:disabled{color:var(--color-text-muted);opacity:.62}.config-locations-view{position:relative;display:grid;gap:10px}.config-toast-layer{position:fixed;z-index:var(--z-toast);top:88px;right:18px;display:grid;gap:6px;width:min(420px,calc(100vw - 36px));pointer-events:none}.operational-toast-host{position:relative}.operational-toast-layer{top:88px;right:18px;width:min(360px,calc(100vw - 36px))}.config-toast-layer .pass-save-message,.config-toast-layer .api-state{margin:0;box-shadow:0 12px 28px #0f172a24;pointer-events:none}.config-locations-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:12px}.config-branch-list{display:grid;align-content:start;gap:8px}.config-branch-card{display:grid;gap:5px;width:100%;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:inherit;cursor:pointer;padding:10px;text-align:left}.config-branch-card:focus-visible{outline:2px solid rgb(238 38 73 / 34%);outline-offset:2px}.config-branch-main{color:inherit}.config-branch-card.selected{border-color:#ee26494d;background:#fff8fa}.config-branch-card strong{font-size:14px}.config-branch-card span{color:var(--color-text-muted);font-size:12px}.config-branch-card.is-archived,tr.is-archived{opacity:.62}.config-branch-card.is-archived{background:#f8fafc}.config-room-section{display:grid;align-content:start;gap:9px}.config-row-actions{display:flex;flex-wrap:wrap;gap:5px}.config-row-actions.inline{min-width:0;justify-content:flex-end}.config-row-actions button{min-width:0;min-height:24px;border:1px solid var(--color-border);border-radius:6px;background:#fff;color:#536174;cursor:pointer;font-size:11px;font-weight:760;padding:3px 6px}.config-row-actions .class-open-group-button,.class-open-group-button{min-width:0;min-height:24px;border:1px solid rgb(238 38 73 / 26%);border-radius:6px;border-color:#ee264942;background:#fff7f9;color:#be123c;cursor:pointer;font-size:11px;font-weight:760;padding:3px 6px}.classes-view{position:relative}.classes-page-hero{align-items:center}.classes-hero-title{min-width:0}.classes-hero-heading{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:8px}.classes-hero-heading h2{margin:3px 0 0}.class-visible-count,.class-filter-active-badge{display:inline-flex;min-height:22px;align-items:center;justify-content:center;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:11px;font-weight:820;line-height:1;padding:4px 8px}.classes-hero-actions{align-items:center;max-width:none}.class-filter-toggle{display:inline-flex;align-items:center;gap:6px}.class-filter-active-badge{min-width:20px;min-height:20px;border-color:#ee264938;background:#fff7f9;color:var(--color-brand-primary);padding:3px 7px}.classes-list{display:grid;gap:8px}.class-list-table-header,.class-row{display:grid;grid-template-columns:32px minmax(170px,1fr) minmax(200px,.9fr) minmax(130px,.55fr) minmax(112px,.45fr) minmax(82px,auto) minmax(170px,auto);gap:8px;align-items:center}.class-list-table-header{border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;color:var(--color-text-muted);font-size:10px;font-weight:840;letter-spacing:0;line-height:1;padding:7px 10px;text-transform:uppercase}.class-list-table-header span:nth-child(6),.class-list-table-header span:nth-child(7){justify-self:end;text-align:right}.class-row [data-column-label]:before{display:none;color:var(--color-text-muted);content:attr(data-column-label);font-size:10px;font-weight:840;letter-spacing:0;text-transform:uppercase}.class-list-filter-panel{position:relative;z-index:20;display:grid;gap:9px;overflow:visible;border:1px solid rgb(255 255 255 / 78%);border-radius:18px;background:#ffffffb8;box-shadow:0 12px 34px #0f172a0a;-webkit-backdrop-filter:blur(22px) saturate(1.04);backdrop-filter:blur(22px) saturate(1.04);padding:12px}.ui-glass-panel,.ui-filter-panel{border:1px solid rgb(255 255 255 / 78%);border-radius:18px;background:#ffffffb8;box-shadow:0 12px 34px #0f172a0a;-webkit-backdrop-filter:blur(22px) saturate(1.04);backdrop-filter:blur(22px) saturate(1.04)}.class-filter-panel-heading{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.class-filter-panel-heading strong{color:var(--color-text);font-size:13px;font-weight:840;line-height:1.2}.class-filter-panel-heading>span{color:var(--color-text-muted);font-size:11px;font-weight:800}.class-filter-panel-heading>div>span{display:block;margin-top:2px;color:var(--color-text-muted);font-size:11px;font-weight:800}.class-filter-search{display:block}.class-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:8px}.class-list-filter-panel label{display:grid;gap:4px;color:var(--color-text-muted);font-size:11px;font-weight:760}.class-list-filter-panel input,.class-list-filter-panel select{min-width:0;min-height:40px;border:1px solid rgb(203 213 225 / 84%);border-radius:11px;background:#ffffffc7;color:var(--color-text);font:inherit;font-size:13px;padding:9px 11px;box-shadow:0 1px #ffffffb8 inset}.class-list-filter-panel .public-filter-select,.ui-filter-field .public-filter-select{height:40px;min-height:40px}.class-filter-actions{display:flex;justify-content:flex-end}.class-filter-actions button{min-height:34px;border:1px solid rgb(203 213 225 / 78%);border-radius:10px;background:#ffffffc7;color:var(--color-text);cursor:pointer;font-size:12px;font-weight:780;padding:7px 11px;box-shadow:0 1px #ffffffb8 inset}.class-filter-actions button:hover:not(:disabled){background:#fffffff5;box-shadow:0 1px #ffffffbd inset,0 8px 18px #0f172a0d}.report-filter-grid{align-items:end}.report-list-toolbar{margin:0;min-width:0;max-width:100%}.report-list-toolbar>div:first-child{min-width:0}.report-list-actions{flex:0 1 auto;min-width:0;max-width:100%;align-items:center;gap:6px}.report-list-actions .primary-button,.report-list-actions .secondary-button{min-height:32px;white-space:nowrap}.report-exceptional-class-modal,.group-attendance-preview-modal{width:min(760px,100%)}.report-exceptional-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.report-exceptional-form .participant-action-modal-section>strong,.lesson-report-form-section>h3{margin:0;color:var(--color-text);font-size:14px;font-weight:840;line-height:1.2}.report-exceptional-section-grid,.lesson-report-field-grid{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.report-exceptional-wide{grid-column:1 / -1}.attendance-list-header{margin-top:-2px}.attendance-session-list-table{min-width:960px}.attendance-present-table{min-width:640px}.report-sessions-table{width:100%;min-width:1040px;table-layout:fixed}.reports-view-stack,.reports-view-stack>*{min-width:0;max-width:100%}.report-sessions-panel{min-width:0;max-width:100%}.reports-table-shell.work-table-shell{max-width:100%;overflow-x:auto;overflow-y:visible}.report-sessions-table .report-col-lp{width:44px}.report-sessions-table .report-col-datetime{width:116px}.report-sessions-table .report-col-group{width:190px}.report-sessions-table .report-col-location{width:132px}.report-sessions-table .report-col-instructor{width:150px}.report-sessions-table .report-col-participants{width:110px}.report-sessions-table .report-col-status{width:92px}.report-sessions-table .report-col-notes{width:132px}.report-sessions-table .report-col-actions{width:128px}.report-sessions-table th,.report-sessions-table td{overflow:hidden}.report-sessions-table th:last-child,.report-sessions-table td:last-child{overflow:visible}.report-sessions-table td:nth-child(8){overflow:visible}.report-sessions-table .report-icon-column-heading,.report-sessions-table .report-status-cell,.report-sessions-table .report-notes-cell{text-align:center}.report-sessions-table .report-status-cell,.report-sessions-table .report-notes-cell{overflow:visible}.report-sessions-table .report-group-link,.report-sessions-table .report-instructor-cell>span:first-child,.report-date-main,.report-location-main,.report-location-cell span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-row-actions{position:relative;display:flex;width:100%;min-width:0;align-items:center;gap:5px}.report-row-actions .compact-row-action{display:inline-flex;flex:1 1 auto;align-items:center;min-height:28px;justify-content:center;padding:5px 7px;white-space:nowrap}.report-primary-row-action{min-width:0}.report-row-action-menu{position:relative;flex:0 0 auto}.report-row-action-menu summary{display:inline-flex;min-height:28px;align-items:center;border:1px solid var(--color-border-soft);border-radius:7px;background:#fff;color:var(--color-text);cursor:pointer;font-size:11px;font-weight:780;line-height:1;list-style:none;padding:5px 7px}.report-row-action-menu summary::-webkit-details-marker{display:none}.report-row-action-menu[open] summary{border-color:#ee26493d;color:var(--color-brand-primary)}.report-row-action-menu>div{position:absolute;z-index:var(--z-action-menu);top:calc(100% + 5px);right:0;display:grid;width:min(190px,70vw);gap:3px;border:1px solid rgb(226 232 240 / 82%);border-radius:10px;background:#fffffff5;box-shadow:0 18px 44px #0f172a1f;padding:6px}.report-row-action-menu button{display:block;width:100%;border:0;border-radius:6px;background:transparent;color:var(--color-text);cursor:pointer;font:inherit;font-size:12px;font-weight:760;line-height:1.25;padding:6px 7px;text-align:left}.report-row-action-menu button:hover:not(:disabled){background:color-mix(in srgb,var(--color-brand-primary) 7%,#ffffff)}.report-row-action-menu .danger-menu-item{color:#b4233a}.report-row-action-menu .danger-menu-item:hover:not(:disabled){background:#fff5f7}.report-row-action-menu button:disabled{color:var(--color-text-muted);cursor:not-allowed}.report-status-markers{display:flex;min-width:0;flex-wrap:wrap;gap:4px;justify-content:center}.report-status-marker{display:inline-grid;width:22px;height:22px;place-items:center;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:#64748b;font-size:12px;font-weight:900;line-height:1}.report-status-marker.tone-green{border-color:#cfe8dc;background:#f4f8f6;color:#3e7464}.report-status-marker.tone-red{border-color:#ee26493d;background:#fff8fa;color:#a5263d}.report-status-marker.tone-blue{border-color:#cfe0f2;background:#f3f8ff;color:#2d628f}.report-status-marker.tone-yellow{border-color:#e4d3a2;background:#fff9e8;color:#7a5c14}.report-date-time-cell,.report-location-cell,.report-participants-cell{display:grid;min-width:0;gap:3px}.report-date-main,.report-location-main{color:var(--color-text-muted);font-size:12px;font-weight:600}.report-date-time-cell span,.report-location-cell span{color:var(--color-text-muted);font-size:11px;font-weight:560}.report-participants-cell span{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;color:var(--color-text-muted);font-size:11px;font-weight:720}.report-participant-value{color:#2563eb;font-size:12px;font-weight:560}.swiplo-tooltip{position:relative;display:inline-grid;place-items:center}.swiplo-tooltip-trigger{display:inline-grid;place-items:center}.report-notes-icon{display:inline-grid;width:24px;height:24px;place-items:center;border:1px solid var(--color-border-soft);border-radius:999px;background:#fff;color:var(--color-text-muted)}.swiplo-tooltip:hover .report-notes-icon,.swiplo-tooltip:focus-visible .report-notes-icon{border-color:#ee264947;color:var(--color-brand-primary)}.swiplo-tooltip:focus-visible{outline:none}.report-notes-icon svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.swiplo-tooltip-card{position:fixed;z-index:calc(var(--z-action-menu) + 1);top:var(--swiplo-tooltip-top, 0);left:var(--swiplo-tooltip-left, 0);display:grid;width:min(260px,58vw);gap:5px;border:1px solid rgb(226 232 240 / 86%);border-left:3px solid var(--swiplo-primary);border-radius:9px;background:#fffffffa;box-shadow:0 18px 44px #0f172a24;color:var(--color-text);line-height:1.35;opacity:0;padding:8px 10px;pointer-events:none;transform:translate(-50%,4px);visibility:hidden}.swiplo-tooltip-card-clamped{max-width:calc(100vw - 24px)}.swiplo-tooltip-card strong{color:var(--swiplo-primary);font-size:11px;font-weight:850;letter-spacing:0;text-transform:uppercase}.swiplo-tooltip-card span{color:var(--color-text);font-size:12px;font-weight:680;overflow-wrap:anywhere}.swiplo-tooltip:hover .swiplo-tooltip-card,.swiplo-tooltip:focus-visible .swiplo-tooltip-card,.swiplo-tooltip:focus-within .swiplo-tooltip-card{opacity:1;transform:translate(-50%);visibility:visible}.pass-activation-tooltip{flex:0 0 auto;margin-left:2px;text-decoration:none}.pass-activation-tooltip .pass-activation-tooltip-trigger{display:inline-grid;width:16px;height:16px;min-width:16px;min-height:16px;place-items:center;border:1px solid #e5eaf1;border-radius:999px;background:#fff;box-shadow:none;color:#7c8798;cursor:help;font-size:10px;font-weight:850;line-height:1;text-decoration:none}.pass-activation-tooltip:hover .pass-activation-tooltip-trigger,.pass-activation-tooltip:focus-visible .pass-activation-tooltip-trigger,.pass-activation-tooltip:focus-within .pass-activation-tooltip-trigger{border-color:#ee264947;color:var(--color-brand-primary)}.pass-activation-tooltip-card{width:max-content;min-width:min(400px,calc(100vw - 32px));max-width:min(440px,calc(100vw - 32px));white-space:normal!important}.pass-activation-tooltip-card span{overflow-wrap:normal;white-space:normal!important;word-break:normal}.report-notes-tooltip-card{width:min(260px,58vw)}.report-status-tooltip-card{width:max-content;min-width:150px;max-width:min(220px,52vw)}.report-empty-note{color:var(--color-text-muted)}.report-empty-note-centered{display:inline-flex;width:100%;justify-content:center}.lesson-report-header-actions{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px}.lesson-report-header-actions>button{min-height:32px;padding:7px 10px;white-space:nowrap}.lesson-report-header-status{display:flex;align-items:center;gap:5px;padding-right:2px}.lesson-report-panel.panel{gap:10px}.lesson-report-form{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:10px;align-items:start}.lesson-report-form-section{display:grid;min-width:0;gap:9px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fbfcfe;padding:10px}.lesson-report-session-section{grid-column:1 / -1}.lesson-report-info-grid{display:grid;min-width:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.lesson-report-info-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.lesson-report-info-tile,.lesson-report-field-note{display:grid;min-width:0;gap:4px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:8px 9px}.lesson-report-info-tile span,.lesson-report-field-note{color:var(--color-text-muted);font-size:11px;font-weight:760;line-height:1.25}.lesson-report-info-tile strong,.lesson-report-field-note strong{min-width:0;color:var(--color-text);font-size:13px;font-weight:840;line-height:1.25;overflow-wrap:anywhere}.lesson-report-info-tile small{color:var(--color-text-muted);font-size:11px;line-height:1.3}.lesson-report-field-grid label,.lesson-report-notes-field{display:grid;gap:4px;min-width:0;color:var(--color-text-muted);font-size:11px;font-weight:760}.lesson-report-field-grid input,.lesson-report-field-grid select,.lesson-report-notes-field textarea{width:100%;min-width:0;min-height:36px;border:1px solid rgb(203 213 225 / 84%);border-radius:8px;background:#fff;color:var(--color-text);font:inherit;font-size:13px;padding:8px 9px;box-shadow:0 1px #ffffffb8 inset}.lesson-report-notes-field textarea{min-height:86px;resize:vertical}.lesson-report-attendance-grid{align-items:start;grid-template-columns:minmax(0,1fr) auto minmax(0,1.3fr)}.lesson-report-attendance-grid .secondary-button{align-self:end;min-height:36px;white-space:nowrap}.lesson-report-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.lesson-report-metric-tile{display:grid;min-width:0;gap:3px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:7px 8px}.lesson-report-metric-tile span{color:var(--color-text-muted);font-size:11px;font-weight:720}.lesson-report-metric-tile strong{color:#2563eb;font-size:17px;font-weight:620;line-height:1.1}.lesson-report-inline-note{align-self:center;color:var(--color-text-muted);font-size:12px;line-height:1.35}.lesson-report-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.lesson-report-status-tile{display:grid;min-width:0;min-height:76px;align-content:center;gap:4px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;color:var(--color-text);cursor:pointer;font:inherit;padding:8px 9px;text-align:left}.lesson-report-status-tile span,.lesson-report-status-tile small{color:var(--color-text-muted);font-size:11px;font-weight:740;line-height:1.25}.lesson-report-status-tile strong{color:var(--color-text);font-size:13px;font-weight:840;line-height:1.25}.lesson-report-status-tile.is-active{border-color:#ee26493d;background:#fff8fa}.lesson-report-status-tile.is-blue{border-color:#cfe0f2;background:#f3f8ff}.lesson-report-status-tile.danger-outline-button{border-color:#ee264957;background:#fff;color:#a5263d;font-weight:820}.lesson-report-status-tile:not(button){cursor:default}.lesson-report-status-tile:disabled{cursor:not-allowed;opacity:.62}.lesson-report-present-modal.action-modal{width:min(860px,calc(100vw - 48px))}.lesson-report-present-modal>header .text-link-button{display:none}.lesson-report-present-session{padding:9px}.lesson-report-present-meta{display:grid;min-width:0;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:8px}.lesson-report-present-meta-item{display:grid;min-width:0;gap:3px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:7px 8px}.lesson-report-present-meta-item small{color:var(--color-text-muted);font-size:10px;font-weight:760;line-height:1.2;text-transform:uppercase}.lesson-report-present-meta-item strong{min-width:0;color:var(--color-text);font-size:12px;font-weight:820;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-report-present-table-shell.work-table-shell{max-width:100%;overflow-x:auto;overflow-y:visible}.lesson-report-present-footer{justify-content:flex-end}.lesson-report-present-modal .attendance-present-table th,.lesson-report-present-modal .attendance-present-table td{white-space:nowrap}.report-checkbox-filter{align-content:end}.report-checkbox-filter input{width:18px;min-height:18px;padding:0}.class-row{min-width:0;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:8px 10px}.class-row-index{display:inline-grid;width:24px;height:24px;place-items:center;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:11px;font-weight:820}.class-row.is-archived{opacity:.62}.class-row-main,.class-row-title,.class-row-meta,.class-row-pass,.class-row-enrollment,.class-row-status-box,.class-row-actions{min-width:0}.class-row-main,.class-row-title,.class-row-actions{display:grid;gap:4px}.class-row-title strong,.class-row-title-link{color:var(--color-text);font-size:14px;font-weight:850;line-height:1.2}.class-row-title span,.class-row-meta span,.class-row-details span,.muted-inline{min-width:0;color:var(--color-text-muted);font-size:12px;line-height:1.3;overflow-wrap:anywhere}.class-row-badges{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.class-row-meta{display:grid;min-width:0;max-width:320px;gap:3px}.class-row-meta span{padding-right:6px}.class-row-pass,.class-row-enrollment{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:4px}.class-pass-link-button{display:inline-flex;min-width:0;max-width:150px;border:0;background:transparent;color:var(--color-brand-primary);cursor:pointer;font:inherit;font-size:12px;font-weight:820;line-height:1.25;padding:0;text-align:left;text-decoration:underline;text-decoration-color:#ee26493d;text-underline-offset:3px;overflow-wrap:anywhere}.class-pass-link-button:hover{color:#9f1239;text-decoration-color:currentColor}.class-pass-empty{color:var(--color-text-muted);font-size:12px;font-weight:720}.class-enrollment-badge{display:inline-flex;min-height:24px;align-items:center;justify-content:center;border:1px solid var(--color-border-soft);border-radius:999px;font-size:11px;font-weight:840;line-height:1;padding:5px 9px}.class-enrollment-badge.tone-green{background:#f4f8f6;color:#3e7464}.class-enrollment-badge.tone-neutral{background:#f8fafc;color:#536174}.class-enrollment-badge.tone-yellow{border-color:#e4d3a2;background:#fff9e8;color:#7a5c14}.class-enrollment-badge.tone-red{border-color:#ee264933;background:#fff8fa;color:#a5263d}.class-row-actions{justify-items:end}.class-row-status-box{display:flex;justify-content:flex-end}.class-row-actions-primary{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px}.class-row-details{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) auto;gap:12px;border-top:1px solid var(--color-border-soft);padding-top:8px}.class-empty-state{border:1px dashed var(--color-border);border-radius:8px;background:#fbfcfe;color:var(--color-text-muted);font-size:13px;font-weight:720;padding:14px}.class-row-details p{margin:0;color:var(--color-text);font-size:12px;font-weight:820}.class-editor-panel{display:grid;width:100%;box-sizing:border-box;max-width:980px;gap:11px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:12px}.class-editor-modern-panel{overflow:visible;max-width:1120px;border-color:#e2e8f0e0;border-radius:14px;background:#f8fafcb8;gap:12px;padding:12px}.classes-view .class-editor-panel{max-width:none}.class-editor-form-header{display:grid;gap:2px;border:1px solid var(--color-border-soft);border-radius:12px;background:#fff;padding:12px 14px}.class-editor-panel>header h3,.class-editor-section h4{margin:0}.class-editor-section{display:grid;gap:8px;min-width:0}.class-editor-modern-section{gap:12px}.class-editor-modern-section>.class-form-grid,.class-editor-modern-section>.class-choice-grid,.class-editor-modern-section>.small-choice-grid,.class-editor-modern-section>.pass-match-panel,.class-editor-modern-section>.class-inline-field,.class-editor-modern-section>.class-message-field,.class-editor-modern-section>.class-inherited-summary,.class-editor-modern-section>.class-muted-panel,.class-editor-modern-section>.class-section-note{max-width:none}.class-editor-modern-heading{margin-bottom:2px}.class-editor-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.class-editor-choice-block{display:grid;min-width:0;gap:7px}.class-editor-choice-block>strong,.class-schedule-rule-index{color:var(--color-text);font-size:13px;font-weight:820}.class-editor-section-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.class-editor-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:12px}.class-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.class-form-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.class-schedule-rule-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.class-form-wide{grid-column:1 / -1}.class-editor-section>.class-form-grid,.class-editor-section>.class-choice-grid,.class-editor-section>.small-choice-grid,.class-editor-section>.pass-match-panel,.class-editor-section>.class-inline-field,.class-editor-section>.class-message-field,.class-editor-section>.class-inherited-summary,.class-editor-section>.class-muted-panel,.class-editor-section>.class-section-note{max-width:920px}.class-form-grid label,.class-inline-field,.class-message-field{display:grid;gap:4px;min-width:0;color:var(--color-text-muted);font-size:12px;font-weight:740}.class-form-grid input,.class-form-grid select,.class-form-grid textarea,.class-inline-field select,.class-message-field textarea,.class-editor-section textarea{box-sizing:border-box;width:100%;min-width:0;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);font:inherit;padding:7px 8px}.class-form-grid textarea,.class-message-field textarea,.class-editor-section textarea{min-height:64px;resize:vertical}.class-suffix-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px}.class-suffix-input>span{color:var(--color-text-muted);font-size:11px;font-weight:800}.class-message-field textarea{min-height:86px}.class-section-note{margin:0;color:var(--color-text-muted);font-size:12px;line-height:1.35}.class-inherited-summary,.class-muted-panel{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:7px;border:1px solid var(--color-border);border-radius:8px;background:#fbfcfe;color:var(--color-text-muted);font-size:12px;font-weight:720;padding:8px 9px}.class-muted-panel.is-warning{border-color:color-mix(in srgb,var(--swiplo-warning) 24%,var(--color-border));background:var(--swiplo-warning-soft);color:var(--swiplo-warning)}.class-pill-list{display:flex;min-width:0;flex-wrap:wrap;gap:5px}.class-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:6px;min-width:0}.small-choice-grid.two,.small-choice-grid.three{display:grid;gap:6px}.small-choice-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.small-choice-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.small-choice-card{min-width:0;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);cursor:pointer;padding:8px 9px;text-align:left}.small-choice-card.selected{border-color:#ee264975;background:#fff7f9}.small-choice-card strong,.small-choice-card span{display:block;overflow-wrap:anywhere}.small-choice-card strong{font-size:12px}.small-choice-card span{color:var(--color-text-muted);font-size:11px}.schedule-rule-grid{display:grid;gap:8px}.class-schedule-rule-card-list{gap:10px}.schedule-rule-card{display:grid;gap:8px;min-width:0;border:1px solid var(--color-border);border-radius:8px;background:#fbfcfe;padding:9px}.class-schedule-rule-card{overflow:visible;border-color:var(--color-border-soft);border-radius:12px;background:#fff;gap:12px;padding:12px}.class-schedule-rule-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.schedule-rule-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-end;margin-left:auto}.schedule-rule-actions .small-choice-card{max-width:180px}.schedule-rule-actions .class-editor-boolean-card{width:min(220px,100%);padding:10px}.schedule-rule-actions .class-schedule-rule-active-toggle{display:flex;width:auto;min-width:0;align-items:center;gap:8px;border-radius:999px;padding:4px 5px 4px 9px}.schedule-rule-actions .class-schedule-rule-active-toggle>header{align-items:center;gap:0}.schedule-rule-actions .class-schedule-rule-active-toggle strong{white-space:nowrap;font-size:12px}.schedule-rule-actions .class-schedule-rule-active-toggle .config-modern-segmented-control{min-width:86px}.schedule-rule-actions .class-schedule-rule-active-toggle .config-modern-segment{min-height:24px;padding:0 8px;font-size:11px}.class-editor-boolean-grid{align-items:stretch}.class-editor-boolean-card{min-width:0}.class-editor-tooltip .tooltip-content{z-index:var(--z-action-menu)}.class-add-rule-button,.class-remove-rule-button{border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);cursor:pointer;font-size:12px;font-weight:820;padding:7px 9px}.class-add-rule-button{border-color:#ee264957;background:#fff7f9;color:#be123c}.class-remove-rule-button{color:#9f1239}.pass-match-panel{display:grid;gap:8px;min-width:0}.class-editor-panel footer{display:flex;flex-wrap:wrap;gap:8px}.config-editor-panel{display:grid;gap:9px;max-width:920px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:10px 12px}.config-editor-panel footer{display:flex;flex-wrap:wrap;gap:8px}.config-form-grid{display:grid;grid-template-columns:minmax(190px,1fr) minmax(160px,.8fr) minmax(220px,1fr);gap:8px;align-items:end}.branch-form-grid{grid-template-columns:minmax(180px,1fr) minmax(165px,.9fr) minmax(180px,1fr) minmax(180px,1fr)}.room-form-grid{display:grid;gap:8px}.room-fields-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,180px);gap:8px;align-items:end}.config-form-grid label,.room-fields-row label,.config-choice-field{display:grid;gap:4px;color:var(--color-text-muted);font-size:12px;font-weight:740;min-width:0}.config-form-grid input,.room-fields-row input,.config-choice-field .small-choice-card{min-height:32px}.config-form-grid input,.room-fields-row input{box-sizing:border-box;width:100%;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);padding:6px 8px}.config-status-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.room-status-row .config-status-choice{max-width:330px}.class-type-editor-panel,.age-group-editor-panel{max-width:980px}.class-level-editor-panel{max-width:860px}.class-duration-editor-panel{max-width:920px}.pass-type-editor-panel{box-sizing:border-box;width:100%;max-width:none}.age-group-form-grid{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,.8fr) minmax(100px,140px) minmax(100px,140px);gap:8px;align-items:end}.age-group-form-grid label,.age-group-form-row label,.age-group-form-row .config-choice-field{display:grid;min-width:0;gap:4px;color:var(--color-text-muted);font-size:12px;font-weight:740}.age-group-form-grid input,.age-group-form-row textarea{box-sizing:border-box;width:100%;min-height:32px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);padding:6px 8px}.age-group-form-row textarea{resize:vertical}.age-group-form-row{display:grid;grid-template-columns:minmax(280px,1fr) minmax(220px,.7fr);gap:8px;align-items:end}.class-level-form-grid{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,.8fr);gap:8px;align-items:end}.class-level-form-grid label,.class-level-form-row label,.class-level-form-row .config-choice-field{display:grid;min-width:0;gap:4px;color:var(--color-text-muted);font-size:12px;font-weight:740}.class-level-form-grid input,.class-level-form-row textarea{box-sizing:border-box;width:100%;min-height:32px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);padding:6px 8px}.class-level-form-row textarea{resize:vertical}.class-level-form-row{display:grid;grid-template-columns:minmax(280px,1fr) minmax(220px,.7fr);gap:8px;align-items:end}.class-duration-form-grid{display:grid;grid-template-columns:minmax(100px,140px) minmax(180px,1fr) minmax(160px,.8fr) minmax(220px,.9fr);gap:8px;align-items:end}.class-duration-form-grid label,.class-duration-form-grid .config-choice-field{display:grid;min-width:0;gap:4px;color:var(--color-text-muted);font-size:12px;font-weight:740}.class-duration-form-grid input{box-sizing:border-box;width:100%;min-height:32px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);padding:6px 8px}.pass-type-form-top{display:grid;gap:8px}.discount-editor-panel{box-sizing:border-box;width:100%;max-width:none}.discount-form-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.62fr) minmax(260px,1fr);gap:8px;align-items:end}.discount-form-layout{display:grid;grid-template-columns:minmax(320px,1fr) minmax(320px,1fr);gap:10px;align-items:start}.discount-form-section,.discount-form-grid label,.discount-form-section label,.discount-form-section .config-choice-field{display:grid;min-width:0;gap:5px;color:var(--color-text-muted);font-size:12px;font-weight:740}.discount-form-grid input,.discount-form-section input{box-sizing:border-box;width:100%;min-height:32px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);padding:6px 8px}.discount-form-section{border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:9px 10px}.config-section-note{margin:0;color:var(--color-text-muted);font-size:12px;font-weight:560;line-height:1.45}.discount-form-section>strong{color:var(--color-text);font-size:13px;font-weight:820;line-height:1.2}.discount-choice-row,.discount-bool-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:6px}.payment-method-type-row{grid-template-columns:repeat(auto-fit,minmax(112px,1fr))}.online-payment-choice-row{grid-template-columns:repeat(auto-fit,minmax(116px,1fr))}.payment-method-bool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.config-modern-section{display:grid;position:relative;min-width:0;overflow:visible;border:1px solid var(--color-border-soft);border-radius:12px;background:linear-gradient(180deg,#fff,#f8fafc);gap:12px;padding:14px;box-shadow:0 10px 24px #0f172a0d}.config-modern-list-section{position:relative;overflow:visible;border:1px solid var(--color-border-soft);border-radius:12px;background:linear-gradient(180deg,#fff,#f8fafc);padding:12px;box-shadow:0 10px 24px #0f172a0d}.config-modern-list-section:before{position:absolute;top:12px;left:0;width:3px;height:28px;border-radius:0 999px 999px 0;background:var(--color-brand-primary);content:""}.config-modern-list-section.students-list-section:before{content:none}.config-modern-section:before{position:absolute;top:14px;left:0;width:3px;height:30px;border-radius:0 999px 999px 0;background:var(--color-brand-primary);content:""}.config-modern-section-header{display:flex;align-items:flex-start;gap:9px;min-width:0}.config-modern-section-header>span{width:8px;height:8px;flex:0 0 auto;margin-top:5px;border-radius:999px;background:#ee264929;box-shadow:0 0 0 4px #ee264912}.config-modern-section-header>div{display:grid;gap:2px;min-width:0}.config-modern-section-header p{margin:0;color:var(--color-brand-primary);font-size:11px;font-weight:820;letter-spacing:0;text-transform:uppercase}.config-modern-section-header strong,.config-modern-subheading strong,.config-modern-inline-title{color:var(--color-text);font-size:13px;font-weight:820;line-height:1.2}.config-modern-subheading,.config-modern-status-field{display:flex;align-items:center;gap:7px;min-width:0}.config-modern-section label,.config-modern-status-field{color:var(--color-text-muted);font-size:12px;font-weight:740}.config-modern-section input,.config-modern-section select,.config-modern-section textarea{box-sizing:border-box;width:100%;min-height:36px;border:1px solid rgb(203 213 225 / 84%);border-radius:8px;background:#fff;box-shadow:0 1px #ffffffb8 inset;color:var(--color-text);font:inherit;padding:7px 9px}.config-modern-section textarea{resize:vertical}.config-modern-section input:focus,.config-modern-section select:focus,.config-modern-section textarea:focus{border-color:#ee26496b;box-shadow:0 0 0 3px #ee26491a;outline:none}.config-modern-section .class-editor-select.swiplo-form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,var(--color-text-muted) 50%),linear-gradient(135deg,var(--color-text-muted) 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;color:var(--color-text-main);font-size:13px;font-weight:600;min-height:36px;padding-right:30px}.config-modern-section .class-editor-select.swiplo-form-select:focus{border-color:var(--swiplo-brand-accent-border, var(--color-brand-primary));box-shadow:0 0 0 3px var(--swiplo-brand-accent-soft, #fff5f7)}.config-modern-choice-grid{align-items:stretch}.config-modern-choice-card{min-height:44px;border-color:#e2e8f0eb;background:#fff;box-shadow:0 1px #ffffffb8 inset}.config-modern-choice-card.selected{border-color:#ee264961;background:#fff7f9;color:var(--color-brand-primary)}.config-modern-option-grid{align-items:stretch}.config-modern-option-card{display:grid;min-width:0;overflow:visible;border:1px solid var(--color-border-soft);border-radius:10px;background:#fff;gap:10px;padding:12px}.config-modern-option-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-width:0}.config-modern-option-card strong{color:var(--color-text);font-size:13px;font-weight:820}.config-modern-segmented-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;border:1px solid rgb(226 232 240 / 92%);border-radius:999px;background:#f8fafc;padding:3px}.config-modern-segment{min-height:30px;border:0;border-radius:999px;background:transparent;color:var(--color-text-muted);cursor:pointer;font-size:12px;font-weight:820}.config-modern-segment.is-active{background:#fff;box-shadow:0 5px 14px #0f172a17;color:var(--color-brand-primary)}.config-modern-status-choice{flex:1 1 auto}.config-modern-tooltip{z-index:4;flex:0 0 auto}.config-modern-tooltip .tooltip-content{z-index:var(--z-action-menu);width:min(300px,calc(100vw - 32px))}.config-room-reservations-view{display:grid;gap:12px}.room-reservation-settings-editor{display:grid;gap:12px;max-width:1040px}.room-reservation-settings-section,.room-reservation-settings-preview{display:grid;position:relative;overflow:visible;border:1px solid var(--color-border-soft);border-radius:12px;background:linear-gradient(180deg,#fff,#f8fafc);gap:12px;padding:14px;box-shadow:0 10px 24px #0f172a0d}.room-reservation-settings-section:before,.room-reservation-settings-preview:before{position:absolute;top:14px;left:0;width:3px;height:30px;border-radius:0 999px 999px 0;background:var(--color-brand-primary);content:""}.room-reservation-settings-section-header{display:flex;align-items:flex-start;gap:9px;min-width:0}.room-reservation-settings-section-header>span{width:8px;height:8px;flex:0 0 auto;margin-top:5px;border-radius:999px;background:#ee264929;box-shadow:0 0 0 4px #ee264912}.room-reservation-settings-section-header>div{display:grid;gap:2px;min-width:0}.room-reservation-settings-section-header p{margin:0;color:var(--color-brand-primary);font-size:11px;font-weight:820;letter-spacing:0;text-transform:uppercase}.room-reservation-settings-section-header strong{color:var(--color-text);font-size:13px;font-weight:820}.room-reservation-settings-single,.room-reservation-settings-grid,.room-reservation-settlement-mode-grid{display:grid;gap:10px}.room-reservation-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-reservation-settlement-mode-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.room-reservation-setting-option-card,.room-reservation-mode-card,.room-reservation-currency-card,.room-reservation-settings-field-card,.room-reservation-settings-note,.room-reservation-settlement-empty{display:grid;min-width:0;overflow:visible;border:1px solid var(--color-border-soft);border-radius:10px;background:#fff;padding:12px}.room-reservation-setting-option-card,.room-reservation-currency-card,.room-reservation-settings-field-card{gap:10px}.room-reservation-setting-option-card>header,.room-reservation-mode-card{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.room-reservation-setting-option-card strong,.room-reservation-mode-card strong,.room-reservation-currency-card strong,.room-reservation-settings-field-card span{color:var(--color-text);font-size:13px;font-weight:820}.room-reservation-settings-tooltip{z-index:4;flex:0 0 auto}.room-reservation-settings-tooltip .tooltip-content{z-index:var(--z-action-menu);width:min(300px,calc(100vw - 32px))}.room-reservation-segmented-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;border:1px solid rgb(226 232 240 / 92%);border-radius:999px;background:#f8fafc;padding:3px}.room-reservation-segment{min-height:30px;border:0;border-radius:999px;background:transparent;color:var(--color-text-muted);cursor:pointer;font-size:12px;font-weight:820}.room-reservation-segment.is-active{background:#fff;box-shadow:0 5px 14px #0f172a17;color:var(--color-brand-primary)}.room-reservation-mode-card{align-items:stretch;min-height:76px;padding:0}.room-reservation-mode-card.is-active{border-color:#ee264961;background:#fff7f9}.room-reservation-mode-card-main{display:grid;flex:1 1 auto;min-width:0;border:0;background:transparent;color:inherit;cursor:pointer;padding:12px 0 12px 12px;text-align:left}.room-reservation-mode-card .room-reservation-settings-tooltip{margin:10px 10px 0 0}.room-reservation-currency-card{align-content:center;gap:4px;background:#f8fafcd1}.room-reservation-currency-card span{width:fit-content;border:1px solid var(--color-border-soft);border-radius:999px;background:#fff;color:var(--color-text-muted);font-size:12px;font-weight:820;padding:5px 9px}.room-reservation-settings-field-card input{box-sizing:border-box;width:100%;min-height:36px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);padding:7px 9px}.room-reservation-settings-field-card input:focus{border-color:#ee26496b;box-shadow:0 0 0 3px #ee26491a;outline:none}.room-reservation-settings-note,.room-reservation-settlement-empty{align-items:center;margin:0;background:#f8fafcc7;color:var(--color-text-muted);font-size:12px;font-weight:720;line-height:1.45}.room-reservation-settlement-empty{display:flex;flex-wrap:wrap;gap:8px}.room-reservation-settings-preview>div{display:flex;flex-wrap:wrap;gap:8px}.room-reservation-settings-editor footer{display:flex;flex-wrap:wrap;gap:8px}.consent-document-main-grid{grid-template-columns:minmax(240px,1fr) minmax(180px,.72fr) minmax(110px,.42fr)}.consent-document-form-layout{grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr)}.consent-document-type-row{grid-template-columns:repeat(auto-fit,minmax(112px,1fr))}.consent-document-bool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.consent-document-status-row{grid-template-columns:repeat(3,minmax(0,1fr))}.consent-document-editor-panel textarea{box-sizing:border-box;width:100%;min-height:138px;resize:vertical;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);font:inherit;padding:7px 8px}.message-template-main-grid{grid-template-columns:minmax(240px,1fr) minmax(180px,.72fr) minmax(240px,1fr)}.message-template-form-layout{grid-template-columns:minmax(340px,.88fr) minmax(440px,1.12fr)}.message-template-channel-row{grid-template-columns:repeat(4,minmax(0,1fr))}.message-template-purpose-row{grid-template-columns:repeat(auto-fit,minmax(128px,1fr))}.message-template-editor-panel textarea{box-sizing:border-box;width:100%;min-height:150px;resize:vertical;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);font:inherit;padding:7px 8px}.message-variable-chip-list{display:flex;flex-wrap:wrap;gap:5px}.variable-chip{cursor:pointer;font-family:inherit}.online-payment-bool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.online-payment-main-grid{grid-template-columns:minmax(240px,1fr) minmax(180px,.7fr) minmax(180px,.7fr)}.online-payment-form-layout{grid-template-columns:minmax(300px,.88fr) minmax(340px,1.12fr)}.online-payment-secret-grid,.online-payment-url-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.online-payment-notes-field{grid-column:span 3}.online-payment-editor-panel textarea{box-sizing:border-box;width:100%;min-height:72px;resize:vertical;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);padding:6px 8px;font:inherit}.discount-mode-row{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.discount-value-grid,.discount-date-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:end}.discount-summary{display:flex;flex-wrap:wrap;gap:6px}.discount-summary span{overflow:hidden;border:1px solid var(--color-border);border-radius:7px;background:#f8fafc;color:var(--color-text-muted);font-size:11px;font-weight:760;padding:5px 7px;text-overflow:ellipsis;white-space:nowrap}.pass-type-form-grid{display:grid;grid-template-columns:minmax(240px,1fr) minmax(180px,.55fr);gap:8px;align-items:end}.pass-description-field{grid-column:1 / -1}.pass-type-section-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(220px,.72fr);gap:8px;align-items:stretch}.pass-type-form-body{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(480px,1.28fr);gap:10px;align-items:start}.pass-type-form-grid label,.pass-form-section,.pass-form-section label,.pass-eligibility-grid>div{display:grid;min-width:0;gap:5px;color:var(--color-text-muted);font-size:12px;font-weight:740}.pass-type-form-grid input,.pass-variant-editor input{box-sizing:border-box;width:100%;min-height:32px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);padding:6px 8px}.pass-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.pass-form-section{min-width:0;border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:9px 10px}.pass-form-section>strong,.pass-section-heading>strong{color:var(--color-text);font-size:13px;font-weight:820;line-height:1.2}.pass-section-heading,.pass-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.pass-eligibility-grid{display:grid;grid-template-columns:1fr;gap:8px}.pass-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:6px}.pass-multi-placeholder{display:flex;width:max-content;max-width:100%;align-items:center;gap:6px;border:1px dashed var(--color-border);border-radius:7px;background:#f8fafc;color:var(--color-text-muted);padding:5px 7px}.pass-multi-placeholder strong,.pass-multi-placeholder span{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.pass-multi-placeholder strong{color:var(--color-text);font-weight:820}.pass-variant-list{display:grid;min-width:0;gap:8px}.pass-variant-editor{display:grid;grid-template-columns:1fr;gap:9px;align-items:start;border:1px solid var(--color-border);border-radius:8px;background:#f8fafc;padding:8px}.pass-variant-card-heading{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;border-bottom:1px solid var(--color-border-soft);padding-bottom:7px}.pass-variant-card-heading strong{min-width:0;color:var(--color-text);font-size:13px;font-weight:820;line-height:1.25;overflow-wrap:anywhere}.pass-variant-card-heading span{border:1px solid var(--color-border-soft);border-radius:999px;background:#fff;color:var(--color-text-muted);font-size:11px;font-weight:780;padding:3px 7px}.pass-variant-fields,.pass-variant-controls{display:grid;min-width:0;gap:7px}.pass-variant-fields{grid-template-columns:repeat(2,minmax(160px,1fr));align-items:end}.pass-variant-name-field{grid-column:1 / -1}.pass-variant-controls{align-content:start;grid-template-columns:minmax(230px,1fr) minmax(180px,.72fr)}.pass-variant-actions{grid-column:1 / -1;min-width:0;align-self:start}.pass-summary{align-items:start}.pass-summary-grid{display:grid;flex:1 1 520px;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;min-width:0}.pass-summary-grid span{overflow:hidden;border:1px solid var(--color-border);border-radius:7px;background:#f8fafc;color:var(--color-text-muted);font-size:11px;font-weight:760;padding:5px 7px;text-overflow:ellipsis;white-space:nowrap}.pass-summary-grid strong{color:var(--color-text)}.class-type-form-grid{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,.9fr) minmax(120px,170px);gap:8px;align-items:end}.class-type-form-grid label,.class-type-image-row label,.class-type-form-row .config-choice-field{display:grid;min-width:0;gap:4px;color:var(--color-text-muted);font-size:12px;font-weight:740}.class-type-form-grid input,.class-type-image-row input{box-sizing:border-box;width:100%;min-height:32px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);padding:6px 8px}.class-type-image-row{display:grid;grid-template-columns:minmax(220px,1fr) max-content;gap:8px;align-items:end}.class-type-image-row .secondary-button:disabled{cursor:not-allowed;opacity:.68}.class-type-form-row{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(170px,.75fr) minmax(140px,.65fr);gap:8px;align-items:end}.class-type-color-grid{display:flex;flex-wrap:wrap;gap:5px;max-width:280px}.class-type-color-button{width:24px;height:24px;border:1px solid rgb(15 23 42 / 14%);border-radius:6px;cursor:pointer;padding:0}.class-type-color-button.selected{border-color:var(--color-brand-primary);box-shadow:0 0 0 2px #ee26492e}.class-type-preview{display:inline-flex;min-height:34px;align-items:center;justify-content:center;border-radius:7px;font-size:13px;font-weight:820;padding:7px 12px}.class-type-preview.compact{min-width:92px;min-height:28px;font-size:12px;padding:5px 9px}.config-class-type-list,.config-age-group-list,.config-class-level-list,.config-class-duration-list,.config-pass-type-list,.config-discount-list,.config-consent-document-list{display:grid;gap:8px}.config-public-schedule-warning{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;border:1px solid #fed7aa;border-radius:16px;background:#fff7ed;color:var(--color-text);padding:14px}.config-public-schedule-warning p,.config-public-schedule-warning small{display:block;margin:4px 0 0;color:var(--color-text-muted);line-height:1.45}.message-template-list,.config-payment-method-list,.config-online-payment-account-list,.config-sports-card-provider-list,.config-school-holiday-list{display:grid;gap:8px}.config-class-type-card{display:grid;grid-template-columns:minmax(220px,1.4fr) auto auto minmax(260px,auto);gap:8px;align-items:center;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:9px 10px}.config-age-group-card{display:grid;grid-template-columns:minmax(200px,1.1fr) minmax(110px,auto) minmax(180px,1fr) auto minmax(260px,auto);gap:8px;align-items:center;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:9px 10px}.config-class-level-card{display:grid;grid-template-columns:minmax(200px,1fr) minmax(220px,1.2fr) auto minmax(260px,auto);gap:8px;align-items:center;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:9px 10px}.config-class-duration-card{display:grid;grid-template-columns:minmax(180px,1fr) minmax(90px,auto) auto minmax(260px,auto);gap:8px;align-items:center;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:9px 10px}.config-pass-type-card,.config-discount-card,.config-consent-document-card,.message-template-card,.config-payment-method-card,.config-online-payment-account-card,.config-sports-card-provider-card,.config-school-holiday-card{display:grid;gap:6px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:9px 10px}.pass-type-card-top{display:grid;grid-template-columns:minmax(220px,1fr) minmax(82px,auto) minmax(82px,auto) minmax(118px,auto) auto minmax(250px,auto);gap:8px;align-items:center;min-width:0}.discount-card-top{display:grid;grid-template-columns:minmax(240px,1fr) minmax(92px,auto) minmax(74px,auto) minmax(128px,auto) auto minmax(250px,auto);gap:8px;align-items:center;min-width:0}.staff-card-top{display:grid;grid-template-columns:minmax(260px,1.65fr) minmax(130px,.65fr) minmax(132px,.6fr) minmax(90px,auto) minmax(230px,.95fr);gap:8px 12px;align-items:center;min-width:0;padding:2px 0}.staff-view{overflow:visible}.staff-overview-bar{min-height:36px}.staff-editor-panel{display:grid;width:100%;max-width:1040px;gap:12px}.staff-profile-action-modal{width:min(1040px,calc(100vw - 48px));gap:14px;padding:18px}.staff-profile-action-modal .staff-editor-panel{max-width:none}.staff-profile-modal-form{gap:13px}.staff-form-section{min-width:0}.staff-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.staff-form-layout{grid-template-columns:minmax(280px,.9fr) minmax(320px,1.1fr)}.staff-boolean-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.staff-boolean-card{gap:8px}.staff-boolean-card .tooltip-wrapper{flex:0 0 auto}.staff-editor-panel footer,.staff-action-panel footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:4px}.staff-profile-modal-footer{margin-top:4px;border-top:1px solid var(--color-border-soft);padding-top:14px}.staff-empty-state{margin:0;border:1px dashed var(--color-border-soft);border-radius:8px;background:#f8fafc;color:var(--color-text-muted);font-size:12px;font-weight:720;padding:10px}.staff-card-meta,.staff-history-list{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.staff-person-row{display:flex;align-items:center;gap:10px;min-width:0}.staff-person-row>div{display:grid;gap:4px;min-width:0}.staff-person-row strong,.staff-person-row .config-muted-line{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-card-top .discount-card-main{min-width:0}.staff-card-meta{align-items:center}.staff-card-settlement{max-width:100%;min-width:0;color:var(--color-text);font-weight:820}.staff-card-status{display:flex;justify-content:flex-start;min-width:0}.staff-card-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.staff-row-actions{width:100%}.staff-row-actions button{white-space:nowrap}.staff-profile-card{border-color:var(--color-border-soft)}.config-discount-card.staff-profile-card:not(.is-archived):hover{border-color:var(--color-border-soft);background:#fff}.staff-profile-card .discount-tag:first-child,.staff-role-tag{border-color:var(--color-border-soft);background:#f8fafc;color:var(--color-text-muted)}.staff-avatar{width:34px;height:34px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;overflow:hidden;border:1px solid rgba(16,185,129,.28);background:#10b9811a;color:#047857;font-size:.75rem;font-weight:750}.staff-avatar.large{width:72px;height:72px;font-size:1.05rem}.staff-avatar img{width:100%;height:100%;object-fit:cover}.staff-photo-section{margin-top:10px}.staff-photo-preview,.staff-photo-actions,.staff-toggle-with-tooltip{display:flex;align-items:center;gap:8px;min-width:0}.staff-photo-section,.staff-photo-controls{display:grid;gap:8px}.staff-photo-preview>div{display:grid;min-width:0;gap:2px}.staff-photo-controls{grid-template-columns:minmax(220px,1fr) auto;align-items:end}.staff-photo-url-label{display:inline-flex;align-items:center;justify-content:center;min-height:34px;cursor:pointer}.staff-photo-file-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.staff-photo-upload-message{grid-column:1 / -1;margin:0;font-size:.82rem;font-weight:700}.staff-toggle-with-tooltip .small-choice-card{flex:1 1 auto}.staff-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.staff-action-grid.bonus{grid-template-columns:minmax(120px,.7fr) minmax(140px,.7fr) minmax(220px,1.6fr)}.staff-action-grid.staff-rate-grid{grid-template-columns:minmax(180px,.4fr) auto;align-items:end;justify-content:start}.staff-action-panel{display:grid;max-width:1040px;gap:10px}.staff-action-header{display:grid;gap:3px}.staff-action-header strong{color:var(--color-text);font-size:14px;line-height:1.25}.staff-action-header span{color:var(--color-text-muted);font-size:12px;font-weight:720}.staff-action-section{margin:0}.staff-action-section label,.staff-settlement-section label{display:grid;gap:5px;min-width:0}.staff-currency-note{display:inline-flex;align-items:center;justify-content:center;min-height:36px;border:1px solid var(--color-border-soft);border-radius:999px;background:#fff;color:var(--color-text-muted);font-size:12px;font-weight:820;padding:0 12px}.staff-action-context,.staff-action-history{display:flex;flex-wrap:wrap;gap:6px}.staff-action-history{display:grid;width:100%;min-width:0;padding-top:2px}.staff-history-entry{display:grid;min-width:0;gap:4px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:7px 8px}.staff-history-entry-main{display:flex;flex-wrap:wrap;align-items:center;min-width:0;gap:5px}.staff-history-date,.staff-history-amount,.staff-history-status{flex:0 0 auto;max-width:none}.staff-history-entry .discount-tag:first-child{border-color:var(--color-border-soft);background:#fff;color:var(--color-text-muted)}.staff-history-amount{background:#fff;color:var(--color-text)}.staff-history-text{flex:1 1 130px;min-width:0;color:var(--color-text);font-size:12px;font-weight:740;line-height:1.3;overflow-wrap:anywhere}.staff-history-note{min-width:0;color:var(--color-text-muted);font-size:12px;font-weight:680;line-height:1.35;overflow-wrap:anywhere}.staff-action-inline-error,.staff-action-empty{margin:0;font-size:12px;font-weight:700;line-height:1.35}.staff-action-inline-error{color:#b91c1c}.staff-action-empty{color:var(--color-text-muted)}.staff-tier-editor{display:grid;gap:8px}.staff-tier-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.staff-tier-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:8px;align-items:end;border:1px solid var(--color-border-soft);border-radius:7px;background:#f8fafc;padding:8px}.consent-document-card-top{display:grid;grid-template-columns:minmax(240px,1fr) minmax(120px,auto) minmax(64px,auto) minmax(128px,auto) auto minmax(250px,auto);gap:8px;align-items:center;min-width:0}.message-template-card-top{display:grid;grid-template-columns:minmax(260px,1fr) minmax(88px,auto) minmax(160px,auto) auto minmax(250px,auto);gap:8px;align-items:center;min-width:0}.payment-method-card-top{display:grid;grid-template-columns:minmax(240px,1fr) minmax(110px,auto) auto minmax(310px,auto);gap:8px;align-items:center;min-width:0}.online-payment-card-top{grid-template-columns:minmax(260px,1fr) minmax(92px,auto) auto minmax(310px,auto)}.sports-card-provider-card-top{grid-template-columns:minmax(260px,1fr) minmax(110px,auto) auto minmax(260px,auto)}.school-holiday-card-top{grid-template-columns:minmax(260px,1fr) minmax(150px,auto) minmax(120px,auto) auto minmax(410px,auto)}.config-class-type-card.is-archived,.config-age-group-card.is-archived,.config-class-level-card.is-archived,.config-class-duration-card.is-archived,.config-pass-type-card.is-archived,.config-discount-card.is-archived,.config-consent-document-card.is-archived,.message-template-card.is-archived,.config-payment-method-card.is-archived,.config-online-payment-account-card.is-archived,.config-sports-card-provider-card.is-archived,.config-school-holiday-card.is-archived{background:#f8fafc;opacity:.62}.class-type-card-main{display:flex;min-width:0;align-items:center;gap:9px}.class-type-card-main>span:not(.class-type-color-swatch){display:grid;min-width:0;gap:5px}.age-group-card-main,.class-level-card-main,.class-duration-card-main{display:grid;min-width:0;gap:2px}.pass-type-card-main,.discount-card-main,.consent-document-card-main,.message-template-card-main,.payment-method-card-main{display:grid;min-width:0;gap:5px}.sports-card-provider-card-main,.school-holiday-card-main{min-width:0}.pass-type-card-main strong,.class-type-card-main strong,.age-group-card-main strong,.class-level-card-main strong,.class-duration-card-main strong{overflow:hidden;color:var(--color-text);font-size:14px;font-weight:820;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.config-card-tags{display:flex;flex-wrap:wrap;min-width:0;gap:4px}.config-meta-chip,.config-detail-chip{display:inline-flex;align-items:center;width:fit-content;max-width:100%;min-height:20px;overflow:hidden;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:10.5px;font-weight:760;line-height:1.1;padding:2px 6px;text-overflow:ellipsis;white-space:nowrap}.config-meta-chip.tone-brand{border-color:#ee264938;background:var(--color-brand-primary-soft);color:var(--color-brand-primary-dark)}.config-muted-line{overflow:hidden;color:var(--color-text-muted);font-size:12px;font-weight:730;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.config-card-value{color:var(--color-text);font-size:13px;font-weight:820;line-height:1.2;white-space:nowrap}.discount-card-main strong,.consent-document-card-main strong,.message-template-card-main strong,.payment-method-card-main strong{overflow:hidden;color:var(--color-text);font-size:14px;font-weight:820;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.sports-card-provider-card-main strong{display:flex;align-items:center;min-width:0;gap:7px}.school-holiday-card-main strong{overflow:hidden;color:var(--color-text);font-size:14px;font-weight:820;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.sports-card-dot{display:inline-flex;width:10px;height:10px;flex:0 0 10px;border:1px solid rgb(15 23 42 / 12%);border-radius:999px}.sports-card-color-input{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px;align-items:center}.sports-card-main-grid{grid-template-columns:minmax(220px,1fr) minmax(130px,.5fr) minmax(180px,.7fr) minmax(180px,.7fr)}.sports-card-form-layout{grid-template-columns:minmax(300px,.85fr) minmax(360px,1fr)}.sports-card-bool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sports-card-summary{grid-template-columns:repeat(auto-fit,minmax(140px,auto))}.school-holiday-main-grid{grid-template-columns:minmax(240px,1fr) minmax(180px,.7fr) minmax(180px,.65fr)}.school-holiday-form-layout{grid-template-columns:minmax(340px,1fr) minmax(340px,1fr)}.school-holiday-bool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.school-holiday-branch-select,.school-holiday-editor-panel textarea{box-sizing:border-box;width:100%;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);font:inherit;padding:6px 8px}.school-holiday-branch-select{min-height:32px}.school-holiday-editor-panel textarea{min-height:74px;resize:vertical}.school-holiday-summary{grid-template-columns:repeat(4,minmax(0,auto))}.school-holiday-card-details{display:flex;flex-wrap:wrap;min-width:0;gap:6px;color:var(--color-text-muted);font-size:11px;font-weight:730}.school-holiday-card-details span{overflow:hidden;max-width:220px;text-overflow:ellipsis;white-space:nowrap}.discount-card-tags{display:flex;flex-wrap:wrap;min-width:0;gap:4px}.consent-document-card-summary,.message-template-card-preview{margin:0;overflow:hidden;color:var(--color-text-muted);font-size:12px;font-weight:680;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.message-template-details{display:grid;min-width:0;gap:8px;border-top:1px solid var(--color-border-soft);color:var(--color-text-muted);font-size:12px;padding-top:8px}.message-template-details-grid{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(0,1.1fr);gap:10px}.message-template-detail-block{display:grid;min-width:0;align-content:start;gap:5px}.message-template-detail-block strong{color:var(--color-text);font-size:12px}.message-template-variable-row{display:flex;flex-wrap:wrap;gap:5px}.message-template-subject{color:var(--color-text);font-weight:760}.message-template-body-preview{max-height:180px;overflow:auto;border:1px solid var(--color-border-soft);border-radius:7px;background:#f8fafc;color:var(--color-text);font:inherit;font-size:12px;line-height:1.45;margin:0;padding:8px;white-space:pre-wrap}.online-payment-card-meta{display:flex;flex-wrap:wrap;min-width:0;gap:5px;color:var(--color-text-muted);font-size:11px;font-weight:700}.online-payment-card-meta span{overflow:hidden;max-width:180px;text-overflow:ellipsis;white-space:nowrap}.discount-tag{display:inline-flex;align-items:center;max-width:132px;min-height:20px;overflow:hidden;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:10.5px;font-weight:760;line-height:1.1;padding:2px 6px;text-overflow:ellipsis;white-space:nowrap}.discount-tag:first-child{border-color:#ee264938;background:var(--color-brand-primary-soft);color:var(--color-brand-primary-dark)}.discount-card-type,.discount-card-validity{overflow:hidden;color:var(--color-text-muted);font-size:12px;font-weight:760;text-overflow:ellipsis;white-space:nowrap}.discount-card-value{color:var(--color-text);font-size:13px;font-weight:820;line-height:1.2;white-space:nowrap}.config-locations-view .config-editor-panel{position:relative;overflow:visible;border:1px solid var(--color-border-soft);border-radius:12px;background:linear-gradient(180deg,#fff,#f8fafc);gap:12px;padding:14px;box-shadow:0 10px 24px #0f172a0d}.config-locations-view .config-editor-panel>header{min-width:0}.config-form-section-card,.config-locations-view .discount-form-section,.config-locations-view .pass-form-section,.config-locations-view .pass-variant-editor{position:relative;overflow:visible;border:1px solid var(--color-border-soft);border-radius:12px;background:#fff;box-shadow:0 6px 18px #0f172a0a;padding:12px}.config-form-section-card{display:grid;gap:10px}.config-form-section-card:before,.config-locations-view .discount-form-section:before,.config-locations-view .pass-form-section:before{position:absolute;top:12px;left:0;width:3px;height:28px;border-radius:0 999px 999px 0;background:var(--color-brand-primary);content:""}.config-form-section-card>strong{display:flex;min-width:0;align-items:center;gap:7px;color:var(--color-text);font-size:13px;font-weight:820;line-height:1.2}.config-form-section-card>strong:before{display:inline-block;width:3px;height:14px;flex:0 0 auto;border-radius:999px;background:var(--color-brand-primary);content:""}.config-locations-view .config-form-grid input,.config-locations-view .room-fields-row input,.config-locations-view .age-group-form-grid input,.config-locations-view .class-level-form-grid input,.config-locations-view .class-duration-form-grid input,.config-locations-view .discount-form-grid input,.config-locations-view .discount-form-section input,.config-locations-view .pass-type-form-grid input,.config-locations-view .pass-variant-editor input,.config-locations-view textarea,.config-locations-view select{min-height:36px;border-color:#cbd5e1d6;border-radius:8px;background:#fff;box-shadow:0 1px #ffffffb8 inset}.config-locations-view .small-choice-card{border-color:var(--color-border-soft);border-radius:10px;background:#fff;color:var(--color-text);padding:9px 10px}.config-locations-view .small-choice-card.selected{border-color:#ee264966;background:#fff7f9;color:var(--color-brand-primary-dark);box-shadow:0 6px 16px #ee264914}.config-locations-view .config-status-choice{gap:4px;border:1px solid rgb(226 232 240 / 92%);border-radius:999px;background:#f8fafc;padding:3px}.config-locations-view .config-status-choice .small-choice-card{display:grid;min-height:30px;place-items:center;border:0;border-radius:999px;background:transparent;box-shadow:none;color:var(--color-text-muted);padding:5px 8px;text-align:center}.config-locations-view .config-status-choice .small-choice-card.selected{background:#fff;box-shadow:0 5px 14px #0f172a17;color:var(--color-brand-primary)}.config-locations-view .config-status-choice .small-choice-card strong{font-size:12px}.config-room-section,.config-branch-list,.config-class-type-list,.config-age-group-list,.config-class-level-list,.config-class-duration-list,.config-pass-type-list,.config-discount-list,.config-consent-document-list,.message-template-list,.config-payment-method-list,.config-online-payment-account-list,.config-sports-card-provider-list,.config-school-holiday-list{gap:10px}.config-room-section{border:1px solid var(--color-border-soft);border-radius:12px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 10px 24px #0f172a0d;padding:12px}.config-branch-card,.config-class-type-card,.config-age-group-card,.config-class-level-card,.config-class-duration-card,.config-pass-type-card,.config-discount-card,.config-consent-document-card,.message-template-card,.config-payment-method-card,.config-online-payment-account-card,.config-sports-card-provider-card,.config-school-holiday-card{border-color:var(--color-border-soft);border-radius:12px;background:#fff;box-shadow:0 6px 18px #0f172a0a;padding:12px}.config-branch-card.selected,.config-class-type-card:not(.is-archived):hover,.config-age-group-card:not(.is-archived):hover,.config-class-level-card:not(.is-archived):hover,.config-class-duration-card:not(.is-archived):hover,.config-pass-type-card:not(.is-archived):hover,.config-discount-card:not(.is-archived):hover,.config-consent-document-card:not(.is-archived):hover,.message-template-card:not(.is-archived):hover,.config-payment-method-card:not(.is-archived):hover,.config-online-payment-account-card:not(.is-archived):hover,.config-sports-card-provider-card:not(.is-archived):hover,.config-school-holiday-card:not(.is-archived):hover{border-color:#ee264947;background:#fffafd}.config-locations-view .discount-summary,.config-locations-view .pass-summary-grid{gap:7px}.config-locations-view .discount-summary span,.config-locations-view .pass-summary-grid span{border-color:var(--color-border-soft);border-radius:999px;background:#fff}.class-type-card-main strong{display:block;font-size:14px}.age-group-card-main strong,.class-level-card-main strong,.class-duration-card-main strong,.age-group-range{font-size:14px;font-weight:820}.age-group-range,.class-duration-minutes{color:var(--color-text)}.class-duration-minutes{font-size:14px;font-weight:820}.pass-type-mode{color:var(--color-text);font-size:13px;font-weight:820}.pass-variant-chip-row{display:flex;flex-wrap:wrap;min-width:0;gap:4px}.pass-variant-chip{max-width:240px;overflow:hidden;border:1px solid var(--color-border);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:10.5px;font-weight:760;padding:2px 6px;text-overflow:ellipsis;white-space:nowrap}.pass-type-details{min-width:0;color:var(--color-text-muted);font-size:12px}.pass-type-details summary{width:max-content;cursor:pointer;font-weight:780}.pass-type-details-grid{display:grid;grid-template-columns:minmax(240px,.78fr) minmax(0,1.22fr);gap:10px;margin:7px 0 2px}.pass-type-detail-block{display:grid;min-width:0;align-content:start;gap:5px}.pass-type-detail-block strong{color:var(--color-text);font-size:12px}.pass-type-detail-block span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pass-variant-kind-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.class-type-color-swatch{width:28px;height:28px;flex:0 0 auto;border:1px solid rgb(15 23 42 / 12%);border-radius:7px}.field-label-row{display:flex;align-items:center;gap:5px}.tooltip-wrapper{position:relative;display:inline-flex}.tooltip-trigger{display:inline-grid;width:17px;height:17px;place-items:center;border:1px solid var(--color-border);border-radius:50%;background:#fff;color:#64748b;cursor:help;font-size:11px;font-weight:800;line-height:1;padding:0}.tooltip-content{position:absolute;z-index:calc(var(--z-action-menu) + 1);left:50%;bottom:calc(100% + 7px);width:min(280px,70vw);transform:translate(-50%);border:1px solid rgb(226 232 240 / 86%);border-left:3px solid var(--swiplo-primary);border-radius:9px;background:#fffffffa;box-shadow:0 18px 44px #0f172a24;color:var(--swiplo-text);font-size:11px;font-weight:680;line-height:1.35;opacity:0;padding:8px 9px;pointer-events:none;visibility:hidden;overflow-wrap:anywhere}.tooltip-wrapper:hover .tooltip-content,.tooltip-wrapper:focus-within .tooltip-content{opacity:1;visibility:visible}.auto-badge{border:1px solid var(--color-border);border-radius:999px;background:#f8fafc;color:#64748b;font-size:10px;font-weight:800;padding:1px 5px}.section-inline-header{border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:9px 11px}.section-inline-header h3{margin:2px 0 0;font-size:16px;line-height:1.2}.empty-state{margin:0;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text-muted);font-size:13px;padding:12px}.add-pass-empty-state{display:flex;align-items:flex-start;flex-direction:column;gap:8px}.add-pass-empty-state strong{color:var(--color-text)}.events-empty-stack,.events-details-stack,.events-card-list,.events-builder-list,.events-form,.events-form-section,.events-confirm-modal,.events-registrations-panel,.events-registration-details,.events-embed-modal{display:grid;gap:12px}.events-table-shell{overflow-x:auto}.events-table-actions-shell{overflow:visible}.events-table{min-width:1040px}.events-registrations-table{min-width:1180px}.events-table-main-cell{display:grid;min-width:0;gap:2px}.events-table-name-button{width:fit-content;border:0;background:transparent;color:var(--color-text);cursor:pointer;font:inherit;font-weight:820;padding:0;text-align:left}.events-table-name-button:hover{color:var(--color-brand-primary);text-decoration:underline}.events-table-main-cell strong,.events-detail-card strong,.events-summary-item strong{min-width:0;overflow-wrap:anywhere;color:var(--color-text)}.events-table-main-cell span,.events-detail-card span,.events-form-section header span,.events-summary-item span{color:var(--color-text-muted);font-size:12px}.events-registration-notes-list{display:grid;width:min(100%,420px);gap:4px;margin-top:4px}.events-registration-note-preview{display:inline-flex;align-items:flex-start;width:fit-content;max-width:100%;gap:6px;border:0;border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:12px;line-height:1.35;padding:2px 5px 2px 8px}.events-registration-note-preview:before{content:"Uwaga:";color:var(--color-muted);font-weight:600}.events-registration-note-preview span{min-width:0;overflow-wrap:anywhere}.events-registration-note-delete{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:22px;height:22px;border:0;border-radius:6px;background:transparent;color:var(--color-text-muted);cursor:pointer;padding:0}.events-registration-note-delete:hover:not(:disabled){background:#fee2e2;color:#b91c1c}.events-registration-note-delete:disabled{cursor:not-allowed;opacity:.55}.events-registration-note-delete svg{width:14px;height:14px;fill:currentColor}.events-row-actions,.events-compact-actions,.events-participant-actions,.events-detail-toolbar,.events-status-row,.events-modal-footer,.events-option-chips,.events-checkbox-grid,.events-inline-badges{display:flex;min-width:0;flex-wrap:wrap;gap:8px}.events-mode-picker{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.events-student-search-row{display:grid;align-items:end;gap:8px;grid-template-columns:minmax(0,1fr) auto}.events-row-actions,.events-compact-actions,.events-participant-actions{align-items:center}.events-compact-actions{flex-wrap:nowrap;gap:6px;white-space:nowrap}.events-compact-actions .secondary-button.compact{min-height:30px;border-radius:8px;font-size:12px;padding:6px 9px}.events-participant-actions{gap:6px}.events-participant-actions .secondary-button,.events-participant-actions .danger-outline-button{padding:6px 8px;font-size:12px}.events-actions-menu{position:relative}.events-actions-menu[open]{z-index:60}.events-actions-menu summary{display:inline-flex;align-items:center;min-height:30px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);cursor:pointer;font-size:12px;font-weight:760;list-style:none;padding:6px 9px}.events-actions-menu summary::-webkit-details-marker{display:none}.events-actions-menu summary:after{content:"⌄";margin-left:6px;color:var(--color-text-muted);font-size:11px}.events-actions-menu[open] summary{border-color:#2563eb52;background:#f8fbff}.events-actions-menu>div{position:absolute;z-index:70;right:0;display:grid;min-width:190px;gap:4px;margin-top:6px;border:1px solid var(--color-border);border-radius:10px;background:#fff;box-shadow:0 18px 40px #0f172a1f;padding:6px}.events-actions-menu>div button,.events-actions-menu>div a{display:block;width:100%;border:0;border-radius:7px;background:transparent;color:var(--color-text);cursor:pointer;font:inherit;font-size:12px;font-weight:700;padding:8px 9px;text-align:left;text-decoration:none}.events-actions-menu>div button:hover,.events-actions-menu>div a:hover{background:var(--color-surface-muted)}.events-actions-menu>div button:disabled{color:var(--color-text-muted);cursor:not-allowed;opacity:.62}.events-actions-menu>div button:disabled:hover{background:transparent}.events-detail-toolbar,.events-modal-footer{align-items:center;justify-content:space-between}.events-status-row,.events-option-chips,.events-checkbox-grid,.events-inline-badges{align-items:center}.events-inline-badges{gap:6px}.events-summary-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.events-term-summary-grid{grid-template-columns:minmax(0,1fr)}.events-summary-item,.events-detail-card,.events-builder-card,.events-readonly-note,.events-compact-info,.events-form-preview{border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);padding:10px 12px}.events-compact-info{margin-top:12px}.events-form-preview{display:grid;gap:10px}.events-compact-info summary,.events-form-preview summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none}.events-compact-info summary::-webkit-details-marker,.events-form-preview summary::-webkit-details-marker{display:none}.events-compact-info summary:after,.events-form-preview summary:after{content:"⌄";color:var(--color-text-muted);font-size:12px}.events-compact-info[open] summary:after,.events-form-preview[open] summary:after{transform:rotate(180deg)}.events-compact-info summary>div,.events-compact-info-content,.events-form-preview summary>div,.events-form-preview-content{display:grid;min-width:0;gap:8px}.events-compact-info summary strong,.events-form-preview summary strong{color:var(--color-text);font-size:13px;font-weight:820}.events-compact-info summary span,.events-form-preview summary span{color:var(--color-text-muted);font-size:12px}.events-registration-details h3{margin:0 0 8px;color:var(--color-text);font-size:14px}.events-registration-details-header{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--color-border-soft);border-radius:8px;background:#fff;padding:12px}.events-registration-details-header>div{display:grid;gap:3px}.events-registration-details-header strong{color:var(--color-text);font-size:18px}.events-embed-modal textarea{min-height:84px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px}.events-embed-variant{display:grid;gap:10px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface-muted);padding:14px}.events-embed-variant h3{margin:0;font-size:16px;letter-spacing:0}.events-summary-item,.events-detail-card{display:grid;gap:4px}.events-registration-summary{display:grid;gap:2px}.events-date-lines{display:grid;gap:3px;min-width:0}.events-registration-summary strong{color:var(--color-text)}.events-registration-summary span,.events-date-lines small{color:var(--color-text-muted);font-size:12px}.events-date-lines span{color:var(--color-text);font-size:13px}.events-description,.events-detail-card p,.events-confirm-modal p{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.45}.events-option-chips span{border:1px solid var(--color-border);border-radius:999px;background:#fff;color:var(--color-text);font-size:11px;font-weight:740;padding:4px 7px}.events-form{gap:16px}.events-form-section{border:1px solid var(--color-border-soft);border-radius:12px;background:linear-gradient(180deg,#fff,#f8fafc);gap:12px;padding:14px}.events-form-section>header,.events-builder-card-header{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.events-form-section>header div{display:grid;min-width:0;gap:2px}.events-form-eyebrow{color:var(--color-brand-primary);font-size:11px;font-weight:820;letter-spacing:0;text-transform:uppercase}.events-form-section>header strong,.events-builder-card-header strong{color:var(--color-text);font-size:13px;font-weight:820}.events-section-card,.events-preset-card,.events-future-info,.events-future-toggle{border:1px solid var(--color-border-soft);border-radius:10px;background:#fff}.events-section-card{display:grid;gap:12px;padding:12px}.events-preset-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.events-preset-card{display:grid;gap:10px;padding:12px}.events-preset-card.selected{border-color:#2563eb6b;background:#f8fbff}.events-preset-card strong,.events-subsection-header strong{color:var(--color-text);font-size:13px}.events-preset-card span,.events-subsection-header span{color:var(--color-text-muted);font-size:12px;line-height:1.4}.events-preset-card>div:first-child,.events-subsection-header{display:grid;gap:3px}.events-preset-fields{display:flex;flex-wrap:wrap;gap:6px}.events-preset-fields span{border:1px solid var(--color-border-soft);border-radius:999px;background:var(--color-surface-muted);color:var(--color-text);font-size:11px;font-weight:720;padding:4px 7px}.events-preset-actions{display:grid;gap:6px}.events-subsection-header{padding-top:4px}.events-future-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.events-future-toggle{padding:12px}.events-future-info{display:grid;min-width:0;gap:10px;padding:12px}.events-future-info>div{display:grid;gap:4px}.events-future-info strong{color:var(--color-text);font-size:13px}.events-future-info span:not(.events-future-badge){color:var(--color-text-muted);font-size:12px;line-height:1.4}.events-future-badge{width:fit-content;border-radius:999px;background:#ecfdf5;color:#047857;font-size:11px;font-weight:780;padding:4px 8px}.events-form-grid textarea{min-height:96px}.events-form-wide{grid-column:1 / -1}.events-builder-card{background:#fff}.events-checkbox-grid{gap:10px 14px}.events-checkbox-inline{align-self:end;padding-bottom:4px}.events-add-field-button{justify-self:start}.events-checkbox-answer,.events-field-description{display:grid;gap:5px}.events-field-description,.events-field-hint{color:var(--color-text-muted);font-size:12px;line-height:1.4}.events-field-description{padding-left:24px}.events-field-description a{overflow-wrap:anywhere}.events-label-with-help{display:inline-flex;align-items:center;gap:6px}.events-help-tooltip{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface-muted);color:var(--color-text-muted);cursor:help;font-size:11px;font-weight:820;line-height:1}.events-options-textarea{min-height:92px}.events-checkbox-field{display:grid;gap:8px;min-width:0;border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:10px}.events-checkbox-field legend{color:var(--color-text);font-size:12px;font-weight:780;padding:0 4px}.events-inline-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.events-readonly-note{color:var(--color-text-muted);font-size:13px;line-height:1.45}.events-modal-footer{margin-top:4px;padding-top:12px;border-top:1px solid var(--color-border-soft)}.events-modal-footer .primary-button,.events-modal-footer .secondary-button,.events-modal-footer .danger-outline-button{min-width:120px}@media (max-width: 760px){.events-summary-grid,.events-form-grid.form-grid.two-columns,.events-form-grid.form-grid.three-columns,.events-mode-picker,.events-preset-grid,.events-future-grid,.events-student-search-row{grid-template-columns:1fr}.events-detail-toolbar,.events-modal-footer{align-items:stretch;flex-direction:column}.events-modal-footer .primary-button,.events-modal-footer .secondary-button,.events-modal-footer .danger-outline-button{width:100%}}@media (max-width: 1180px){.branch-form-grid,.age-group-form-grid,.age-group-form-row,.config-age-group-card,.class-level-form-grid,.class-level-form-row,.config-class-level-card,.consent-document-card-top,.consent-document-form-layout,.consent-document-main-grid,.message-template-card-top,.message-template-channel-row,.message-template-form-layout,.message-template-main-grid,.discount-card-top,.discount-form-grid,.discount-form-layout,.online-payment-card-top,.online-payment-form-layout,.online-payment-main-grid,.online-payment-secret-grid,.online-payment-url-grid,.payment-method-card-top,.payment-method-bool-grid,.room-reservation-settings-grid,.sports-card-bool-grid,.sports-card-main-grid,.sports-card-provider-card-top,.school-holiday-bool-grid,.school-holiday-card-top,.school-holiday-main-grid,.staff-action-grid,.staff-boolean-grid,.staff-card-top,.staff-form-grid,.staff-form-layout,.staff-photo-controls,.staff-tier-card,.class-duration-form-grid,.config-class-duration-card,.pass-type-card-top,.pass-type-form-grid,.pass-type-section-grid,.class-type-form-row,.class-type-image-row,.config-class-type-card{grid-template-columns:repeat(2,minmax(0,1fr))}.pass-type-form-body,.consent-document-form-layout,.discount-form-layout,.message-template-form-layout,.online-payment-form-layout,.room-reservation-settings-grid,.sports-card-form-layout,.school-holiday-form-layout,.message-template-details-grid,.pass-type-details-grid{grid-template-columns:1fr}.pass-eligibility-grid,.pass-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.room-reservation-settlement-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.online-payment-notes-field{grid-column:auto}.staff-action-grid.bonus{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.age-group-form-grid,.age-group-form-row,.config-age-group-card,.class-level-form-grid,.class-level-form-row,.config-class-level-card,.consent-document-bool-grid,.consent-document-card-top,.consent-document-form-layout,.consent-document-main-grid,.consent-document-status-row,.message-template-card-top,.message-template-channel-row,.message-template-form-layout,.message-template-details-grid,.message-template-main-grid,.message-template-summary,.discount-card-top,.discount-form-grid,.discount-form-layout,.discount-value-grid,.discount-date-grid,.online-payment-bool-grid,.online-payment-card-top,.online-payment-form-layout,.online-payment-main-grid,.online-payment-secret-grid,.online-payment-url-grid,.payment-method-card-top,.payment-method-bool-grid,.sports-card-bool-grid,.sports-card-form-layout,.sports-card-main-grid,.sports-card-provider-card-top,.sports-card-summary,.school-holiday-bool-grid,.school-holiday-card-top,.school-holiday-form-layout,.school-holiday-main-grid,.school-holiday-summary,.staff-action-grid,.staff-boolean-grid,.staff-card-top,.staff-form-grid,.staff-form-layout,.staff-photo-controls,.staff-tier-card,.class-duration-form-grid,.config-class-duration-card,.pass-type-card-top,.pass-type-details-grid,.pass-eligibility-grid,.pass-type-form-grid,.pass-type-section-grid,.pass-variant-editor,.pass-variant-fields,.pass-variant-controls,.pass-type-form-body,.class-type-form-grid,.class-type-form-row,.class-type-image-row,.room-reservation-settlement-mode-grid,.room-fields-row{grid-template-columns:1fr}.online-payment-notes-field{grid-column:auto}.staff-action-grid.bonus,.staff-action-grid.staff-rate-grid{grid-template-columns:1fr}.pass-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.detail-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.compact-work-header{display:grid;gap:7px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);box-shadow:0 6px 16px #1720330a;padding:8px 10px}.group-work-header{margin-top:-2px}.group-details-hero{gap:6px;padding:7px 9px}.group-details-hero-main{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px}.group-details-hero-main h3{margin:0;color:var(--color-text);font-size:16px;font-weight:820;line-height:1.2;overflow-wrap:anywhere}.group-details-status-stack{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:4px}.group-details-page-badges{margin-left:auto}.group-details-fact-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.group-details-fact-grid article{display:grid;min-width:0;gap:2px;border:1px solid var(--color-border-soft);border-radius:7px;background:#f8fafc;padding:5px 7px}.group-details-fact-grid span,.group-details-fact-grid small{min-width:0;color:var(--color-text-muted);font-size:10px;line-height:1.25;overflow-wrap:anywhere}.group-details-fact-grid strong{min-width:0;color:var(--color-text);font-size:12px;font-weight:780;line-height:1.2;overflow-wrap:anywhere}.compact-fact-grid article{position:relative;overflow:hidden;border-color:var(--color-border-soft);background:#fff;box-shadow:0 1px #fffc inset;padding:9px 10px}.compact-fact-grid article:before{position:absolute;top:0;right:0;left:0;height:1px;background:color-mix(in srgb,var(--swiplo-brand-accent, var(--color-brand-primary)) 38%,#ffffff);content:""}.compact-fact-grid span,.compact-fact-grid small{min-width:0;color:var(--color-text-muted);font-size:11px;line-height:1.25;overflow-wrap:anywhere}.compact-fact-grid span{font-weight:760}.compact-fact-grid strong{min-width:0;color:var(--color-text-main);font-size:14px;font-weight:820;line-height:1.18;overflow-wrap:anywhere}.compact-fact-grid small{font-weight:660}.compact-fact-grid .student-profile-fact-value.is-muted{color:#718096;font-weight:700}.compact-fact-grid .student-profile-fact-value.is-warning{color:#a15f16}.compact-meta-row,.compact-status-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.compact-status-row{justify-content:space-between}.compact-meta-row span{display:inline-flex;min-width:0;align-items:baseline;gap:5px;min-height:24px;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:12px;padding:4px 8px;overflow-wrap:anywhere}.compact-meta-row strong{color:var(--color-text);font-size:12px}.compact-actions button{min-height:26px;font-size:12px;padding:4px 8px}.group-enrollment-modal{width:min(780px,calc(100vw - 48px))}@media (max-width: 860px){.group-details-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.group-details-fact-grid{grid-template-columns:1fr}.group-details-status-stack{justify-content:flex-start}}.compact-link-button{min-height:24px;border:0;background:transparent;color:var(--color-brand);cursor:pointer;font-size:12px;font-weight:800;padding:0}.compact-note{margin:0;color:var(--color-text-muted);font-size:12px;line-height:1.45}.report-instructor-cell,.report-group-cell{display:inline-flex;max-width:100%;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.report-instructor-cell>span:first-child,.report-group-cell>span:first-child{max-width:100%;overflow-wrap:anywhere}.report-group-link{max-width:100%;border:0;background:transparent;color:var(--color-text);cursor:pointer;font:inherit;font-size:12.5px;font-weight:880;line-height:1.22;padding:0;text-align:left;text-decoration:none;overflow-wrap:anywhere}.report-group-link:hover,.report-group-link:focus-visible{color:var(--color-brand-primary);outline:none}.report-instructor-cell small{max-width:100%;color:var(--color-text-muted);font-size:11px;font-weight:680;overflow-wrap:anywhere}.report-substitution-badge,.report-additional-class-badge{display:inline-flex;max-width:100%;align-items:center;width:fit-content;border-radius:999px;border:1px solid #e4d3a2;background:#fff9e8;color:#7a5c14;font-size:11px;font-weight:760;line-height:1.15;padding:3px 7px;overflow-wrap:anywhere}.report-additional-class-badge{border-color:var(--color-border-soft);background:#f8fafc;color:#536174}.inline-form-message{width:fit-content;max-width:100%;border:1px solid var(--color-border);border-radius:8px;background:#fbfcfe;color:var(--color-text-muted);font-size:12px;font-weight:720;line-height:1.35;padding:7px 9px;overflow-wrap:anywhere}.inline-form-message.warning{border-color:#f6d58b;background:#fffbeb;color:#8a5a00}.subdued-section{opacity:.92}.detail-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.secondary-summary-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.secondary-summary-row article,.secondary-summary-row button{display:grid;gap:3px;min-height:54px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text);cursor:default;padding:8px 10px;text-align:left}.secondary-summary-row article{cursor:default}.secondary-summary-row strong{font-size:13px;line-height:1.2}.secondary-summary-row span{color:var(--color-text-muted);font-size:11.5px;line-height:1.3}.group-secondary-lists{grid-template-columns:repeat(2,minmax(0,1fr))}.group-details-operations-bar{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;min-width:0;align-items:center;gap:8px;overflow:visible;border:1px solid #dfe6ee;border-radius:8px;background:#fff;box-shadow:0 8px 18px #0f172a08;padding:5px}.group-details-tabs{display:flex;min-width:0;flex-wrap:nowrap;gap:2px;overflow-x:auto;overflow-y:hidden;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;scrollbar-width:none}.group-details-tabs::-webkit-scrollbar{display:none}.group-details-actions-trigger{min-width:0;min-height:27px;border:1px solid var(--color-border-soft);border-radius:999px;background:#fff;color:var(--color-text);cursor:pointer;font:inherit;font-size:11px;font-weight:760;line-height:1.2;padding:5px 10px;white-space:nowrap}.group-details-actions-trigger:hover,.group-details-actions-trigger[aria-expanded=true]{border-color:#ee264942;background:#fff8fa;color:var(--color-brand-primary)}.group-details-global-actions-menu{z-index:calc(var(--z-action-menu) + 2)}.group-details-global-actions-menu .row-action-menu{right:0;left:auto;min-width:210px;text-align:left}.attendance-list-tabs-panel{margin:0 0 10px}.attendance-list-tabs-panel .group-details-tabs{width:100%}.attendance-details-action-row{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:5px}.attendance-details-action-row>button{min-height:27px;border:1px solid var(--color-border-soft);border-radius:999px;background:#fff;color:var(--color-text);cursor:pointer;font:inherit;font-size:11px;font-weight:760;line-height:1.2;padding:5px 10px}.attendance-details-action-row>button:hover:not(:disabled){border-color:#ee264942;background:#fff8fa;color:var(--color-brand-primary)}.attendance-details-action-row>button:disabled{cursor:not-allowed;opacity:.58}.group-details-tabs button{flex:0 0 auto;min-width:max-content;min-height:27px;border:0;border-radius:6px;background:transparent;color:#718096;cursor:pointer;font:inherit;font-size:11px;font-weight:740;line-height:1.2;padding:5px 11px;white-space:nowrap}.group-details-tabs button.active{background:#fff3f7;color:var(--color-brand-primary);box-shadow:inset 0 -2px 0 var(--color-brand-primary)}@media (max-width: 1100px){.group-details-operations-bar{gap:6px}}.group-tab-panel{display:grid;gap:7px;min-width:0}.group-attendance-tab{display:grid;gap:10px}.group-tab-heading{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.group-tab-heading>strong{color:var(--color-text);font-size:14px;font-weight:840}.group-tab-heading>span{min-width:0;color:var(--color-text-muted);font-size:12px;line-height:1.3;overflow-wrap:anywhere}.attendance-preview-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.attendance-preview-list li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:8px;align-items:start;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:7px 8px}.attendance-preview-list strong,.attendance-preview-list small{display:block;min-width:0;overflow-wrap:anywhere}.attendance-preview-list small{margin-top:2px;color:var(--color-text-muted);font-size:11px;font-weight:760}.group-secondary-table{min-width:760px}.group-tab-panel>.group-tab-heading{padding:8px 10px 0}.group-secondary-status-cell{display:grid;min-width:0;gap:4px;justify-items:start}.row-action-line{min-width:0;align-items:center}.group-tab-empty{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:10px}.group-tab-empty div{display:grid;min-width:0;gap:2px}.group-tab-empty strong{font-size:14px}.group-tab-empty span{color:var(--color-text-muted);font-size:12px;line-height:1.35;overflow-wrap:anywhere}.group-schedule-rule-list{display:grid;gap:7px}.group-schedule-rule-list article{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:9px 10px}.group-schedule-rule-list article>div{display:grid;min-width:0;gap:2px}.group-schedule-rule-list strong,.group-schedule-rule-list span{min-width:0;overflow-wrap:anywhere}.group-schedule-rule-list span{color:var(--color-text-muted);font-size:12px}.group-mini-list{display:grid;gap:5px;margin:4px 0 0;padding:0;list-style:none}.group-mini-list li{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;border-top:1px solid var(--color-border-soft);padding-top:5px}.group-mini-list span{display:grid;min-width:0;gap:1px}.group-mini-list small,.mini-list-empty,.mini-list-more{min-width:0;color:var(--color-text-muted);font-size:10.5px;line-height:1.25;overflow-wrap:anywhere}.mini-list-empty{margin:4px 0 0}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.option-card{display:grid;gap:5px;min-height:74px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);cursor:default;padding:11px;text-align:left}.option-card:first-child{border-color:#ee26493d;background:#fff9fb}.option-card strong,.option-card span{overflow-wrap:anywhere}.option-card strong{font-size:14px;line-height:1.25}.option-card span{color:var(--color-text-muted);font-size:12px;line-height:1.35}.compact-report-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.compact-report-form label{display:grid;gap:5px;color:var(--color-text-muted);font-size:12px;font-weight:730}.compact-report-form input,.compact-report-form textarea{width:100%;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);padding:8px 9px}.compact-report-form textarea{min-height:72px;resize:vertical}.compact-report-form .full-span,.compact-report-form button{grid-column:1 / -1}.compact-report-form .checkbox-line{display:flex;align-items:center;border:1px solid var(--color-border-soft);border-radius:7px;background:var(--color-surface-muted);color:var(--color-text);padding:8px 9px}.compact-report-form .checkbox-line input{width:auto}.price-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 12px;border:1px solid var(--color-border-soft);border-radius:8px;background:var(--color-surface-muted);padding:12px}.price-summary span{color:var(--color-text-muted);font-size:13px}.price-summary strong{font-size:14px;text-align:right}.pass-flow{display:grid;gap:8px;max-width:980px}.simple-pass-flow{gap:7px;max-width:900px}.pass-context-strip{display:flex;flex-wrap:wrap;gap:7px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:8px 10px}.pass-context-strip span{display:inline-flex;align-items:baseline;gap:5px;min-height:24px;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:12px;padding:4px 8px}.pass-context-strip strong{color:var(--color-text);font-size:12px}.compact-step{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:9px 10px}.compact-step>header{display:flex;align-items:center;gap:8px}.compact-step>header span{display:grid;width:24px;height:24px;place-items:center;border-radius:999px;background:#fff7f9;color:var(--color-brand-primary-dark);font-size:12px;font-weight:820}.compact-step>header strong{font-size:13px}.simple-pass-flow .compact-step{grid-template-columns:128px minmax(0,1fr);padding:7px 9px}.simple-pass-flow .compact-step>header span{width:22px;height:22px}.compact-option-grid{display:grid;gap:7px}.pass-options-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.payment-options-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.decision-options-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.assigned-pass-row{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1fr);align-items:center;gap:8px}.muted-pass-note{color:var(--color-text-muted);font-size:11.5px;line-height:1.35}.payment-mini-row,.validity-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.payment-mini-row{grid-template-columns:repeat(4,minmax(0,1fr))}.validity-mini-card{display:grid;gap:3px;min-height:54px;border:1px solid var(--color-border);border-radius:8px;background:#fff;padding:7px 9px}.validity-mini-card.selected{border-color:#ee264952;background:#fff7f9}.validity-mini-card strong{font-size:12px;line-height:1.2}.validity-mini-card span{color:var(--color-text-muted);font-size:11px;line-height:1.25}.compact-option-card{display:grid;gap:3px;min-width:0;min-height:58px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);cursor:default;padding:8px 9px;text-align:left}.compact-option-card.selected{border-color:#ee264975;background:#fff7f9;box-shadow:inset 0 0 0 1px #ee26491a}.compact-option-card strong{min-width:0;font-size:13px;line-height:1.2;overflow-wrap:anywhere}.compact-option-card span{min-width:0;color:var(--color-text-muted);font-size:11px;line-height:1.25;overflow-wrap:anywhere}.compact-option-card .option-meta{color:var(--color-brand-primary-dark);font-size:12px;font-weight:780}.compact-inline-row{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.discount-step-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.discount-badge{display:grid;min-width:220px;max-width:100%;gap:2px;border:1px solid #b9d9c6;border-radius:8px;background:#f1faf4;color:#2f6c47;padding:7px 9px}.discount-badge strong{font-size:12px;line-height:1.2}.discount-badge span{color:#557868;font-size:11px;line-height:1.25}.discount-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.text-link-button{min-height:24px;border:0;background:transparent;color:#536174;cursor:default;font-size:12px;font-weight:760;padding:2px 4px}.table-link-value{color:var(--color-brand-primary-dark);font-weight:820;text-decoration:underline;text-underline-offset:3px}.legacy-pass-form{display:grid;gap:8px;max-width:960px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:10px 12px}.add-pass-workspace{display:grid;gap:9px;max-width:1040px}.add-pass-section{display:grid;min-width:0;gap:8px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:10px 12px}.add-pass-context-grid,.add-pass-summary-grid{display:grid;min-width:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.add-pass-context-grid span,.add-pass-summary-grid span{display:grid;min-width:0;gap:2px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;color:var(--color-text);font-size:12px;font-weight:720;padding:7px 8px}.add-pass-context-grid strong,.add-pass-summary-grid strong{color:var(--color-text-muted);font-size:10.5px;font-weight:840;text-transform:uppercase}.add-pass-summary-grid .final-price{border-color:#ee26493d;background:#fff7f9;color:var(--color-brand-primary-dark)}.add-pass-discount-badge,.add-pass-entry-panel{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 10px}.add-pass-entry-panel>div,.add-pass-discount-badge{min-width:0}.add-pass-entry-panel>div{display:grid;gap:2px}.add-pass-entry-panel strong,.add-pass-discount-badge strong{color:var(--color-text);font-size:13px;font-weight:820}.add-pass-entry-panel span,.add-pass-entry-panel small,.add-pass-discount-badge span{color:var(--color-text-muted);font-size:11.5px;line-height:1.3}.single-screen-pass-form{gap:7px}.pass-context-line{border-bottom:1px solid var(--color-border-soft);color:var(--color-text-muted);font-size:12px;font-weight:730;line-height:1.25;padding:0 0 7px}.legacy-form-section{display:grid;gap:6px;min-width:0}.legacy-form-context{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--color-border-soft);padding-bottom:8px}.legacy-form-context span{display:inline-flex;align-items:baseline;gap:5px;min-height:24px;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:12px;padding:4px 8px}.legacy-form-context strong{color:var(--color-text)}.legacy-form-row{display:grid;grid-template-columns:138px minmax(0,1fr);align-items:start;gap:10px;border-bottom:1px solid var(--color-border-soft);padding:7px 0}.legacy-form-row.compact-row{align-items:center}.legacy-form-label,.class-editor-panel>header h3,.class-editor-section>h4,.class-editor-section-header h4,.panel-header h3,.config-editor-panel header>strong,.discount-form-section>strong,.staff-photo-preview strong,.staff-action-header>strong,.class-filter-panel-heading strong,.pass-form-section>strong,.pass-section-heading>strong,.action-modal header strong,.lesson-report-form-section>h3,.group-tab-heading>strong,.group-tab-empty strong{display:flex;min-width:0;align-items:center;gap:7px}.legacy-form-label{padding-top:0}.legacy-form-label:before,.class-editor-panel>header h3:before,.class-editor-section>h4:before,.class-editor-section-header h4:before,.panel-header h3:before,.config-editor-panel header>strong:before,.discount-form-section>strong:before,.staff-photo-preview strong:before,.staff-action-header>strong:before,.class-filter-panel-heading strong:before,.pass-form-section>strong:before,.pass-section-heading>strong:before,.action-modal header strong:before,.lesson-report-form-section>h3:before,.group-tab-heading>strong:before,.group-tab-empty strong:before{display:inline-block;flex:0 0 auto;width:3px;height:14px;border-radius:999px;background:var(--swiplo-primary);content:""}.legacy-form-label strong{color:#2d3748;font-size:14px;font-weight:850;letter-spacing:0}.legacy-form-label span{display:none;color:var(--color-text-muted);font-size:11px;line-height:1.25}.legacy-form-field{display:grid;gap:6px;min-width:0}.tile-choice-grid{display:grid;gap:6px}.pass-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.discount-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:620px}.payment-choice-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.month-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.small-choice-card{display:grid;gap:2px;min-height:48px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);cursor:default;padding:7px 8px;text-align:left}.compact-tiles{gap:6px}.single-screen-pass-form .small-choice-card{min-height:40px;padding:6px 8px}.single-screen-pass-form .small-choice-card strong{overflow:hidden;font-size:12px;font-weight:820;text-overflow:ellipsis;white-space:nowrap}.single-screen-pass-form .small-choice-card small{overflow:hidden;font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.small-choice-card.selected{border-color:#ee26496b;background:#fff7f9;box-shadow:inset 0 0 0 1px #ee26491a}.small-choice-card strong{font-size:12px;line-height:1.18}.small-choice-card span{color:var(--color-brand-primary-dark);font-size:12px;font-weight:800;line-height:1.15}.small-choice-card small{color:var(--color-text-muted);font-size:10.5px;line-height:1.25}.price-line-summary,.pass-save-summary{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.price-line-summary span,.pass-save-summary span{display:inline-flex;align-items:center;gap:5px;min-height:26px;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:12px;padding:4px 8px}.price-line-summary strong,.pass-save-summary strong{color:var(--color-text);font-size:13px}.price-line-summary .final-price{border-color:#ee264933;background:#fff7f9}.single-line-summary{gap:6px}.single-line-summary span{min-height:28px;font-weight:760;padding:5px 9px}.validity-legacy-grid{display:grid;gap:7px}.legacy-validity-case{display:grid;gap:6px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px}.legacy-validity-case.selected{border-color:#ee264933;background:#fff7f9}.legacy-validity-case>strong{font-size:12.5px}.legacy-validity-case p{margin:0;color:var(--color-text-muted);font-size:11.5px;line-height:1.35}.compact-validity-case{gap:6px;padding:7px}.compact-validity-case>strong{font-size:12px}.compact-validity-case p{font-size:11px}.date-row{display:flex;flex-wrap:wrap;align-items:end;gap:7px}.date-row label{display:grid;gap:3px;color:var(--color-text-muted);font-size:11px;font-weight:760}.date-row input{min-height:30px;width:132px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);font-size:12px;padding:5px 7px}.date-row span{color:var(--color-text-muted);font-size:11.5px;padding-bottom:7px}.legacy-form-footer{display:flex;flex-wrap:wrap;align-items:center;gap:9px;border-top:1px solid var(--color-border-soft);padding-top:7px}.add-pass-form-footer{justify-content:flex-end;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:10px 12px}.add-pass-reception-flow{max-width:1180px;gap:8px}.add-pass-reception-header{min-width:0}.compact-pass-context{display:flex;min-width:0;flex-wrap:wrap;gap:6px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:7px 9px}.compact-pass-context span{display:inline-flex;min-width:0;align-items:center;gap:5px;max-width:260px;border:1px solid var(--color-border-soft);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:11px;font-weight:730;padding:3px 7px}.compact-pass-context strong{flex:0 0 auto;color:var(--color-text);font-size:11px}.add-pass-quick-grid{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) minmax(280px,320px);gap:8px;align-items:start}.add-pass-left-column,.add-pass-right-column{display:grid;min-width:0;gap:8px}.add-pass-right-column{position:sticky;top:12px}.add-pass-quick-panel{display:grid;min-width:0;align-content:start;gap:7px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:8px}.add-pass-variant-panel,.add-pass-payment-panel,.add-pass-validity-panel{min-height:0}.add-pass-quick-heading{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:6px}.add-pass-quick-heading>strong{display:flex;min-width:0;align-items:center;gap:6px;color:var(--color-text);font-size:13px;font-weight:850}.add-pass-quick-heading>strong:before{display:inline-block;flex:0 0 auto;width:3px;height:13px;border-radius:999px;background:var(--color-brand-primary);content:""}.add-pass-reception-flow .pass-choice-grid{grid-template-columns:repeat(auto-fit,minmax(138px,1fr))}.add-pass-reception-flow .discount-choice-grid{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));max-width:none;max-height:112px;overflow:auto}.add-pass-reception-flow .payment-choice-grid{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.add-pass-reception-flow .small-choice-card{min-height:38px;cursor:pointer;padding:5px 7px}.add-pass-reception-flow .small-choice-card strong{overflow:hidden;color:var(--color-text);font-size:12px;font-weight:840;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.add-pass-reception-flow .small-choice-card span{color:var(--color-brand-primary-dark);font-size:13px;font-weight:860}.add-pass-reception-flow .small-choice-card small{overflow:hidden;color:var(--color-text-muted);font-size:10.5px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.add-pass-month-control,.add-pass-date-control{display:grid;min-width:0;gap:7px}.add-pass-month-actions{display:grid;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.add-pass-month-actions .secondary-button{min-height:30px;justify-content:center;font-size:11px;padding:5px 7px}.add-pass-date-control{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:end}.compact-field-label{display:grid;min-width:0;gap:4px;color:var(--color-text-muted);font-size:10px;font-weight:820;text-transform:uppercase}.compact-field-label input{min-height:36px;box-sizing:border-box;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);font-size:12px;font-weight:760;padding:6px 8px}.add-pass-validity-card{display:grid;min-width:0;gap:2px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:6px 8px}.add-pass-validity-card small{color:var(--color-text-muted);font-size:10px;font-weight:820;text-transform:uppercase}.add-pass-validity-card strong{overflow:hidden;color:var(--color-text);font-size:13px;font-weight:860;text-overflow:ellipsis;white-space:nowrap}.add-pass-validity-card span{color:var(--color-text-muted);font-size:11px;font-weight:730}.add-pass-summary-strip{display:grid;min-width:0;grid-template-columns:1fr;gap:6px}.add-pass-summary-strip span{display:grid;min-width:0;grid-template-columns:minmax(82px,.45fr) minmax(0,1fr);align-items:center;gap:2px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:6px 7px}.add-pass-summary-strip small{color:var(--color-text-muted);font-size:10px;font-weight:820;text-transform:uppercase}.add-pass-summary-strip strong{overflow:hidden;color:var(--color-text);font-size:12px;font-weight:840;text-overflow:ellipsis;white-space:nowrap}.add-pass-summary-strip .final-price{border-color:#ee26493d;background:#fff7f9}.add-pass-summary-strip .final-price strong{color:var(--color-brand-primary-dark)}.add-pass-form-footer{position:sticky;bottom:0;z-index:3;box-shadow:0 -8px 18px #1720330d}.add-pass-entry-helper{margin-right:auto;color:var(--color-text-muted);font-size:11px;font-weight:730;line-height:1.35}.compact-empty-state{padding:8px}.single-screen-pass-form .legacy-form-footer button{min-height:34px;padding:7px 12px}.pass-save-message{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:30px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;color:var(--color-text-muted);font-size:12px;font-weight:720;padding:6px 8px}.pass-save-message.tone-green{border-color:color-mix(in srgb,var(--swiplo-success) 24%,var(--swiplo-border));background:var(--swiplo-success-soft);color:var(--swiplo-success)}.pass-save-message.tone-red{border-color:color-mix(in srgb,var(--swiplo-danger) 24%,var(--swiplo-border));background:var(--swiplo-danger-soft);color:var(--swiplo-danger)}.pass-save-message.tone-yellow{border-color:color-mix(in srgb,var(--swiplo-warning) 24%,var(--swiplo-border));background:var(--swiplo-warning-soft);color:var(--swiplo-warning)}.pass-save-message.tone-blue{border-color:color-mix(in srgb,var(--swiplo-info) 24%,var(--swiplo-border));background:var(--swiplo-info-soft);color:var(--swiplo-info)}.validity-panel{display:grid;gap:8px}.validity-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:8px 9px}.validity-row>div:first-child{display:grid;gap:2px}.validity-row strong{font-size:12.5px;line-height:1.2}.validity-row span,.validity-row small{color:var(--color-text-muted);font-size:11px;line-height:1.25}.monthly-validity-row{grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr)}.month-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.month-option{display:grid;gap:2px;min-height:44px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);cursor:default;padding:7px 8px;text-align:left}.month-option.selected{border-color:#ee264975;background:#fff7f9;box-shadow:inset 0 0 0 1px #ee26491a}.month-option strong{font-size:12px}.month-option span{color:var(--color-text-muted);font-size:10.5px}.validity-summary{margin:0;color:var(--color-text-muted);font-size:11.5px;line-height:1.35}.compact-price-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;max-width:760px}.summary-cell{display:grid;gap:3px;border:1px solid var(--color-border-soft);border-radius:8px;background:#f8fafc;padding:7px 8px}.summary-cell span{color:var(--color-text-muted);font-size:11px}.summary-cell strong{font-size:13px;line-height:1.25}.summary-cell.final,.summary-cell.activation{border-color:#ee26492e;background:#fff7f9}.summary-cell.activation{grid-column:span 2}.pass-flow-footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:9px 10px}.room-reservations-month-nav,.room-reservations-branch-bar,.room-reservations-filters,.room-reservation-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.room-reservations-toolbar{display:grid;gap:12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:14px}.room-reservations-month-nav{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,auto) minmax(180px,1fr);align-items:center;gap:10px;padding-bottom:4px}.room-reservations-month-nav strong{justify-self:center;color:var(--color-text);font-size:18px;font-weight:900;text-transform:capitalize}.room-reservations-month-nav-side{display:flex;align-items:center;gap:8px}.room-reservations-month-nav-side.right{justify-content:flex-end}.room-reservations-filter-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px}.room-reservations-branch-bar{padding-top:2px}.room-reservations-branch-chip{min-height:38px;border-radius:10px}.room-reservations-branch-chip.active{border-color:#ee264942;background:#ee264912;color:var(--color-brand-primary)}.room-reservations-branch-chip:hover{border-color:#ee264947}.room-reservations-filters{justify-content:flex-end;padding-top:0}.room-reservations-filters .room-reservation-dropdown{min-width:220px}.room-reservation-form-grid input,.room-reservation-form-grid textarea{min-height:44px;border:1px solid var(--color-border);border-radius:11px;background:#fff;color:var(--color-text);font:inherit;font-size:14px;padding:10px 12px;box-shadow:0 1px #ffffffb8 inset}.room-reservation-form-grid input:focus,.room-reservation-form-grid textarea:focus{border-color:#ee264973;box-shadow:0 0 0 3px #ee26491c;outline:none}.room-reservations-filters .public-filter-select,.room-reservation-form-grid .public-filter-select{height:40px;min-height:40px}.room-reservation-modal-dropdown-menu{z-index:var(--z-modal-elevated)}.room-reservations-list{display:grid;gap:14px}.room-reservations-day{display:grid;gap:10px}.room-reservations-day>header{display:flex;justify-content:space-between;color:var(--color-text-muted);font-size:13px}.room-reservations-day-items{display:grid;gap:8px}.room-reservation-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:10px 12px}.room-reservation-card>div:first-child{display:grid;gap:3px}.room-reservation-card time{color:var(--color-brand-primary);font-size:12px;font-weight:800}.room-reservation-card strong{color:var(--color-text);font-size:14px}.room-reservation-card span,.room-reservation-card small{color:var(--color-text-muted)}.room-reservations-view-switch{display:flex;flex-wrap:wrap;gap:8px}.room-reservations-view-switch button{border:1px solid var(--color-border);border-radius:999px;background:#fff;color:var(--color-text-muted);font-size:12px;font-weight:800;padding:7px 12px}.room-reservations-view-switch button.active{border-color:#ee264959;background:#ee264917;color:var(--color-brand-primary)}.room-reservations-view-switch button:disabled{cursor:not-allowed;opacity:.62}.room-reservations-view-placeholder,.future-action-note{display:inline-flex;align-items:center;min-height:34px;border:1px dashed #cbd5e1;border-radius:999px;background:#f8fafc;color:#64748b;font-size:12px;font-weight:800;padding:7px 12px;white-space:nowrap}.room-reservations-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;overflow:visible;border:1px solid var(--color-border);border-radius:8px;background:var(--color-border)}.room-reservations-weekday{background:#f8fafc;color:var(--color-text-muted);font-size:11px;font-weight:900;letter-spacing:0;padding:8px 10px;text-transform:uppercase}.room-reservations-calendar-cell{display:grid;align-content:start;gap:8px;min-height:142px;background:var(--color-surface);padding:8px}.room-reservations-calendar-cell.muted{background:#f8fafc}.room-reservations-calendar-cell>header{display:flex;align-items:center;justify-content:space-between;color:var(--color-text-muted);font-size:12px;font-weight:800}.room-reservations-calendar-cell>header strong{display:inline-flex;align-items:center;justify-content:center;min-width:22px;min-height:22px;border-radius:999px;background:#ee264917;color:var(--color-brand-primary);font-size:11px}.room-reservations-cell-items{display:grid;gap:6px}.room-reservation-calendar-item{display:grid;gap:4px;border:1px solid rgb(15 23 42 / 9%);border-radius:7px;background:#fff;box-shadow:0 8px 18px #0f172a0d;color:var(--color-text);padding:7px}.room-reservation-calendar-item.is-high-priority{border-color:#ee264952;background:#fff7f9;box-shadow:0 10px 22px #ee264917}.room-reservation-calendar-item time{color:var(--color-brand-primary);font-size:11px;font-weight:900}.room-reservation-calendar-item strong{overflow-wrap:anywhere;font-size:12px;line-height:1.25}.room-reservation-calendar-item span,.room-reservation-calendar-item small{color:var(--color-text-muted);font-size:11px;line-height:1.3}.room-reservation-calendar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:2px}.room-reservation-calendar-actions .row-action{min-height:24px;padding:3px 8px}.room-reservation-settlement-amount{color:var(--color-text);font-size:11px;font-weight:900}.room-reservations-more{color:var(--color-text-muted);font-size:11px;font-weight:800;padding:2px 3px}.room-reservation-modal{width:min(860px,calc(100vw - 48px));padding:16px}.room-reservation-modal-section{display:grid;gap:10px;border:1px solid rgb(255 255 255 / 78%);border-radius:14px;background:#ffffffb3;padding:12px}.room-reservation-modal-section>header{display:grid;gap:2px}.room-reservation-modal-section>header span{color:var(--color-brand-primary);font-size:11px;font-weight:900;text-transform:uppercase}.room-reservation-modal-section>header strong{color:var(--color-text);font-size:14px}.room-reservation-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.room-reservation-form-wide{grid-column:1 / -1}.room-reservation-priority-toggle{grid-template-columns:auto minmax(0,1fr);align-items:center;border:1px solid rgb(238 38 73 / 16%);border-radius:12px;background:#fff7f9;color:var(--color-text);padding:10px}.room-reservation-priority-toggle input{width:18px;min-height:18px;margin:0;accent-color:var(--color-brand-primary)}.room-reservation-priority-toggle span{display:grid;gap:2px}.room-reservation-priority-toggle strong{font-size:13px}.room-reservation-priority-toggle small{color:var(--color-text-muted);font-size:11px}.room-reservation-settlement-section{border-color:#3b82f62e;background:#eff6ff9e}.room-reservation-settlement-preview{display:grid;gap:3px;border:1px solid rgb(59 130 246 / 14%);border-radius:10px;background:#fff;padding:10px}.room-reservation-settlement-preview strong{color:var(--color-text);font-size:14px}.room-reservation-settlement-preview span{color:var(--color-text-muted);font-size:12px}.room-reservation-conflict-warning{display:grid;gap:12px;border:1px solid rgb(245 158 11 / 28%);border-radius:14px;background:linear-gradient(180deg,#fffbebeb,#fff7edbd);color:var(--color-text);padding:12px;box-shadow:0 12px 24px #92400e12}.room-reservation-conflict-warning header{display:grid;gap:3px}.room-reservation-conflict-warning header span{color:#b45309;font-size:11px;font-weight:900;letter-spacing:0;text-transform:uppercase}.room-reservation-conflict-warning h3{margin:0;font-size:15px}.room-reservation-conflict-warning p{margin:0;color:#92400e;font-size:12px;line-height:1.45}.room-reservation-conflict-list{display:grid;gap:8px}.room-reservation-conflict-row{display:grid;grid-template-columns:minmax(82px,auto) minmax(0,1fr) auto auto;align-items:center;gap:8px;border:1px solid rgb(245 158 11 / 20%);border-radius:11px;background:#ffffffb8;padding:8px 9px}.room-reservation-conflict-row span{color:#b45309;font-size:11px;font-weight:900;text-transform:uppercase}.room-reservation-conflict-row strong{min-width:0;color:var(--color-text);font-size:13px}.room-reservation-conflict-row time,.room-reservation-conflict-row small{color:var(--color-text-muted);font-size:12px;font-weight:760}@media (max-width: 1180px){.metrics-grid,.layout-four,.tile-grid,.traffic-grid,.detail-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-report-view>.metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.layout-three,.config-locations-layout,.split-bar{grid-template-columns:1fr}.news-row{grid-template-columns:64px minmax(0,1fr)}.option-grid,.config-form-grid,.owner-dashboard-finance-hero,.owner-dashboard-stat-strip,.owner-dashboard-insight-grid,.class-filter-grid,.class-editor-columns,.class-editor-section-grid,.class-form-grid,.class-form-grid.compact,.class-schedule-rule-grid,.student-filter-groups,.class-row,.class-row-details,.secondary-summary-row,.assigned-pass-row,.validity-mini-grid,.payment-mini-row,.add-pass-context-grid,.add-pass-summary-grid,.add-pass-quick-grid,.add-pass-left-column,.add-pass-right-column,.add-pass-summary-strip,.legacy-form-row,.pass-choice-grid,.discount-choice-grid,.payment-choice-grid,.add-pass-date-control,.add-pass-month-actions,.month-choice-grid,.student-payment-due-choice-grid,.student-payment-method-choice-grid,.lesson-report-form,.lesson-report-info-grid,.lesson-report-info-grid.compact,.lesson-report-metric-grid,.lesson-report-attendance-grid,.lesson-report-status-grid,.compact-report-form{grid-template-columns:1fr}.student-filter-search-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.student-filter-submit{grid-column:1 / -1}.add-pass-right-column{position:static}.compact-page-hero .hero-actions:has(.student-list-actions-row){max-width:100%}.student-list-actions-row{flex-wrap:wrap}.class-list-table-header{display:none}.class-row [data-column-label]:not(.class-row-index):before{display:block;margin-bottom:3px}.class-row-meta,.class-pass-link-button{max-width:none}.class-row-status-box,.class-row-actions-primary{justify-content:flex-start}.class-filter-search,.compact-step,.pass-options-grid,.payment-options-grid,.decision-options-grid,.month-option-grid,.compact-price-summary,.validity-row,.monthly-validity-row{grid-template-columns:1fr}.summary-cell.activation{grid-column:span 1}}@media (max-width: 860px){.app-shell,.client-portal-shell{grid-template-columns:1fr}.client-portal-sidebar{position:static;gap:12px;border-right:0;border-bottom:1px solid var(--color-border-soft);padding:14px}.client-portal-nav{grid-auto-flow:column;grid-auto-columns:minmax(132px,max-content);overflow-x:auto;padding-bottom:2px}.client-portal-topbar{align-items:stretch;flex-direction:column}.client-portal-account{flex-wrap:wrap}.sidebar{position:static;height:auto;max-height:none}.sidebar-nav{grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);overflow-x:auto}.nav-item{border-left:0;border-bottom:3px solid transparent}.nav-item.active{border-bottom-color:var(--swiplo-brand-accent);border-left-color:transparent}.premium-nav{display:none}.topbar,.page-hero{align-items:stretch;flex-direction:column}.workspace-content,.topbar{padding-left:16px;padding-right:16px}.metrics-grid,.layout-two,.layout-four,.owner-dashboard-metrics,.owner-dashboard-monthly-panel,.owner-dashboard-monthly-kpis,.owner-dashboard-section-grid,.owner-dashboard-tile-grid,.owner-dashboard-two-panels,.reception-dashboard-metrics,.reception-dashboard-operational-grid,.reception-dashboard-class-columns,.reception-dashboard-class-actions,.reception-dashboard-quick-actions,.reception-dashboard-shift-panel,.reception-dashboard-shift-grid,.instructor-dashboard-metrics,.instructor-dashboard-operational-grid,.instructor-dashboard-class-columns,.instructor-dashboard-class-actions,.instructor-dashboard-two-panels,.instructor-dashboard-communication-grid,.instructor-dashboard-quick-strip,.instructor-dashboard-check-strip,.client-dashboard-status-grid,.client-dashboard-upcoming-card-actions,.client-dashboard-main-row,.client-dashboard-week-grid,.client-dashboard-payment-card,.client-dashboard-inline-actions,.client-dashboard-communication-grid,.client-dashboard-quick-actions,.client-calendar-toolbar,.client-calendar-detail-card,.settings-tab-grid,.settings-summary-strip,.settings-field-grid,.settings-form-grid,.settings-choice-grid-two,.settings-fees-toggle-row,.settings-fees-fields-grid,.settings-fees-segment-grid,.settings-fees-renewals-grid,.settings-toggle-grid,.settings-renewal-option-grid-compact,.settings-fees-principles,.settings-logo-grid,.settings-notifications-bottom-grid,.settings-channel-grid,.settings-notification-primary-grid,.settings-notification-rule-row,.settings-messenger-type-grid,.settings-messenger-notification-grid,.settings-messenger-availability-grid,.settings-security-role-grid,.settings-security-card-grid,.settings-import-export-grid,.settings-import-template-grid,.settings-import-validation-grid,.settings-import-history-grid,.settings-billing-grid,.settings-billing-history-grid,.settings-support-action-grid,.settings-support-diagnostics-grid,.settings-support-knowledge-grid,.settings-support-status-grid,.settings-online-account-field-grid,.settings-online-usage-grid,.settings-sms-config-grid,.settings-invoices-config-grid,.settings-integration-card-grid,.tile-grid,.form-grid.two-columns,.form-grid.three-columns,.student-modern-form .student-type-picker,.student-profile-fact-grid,.student-pass-card-grid,.student-type-picker,.traffic-grid{grid-template-columns:1fr}.client-calendar-toolbar,.client-calendar-day-details>header{align-items:stretch;flex-direction:column}.client-calendar-toolbar-actions,.client-calendar-detail-actions{justify-content:flex-start}.client-dashboard-online-payment{align-items:stretch;flex-direction:column}.client-dashboard-online-payment-actions{justify-content:space-between}.client-calendar-grid{grid-template-columns:repeat(7,minmax(92px,1fr));overflow-x:auto}.client-calendar-entry-preview{display:none}.room-reservations-month-grid,.room-reservations-month-nav,.room-reservations-filter-row{grid-template-columns:1fr}.room-reservations-filters{justify-content:flex-start}.room-reservations-filters .room-reservation-dropdown{min-width:min(220px,100%)}.room-reservations-month-nav strong,.room-reservations-month-nav-side,.room-reservations-month-nav-side.right{justify-self:stretch;justify-content:flex-start}.room-reservations-weekday{display:none}.room-reservations-calendar-cell{min-height:auto}.staff-report-view>.metrics-grid{grid-template-columns:1fr}.superadmin-table-header,.superadmin-table-row{grid-template-columns:1fr}.superadmin-table-header{display:none}.hero-actions{justify-content:flex-start;min-width:0}.chart-card,.chart-card.compact,.timeline-row,.timeline-row.reception-row,.sports-card-row,.owner-dashboard-row,.owner-dashboard-tile,.owner-dashboard-alert-row,.reception-dashboard-alert-row,.instructor-dashboard-row,.instructor-dashboard-communication-card,.instructor-dashboard-alert-row{grid-template-columns:1fr}.owner-dashboard-tile-actions{justify-items:start}.settings-integration-account header,.settings-integration-list article{align-items:flex-start;flex-direction:column}}
