.db-connecting-screen{display:grid;place-content:center;justify-items:center;gap:18px;min-height:min(100svh,720px);padding:32px 20px}.db-connecting-message{margin:0;color:#1f5e58;font-size:19px;font-weight:800;letter-spacing:.02em}.db-connecting-copy{display:grid;gap:8px;justify-items:center;max-width:360px;text-align:center}.db-connecting-detail{margin:0;color:#66716d;font-size:14px;line-height:1.5;font-weight:600;white-space:pre-line}.db-connecting-retry{min-width:140px}.auth-bootstrap-retry-shell{display:grid;justify-items:center;gap:8px;padding:24px 16px 32px}.auth-bootstrap-retry-actions{display:grid;justify-items:center;gap:12px;max-width:360px;text-align:center}.auth-bootstrap-retry-actions .inline-note{margin:0}.db-connecting-dots{--dot-size: 14px;--dot-color: #1f5e58;--orbit-radius: 22px;position:relative;width:72px;height:56px}.db-connecting-dots-glow{position:absolute;top:-14px;right:-10px;bottom:-14px;left:-10px;border-radius:999px;background:radial-gradient(circle,rgba(31,94,88,.2) 0%,transparent 72%);animation:db-dots-glow 3.6s ease-in-out infinite}.db-connecting-dot{position:absolute;top:50%;left:50%;width:var(--dot-size);height:var(--dot-size);margin:calc(var(--dot-size) / -2) 0 0 calc(var(--dot-size) / -2);border-radius:50%;background:var(--dot-color);box-shadow:0 2px 8px #1f5e5838;animation-duration:3.6s;animation-timing-function:cubic-bezier(.45,.05,.2,1);animation-iteration-count:infinite;will-change:transform}.db-connecting-dot-1{animation-name:db-dot-1}.db-connecting-dot-2{animation-name:db-dot-2}.db-connecting-dot-3{animation-name:db-dot-3}@keyframes db-dot-1{0%,to{transform:translateY(calc(var(--orbit-radius) * -1))}10%{transform:translate(calc(var(--orbit-radius) * .866),calc(var(--orbit-radius) * -.5))}20%{transform:translate(calc(var(--orbit-radius) * .866),calc(var(--orbit-radius) * .5))}30%{transform:translate(-28px)}36%{transform:translate(-28px,-16px)}42%{transform:translate(-28px)}48%{transform:translate(-28px,-10px)}54%,58%{transform:translate(-28px)}66%{transform:translateY(-20px)}74%{transform:translateY(-28px)}82%{transform:translateY(-20px)}90%{transform:translateY(calc(var(--orbit-radius) * -.5))}}@keyframes db-dot-2{0%,to{transform:translate(calc(var(--orbit-radius) * -.866),calc(var(--orbit-radius) * .5))}10%{transform:translateY(calc(var(--orbit-radius) * -1))}20%{transform:translate(calc(var(--orbit-radius) * .866),calc(var(--orbit-radius) * -.5))}30%{transform:translate(0)}36%{transform:translate(0)}42%{transform:translateY(-16px)}48%{transform:translate(0)}54%{transform:translateY(-10px)}58%,62%{transform:translate(0)}66%{transform:translate(-22px,14px)}74%{transform:translate(-22px,8px)}82%{transform:translate(-22px,14px)}90%{transform:translate(calc(var(--orbit-radius) * -.5),calc(var(--orbit-radius) * .866))}}@keyframes db-dot-3{0%,to{transform:translate(calc(var(--orbit-radius) * .866),calc(var(--orbit-radius) * .5))}10%{transform:translate(calc(var(--orbit-radius) * -.866),calc(var(--orbit-radius) * .5))}20%{transform:translateY(calc(var(--orbit-radius) * -1))}30%{transform:translate(28px)}36%{transform:translate(28px)}42%{transform:translate(28px)}48%{transform:translate(28px,-16px)}54%{transform:translate(28px)}58%{transform:translate(28px,-10px)}62%{transform:translate(28px)}66%{transform:translate(22px,14px)}74%{transform:translate(22px,8px)}82%{transform:translate(22px,14px)}90%{transform:translate(calc(var(--orbit-radius) * .5),calc(var(--orbit-radius) * .866))}}@keyframes db-dots-glow{0%,to{opacity:.35;transform:scale(.94)}30%{opacity:.55;transform:scale(1.02)}62%{opacity:.75;transform:scale(1.08)}88%{opacity:.6;transform:scale(1.04)}}@media(prefers-reduced-motion:reduce){.db-connecting-dot,.db-connecting-dots-glow{animation:none}.db-connecting-dot-1{transform:translate(-14px)}.db-connecting-dot-2{transform:translate(0)}.db-connecting-dot-3{transform:translate(14px)}.db-connecting-dots-glow{opacity:.45}}.pwa-install-guide-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:320;display:grid;place-items:center;padding:20px;background:#0c1c1a6b}.pwa-install-guide-modal{width:min(100%,420px);padding:20px;border-radius:16px;border:1px solid rgba(24,63,59,.14);background:#fffdf8;box-shadow:0 18px 48px #132e2b2e}.pwa-install-guide-modal-attendance{border-color:#0f234b29}.pwa-install-guide-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.pwa-install-guide-header h2{margin:0;color:#18463f;font-size:19px;line-height:1.35}.pwa-install-guide-close{display:grid;place-items:center;width:32px;height:32px;border:none;border-radius:999px;background:#183f3b14;color:#1f5e58;cursor:pointer}.pwa-install-guide-steps{margin:0;padding-left:20px;color:#234641;font-size:16px;line-height:1.55}.pwa-install-guide-steps li+li{margin-top:10px}.pwa-install-guide-footer{margin:14px 0 0;color:#4f6f6a;font-size:14px;line-height:1.5}.pwa-install-guide-confirm{width:100%;margin-top:18px;padding:12px 16px;border:none;border-radius:12px;background:#1f5e58;color:#fff;font-size:16px;font-weight:700;cursor:pointer}.pwa-install-guide-modal-attendance .pwa-install-guide-confirm{background:#0f234b}.pwa-install-banner{position:sticky;top:8px;z-index:250;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:8px;padding:12px;border:1px solid rgba(31,94,88,.22);border-radius:12px;background:#f7fcfbf2;box-shadow:0 6px 18px #132e2b14}@media(max-width:900px){.pwa-install-banner{position:fixed;top:calc(var(--mobile-header-h, 52px) + env(safe-area-inset-top,0px));right:8px;left:8px;margin:0}.pwa-install-banner-attendance{top:auto;bottom:calc(12px + env(safe-area-inset-bottom,0px))}}@media(min-width:901px){.pwa-install-banner-attendance{position:fixed;top:12px;right:12px;left:auto;width:min(420px,calc(100vw - 24px));margin:0}}.pwa-install-banner-copy{display:grid;gap:3px;flex:1 1 220px}.pwa-install-banner-copy strong{color:#163f3b;font-size:14px}.pwa-install-banner-copy span{color:#395753;font-size:13px;line-height:1.45}.pwa-install-banner-actions{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;flex:0 0 auto}.pwa-install-primary,.pwa-install-ghost{min-height:36px;padding:0 14px;border-radius:999px;font-size:14px;font-weight:800;white-space:nowrap}.pwa-install-primary{border:1px solid rgba(24,63,59,.18);background:#1f5e58;color:#fffdf8}.pwa-install-primary:hover{background:#18463f}.pwa-install-ghost{border:1px solid rgba(29,37,37,.14);background:#fffdf8f5;color:#395753}.pwa-install-ghost:hover{background:#fffdf8}.pwa-install-icon-button{position:fixed;top:calc(8px + env(safe-area-inset-top,0px));right:calc(8px + env(safe-area-inset-right,0px));z-index:260;display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(24,63,59,.18);border-radius:999px;background:#fffdf8f5;color:#1f5e58;box-shadow:0 4px 14px #132e2b1f;cursor:pointer}.pwa-install-icon-button:hover{background:#fffdf8;color:#18463f}.pwa-install-icon-button-attendance{border-color:#0f234b33;color:#0f234b}@media(max-width:900px){.pwa-install-icon-button{top:calc(var(--mobile-header-h, 52px) + env(safe-area-inset-top,0px) - 40px)}.app-shell-attendance .pwa-install-icon-button{top:calc(8px + env(safe-area-inset-top,0px))}}:root{--brand-primary: hsl(172, 55%, 15%);--brand-primary-light: hsl(172, 30%, 93%);--brand-primary-glow: hsla(172, 55%, 22%, .15);--brand-secondary: hsl(24, 38%, 45%);--brand-secondary-light: hsl(24, 30%, 94%);--brand-secondary-glow: hsla(24, 38%, 45%, .12);--bg-gradient: linear-gradient(135deg, hsl(40, 20%, 96%), hsl(172, 10%, 91%));--bg-dark-sidebar: hsl(172, 55%, 8%);--text-dark: hsl(172, 20%, 12%);--text-muted: hsl(172, 10%, 42%);--glass-bg: rgba(255, 255, 255, .72);--glass-border: rgba(255, 255, 255, .45);--glass-shadow: 0 10px 30px -10px rgba(11, 25, 23, .06), 0 4px 12px -5px rgba(11, 25, 23, .02);--glass-shadow-hover: 0 20px 40px -8px rgba(11, 25, 23, .12), 0 8px 16px -6px rgba(11, 25, 23, .04);color:var(--text-dark);background:var(--bg-gradient);font-family:Outfit,Inter,system-ui,-apple-system,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;transition:background-color .3s ease}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior-y:none}body{margin:0;min-width:320px;min-height:100vh;font-size:16px;line-height:1.5;overscroll-behavior-y:none}#root{overscroll-behavior-y:none}button,input,select{font:inherit}input:not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]):not([type=reset]):not([type=file]):not([type=range]):not([type=color]),textarea{user-select:text;-webkit-user-select:text;cursor:text}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh;background:var(--bg-gradient)}.sidebar{display:flex;flex-direction:column;gap:28px;padding:28px 22px;border-right:1px solid rgba(255,255,255,.06);background:var(--bg-dark-sidebar);color:#ffffffd9;box-shadow:4px 0 24px #00000026}.app-shell-owner .sidebar{padding-top:36px}.brand-lockup{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;width:42px;height:42px;place-items:center;border-radius:10px;background:#1f5e58!important;color:#fff;overflow:hidden}.brand-mark-icon{width:42px;height:42px;display:block;object-fit:cover}.brand-lockup strong{display:block;font-size:20px;color:#fff}.db-status-pill,.app-version-pill{display:none}.brand-lockup-meta{display:contents}.sidebar-note span{color:#ffffff80!important;font-size:14px}.app-top-bar{display:flex;flex-direction:column;gap:8px}.nav-stack{display:grid;gap:16px}.nav-group{display:grid;gap:6px}.nav-group-label{margin:0;padding:0 4px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#ffffff61!important}.nav-group-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#ffffffa6!important;font-size:inherit;font-weight:inherit;text-align:left;transition:all .25s cubic-bezier(.4,0,.2,1)}.nav-group-toggle:hover{background:#ffffff0d;color:#fff!important}.nav-group-toggle.active{color:#fff!important}.nav-group-chevron{flex-shrink:0;opacity:.7;transition:transform .2s ease}.nav-group-settings.is-open .nav-group-chevron{transform:rotate(180deg)}.nav-substack{display:grid;gap:4px;padding-left:8px;border-left:1px solid rgba(255,255,255,.1)}.nav-stack button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#ffffffa6!important;text-align:left;transition:all .25s cubic-bezier(.4,0,.2,1)}.nav-stack button:hover{background:#ffffff0d;color:#fff!important;transform:translate(4px)}.nav-stack button.active{background:var(--brand-secondary)!important;color:#fff!important;box-shadow:0 4px 12px var(--brand-secondary-glow)}@media(min-width:861px){.owner-nav,.nav-tabs{display:flex;flex-direction:column;gap:2px}.nav-tab{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:42px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#ffffffa6!important;font-size:15px;font-weight:600;text-align:left;transition:background .15s,color .15s}.nav-tab:hover{background:#ffffff0f;color:#fff!important}.nav-tab.active{background:var(--brand-secondary)!important;color:#fff!important;box-shadow:0 2px 8px var(--brand-secondary-glow)}.nav-settings-group{display:flex;flex-direction:column}.nav-settings-toggle{justify-content:space-between}.nav-settings-chevron{opacity:.6;flex-shrink:0;transition:transform .2s ease}.nav-settings-group.is-open .nav-settings-chevron{transform:rotate(180deg)}.nav-settings-submenu{display:flex;flex-direction:column;gap:1px;margin:4px 0 4px 12px;padding-left:10px;border-left:1px solid rgba(255,255,255,.1)}.nav-settings-submenu button{display:flex;align-items:center;width:100%;min-height:36px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:#ffffff80!important;font-size:14px;font-weight:500;text-align:left;transition:background .15s,color .15s}.nav-settings-submenu button:hover{background:#ffffff0d;color:#ffffffd9!important}.nav-settings-submenu button.active{background:#ffffff1a;color:#fff!important;font-weight:700}.nav-subtabs{display:flex;flex-direction:row;flex-wrap:nowrap;gap:4px;margin:4px 0 0 12px;padding-left:10px;border-left:1px solid rgba(255,255,255,.1);overflow-x:auto;scrollbar-width:none}.nav-subtabs::-webkit-scrollbar{display:none}.nav-subtabs:not(.is-visible){display:none}.nav-subtabs button{display:inline-flex;align-items:center;flex:0 0 auto;min-height:34px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:#ffffff80!important;font-size:13px;font-weight:600;white-space:nowrap}.nav-subtabs button:hover{background:#ffffff0d;color:#ffffffd9!important}.nav-subtabs button.active{background:#ffffff1f;color:#fff!important;font-weight:700}}.sidebar-note{display:flex;align-items:flex-start;gap:10px;margin-top:auto;padding:14px;border:1px solid rgba(255,255,255,.08)!important;border-radius:8px;background:#ffffff0a!important}.main-workspace{width:100%;max-width:1180px;padding:32px}.onboarding-only{display:block}.onboarding-only .main-workspace{max-width:1180px;margin:0 auto}.role-start-gate{display:grid;gap:22px;max-width:560px;margin:8vh auto 0;padding:36px;border:1px solid var(--glass-border);border-radius:16px;background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--glass-shadow);transition:all .3s ease}.role-start-gate:hover{box-shadow:var(--glass-shadow-hover)}.role-start-gate h1{margin:4px 0 8px;font-size:36px;line-height:1.08;font-family:Outfit,sans-serif;font-weight:700}.role-start-gate p{margin:0;color:var(--text-muted);line-height:1.55}.role-start-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.role-start-actions .primary-button,.role-start-actions .secondary-button{min-height:46px}.member-activation-gate{max-width:560px}.member-activation-form{display:grid;gap:14px;padding:18px;border:1px solid rgba(29,37,37,.1);border-radius:16px;background:#fffdf8}.member-activation-form input{font-size:22px;font-weight:900;letter-spacing:.18em;text-align:center}.member-activation-error{color:#9b3d3d}.member-connection-choices{display:grid;gap:12px}.member-connection-choice{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:4px 14px;align-items:center;padding:18px;border:1px solid rgba(29,37,37,.12);border-radius:16px;background:#fffdf8;text-align:left;cursor:pointer}.member-connection-choice svg{grid-row:1 / span 2;color:var(--brand-primary)}.member-connection-choice-title{font-size:18px;font-weight:800;color:var(--text-primary)}.member-connection-choice-desc{font-size:15px;color:var(--text-muted)}.member-connection-panel{display:grid;gap:14px}.member-connection-back{justify-self:start}.member-connection-panel .admin-console-login{padding:0;border:none;background:transparent;box-shadow:none}.member-connection-panel .otp-login-panel{margin:0}.otp-login-panel{display:grid;gap:14px;padding:18px;border:1px solid rgba(29,37,37,.1);border-radius:16px;background:#fffdf8}.otp-login-actions,.studio-name-picker{display:grid;gap:10px}.studio-name-picker-selected{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.studio-name-picker-results{display:grid;gap:6px;margin:0;padding:0;list-style:none}.studio-name-picker-option{width:100%;padding:10px 12px;border:1px solid var(--border-subtle, rgba(0, 0, 0, .08));border-radius:10px;background:var(--surface-raised, #fff);text-align:left;cursor:pointer}.studio-name-picker-option:hover:not(:disabled){border-color:var(--brand-primary, #0b5);background:#00000005}.premium-seeding-banner{position:relative;margin-bottom:24px;padding:36px;border-radius:16px;background:linear-gradient(135deg,var(--brand-primary),hsl(172,60%,8%));color:#fff;overflow:hidden;box-shadow:0 16px 40px #0b191740;border:1px solid rgba(255,255,255,.08)}.premium-seeding-banner h2{font-family:Outfit,sans-serif;font-size:30px;font-weight:700;margin:8px 0 12px;color:#fff}.premium-seeding-banner p{color:#fffc;font-size:16px;line-height:1.6;max-width:600px;margin-bottom:24px}.api-warmup-banner{margin-bottom:16px;padding:16px 18px;border:1px solid rgba(180,120,20,.28);border-radius:12px;background:#fff4dcd9}.api-warmup-banner h2{margin:6px 0 8px;font-size:19px}.api-warmup-banner p{margin:0;color:#5a4a2b;line-height:1.55}.banner-glow{position:absolute;top:-50%;right:-20%;width:350px;height:350px;border-radius:999px;background:radial-gradient(circle,var(--brand-secondary) 0%,transparent 70%);opacity:.25;filter:blur(40px);pointer-events:none;animation:pulse-glow 8s infinite alternate}@keyframes pulse-glow{0%{transform:scale(1);opacity:.2}to{transform:scale(1.2);opacity:.35}}.banner-actions{display:flex;gap:12px;flex-wrap:wrap}.banner-actions .primary-button{background:var(--brand-secondary)!important;color:#fff!important;font-weight:700;box-shadow:0 4px 14px #9b6a4866;transition:all .2s ease}.banner-actions .primary-button:hover{background:#b37b56!important;transform:translateY(-2px);box-shadow:0 6px 20px #9b6a4899}.banner-actions .secondary-button{background:#ffffff14!important;border-color:#fff3!important;color:#fff!important}.banner-actions .secondary-button:hover{background:#ffffff26!important;transform:translateY(-2px)}.command-grid,.workspace-two-column{display:grid;gap:18px}.hero-band{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:18px;align-items:end;min-height:220px;padding:28px;border-radius:14px;background:linear-gradient(110deg,#183f3bf2,#1f5e58d6),url(https://images.unsplash.com/photo-1599901860904-17e6ed7083a0?auto=format&fit=crop&w=1400&q=80);background-position:center;background-size:cover;color:#fff;overflow:hidden;box-shadow:var(--glass-shadow)}.hero-band h1{margin:5px 0 8px;font-size:clamp(36px,6vw,66px);line-height:1;font-family:Outfit,sans-serif;font-weight:800}.hero-band p{max-width:600px;margin:0;color:#ffffffd1}.hero-metric,.metric-card,.workspace-panel{border:1px solid var(--glass-border)!important;border-radius:14px!important;background:var(--glass-bg)!important;-webkit-backdrop-filter:blur(16px) saturate(110%);backdrop-filter:blur(16px) saturate(110%);box-shadow:var(--glass-shadow)!important;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1)}.metric-card:hover,.workspace-panel:hover{transform:translateY(-2.5px);box-shadow:var(--glass-shadow-hover)!important}.hero-metric{padding:18px;background:#ffffff24!important;border-color:#fff3!important}.hero-metric span,.metric-card span,.preview-stat span,.template-card span,.session-row span,.decision-card span,.field span,.eyebrow{color:var(--text-muted);font-size:13px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.hero-metric span{color:#ffffffb3}.hero-metric strong{display:block;margin-top:8px;font-size:46px;line-height:1;font-family:Outfit,sans-serif}.metric-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric-card{min-height:126px;padding:18px}.metric-icon{display:grid;width:36px;height:36px;place-items:center;margin-bottom:14px;border-radius:8px;background:#e8dfd0;color:#183f3b}.metric-card strong{display:block;margin-top:4px;font-size:32px}.workspace-two-column{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}.workspace-panel{padding:20px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.section-heading h2{margin:2px 0 0;font-size:24px}.eyebrow{margin:0;color:#9b6a48}.session-list,.decision-list,.template-list,.preview-list{display:grid;gap:10px}.session-row,.decision-card,.template-card,.preview-row,.collection-chip{border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8}.session-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px}.session-row.stacked{display:grid;align-items:stretch}.session-row-main{display:flex;align-items:center;justify-content:space-between;gap:12px}.session-row.risk{border-color:#c24f375c;background:#fff5ef}.session-row strong{display:block;margin-bottom:4px}.seat-pill{min-width:54px;padding:7px 10px;border-radius:999px;background:#eef3ef;color:#183f3b;font-weight:800;text-align:center}.session-capacity-tools{display:grid;justify-items:end;gap:7px}.capacity-stepper{display:inline-grid;grid-template-columns:auto 30px auto 30px;gap:6px;align-items:center;width:fit-content;padding:6px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8}.capacity-stepper.compact{grid-template-columns:26px auto 26px;padding:4px}.capacity-stepper.compact button{width:26px;height:26px}.capacity-stepper span{color:#66716d;font-size:12px;font-weight:900}.capacity-stepper strong{min-width:34px;margin:0;color:#183f3b;font-size:13px;text-align:center}.capacity-stepper button{display:inline-grid;width:30px;height:30px;place-items:center;border:1px solid rgba(29,37,37,.14);border-radius:8px;background:#eef3ef;color:#183f3b;font-weight:950}.waitlist-count{color:#b84c35;font-size:13px;font-weight:950}.decision-card{display:grid;gap:6px;padding:14px}.decision-card p{margin:0;color:#5c6764;font-size:15px;line-height:1.5}.severity-high{border-left:4px solid #c24f37}.severity-medium{border-left:4px solid #c49a3c}.schedule-panel{max-width:980px}.studio-panel{max-width:1040px}.studio-onboarding{width:100%;max-width:1040px}.studio-onboarding-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px;padding:22px 0 6px}.schedule-hub{width:100%;max-width:1040px}.schedule-hub-tabs{max-width:520px}.schedule-hub-panel{width:100%;min-height:240px}.policy-section-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;width:100%;margin:0 0 20px;padding:5px;border:1px solid rgba(31,94,88,.16);border-radius:14px;background:#1f5e580f;box-shadow:inset 0 1px #ffffff8c}.policy-section-tab{min-height:44px;padding:10px 16px;border:1px solid transparent;border-radius:10px;background:transparent;color:#395753;font-size:15px;font-weight:800;letter-spacing:-.01em;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.policy-section-tab:hover{border-color:#1f5e5838;color:#1f5e58;background:#ffffffb8}.policy-section-tab.active{border-color:#1f5e5847;background:#1f5e58;color:#fff;box-shadow:0 4px 14px #1f5e5838}.policy-section-tab:focus-visible{outline:2px solid rgba(31,94,88,.45);outline-offset:2px}.studio-onboarding-header h2{margin:4px 0 8px;font-size:36px;line-height:1.08;letter-spacing:0}.studio-onboarding-header p:last-child{max-width:560px;margin:0;color:#66716d;line-height:1.55}.studio-onboarding-footer-link,.otp-login-footer-links{margin:18px 0 0;text-align:center;color:#66716d;font-size:14px}.otp-auth-channel-toggle{display:flex;gap:.5rem;margin:.75rem 0 1rem}.otp-auth-channel-toggle button{flex:1;min-height:2.75rem}.text-link-button{border:0;padding:0;background:none;color:#1f6b52;font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}.owner-payment-onboarding-banner{margin-bottom:16px;border:1px solid rgba(31,107,82,.18);background:linear-gradient(180deg,#1f6b5214,#fffffff5)}.studio-kind-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.studio-kind-option{display:grid;gap:4px;padding:14px 16px;border:1px solid #d8e0dc;border-radius:14px;background:#fff;text-align:left;cursor:pointer}.studio-kind-option.is-active{border-color:#1f6b52;background:#1f6b520f;box-shadow:inset 0 0 0 1px #1f6b522e}.studio-kind-option strong{font-size:15px;color:#1b2420}.studio-kind-option small{color:#66716d;line-height:1.45}.studio-parent-verify{display:grid;gap:10px;margin-top:12px}.studio-registration-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}.studio-form{display:grid;gap:14px}.studio-profile-panel .studio-profile-lead{max-width:640px;margin:6px 0 0;color:#66716d;font-size:14px;line-height:1.5}.studio-profile-layout{grid-template-columns:minmax(0,1fr)}.studio-danger-alert{margin:0;padding:10px 12px;border-radius:8px;background:#fff4f4f2;border:1px solid rgba(180,60,60,.22);color:#8b2e2e;font-size:14px;line-height:1.45}.studio-delete-now-button{width:100%;justify-content:center}.mobile-submit-bar-message{margin:0 0 8px;font-size:13px;line-height:1.4;text-align:center}.service-plan-panel{display:grid;gap:16px}.service-plan-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.service-plan-summary-card{display:grid;gap:4px;padding:12px;border:1px solid rgba(29,37,37,.08);border-radius:10px;background:#fffdf8eb}.service-plan-summary-label{color:#8a9490;font-size:13px}.service-plan-summary-meta{color:#66716d;font-size:13px;line-height:1.4}.service-plan-cycle-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.service-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.service-plan-card{position:relative;display:grid;gap:10px;padding:14px;border:1px solid rgba(29,37,37,.12);border-radius:12px;background:#fffdf8;text-align:left;cursor:pointer}.service-plan-card.is-selected{border-color:#183f3b73;box-shadow:0 0 0 1px #183f3b1f}.service-plan-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.service-plan-price{margin:0;font-size:26px;font-weight:700;line-height:1.1}.service-plan-price span{font-size:15px;font-weight:600;color:#66716d}.service-plan-note{margin:0;color:#66716d;font-size:13px}.service-plan-feature-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.service-plan-feature-list li{display:flex;align-items:center;gap:6px;color:#40504b;font-size:14px}.service-plan-selected-badge{position:absolute;top:10px;right:10px;padding:2px 8px;border-radius:999px;background:#183f3b1a;color:var(--brand-primary);font-size:12px;font-weight:700}.service-plan-actions{display:grid;gap:8px}.service-plan-message{margin:0;font-size:14px}.bank-transfer-panel{display:grid;gap:12px;padding:14px;border:1px solid rgba(29,37,37,.1);border-radius:12px;background:#f7f4efa6}.bank-transfer-panel h3{margin:0;font-size:16px}.bank-transfer-account{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:0}.bank-transfer-account div{display:grid;gap:4px}.bank-transfer-account dt{margin:0;color:#8a9490;font-size:13px}.bank-transfer-account dd{margin:0;font-size:15px;font-weight:600}.trial-skip-banner{display:grid;gap:10px;padding:14px 16px;border:1px solid rgba(24,63,59,.14);border-radius:12px;background:#183f3b0f}.trial-skip-banner strong{font-size:16px}.trial-skip-banner p{margin:0;color:#40504b;font-size:14px;line-height:1.5}.bank-transfer-pending-banner{display:grid;gap:4px;padding:12px 14px;border-radius:10px;background:#183f3b14;color:#183f3b}.admin-billing-pending{display:block;color:#8b5a12;font-size:14px}.studio-readonly-section{background:#f7f4eff2}.studio-readonly-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0}.studio-readonly-grid div{display:grid;gap:4px}.studio-readonly-grid div.wide{grid-column:1 / -1}.studio-readonly-grid dt{margin:0;color:#8a9490;font-size:13px;font-weight:600}.studio-readonly-grid dd{margin:0;color:#2f3a36;font-size:15px;font-weight:700;line-height:1.45}.form-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:18px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8eb;box-shadow:0 14px 34px #3430270f}.form-section-compact{display:flex;flex-direction:column;gap:0;padding:4px 0;border:none;box-shadow:none;background:transparent}.cfg-row{display:flex;align-items:center;gap:8px;min-height:40px;padding:5px 14px;border-bottom:1px solid rgba(29,37,37,.07)}.cfg-row:last-child{border-bottom:none}.cfg-row-label{flex:0 0 auto;min-width:0;font-size:15px;font-weight:600;color:var(--text-dark);line-height:1.35;white-space:nowrap}.cfg-row-label small{display:none}.cfg-row-spacer{flex:1 1 auto;min-width:4px}.cfg-row input[type=number],.cfg-row select{flex:0 0 auto;width:52px;min-height:30px;padding:0 6px;border:1.5px solid rgba(29,37,37,.16);border-radius:6px;background:#fff;color:var(--text-dark);font-size:15px;font-weight:600;text-align:center}.cfg-row input[type=text],.cfg-row .cfg-row-input-text{flex:0 0 auto;width:128px;min-height:30px;padding:0 8px;border:1.5px solid rgba(29,37,37,.16);border-radius:6px;background:#fff;color:var(--text-dark);font-size:15px;font-weight:500;text-align:left}.cfg-row input[type=number]:focus,.cfg-row input[type=text]:focus,.cfg-row select:focus{outline:none;border-color:var(--brand-primary)}.cfg-row input:disabled{opacity:.38;background:#00000008}.cfg-row .krw-input-wrap{flex:0 0 auto;width:108px;min-height:30px;padding:0 8px}.cfg-row .krw-input-wrap input{width:72px;flex:0 0 auto;padding:0;min-height:28px;font-size:14px;text-align:right}.cfg-row-unit{flex:0 0 auto;font-size:14px;font-weight:500;color:var(--text-muted);white-space:nowrap}.cfg-row-action{flex:0 0 auto;min-height:30px!important;padding:0 10px!important;font-size:13px!important}.cfg-row-check-label{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;margin:0;font-size:15px;font-weight:600;color:var(--text-dark);white-space:nowrap;cursor:pointer}.cfg-row-check-label input[type=checkbox]{width:16px;height:16px;margin:0;flex-shrink:0;accent-color:var(--brand-primary)}.cfg-row-label-with-help,.cfg-row-check-head{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto}.cfg-row-check-head input[type=checkbox]{width:16px;height:16px;margin:0;flex-shrink:0;accent-color:var(--brand-primary)}.cfg-row-check-head label{font-size:15px;font-weight:600;color:var(--text-dark);white-space:nowrap;cursor:pointer}.cfg-card{border:1px solid rgba(29,37,37,.1);border-radius:12px;background:#fff;box-shadow:0 2px 10px #3430270d;overflow:visible;margin-bottom:12px}.cfg-card-title{display:flex;align-items:center;gap:8px;padding:10px 14px 8px;border-bottom:1px solid rgba(29,37,37,.07);font-size:13px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.cfg-toggle-row{display:flex;align-items:center;gap:10px;min-height:44px;padding:6px 14px;border-bottom:1px solid rgba(29,37,37,.07)}.cfg-toggle-row:last-child{border-bottom:none}.cfg-toggle-label{flex:0 0 auto;font-size:15px;font-weight:600;color:var(--text-dark);white-space:nowrap}.form-section-title{display:flex;grid-column:1 / -1;align-items:center;gap:10px;margin-bottom:2px}.form-section-title span{display:grid;min-width:30px;height:30px;place-items:center;border-radius:999px;background:#183f3b;color:#fff;font-size:13px;font-weight:800}.form-section-title h3{margin:0;font-size:18px}.studio-list-panel{position:sticky;top:24px;display:grid;gap:12px;padding:18px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8eb;box-shadow:0 14px 34px #3430270f}.field.wide{grid-column:span 2}.class-program-form-page .field.wide{grid-column:1 / -1}.studio-list{display:grid;gap:10px}.studio-option{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;min-height:78px;padding:12px;border:1px solid rgba(29,37,37,.12);border-radius:8px;background:#fffdf8;color:#1d2525;text-align:left}.studio-option.active{border-color:#1f5e5875;background:#edf4ef}.studio-option-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;background:#e8dfd0;color:#183f3b}.studio-option strong,.studio-option em{display:flex;align-items:center;gap:4px}.studio-option em{margin-top:5px;color:#66716d;font-size:14px;font-style:normal}.segmented-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.segmented-control button{min-height:42px;border:1px solid rgba(29,37,37,.12);border-radius:8px;background:#fff;color:#5c6764;font-weight:800}.segmented-control button.active{border-color:#183f3b;background:#183f3b;color:#fff}.field input:disabled{background:#eef1ee;color:#9aa39f;cursor:not-allowed}.schedule-name-preview{display:grid;gap:6px;padding:14px;border-radius:8px;background:#eef3ef;color:#183f3b}.schedule-name-preview span{color:#66716d;font-size:13px;font-weight:800}.schedule-name-preview strong{font-size:24px}.inline-note{min-height:40px;padding:11px 14px;border-radius:8px;background:#eef3ef;color:#46514e;font-size:14px;font-weight:800;line-height:1.35;white-space:normal;overflow:visible;text-overflow:clip}.header-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.tooltip-hint-row{display:inline-flex;align-items:center;gap:6px;min-height:32px;color:#60706b;font-size:13px;font-weight:700}.policy-category-block{border:1px solid rgba(24,63,59,.12);border-radius:12px;background:#f8fbf9;padding:10px}.policy-category-title{display:grid;gap:2px;margin-bottom:8px}.policy-category-title span{color:#6e7c77;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.policy-category-title h3{margin:0;color:#1c2e2a;font-size:17px;font-weight:800}.policy-category-indent{margin-left:12px;border-left:2px dashed rgba(24,63,59,.18);padding-left:10px;display:grid;gap:10px}.policy-subcategory-block{border:1px solid rgba(24,63,59,.08);border-radius:10px;background:#fff;padding:8px}.policy-subcategory-title{color:#2a4a45;font-size:14px;font-weight:800;margin:2px 0 8px}.policy-subcategory-indent{margin-left:10px;border-left:2px solid rgba(24,63,59,.14);padding-left:10px;display:grid;gap:10px}.toggle-field{display:flex;align-items:center;gap:10px;min-height:42px;color:#1d2525;font-weight:800}.toggle-field input{width:18px;height:18px;accent-color:#183f3b}.refund-policy-section{align-items:start}.refund-policy-toggle{min-height:38px;padding:8px 10px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8;font-size:14px}.refund-penalty-row .cfg-row-check-head{gap:10px}.refund-toggle-label{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.help-tooltip{position:relative;display:inline-flex;align-items:center;flex-shrink:0;vertical-align:middle}.help-tooltip-trigger{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;border-radius:999px;background:transparent;color:#5a6b67;cursor:help;-webkit-user-select:none;user-select:none}.help-tooltip-trigger:focus-visible{outline:2px solid rgba(24,63,59,.45);outline-offset:2px}.field-label-with-help{display:inline-flex;align-items:center;gap:4px}.help-tooltip-popup{position:absolute;left:0;top:calc(100% + 6px);z-index:30;width:min(280px,70vw);padding:10px 12px;border-radius:10px;background:#1f3330;color:#eef3ef;box-shadow:0 8px 24px #0f181638;text-align:left;font-size:12px;line-height:1.4;font-weight:500;opacity:0;visibility:hidden;pointer-events:none;user-select:text;-webkit-user-select:text}@media(hover:hover)and (pointer:fine){.help-tooltip:hover .help-tooltip-popup,.help-tooltip:focus-within .help-tooltip-popup{opacity:1;visibility:visible;pointer-events:auto}}.help-tooltip.is-open .help-tooltip-popup{opacity:1;visibility:visible;pointer-events:auto;z-index:420}.help-tooltip-popup--fixed{opacity:1;visibility:visible;pointer-events:auto}.help-tooltip-popup strong{display:block;margin-bottom:6px;font-size:13px;color:#d8e8e3}.help-tooltip-popup ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}.help-tooltip-popup li{display:grid;gap:2px}.help-tooltip-popup li em{font-style:normal;font-weight:800;font-size:12px;color:#b8d4cc}.help-tooltip-popup li span{font-size:12px;line-height:1.4;color:#dce8e4}.help-tooltip--wide .help-tooltip-popup,.help-tooltip-popup--wide{width:min(420px,88vw);max-height:min(70vh,520px);overflow:auto}.help-tooltip-rich{display:grid;gap:8px}.help-tooltip-rich>strong{display:block;font-size:13px;font-weight:800}.help-tooltip-summary{margin:0;color:#eef3ef;font-weight:600}.help-tooltip-detail{margin:0;color:#c8d5d0;font-size:12px;line-height:1.5;white-space:pre-wrap}.help-tooltip-clause-heading{display:block;margin-top:4px;padding-top:8px;border-top:1px solid rgba(255,255,255,.14);font-size:12px;font-weight:800;color:#f3efe4}.help-tooltip-clause-full{margin:0;padding:8px 10px;border-radius:8px;background:#ffffff14;color:#f7faf8;font-size:12px;line-height:1.55;white-space:pre-wrap}.help-tooltip-popup li .help-tooltip-detail{margin-top:4px}.refund-effect-badge{font-size:11px;font-weight:600;padding:2px 6px;border-radius:999px;text-transform:uppercase;letter-spacing:.02em}.refund-effect-badge.calculation{background:#1f5e581f;color:#1f5e58}.refund-effect-badge.approval_only{background:#785a1424;color:#785a14}.refund-subsection-title{margin-top:12px}.refund-policy-actions{display:flex;flex-wrap:wrap;gap:8px}.policy-apply-bar{display:flex;justify-content:flex-end}.policy-apply-bar--top{padding-bottom:16px}.policy-apply-bar--bottom{padding-top:16px;margin-top:8px;border-top:1px solid rgba(29,37,37,.08)}.custom-refund-text-field textarea{min-height:180px}.generated-terms-preview{display:grid;gap:8px;padding:12px;border:1px solid rgba(29,37,37,.12);border-radius:8px;background:#faf8f2;user-select:text;-webkit-user-select:text}.generated-terms-preview-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.generated-terms-preview-text{width:100%;min-height:160px;margin:0;padding:10px 12px;border:1px solid rgba(29,37,37,.1);border-radius:6px;background:#fff;font-family:inherit;font-size:13px;line-height:1.5;color:#33403d;resize:vertical;user-select:text;-webkit-user-select:text}.generated-terms-preview pre{margin:0;white-space:pre-wrap;font-family:inherit;font-size:13px;line-height:1.5;color:#33403d;user-select:text;-webkit-user-select:text}.refund-generate-warning{color:#785a14}.refund-confirm-banner{margin-bottom:12px;padding:10px 12px;border-radius:8px;background:#eef3ef;color:#183f3b}.member-refund-button{margin-top:8px;width:100%}.refund-summary.refunded{border-color:#1f5e584d;background:#eef3ef}.member-notifications-panel{margin:16px 0 24px;padding:14px;border:1px solid rgba(29,37,37,.1);border-radius:10px;background:#fffdf8}.notification-list{display:grid;gap:8px}.notification-kind-filters{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.notification-kind-filter{padding:4px 10px;border:1px solid rgba(29,37,37,.14);border-radius:999px;background:#fff;color:#46514e;font-size:12px;font-weight:700;cursor:pointer}.notification-kind-filter.active{border-color:#1f5e5873;background:#1f5e581f;color:#1f5e58}.notification-kind-filter.clear{border-style:dashed}.notification-item{display:grid;gap:4px;text-align:left;padding:10px 12px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fff;cursor:pointer}.notification-item.unread{border-color:#1f5e5859;background:#f3f8f5}.notification-item strong{font-size:15px}.notification-item span,.notification-item em{font-size:13px;color:#5a6b67}.notification-detail{margin-top:12px;padding:12px;border-radius:8px;background:#eef3ef}.notification-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.notification-detail pre{margin:0;white-space:pre-wrap;font-family:inherit;font-size:14px;line-height:1.5}.notification-terms-link{display:block;margin-top:8px;color:#46514e;font-size:13px}.owner-push-prompt{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;padding:14px 16px;border:1px solid rgba(31,94,88,.18);border-radius:14px;background:linear-gradient(135deg,#f3f8f5,#fffdf8)}.owner-push-prompt strong{display:block;margin-bottom:4px;color:#1d2525;font-size:15px}.owner-push-prompt p,.owner-push-prompt-denied p{margin:0;color:#395753;font-size:14px;line-height:1.45}.owner-push-prompt em{display:block;margin-top:6px;color:#8d3452;font-size:13px;font-style:normal}.owner-push-prompt-button{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border:0;border-radius:999px;background:#1f5e58;color:#fff;font-size:14px;font-weight:800;white-space:nowrap;cursor:pointer}.owner-push-prompt-button:disabled{opacity:.7;cursor:wait}.owner-push-prompt-denied{display:block;border-color:#8d34522e;background:#fff7f9}.kiosk-push-setup-card{flex-direction:column;align-items:stretch;margin-bottom:12px}.kiosk-push-setup-card .owner-push-prompt-button{align-self:flex-start;margin-top:12px}.kiosk-push-setup-skip{margin-top:4px;font-size:14px;color:#5f6b68}.owner-notification-banner-stack{position:fixed;top:0;left:0;right:0;z-index:20000;display:flex;justify-content:center;padding:calc(env(safe-area-inset-top,0px) + 10px) 12px 0;pointer-events:none}.owner-notification-banner{display:flex;gap:10px;align-items:flex-start;width:min(100%,640px);padding:14px 14px 14px 16px;border:1px solid rgba(31,94,88,.24);border-radius:16px;background:#fffdf8;box-shadow:0 18px 44px #1d252538,0 2px #ffffffd9 inset;pointer-events:auto;animation-name:owner-notification-banner-lifecycle;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:forwards}@keyframes owner-notification-banner-lifecycle{0%{opacity:0;transform:translateY(calc(-100% - 16px))}10%{opacity:1;transform:translateY(0)}82%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(calc(-100% - 16px))}}.owner-notification-banner-body{flex:1;display:grid;gap:4px;min-width:0}.owner-notification-banner-body strong{font-size:16px;color:#1d2525}.owner-notification-banner-body span{font-size:14px;line-height:1.45;color:#395753;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.owner-notification-banner-close{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:32px;height:32px;border:0;border-radius:999px;background:#1d252514;color:#5a6b67;cursor:pointer}@media(prefers-reduced-motion:reduce){.owner-notification-banner{animation:none;opacity:1;transform:none}}.custom-refund-interpretation{display:grid;gap:6px;padding:12px;border:1px solid rgba(31,94,88,.16);border-radius:8px;background:#eef3ef}.custom-refund-interpretation strong,.custom-refund-interpretation span,.custom-refund-interpretation em{display:block}.custom-refund-interpretation strong{color:#183f3b}.custom-refund-interpretation span{color:#46514e;font-size:14px;line-height:1.45}.custom-refund-interpretation em{color:#9b6a48;font-size:13px;font-style:normal;font-weight:900}.class-special-toggle{align-self:end;min-height:42px;padding:0 12px;border:1px solid rgba(29,37,37,.14);border-radius:8px;background:#fffdf8}.instructor-card{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;padding:12px 36px 12px 12px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8}.instructor-card strong,.instructor-card span,.instructor-card em,.instructor-card small{display:block}.instructor-card span{margin-top:3px;color:#66716d;font-size:14px}.instructor-card em{margin-top:5px;color:#9b6a48;font-size:13px;font-style:normal;font-weight:800}.instructor-card small{margin-top:5px;color:#46514e;font-size:13px;font-weight:800}.instructor-list-only{display:grid;gap:6px}.instructor-list-rows{gap:6px}.instructor-list-page .instructor-card-compact{display:flex;align-items:center;gap:8px;min-height:40px;padding:6px 8px 6px 10px}.instructor-list-page .instructor-card-clickable{cursor:pointer}.instructor-list-page .instructor-card-clickable:hover{background:#183f3b0a}.instructor-list-page .instructor-card-clickable:focus-visible{outline:2px solid rgba(24,63,59,.35);outline-offset:1px}.instructor-list-page .instructor-list-line{flex:1;min-width:0;display:flex;align-items:center;gap:6px;margin:0;overflow:hidden;white-space:nowrap}.instructor-list-page .instructor-list-line strong{flex-shrink:0;display:inline;margin-top:0;font-size:15px;font-weight:700}.instructor-list-page .instructor-list-meta{display:inline;min-width:0;margin-top:0;overflow:hidden;text-overflow:ellipsis;color:#66716d;font-size:13px;font-weight:500}.instructor-list-page .instructor-card-compact .card-actions{flex-shrink:0;gap:4px}.instructor-list-page .instructor-card-compact .icon-button{width:30px;height:30px;border-radius:6px}.instructor-list-empty{margin:0;padding:8px 0}.instructor-back-button{display:inline-flex;align-items:center;gap:4px;margin-bottom:8px}.instructor-form-only{max-width:720px}.member-workspace .studio-registration-layout{align-items:start}.member-workspace-main{min-width:0}.member-workspace-layout{grid-template-columns:minmax(280px,360px) minmax(0,1fr)}.setup-confirm-panel{width:min(380px,100%);padding:16px 18px 18px;border-radius:14px;background:#fffdf8;color:#1d2525;box-shadow:0 24px 60px #2024222e}.setup-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;overflow-y:auto;background:#1c201e73}.setup-confirm-overlay .setup-confirm-panel{flex-shrink:0;margin:auto}.setup-confirm-panel h2{margin:0 0 8px;font-size:17px;line-height:1.3;color:#1d2525}.setup-confirm-panel p{margin:0;font-size:14px;line-height:1.45;color:#3d4845}.app-dialog-overlay{z-index:10000}.app-dialog-panel{background:#fffdf8;color:#1d2525}.app-dialog-panel h2{color:#1d2525}.app-dialog-panel .app-dialog-message,.app-dialog-panel p{color:#3d4845}.app-dialog-message{white-space:pre-wrap}.setup-confirm-warning{color:#8a3b12;font-weight:600}.setup-complete-message{font-size:15px;font-weight:700;color:#1d2525}.setup-confirm-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.member-register-panel{width:min(480px,100%);max-height:min(90vh,820px);overflow:auto;padding:22px 24px 26px;border-radius:18px;background:#fffdf8;box-shadow:0 24px 60px #2024222e}.member-subpage{width:100%}.page-back-header{margin-bottom:12px}.page-back-button{display:inline-flex;align-items:center;gap:4px;padding:6px 10px 6px 4px;border:none;border-radius:8px;background:transparent;color:#4d5854;font-size:15px;font-weight:700;cursor:pointer}.page-back-button:hover{background:#1d25250f;color:#1d2525}.member-subpage-panel{width:100%;max-width:920px;max-height:none;box-shadow:none;border:1px solid rgba(29,37,37,.08);border-radius:14px}.member-import-mode-toggle{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.member-import-mode-toggle button{padding:8px 14px;border:1px solid #c5cdc8;border-radius:999px;background:#fff;color:#4d5854;font-size:14px;font-weight:700;cursor:pointer}.member-import-mode-toggle button.active{border-color:var(--brand-primary);background:var(--brand-primary-light);color:var(--brand-primary)}.member-register-form{display:grid;gap:12px}.member-register-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid rgba(29,37,37,.1)}.member-renew-row{display:grid;gap:10px;margin-top:12px}.member-next-pass-panel{display:grid;gap:12px;margin-top:16px;padding:16px;border:1px solid rgba(29,37,37,.12);border-radius:8px;background:#fffdf8f2;box-shadow:0 8px 20px #3430270d}.member-next-pass-panel .field{margin:0}.member-next-pass-heading{margin:0;color:#46514e;font-size:13px;font-weight:800}.member-next-pass-note{margin:0}.member-next-pass-panel .member-renew-button{justify-self:start}.member-split-panel{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:14px;min-width:0}.member-list-control,.member-detail-panel{min-width:0;padding:18px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8eb;box-shadow:0 14px 34px #3430270f}.member-list-tabs{margin-top:12px}.member-list-total-note{display:block;margin-top:2px;color:#66716d;font-size:12px;font-weight:700}.member-expiry-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.member-expiry-filter{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid rgba(29,37,37,.12);border-radius:999px;background:#fff;cursor:pointer;-webkit-user-select:none;user-select:none}.member-expiry-filter input{margin:0}.member-expiry-filter-label{display:inline-flex;align-items:center;gap:6px;color:#46514e;font-size:12px;font-weight:700}.member-search-field{margin-top:12px}.member-search-input{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:center;padding:0 12px;border:1px solid rgba(29,37,37,.12);border-radius:8px;background:#fff}.member-search-input input{min-height:42px;border:0;background:transparent;padding:0}.member-list-rows{display:grid;gap:8px;margin-top:12px;max-height:min(62vh,640px);overflow:auto}.member-list-empty{margin:0;padding:18px 8px;color:#66716d;font-size:14px;text-align:center}.member-list-row{display:grid;gap:8px;width:100%;padding:12px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8;color:#1d2525;text-align:left}.member-list-row--with-checkbox{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:10px 12px}.member-list-row-checkbox{display:flex;align-items:center;padding-top:2px;cursor:pointer}.member-list-row-checkbox input{width:16px;height:16px;margin:0;cursor:pointer}.member-list-row-body{display:grid;gap:8px;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.member-inactive-bulk-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.member-list-row.active{border-color:#1f5e5875;background:#edf4ef}.member-list-row-head{display:flex;align-items:center;gap:8px}.member-list-row-head strong{font-size:16px}.member-list-row-meta{color:#66716d;font-size:13px;font-weight:700}.member-workspace--catalog .member-catalog-panel{display:grid;gap:0;overflow:hidden}.member-workspace--catalog .member-catalog-desktop-header{margin-bottom:12px}.member-catalog-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px 14px;border-bottom:1px solid rgba(29,37,37,.08);background:#fffdf899}.member-filter-combobox{display:grid;gap:4px;min-width:0}.member-filter-combobox-label{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:#46514e}.member-filter-combobox-control{position:relative;display:flex;align-items:center;gap:6px;min-height:40px;padding:0 10px;border:1px solid rgba(29,37,37,.12);border-radius:8px;background:#fff}.member-filter-combobox-control select{flex:1;min-width:0;min-height:38px;padding:0;border:none;background:transparent;color:#1d2525;font-size:13px;font-weight:700;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.member-filter-combobox-control svg{flex-shrink:0;color:#66716d;pointer-events:none}.member-filter-combobox--search{grid-column:1 / -1}.member-filter-combobox-control--search{display:grid;grid-template-columns:16px minmax(0,1fr);gap:8px;align-items:center}.member-filter-combobox-control--search input{min-height:38px;border:none;background:transparent;padding:0;color:#1d2525;font-size:13px;font-weight:700}.member-filter-combobox-control--search input::placeholder{color:#9aa39f;font-weight:600}.member-catalog-filter-actions{grid-column:1 / -1;display:flex;justify-content:flex-end}.member-catalog-filter-actions .secondary-button{min-height:32px;padding:0 12px;font-size:12px}.member-catalog-filter-note{padding:0 14px 8px}.member-detail-meta .tooltip-hint-row{display:inline-flex;margin-right:4px}.member-catalog-summary{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid rgba(29,37,37,.06);background:#eef3ef80}.member-catalog-total{color:var(--brand-primary);font-size:14px;font-weight:800}.member-catalog-sort{position:relative;display:inline-flex;align-items:center;gap:4px;color:var(--text-muted);font-size:13px;font-weight:700}.member-catalog-sort select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:inherit;font:inherit;cursor:pointer;padding-right:4px}.member-catalog-list{display:grid;gap:8px;padding:12px 14px 14px;max-height:min(62vh,640px);overflow:auto}.member-catalog-card{display:grid;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8;box-shadow:0 2px 8px #3430270a;color:#1d2525;transition:border-color .15s ease,background-color .15s ease}.member-catalog-card--with-checkbox{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;padding:10px 12px 10px 8px}.member-catalog-card:not(.member-catalog-card--with-checkbox){padding:0}.member-catalog-card.active{border-color:#1f5e5875;background:#edf4ef}.member-catalog-card-checkbox{display:flex;align-items:center;padding-top:14px;cursor:pointer}.member-catalog-card-checkbox input{width:16px;height:16px;margin:0;accent-color:var(--brand-primary);cursor:pointer}.member-catalog-card-body{display:grid;gap:0;width:100%;padding:12px;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer}.member-catalog-card-profile{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:start;padding-bottom:12px;border-bottom:1px solid rgba(29,37,37,.08)}.member-catalog-avatar{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;background:#eef3ef;color:#66716d}.member-catalog-card-ident{display:grid;gap:2px;min-width:0}.member-catalog-card-name-row{display:flex;align-items:center;gap:6px}.member-catalog-card-name-row strong{font-size:16px;font-weight:800;color:#1d2525}.member-catalog-phone{font-size:13px;color:#66716d}.member-catalog-joined{font-size:12px;color:#66716d;font-weight:700;white-space:nowrap}.member-catalog-card-pass{display:grid;gap:6px;padding-top:12px}.member-catalog-card-pass--empty{padding-top:8px}.member-catalog-pass-title{font-size:15px;font-weight:800;color:#1d2525}.member-catalog-pass-period{font-size:13px;color:#66716d}.member-catalog-card-rows{display:grid;gap:4px;margin-top:4px}.member-catalog-card-row{display:flex;justify-content:space-between;gap:12px;font-size:13px}.member-catalog-card-row span:first-child{color:#66716d;font-weight:700}.member-catalog-card-row span:last-child{color:#1d2525;font-weight:800}.member-catalog-card-footer{display:flex;justify-content:flex-end;padding-top:8px}.member-catalog-card-status{font-size:12px;font-weight:700;color:#66716d}.member-catalog-card-meta{color:#66716d;font-size:13px;font-weight:700}.expiry-warning{flex:0 0 auto;width:10px;height:10px;border-radius:999px}.expiry-warning--yellow{background:#d4a017;box-shadow:0 0 0 3px #d4a0172e}.expiry-warning--red{background:#c0392b;box-shadow:0 0 0 3px #c0392b2e}.member-detail-panel{position:sticky;top:24px}.member-detail-empty{display:grid;gap:8px;place-items:center;min-height:280px;padding:24px;color:#66716d;text-align:center}.member-detail-empty strong{color:#183f3b;font-size:18px}.member-detail-empty span{max-width:280px;font-size:14px;line-height:1.45}.member-detail-card{border:0;padding:0;background:transparent}.member-detail-meta{display:block;margin-top:4px;color:#66716d!important;font-size:13px!important;font-weight:700!important}.member-detail-meta-label,.member-detail-meta-sep{color:#8a9490;font-weight:600}.member-detail-meta-value{color:#2f3a36;font-weight:700}.member-detail-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:0}.member-activation-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:10px 12px;border:1px solid rgba(31,94,88,.12);border-radius:12px;background:#eff6f4d1}.member-activation-card div{display:grid;gap:2px}.member-activation-card span,.member-activation-card small{color:#66716d;font-size:12px;font-weight:800}.membership-card .member-activation-card .member-activation-at{color:#3474b8}.member-activation-card strong{color:#1d2525;font-size:15px;letter-spacing:.02em}.member-detail-memo{margin-top:10px}.member-detail-memo-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.member-detail-memo-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto}.member-detail-memo-save{flex-shrink:0}.member-detail-memo-input{width:100%;min-height:88px;padding:10px 12px;border:1px solid rgba(29,37,37,.14);border-radius:8px;background:#fffdf8;color:#1d2525;font-size:14px;line-height:1.5;resize:vertical;box-sizing:border-box}.member-detail-memo-saved{font-size:13px;color:#2f6b4f;font-weight:600}.member-pass-history{display:grid;gap:14px;margin-top:14px}.member-pass-history h4{margin:0;color:#183f3b;font-size:15px}.membership-pass-card{position:relative;display:grid;gap:12px;padding:18px 18px 16px;min-height:168px;border-radius:18px;color:#fff;box-shadow:0 10px 28px #1d25252e;overflow:hidden;isolation:isolate}.membership-pass-card.tone-emerald{background:linear-gradient(135deg,#1a4f49,#2f7a66 52%,#3d8f78)}.membership-pass-card.tone-forest{background:linear-gradient(135deg,#1a3d2a,#2f6040 52%,#3f7a52)}.membership-pass-card.tone-teal{background:linear-gradient(135deg,#134e4a,#2d6f66 52%,#3d8a7f)}.membership-pass-card.tone-pine{background:linear-gradient(135deg,#1f3d2e,#3a5f47 52%,#4d7a5c)}.membership-pass-card.tone-moss{background:linear-gradient(135deg,#3a4a28,#5a7038 52%,#6f8a48)}.membership-pass-card.tone-violet{background:linear-gradient(135deg,#4a3d73,#6a57ad 52%,#7a68b8)}.membership-pass-card.tone-indigo{background:linear-gradient(135deg,#2d3561,#4a5294 52%,#5c63a8)}.membership-pass-card.tone-plum{background:linear-gradient(135deg,#4a2d4f,#6e4575 52%,#825688)}.membership-pass-card.tone-midnight{background:linear-gradient(135deg,#1a1f3d,#2f3860 52%,#3f4a78)}.membership-pass-card.tone-navy{background:linear-gradient(135deg,#1a3050,#2f4f7a 52%,#3d6290)}.membership-pass-card.tone-ocean{background:linear-gradient(135deg,#0f3d5c,#256892 52%,#357da8)}.membership-pass-card.tone-sky{background:linear-gradient(135deg,#1a4a78,#2f6898 52%,#3d7ea8)}.membership-pass-card.tone-rose{background:linear-gradient(135deg,#8d3452,#b85a76 52%,#c46a84)}.membership-pass-card.tone-wine{background:linear-gradient(135deg,#5c2038,#8a3555 52%,#9c4565)}.membership-pass-card.tone-crimson{background:linear-gradient(135deg,#6b1a2e,#9a2d45 52%,#ad3d58)}.membership-pass-card.tone-amber{background:linear-gradient(135deg,#7a4a10,#a36218 52%,#b87428)}.membership-pass-card.tone-copper{background:linear-gradient(135deg,#6b3a18,#9a5528 52%,#ad6838)}.membership-pass-card.tone-chocolate{background:linear-gradient(135deg,#4a2c1a,#6e4428 52%,#805238)}.membership-pass-card.tone-slate{background:linear-gradient(135deg,#3d4549,#5a656b 52%,#6a757b)}.membership-pass-card.tone-charcoal{background:linear-gradient(135deg,#2a2e32,#454b50 52%,#565d62)}.membership-pass-card.tone-muted{background:linear-gradient(135deg,#6f7773,#909894 52%,#a0a8a4)}.membership-pass-card.membership-pass-card--void{background:linear-gradient(135deg,#6f7773,#909894 52%,#a0a8a4);color:#eef1ef;box-shadow:0 6px 18px #1d25251a}.membership-pass-card--scheduled{box-shadow:0 10px 24px #1f5e5833}.membership-pass-card-chip{position:absolute;top:18px;left:18px;width:38px;height:28px;border-radius:6px;background:linear-gradient(145deg,#ffffffb8,#ffffff47);box-shadow:inset 0 0 0 1px #ffffff59;opacity:.9}.membership-pass-card--void .membership-pass-card-chip{background:linear-gradient(145deg,#ffffff59,#ffffff1f)}.membership-pass-card-head{display:flex;align-items:center;gap:8px;padding-top:34px}.membership-pass-card-head strong{flex:1;color:#fff;font-size:17px;font-weight:900;letter-spacing:-.01em}.membership-pass-card-status{padding:4px 10px;border-radius:999px;background:#ffffff38;color:#fff;font-size:12px;font-weight:800;white-space:nowrap}.membership-pass-card-meta{display:flex;flex-wrap:wrap;gap:6px 10px;color:#ffffffe0;font-size:13px;font-weight:600}.membership-pass-card-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:12px;position:relative;z-index:2}.membership-pass-action-button,.membership-pass-adjust-button{border-color:#ffffff57;background:#ffffff24;color:#fff}.membership-pass-action-button:hover:not(:disabled),.membership-pass-adjust-button:hover:not(:disabled){background:#ffffff38}.membership-pass-card--void .membership-pass-action-button,.membership-pass-card--void .membership-pass-adjust-button{opacity:.72}.membership-pass-card-topbar{position:absolute;top:12px;right:12px;left:68px;z-index:2;display:flex;align-items:center;justify-content:flex-end;gap:8px}.membership-pass-scheduled-badge{padding:4px 10px;border-radius:999px;background:#ffffff3d;color:#fff;font-size:12px;font-weight:800;letter-spacing:.02em;white-space:nowrap}.membership-pass-delete-button{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid rgba(255,255,255,.45);border-radius:999px;background:#1d252547;color:#fff;font-size:12px;font-weight:800;cursor:pointer}.membership-pass-delete-button:hover{background:#1d25256b}.membership-pass-expired-mark{margin-left:auto;padding:4px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.28);background:#ffffff1f;color:#ffffffc7;font-size:11px;font-weight:900;letter-spacing:.22em;line-height:1;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none}.membership-pass-card .pass-progress-bars,.membership-pass-card .pass-history-attendance,.membership-pass-card .owner-pass-adjustment,.membership-pass-card .pass-wallet-card-body,.membership-pass-card .pass-wallet-period,.membership-pass-card .pass-wallet-quotas,.membership-pass-card .pass-wallet-extensions,.membership-pass-card .pass-wallet-attendance-summary{position:relative;z-index:2}.membership-pass-card .pass-progress-row span,.membership-pass-card .pass-progress-row strong{color:#ffffffeb}.membership-pass-card .pass-progress-track{background:#ffffff38}.membership-pass-card .pass-progress-track .pass-progress-fill,.membership-pass-card .pass-progress-track i{box-shadow:inset 0 1px #ffffff59}.membership-pass-card--void .pass-progress-row span,.membership-pass-card--void .pass-progress-row strong,.membership-pass-card--void .membership-pass-card-meta,.membership-pass-card--void .pass-history-attendance-stats{color:#ffffffd1}.membership-pass-card .pass-history-attendance{border-top-color:#ffffff2e}.membership-pass-card .pass-history-attendance-stats{color:#ffffffeb}.membership-pass-card .pass-history-attendance-toggle{color:#fffffff2}.membership-pass-card .pass-history-walkin-note{color:#ffe6a8}.membership-pass-card .pass-history-timeline-row{background:#ffffff1f;border-color:#ffffff29}.membership-pass-card .pass-history-timeline-main strong{color:#fff}.membership-pass-card .pass-history-timeline-main span{color:#ffffffc7}.membership-pass-card .pass-history-timeline-row em{color:#ffffffeb}.membership-pass-card .pass-history-attendance-detail .inline-note,.membership-pass-card .inline-note{background:#ffffff24;border:1px solid rgba(255,255,255,.2);color:#fffffff0}.membership-pass-card .member-adjust-reference{background:#ffffff24;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:8px 10px;color:#fffffff0}.membership-pass-card .member-adjust-limit-warning{background:#ffe6a838;border:1px solid rgba(255,230,168,.35);color:#ffe6a8}.membership-pass-card .pass-wallet-metric-value,.membership-pass-card .pass-wallet-metric-label,.membership-pass-card .pass-wallet-period,.membership-pass-card .pass-wallet-attendance-summary,.membership-pass-card .pass-wallet-extensions li,.membership-pass-card .pass-wallet-extensions li strong,.membership-pass-card .pass-wallet-extensions li em,.membership-pass-card .pass-wallet-extensions li span{color:#fffffff0}.membership-pass-card .pass-wallet-metric-value em{color:#ffffffd1}.membership-pass-card .membership-pass-card-head svg{color:#ffffffeb}.membership-pass-card .owner-pass-adjustment,.membership-pass-card .member-adjust-section{border-top-color:#fff3}.membership-pass-card .member-adjust-form span,.membership-pass-card .member-adjust-history-copy time,.membership-pass-card .member-adjust-history-copy span{color:#ffffffd6}.membership-pass-card .member-adjust-history-copy strong{color:#fff}.membership-pass-card .member-adjust-history-item{border-color:#fff3;background:#ffffff1f}.membership-pass-card .pass-history-attendance-divider{color:#ffffff9e}.pass-history-card{position:relative;overflow:hidden;display:grid;gap:8px;padding:12px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8}.pass-history-card--active{border-color:#1f5e5847;background:#f4faf7}.pass-history-card--scheduled{border-color:#1f5e582e;background:#f8fbfa}.pass-scheduled-badge{position:absolute;top:10px;right:10px;padding:2px 8px;border-radius:999px;background:#1f5e581f;color:#1f5e58;font-size:12px;font-weight:700;letter-spacing:.02em}.pass-history-card--void{background:#eef0ee;color:#66716d}.pass-history-card--void .pass-summary,.pass-history-card--void .pass-progress-row span,.pass-history-card--void .pass-progress-row strong{color:#7a8480}.pass-history-attendance{display:grid;gap:8px;padding-top:4px;border-top:1px solid rgba(29,37,37,.08)}.pass-history-attendance-stats{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:#3f4f4b;font-size:14px;font-weight:600}.pass-history-attendance-divider{color:#98a39f;font-weight:400}.pass-history-walkin-note{color:#8a5a12;font-size:13px;font-weight:700}.pass-history-retroactive-form{display:grid;gap:8px;margin-bottom:4px}.pass-history-retroactive-label{font-size:13px;font-weight:700;color:#3f4f4b}.pass-history-retroactive-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.pass-history-retroactive-controls select{min-width:0;width:100%}.pass-history-retroactive-submit{white-space:nowrap}.pass-history-retroactive-empty{margin:0}.membership-pass-card .pass-history-retroactive-label,.membership-pass-card .pass-history-retroactive-empty{color:#ffffffe6}.membership-pass-card .pass-history-retroactive-controls select{color:#1d2525}.pass-history-attendance-toggle{justify-self:start;padding:0;border:0;background:none;color:#1f5e58;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.pass-history-attendance-toggle:hover{color:#174842}.pass-history-attendance-detail{display:grid;gap:8px}.pass-history-timeline{display:grid;gap:8px;margin:0;padding:0;list-style:none}.pass-history-timeline-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid rgba(29,37,37,.08);border-radius:8px;background:#fffdf8eb}.pass-history-timeline-main{display:grid;gap:4px;min-width:0}.pass-history-timeline-main strong{color:#183f3b;font-size:15px}.pass-history-timeline-main span{color:#66716d;font-size:13px}.pass-history-timeline-row em{flex-shrink:0;color:#1f5e58;font-size:13px;font-style:normal;font-weight:700}.pass-history-card--void .pass-history-attendance-stats{color:#7a8480}.pass-history-card--void .pass-history-timeline-row{background:#eef0eeeb}.pass-void-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#1d25251f;font-size:clamp(44px,8vw,74px);font-weight:900;letter-spacing:.18em;pointer-events:none;transform:rotate(-18deg);-webkit-user-select:none;user-select:none}.pass-progress-row--compact>div:first-child{margin-bottom:2px}.pass-progress-row--compact .pass-progress-track{height:7px}.member-list-title{margin-top:22px}.membership-card{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;padding:12px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8}.membership-card strong,.membership-card span,.membership-card em{display:block}.membership-card>div>span:not([class]){margin-top:4px;color:#66716d;font-size:14px}.membership-card .membership-pass-card span,.membership-card .membership-pass-card .membership-pass-card-status,.membership-card .membership-pass-card .membership-pass-card-meta span,.membership-card .membership-pass-card .pass-history-attendance-stats span,.membership-card .membership-pass-card .pass-wallet-metric-value,.membership-card .membership-pass-card .pass-wallet-metric-label,.membership-card .membership-pass-card .pass-wallet-period,.membership-card .membership-pass-card .pass-wallet-quotas span,.membership-card .membership-pass-card .pass-wallet-attendance-summary{color:#fffffff0}.membership-card .membership-pass-card .membership-pass-card-status{color:#fff}.membership-card .membership-pass-card .pass-history-attendance-divider{color:#ffffffb8}.membership-card em{margin-top:6px;color:#9b6a48;font-size:13px;font-style:normal;font-weight:900}.membership-card small,.no-show-count,.walk-in-count{display:block;margin-top:6px;color:#b84c35;font-size:13px;font-weight:900}.walk-in-count{color:#8a5a12}.member-attendance-history{margin-top:24px}.member-attendance-record{cursor:default}.member-attendance-walkin{color:#8a5a12}.policy-product-card{grid-template-columns:22px minmax(0,1fr) auto;align-items:start}.policy-product-card.compact{align-items:center;padding:7px 10px;gap:8px;grid-template-columns:16px minmax(0,1fr) auto}.policy-product-card.compact .card-actions{gap:4px}.policy-product-card.compact .icon-button{width:28px;height:28px;min-height:28px}.policy-product-card.is-selected{border-color:#1f5e586b;box-shadow:inset 0 0 0 1px #1f5e5829}.policy-product-main{display:grid;gap:1px;min-width:0;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.policy-product-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-width:0}.policy-product-title-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.policy-product-title-row em{flex-shrink:0;margin:0;color:#9b6a48;font-size:13px;font-style:normal;font-weight:800}.policy-product-meta{display:block;overflow:hidden;color:#66716d;font-size:12px;font-weight:700;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.pass-products-section{display:grid;gap:12px;margin-bottom:18px;padding:16px 18px;border:1px solid rgba(29,37,37,.1);border-radius:10px;background:#fffdf8f5;box-shadow:0 14px 34px #3430270f}.pass-products-body{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:stretch;min-height:0}.pass-products-body--form-open{grid-template-columns:minmax(0,1fr) minmax(300px,380px);min-height:240px}.pass-products-list-col{min-width:0;max-height:min(52vh,420px);overflow-y:auto;padding-right:2px}.pass-products-detail-col{min-width:0;min-height:240px}.pass-products-empty-slot{display:grid;align-content:center;justify-items:start;gap:6px;height:100%;min-height:240px;padding:16px;border:1px dashed rgba(29,37,37,.16);border-radius:10px;background:#fffdf8b8}.pass-products-empty-slot p{margin:0;color:#183f3b;font-size:14px;font-weight:700;line-height:1.45}.pass-products-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.pass-products-heading{margin:0}.pass-products-list,.pass-product-list-item{display:grid;gap:8px}.pass-product-inline-tone-editor{display:grid;gap:10px;padding:12px 14px;border:1px solid rgba(29,37,37,.12);border-radius:10px;background:#fff}.pass-product-inline-tone-actions{display:flex;flex-wrap:wrap;gap:8px}.pass-product-panel{display:grid;gap:12px;height:100%;min-height:240px;max-height:min(52vh,420px);overflow-y:auto;padding:14px 16px;border:1px solid rgba(29,37,37,.12);border-radius:10px;background:#fffdf8}.pass-product-panel-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.pass-product-panel-header h3{margin:0;font-size:17px}.pass-product-panel-actions{display:flex;flex-wrap:wrap;gap:8px}.pass-product-panel--inline{height:auto;min-height:0;max-height:none}.pass-policy-extension-editor{display:grid;gap:10px;padding-top:4px;border-top:1px solid var(--border-subtle, rgba(0, 0, 0, .08))}.pass-policy-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pass-policy-form-grid .pass-policy-type-toggle,.pass-policy-form-grid .pass-policy-duration-mode,.pass-policy-form-grid .wide,.pass-policy-form-grid .pass-card-tone-picker,.pass-policy-form-grid .pass-policy-locked-note{grid-column:1 / -1}.pass-card-tone-picker{margin:0;padding:0;border:0}.pass-card-tone-picker legend{margin-bottom:6px;color:#1d2525;font-size:14px;font-weight:800}.pass-card-tone-picker .inline-note{margin:0 0 10px}.pass-card-tone-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}.pass-card-tone-option{display:grid;gap:4px;justify-items:center;padding:8px 6px;border:1px solid rgba(29,37,37,.12);border-radius:10px;background:#fffdf8;cursor:pointer;text-align:center}.pass-card-tone-option input{position:absolute;opacity:0;pointer-events:none}.pass-card-tone-option.is-selected{border-color:#1f5e5880;box-shadow:inset 0 0 0 1px #1f5e5833}.pass-card-tone-swatch{width:100%;height:28px;border-radius:6px;box-shadow:inset 0 0 0 1px #ffffff1f}.pass-card-tone-label{color:#66716d;font-size:11px;font-weight:700;line-height:1.2}.pass-card-tone-swatch.tone-emerald{background:linear-gradient(135deg,#1a4f49,#3d8f78)}.pass-card-tone-swatch.tone-forest{background:linear-gradient(135deg,#1a3d2a,#3f7a52)}.pass-card-tone-swatch.tone-teal{background:linear-gradient(135deg,#134e4a,#3d8a7f)}.pass-card-tone-swatch.tone-pine{background:linear-gradient(135deg,#1f3d2e,#4d7a5c)}.pass-card-tone-swatch.tone-moss{background:linear-gradient(135deg,#3a4a28,#6f8a48)}.pass-card-tone-swatch.tone-violet{background:linear-gradient(135deg,#4a3d73,#7a68b8)}.pass-card-tone-swatch.tone-indigo{background:linear-gradient(135deg,#2d3561,#5c63a8)}.pass-card-tone-swatch.tone-plum{background:linear-gradient(135deg,#4a2d4f,#825688)}.pass-card-tone-swatch.tone-midnight{background:linear-gradient(135deg,#1a1f3d,#3f4a78)}.pass-card-tone-swatch.tone-navy{background:linear-gradient(135deg,#1a3050,#3d6290)}.pass-card-tone-swatch.tone-ocean{background:linear-gradient(135deg,#0f3d5c,#357da8)}.pass-card-tone-swatch.tone-sky{background:linear-gradient(135deg,#1a4a78,#3d7ea8)}.pass-card-tone-swatch.tone-rose{background:linear-gradient(135deg,#8d3452,#c46a84)}.pass-card-tone-swatch.tone-wine{background:linear-gradient(135deg,#5c2038,#9c4565)}.pass-card-tone-swatch.tone-crimson{background:linear-gradient(135deg,#6b1a2e,#ad3d58)}.pass-card-tone-swatch.tone-amber{background:linear-gradient(135deg,#7a4a10,#b87428)}.pass-card-tone-swatch.tone-copper{background:linear-gradient(135deg,#6b3a18,#ad6838)}.pass-card-tone-swatch.tone-chocolate{background:linear-gradient(135deg,#4a2c1a,#805238)}.pass-card-tone-swatch.tone-slate{background:linear-gradient(135deg,#3d4549,#6a757b)}.pass-card-tone-swatch.tone-charcoal{background:linear-gradient(135deg,#2a2e32,#565d62)}.segmented-control.is-disabled button:disabled{opacity:.55;cursor:not-allowed}.pass-policy-date-range{grid-column:1 / -1}.pass-policy-date-range-inputs{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.pass-policy-date-range-inputs input[type=date]{flex:1 1 140px;min-width:0}.pass-policy-date-range-separator{color:#66716d}.pass-policy-date-range-days{color:var(--accent, #2f6f5e);font-size:14px;font-weight:600;white-space:nowrap}.pass-start-date-field{display:grid;gap:8px}.pass-start-date-today-check{display:inline-flex;align-items:center;gap:8px;color:#44524d;font-size:14px;font-weight:600;cursor:pointer}.pass-start-date-today-check input[type=checkbox]{width:16px;height:16px;margin:0}.pass-start-date-field input[type=date][readonly]{color:#66716d;background:#1d25250a;cursor:default}.pass-policy-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0}.pass-policy-detail-list div{display:grid;gap:2px}.pass-policy-detail-list dt{margin:0;color:#66716d;font-size:12px;font-weight:800}.pass-policy-detail-list dd{margin:0;color:#183f3b;font-size:15px;font-weight:700}.policy-settings-layout{grid-template-columns:minmax(0,1fr)}.policy-mutation-blocked{color:#66716d!important;font-weight:700!important;line-height:1.45}.icon-button:disabled{opacity:.45;cursor:not-allowed}.pass-summary{display:inline-flex;align-items:center;gap:5px;color:#b84c35}.pass-summary.active{color:#1f5e58}.pass-progress-bars{display:grid;gap:8px;margin-top:9px}.pass-progress-row{display:grid;gap:5px}.pass-progress-row>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px}.pass-progress-row span,.pass-progress-row strong{margin:0;color:#46514e;font-size:13px;font-weight:900}.pass-progress-track{position:relative;height:9px;overflow:hidden;border-radius:999px;background:#e4e8e2}.pass-progress-track i,.pass-progress-track .pass-progress-fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:linear-gradient(90deg,#1f5e58,#7e9c58)}.member-renew-button{width:100%;margin-top:10px}.refund-summary{display:grid;gap:4px;margin-top:9px;padding:10px;border-radius:8px;background:#eef3ef}.refund-summary strong{color:#183f3b}.refund-summary span,.refund-summary em,.refund-summary small{color:#5c6764;font-size:13px;line-height:1.35}.refund-summary em{color:#9b6a48;font-style:normal;font-weight:800}.refund-summary small{display:block;color:#66716d}.refund-summary-headline{display:flex;align-items:center;gap:6px}.upgrade-pricing-stack{display:grid;gap:12px}.upgrade-pricing-due{margin-left:auto;color:#183f3b;font-size:14px;font-weight:800}.upgrade-current-pass{margin:0;padding:10px 12px;border-radius:8px;background:#eef3ef;color:#183f3b;font-size:16px;font-weight:700;line-height:1.45}.pass-auto-selected-notice{margin:0;padding:10px 12px;border-radius:8px;background:#eef3ef;color:#183f3b;font-size:13px;font-weight:600;line-height:1.5}.pass-auto-selected-notice strong{display:block;margin-top:4px;color:#183f3b;font-size:15px;font-weight:700;line-height:1.4}.settlement-final-amount,.settlement-final-amount-label,.settlement-final-amount-input{color:#c62828;font-weight:800}.settlement-final-amount{font-size:1.05em}.refund-summary-headline .settlement-final-amount{font-size:20px}.upgrade-pricing-due.settlement-final-amount{font-size:17px}.settlement-final-amount-label{font-size:15px}.settlement-final-input{border-color:#c6282859}.settlement-final-amount-input{font-size:18px}.refund-breakdown-row--total dd.settlement-final-amount{font-size:17px}.upgrade-window-warning{color:#9b3d2f;font-weight:700}.upgrade-pricing-method-fieldset{display:grid;gap:8px;margin:0 0 10px;padding:10px 12px;border:1px solid rgba(29,37,37,.08);border-radius:8px}.upgrade-pricing-method-fieldset legend{padding:0 4px;color:#46514e;font-size:13px;font-weight:700}.refund-breakdown{display:grid;gap:6px;margin:8px 0 0;padding:0}.refund-breakdown-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px solid rgba(29,37,37,.06)}.refund-breakdown-row:last-child{border-bottom:0}.refund-breakdown-row dt{margin:0;color:#46514e;font-size:13px;font-weight:700;line-height:1.35}.refund-breakdown-row dt small{display:block;margin-top:2px;color:#66716d;font-size:12px;font-weight:500}.refund-breakdown-row dd{margin:0;color:#183f3b;font-size:13px;font-weight:800;white-space:nowrap}.refund-breakdown-row--deduction dd{color:#9b6a48}.refund-breakdown-row--total{margin-top:2px;padding-top:8px;border-top:1px solid rgba(29,37,37,.12)}.refund-breakdown-row--total dt,.refund-breakdown-row--total dd{font-size:14px;font-weight:800}.refund-confirm-form{display:grid;gap:8px;margin-top:8px}.refund-suggested-amount{font-size:13px;font-weight:700;color:#3d5c56}.refund-amount-field{margin:0}.krw-input-wrap{display:flex;align-items:center;gap:6px;padding:0 10px;border-radius:8px;border:1px solid rgba(29,37,37,.12);background:#fff}.krw-input-wrap span{color:#5c6764;font-weight:700}.krw-input-wrap input{flex:1;border:0;padding:10px 0;background:transparent;font-weight:700}.refund-approval-note{margin:0}.member-adjust-section{margin-top:10px;padding-top:10px;border-top:1px solid rgba(29,37,37,.08)}.member-adjust-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.member-adjust-reference{grid-column:1 / -1;color:#66716d}.member-adjust-limit-warning{grid-column:1 / -1;margin:0;padding:8px 10px;border-radius:8px;background:#fff4ea;color:#9a5b12;font-size:12px;font-weight:600;line-height:1.4}.member-adjust-form label{display:grid;gap:5px}.member-adjust-form span{color:#66716d;font-size:12px;font-weight:800}.member-adjust-form input{min-height:36px;padding:0 9px;border:1px solid rgba(29,37,37,.16);border-radius:8px;background:#fff;color:#1d2525;font-size:14px;font-weight:500}.member-adjust-form input::placeholder{color:#98a29e;font-size:12px;font-weight:500}.member-adjust-note-input{font-size:14px!important;font-weight:500!important}.member-adjust-note,.member-adjust-form .secondary-button{grid-column:1 / -1}.member-adjust-history{display:grid;gap:8px;margin:10px 0 0;padding:0;list-style:none}.member-adjust-history-item{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#ffffffb8}.member-adjust-history-copy{display:grid;gap:2px;min-width:0}.member-adjust-history-copy strong{font-size:14px;font-weight:700}.member-adjust-history-copy span{color:#66716d;font-size:12px;font-weight:500;line-height:1.35}.member-adjust-history-copy time{color:#66716d;font-size:12px}.instructor-badge{position:absolute;top:12px;right:12px;color:#1f5e58}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 12px;border:0;border-radius:7px;background:#183f3b;color:#fff;font-size:14px;font-weight:700}.mobile-submit-bar{display:none}.schedule-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.field{display:grid;gap:7px}.field:first-child{grid-column:span 2}.field input,.field select,.field textarea{width:100%;min-height:42px;padding:0 11px;border:1px solid rgba(29,37,37,.16);border-radius:8px;background:#fff;color:#1d2525}.field .krw-input-wrap{min-height:42px}.field .krw-input-wrap input{border:0;border-radius:0;padding:10px 0;min-height:auto;background:transparent}.field .krw-input-wrap input:disabled{background:transparent}.field textarea{min-height:104px;padding:11px;resize:vertical;font:inherit}.date-select-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);gap:8px}.date-select-row select{width:100%;min-height:42px;padding:0 11px;border:1px solid rgba(29,37,37,.16);border-radius:8px;background:#fff;color:#1d2525}.time-select-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.time-select-row select{width:100%;min-height:42px;padding:0 11px;border:1px solid rgba(29,37,37,.16);border-radius:8px;background:#fff;color:#1d2525;font-variant-numeric:tabular-nums}.time-select-row--compact select{min-height:28px;padding:0 6px;border-radius:6px;font-size:12px}.address-row{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:8px}.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 11px;border:1px solid rgba(29,37,37,.14);border-radius:7px;background:#fffdf8;color:#183f3b;font-size:14px;font-weight:700}.secondary-button.danger-button{color:#b84c35}.primary-button:disabled,.secondary-button:disabled{opacity:.52;cursor:not-allowed}.field-error{color:#b84c35;font-size:13px}.field-success{color:#1f6b4f;font-size:13px}.checkbox-field{display:flex;align-items:center;gap:10px}.checkbox-field input{width:auto}.business-terms-agreement{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid rgba(29,37,37,.1);border-radius:10px;background:#fffdf8f2}.business-terms-agreement input{width:auto;margin-top:3px;flex-shrink:0}.business-terms-agreement span{color:#40504b;font-size:14px;line-height:1.5}.privacy-consent-block{display:grid;gap:10px;width:100%}.privacy-consent-title{margin:0;font-size:15px;font-weight:700;color:#1d2525}.privacy-consent-helper{margin:0}.business-upload-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#183f3b14}.day-toggle-group{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.day-toggle{width:42px;height:42px;border:1px solid rgba(29,37,37,.14);border-radius:999px;background:#fff;color:#5c6764;font-weight:800}.day-toggle.active{border-color:#183f3b;background:#183f3b;color:#fff}.preview-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.preview-stat{display:grid;gap:5px;min-height:92px;padding:14px;border-radius:8px;background:#efe8dd;color:#183f3b}.preview-stat strong{font-size:19px}.preview-row{display:grid;grid-template-columns:18px 70px minmax(0,1fr) 52px;gap:8px;align-items:center;padding:10px 12px}.preview-row em{color:#9b6a48;font-style:normal;font-weight:800}.template-list{margin-top:18px}.template-card{display:flex;justify-content:space-between;gap:12px;padding:12px}.class-program-panel{max-width:1040px}.form-inline-action{margin-top:12px}.form-inline-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.form-inline-actions .form-inline-action{margin-top:0}.form-inline-action.primary-button,.form-inline-action.secondary-button,.weekly-builder-header-actions .primary-button,.weekly-builder-header-actions .secondary-button,.setup-confirm-actions .primary-button,.setup-confirm-actions .secondary-button{min-height:30px;padding:0 10px;font-size:13px;font-weight:600}.class-program-card{align-items:flex-start;cursor:pointer}.class-program-card:focus-visible{outline:2px solid #2b7fff;outline-offset:2px}.class-program-card.special{border-color:#9b6a4861;background:#fff7e8}.class-program-card>div:first-child{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px}.class-program-card strong,.class-program-card em,.class-program-card small{display:block}.class-program-card.special strong{font-weight:950}.special-class-badge{display:inline-flex;align-items:center;min-height:22px;margin-left:8px;padding:0 8px;border-radius:999px;background:#9b6a48;color:#fff;font-size:12px;font-weight:900;vertical-align:middle}.class-program-card em{margin-top:5px;color:#66716d;font-style:normal}.class-program-card small{margin-top:7px;color:#9b6a48;font-weight:800}.card-actions{display:flex;gap:8px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid rgba(29,37,37,.14);border-radius:8px;background:#fff;color:#183f3b}.icon-button.danger{color:#b84c35}.holiday-panel{max-width:1040px}.compact-field{display:grid;gap:6px;min-width:124px}.compact-field span{color:#66716d;font-size:13px;font-weight:800}.compact-field select{min-height:38px;padding:0 10px;border:1px solid rgba(29,37,37,.16);border-radius:8px;background:#fff}.holiday-legend{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.holiday-legend span{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:0 10px;border:1px solid rgba(29,37,37,.1);border-radius:999px;background:#fffdf8;color:#46514e;font-size:14px;font-weight:800}.legend-dot{width:9px;height:9px;border-radius:999px}.legend-dot.red{background:#c24f37}.legend-dot.blue{background:#3474b8}.legend-dot.green{background:#1f7a58}.holiday-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:stretch;margin-bottom:18px}.holiday-form,.holiday-source-note{display:grid;gap:12px;padding:18px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8}.holiday-form{grid-template-columns:repeat(2,minmax(0,1fr))}.holiday-form .primary-button,.holiday-form .holiday-form-submit{justify-self:end;grid-column:1 / -1}.holiday-source-note{align-content:start;background:#eef3ef}.holiday-source-note strong{color:#183f3b}.holiday-source-note p{margin:0;color:#5c6764;font-size:15px;line-height:1.55}.holiday-calendar-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.holiday-month-section{margin-top:16px}.holiday-month-title{margin:0 0 10px;font-size:17px;font-weight:700}.holiday-card{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:86px;padding:14px;border:1px solid rgba(29,37,37,.1);border-left-width:5px;border-radius:8px;background:#fffdf8}.holiday-card.red{border-left-color:#c24f37}.holiday-card.blue{border-left-color:#3474b8;background:#eef6ff}.holiday-card.green{border-left-color:#1f7a58;background:#edf7ef}.holiday-card span,.holiday-card strong,.holiday-card em{display:block}.holiday-card span{color:#66716d;font-size:13px;font-weight:800}.holiday-card strong{margin-top:5px}.holiday-card em{margin-top:5px;color:#9b6a48;font-size:13px;font-style:normal;font-weight:900}.data-panel{max-width:820px}.collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.collection-chip{display:grid;gap:6px;min-height:86px;padding:14px;color:#183f3b}.collection-chip strong{font-weight:800}.collection-chip span{color:#66716d;font-size:13px;line-height:1.35}.role-panel{max-width:980px}.calendar-panel{max-width:none}.calendar-subheading{margin-top:12px}.calendar-month-switcher-row{display:flex;justify-content:center;align-items:center;margin:0 0 12px}.month-switcher{display:inline-flex;align-items:center;justify-content:center;gap:10px;flex-shrink:0}.month-switcher button{min-height:36px;padding:0 12px;border:1px solid rgba(29,37,37,.14);border-radius:8px;background:#fffdf8;color:#183f3b;font-weight:900}.month-switcher strong{min-width:7.5em;padding:0 4px;color:#0f2f2c;font-size:1.35rem;font-weight:950;letter-spacing:-.02em;line-height:1.2;text-align:center;white-space:nowrap}.month-switcher strong.is-sliding-next{animation:calendar-month-label-next .28s ease-out}.month-switcher strong.is-sliding-prev{animation:calendar-month-label-prev .28s ease-out}.calendar-month-stage{overflow:hidden}.calendar-month-stage.is-sliding-next .class-calendar-grid,.calendar-month-stage.is-sliding-next .calendar-week-header{animation:calendar-month-slide-next .28s ease-out}.calendar-month-stage.is-sliding-prev .class-calendar-grid,.calendar-month-stage.is-sliding-prev .calendar-week-header{animation:calendar-month-slide-prev .28s ease-out}@keyframes calendar-month-slide-next{0%{opacity:.25;transform:translate(14%)}to{opacity:1;transform:translate(0)}}@keyframes calendar-month-slide-prev{0%{opacity:.25;transform:translate(-14%)}to{opacity:1;transform:translate(0)}}@keyframes calendar-month-label-next{0%{opacity:.2;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@keyframes calendar-month-label-prev{0%{opacity:.2;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@media(prefers-reduced-motion:reduce){.calendar-month-stage.is-sliding-next .class-calendar-grid,.calendar-month-stage.is-sliding-next .calendar-week-header,.calendar-month-stage.is-sliding-prev .class-calendar-grid,.calendar-month-stage.is-sliding-prev .calendar-week-header,.month-switcher strong.is-sliding-next,.month-switcher strong.is-sliding-prev{animation:none}}.calendar-week-header,.class-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-week-header{gap:4px;margin-bottom:4px}.calendar-week-header span{color:#66716d;font-size:13px;font-weight:950;text-align:center}.calendar-week-header span:first-child,.calendar-week-header span:last-child{color:#c24f37}.class-calendar-grid{gap:4px;align-items:start;grid-auto-rows:min-content;touch-action:pan-y}.class-calendar-day{display:flex;flex-direction:column;align-self:start;width:100%;min-height:0;padding:8px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8}.class-calendar-day.calendar-day-minimal{min-height:56px;padding:4px 8px;cursor:pointer;justify-content:flex-start;align-items:stretch;gap:2px}.class-calendar-day.calendar-day-minimal .calendar-day-head{justify-content:center;min-height:0;margin-bottom:0}.calendar-day-session-dots{display:flex;justify-content:center;align-items:center;gap:3px;min-height:6px;margin-top:2px}.calendar-session-dot{width:5px;height:5px;border-radius:50%;background:#395753;flex-shrink:0}.calendar-session-dot.is-special{background:#3474b8}.class-calendar-day.calendar-day-minimal .calendar-day-holidays{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:0}.class-calendar-day.calendar-day-minimal .holiday-name{max-width:100%;margin-bottom:0;font-size:11px;text-align:center}.class-calendar-day.calendar-day-minimal .calendar-day-number,.class-calendar-day.calendar-day-minimal .calendar-day-head strong{font-size:14px;font-weight:700;line-height:1}.class-calendar-day.muted{opacity:.52}.class-calendar-day.holiday-red{border-color:#c24f3747;background:#fff5f2}.class-calendar-day.holiday-red .calendar-day-head strong{color:#c24f37}.class-calendar-day.studio-vacation{border-color:#3474b85c;background:#eef6ff}.class-calendar-day.is-today{border-color:#c4a02873!important;background:#fffbea!important}.class-calendar-day.is-today .calendar-day-head strong,.class-calendar-day.is-today .calendar-day-number{color:#8a6d00;font-size:16px;font-weight:900}.class-calendar-day.studio-vacation .calendar-day-head strong{color:#3474b8}.calendar-day-head{display:flex;flex-shrink:0;justify-content:space-between;gap:6px;min-height:24px;margin-bottom:6px}.calendar-day-head strong{color:#1d2525;font-size:15px}.holiday-name{display:block;max-width:120px;margin-bottom:3px;overflow:hidden;font-size:11px;font-weight:950;line-height:1.2;text-align:right;text-overflow:ellipsis;white-space:nowrap}.holiday-name.red{color:#c24f37}.holiday-name.blue{color:#3474b8}.holiday-name.green{color:#1f7a58}.calendar-session-list{display:flex;flex-direction:column;gap:6px;width:100%}.calendar-session-card{display:grid;gap:7px;padding:8px;border:1px solid rgba(29,37,37,.09);border-radius:8px;background:#fffdf8f0}.calendar-session-main span,.calendar-session-main strong,.calendar-session-main em,.calendar-session-main small{display:block}.calendar-session-main span{color:#9b6a48;font-size:12px;font-weight:950}.calendar-session-main .session-time{color:#1d2525;font-size:14px;font-weight:900;letter-spacing:.02em}.calendar-session-main strong{margin-top:3px;font-size:14px}.calendar-session-main em,.calendar-session-main small{margin-top:3px;color:#5c6764;font-size:12px;font-style:normal;line-height:1.3}.waitlist-badge{color:#9b4d2e;font-weight:950}.occupancy-full,.calendar-session-card.session-full .calendar-session-main em{color:#8b2f2f;font-weight:950}.calendar-session-card.session-full{border-color:#8b2f2f47;background:#fff5f3f5}.calendar-session-card.session-below-minimum{border-color:transparent;background:#c0392b;color:#fff}.calendar-session-card.session-below-minimum .calendar-session-main span,.calendar-session-card.session-below-minimum .calendar-session-main strong,.calendar-session-card.session-below-minimum .calendar-session-main em,.calendar-session-card.session-below-minimum .calendar-session-main small,.calendar-session-card.session-below-minimum .session-instructor-name,.calendar-session-card.session-below-minimum .capacity-editable,.calendar-session-card.session-below-minimum .occupancy-full{color:#fff!important}.calendar-session-card.session-below-minimum .capacity-stepper span,.calendar-session-card.session-below-minimum .capacity-stepper strong,.calendar-session-card.session-below-minimum .capacity-stepper button{color:#183f3b!important}.reservation-summary-line.session-below-minimum{background:#c0392b;border-radius:4px;padding:1px 4px}.reservation-summary-line.session-below-minimum .session-time,.reservation-summary-line.session-below-minimum .session-occupancy{color:#fff}.member-booking-calendar .member-booking-slot.session-below-minimum,.member-booking-calendar .member-booking-slot.session-below-minimum.is-booked,.member-booking-calendar .member-booking-slot.session-below-minimum.is-waitlisted,.member-booking-calendar .member-booking-slot.session-below-minimum.is-clickable:hover,.member-booking-calendar .member-booking-slot.session-below-minimum:active,.member-booking-calendar .member-booking-slot.session-below-minimum:focus{background:transparent;border:none}.member-booking-calendar .member-booking-slot.session-below-minimum .session-time,.member-booking-calendar .member-booking-slot.session-below-minimum .session-occupancy,.member-booking-calendar .member-booking-slot.session-below-minimum.is-booked .session-time,.member-booking-calendar .member-booking-slot.session-below-minimum.is-waitlisted .session-time{color:#c0392b!important;font-weight:800}.session-instructor-name{display:block;margin-top:2px;color:#1f5e58;font-size:12px;font-weight:700}.capacity-editable{cursor:text}.capacity-inline-input{width:52px;min-height:24px;margin-top:3px;padding:0 6px;border:1px solid rgba(24,63,59,.35);border-radius:6px;background:#fff;color:#183f3b;font-size:12px;font-weight:700}.capacity-override-badge{display:inline-block;margin-top:4px;padding:2px 6px;border-radius:999px;background:#9b6a4824;color:#7a4f2d;font-size:11px;font-weight:900}.command-grid .hero-band{min-height:128px;padding:16px 20px}.command-grid .hero-band h1{font-size:clamp(26px,4vw,38px)}.command-grid .hero-metric strong{font-size:34px}.command-grid .metric-card{min-height:92px;padding:12px 14px}.command-grid .metric-card strong{font-size:26px}.command-grid .workspace-two-column{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);align-items:start}.owner-class-calendar-compact .class-calendar-day{padding:7px}.owner-class-calendar-compact .class-calendar-day.calendar-day-minimal{min-height:56px;padding:4px 8px}.owner-class-calendar-compact .class-calendar-day.calendar-day-minimal .calendar-day-head{min-height:0;margin-bottom:0}.owner-class-calendar-compact .calendar-day-head{min-height:20px;margin-bottom:5px}.owner-class-calendar-compact .calendar-day-head strong{font-size:14px}.owner-class-calendar-compact .holiday-name{max-width:88px;font-size:11px}.owner-class-calendar-compact .calendar-session-list{gap:5px}.owner-class-calendar-compact .calendar-session-card.compact{display:grid;grid-template-columns:44px minmax(0,1fr);gap:6px;align-items:baseline;padding:6px 7px;border-radius:6px;line-height:1.35}.owner-class-calendar-reservation .class-calendar-grid{grid-auto-rows:minmax(56px,auto)}.owner-class-calendar-reservation .class-calendar-day{cursor:pointer}.owner-class-calendar-reservation .class-calendar-day.calendar-day-minimal,.member-booking-calendar .class-calendar-day.calendar-day-minimal{min-height:56px;padding:4px 8px;justify-content:center}.owner-class-calendar-reservation .class-calendar-day.is-selected{border-color:#3474b880;box-shadow:inset 0 0 0 1px #3474b840}.owner-class-calendar-reservation .calendar-day-head.reservation-head{justify-content:center;align-items:center;min-height:0;margin-bottom:0}.owner-class-calendar-reservation .calendar-day-number{flex-shrink:0;font-size:14px;font-weight:700;color:#66716d;line-height:1}.owner-class-calendar-reservation .calendar-day-holidays{min-width:0;flex:1}.owner-class-calendar-reservation .holiday-name{max-width:100%;font-size:11px}.owner-class-calendar-reservation .calendar-session-list.reservation-summary{display:flex;flex-direction:column;gap:2px;flex:1;min-height:0}.reservation-summary-line{display:grid;grid-template-columns:1fr;gap:1px;font-size:13px;line-height:1.25}.reservation-summary-line .session-time{color:#1d2525;font-size:14px;font-weight:800}.reservation-summary-line .session-occupancy{color:#3474b8;font-size:14px;font-weight:800;text-align:right;white-space:nowrap}.member-pass-booking-warning{margin:0 0 14px;padding:12px 14px;border-radius:12px;border:1px solid rgba(212,160,23,.45);background:#fff8e1f2;color:#7a4f00;font-size:15px;font-weight:700;line-height:1.5}.member-pass-renewal-notice{margin:0 0 12px;padding:14px 16px;border-radius:12px;border:1px solid rgba(31,94,88,.28);background:#eff6f4fa;color:#1a4d47;font-size:17px;font-weight:700;line-height:1.55}.member-booking-calendar .class-calendar-day{cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.member-booking-calendar .class-calendar-day.is-selected{border-color:#1f5e5894;background:#eff6f4fa;box-shadow:inset 0 0 0 2px #1f5e583d}.member-booking-calendar .class-calendar-day.is-selected .calendar-day-number{color:#1f5e58;font-weight:900}.member-booking-calendar .class-calendar-day.is-selected.holiday-red{border-color:#c24f3773;background:#fff5f2fa;box-shadow:inset 0 0 0 2px #c24f372e}.member-booking-calendar .member-booking-slot{width:100%;margin:0;padding:0;border:none;border-radius:0;background:transparent;text-align:left;font:inherit;pointer-events:none}.member-booking-calendar .member-booking-slot.is-clickable{cursor:inherit}.member-booking-calendar .member-booking-slot.is-clickable:hover{background:transparent;border-color:transparent}.member-booking-calendar .member-booking-slot.is-booked{background:transparent;border:none}.member-booking-calendar .member-booking-slot.is-booked .session-time{color:#1f5e58}.member-booking-calendar .member-booking-slot.is-booked .session-occupancy{color:#3f7a72}.member-booking-calendar .member-booking-slot.is-waitlisted{background:transparent;border:none}.member-booking-calendar .member-booking-slot.is-waitlisted .session-time{color:#9a7009}.member-booking-calendar .member-booking-slot.is-waitlisted .session-occupancy{color:#b8860b}.member-booking-calendar .member-booking-slot.is-disabled{cursor:not-allowed;opacity:.55}.member-booking-detail-card .member-booking-instructor-name{display:block;color:#2d5f8f;font-size:18px;font-weight:800;line-height:1.25}.member-booking-detail{margin-top:16px;padding:14px;border:1px solid rgba(31,94,88,.12);border-radius:14px;background:#fffdf8;box-shadow:0 10px 22px #20242214}.calendar-day-detail-scroll-target{scroll-margin-top:12px}@media(max-width:900px){.calendar-day-detail-scroll-target{scroll-margin-top:calc(var(--mobile-header-h, 52px) + 8px)}}.member-booking-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.member-booking-detail-head h3{margin:2px 0 0;color:#1d2525;font-size:17px}.member-booking-detail-list{display:grid;gap:8px}.member-booking-session-card{display:flex;flex-direction:column;gap:10px;padding:10px 12px}.member-booking-session-card .member-booking-block-note{margin:0}.member-booking-action-button-bottom{width:100%;min-height:44px;margin-top:2px}.member-booking-detail-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid rgba(31,94,88,.1);border-radius:12px;background:#eff6f4d1}.member-booking-detail-card div{display:grid;gap:3px;min-width:0;flex:1 1 auto}.member-booking-detail-card>.primary-button,.member-booking-action-button{flex-shrink:0;min-width:92px;padding:0 16px;white-space:nowrap}.member-booking-detail-card strong{color:#1d2525;font-size:15px}.member-booking-session-heading{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.member-booking-session-heading .session-date-override-badge{flex-shrink:0}.member-booking-detail-card span{color:#66716d;font-size:13px;font-weight:800}.member-booking-block-note{color:#b84c35;font-size:13px;font-style:normal;font-weight:600;line-height:1.4}.member-booking-session-wrap{display:flex;flex-direction:column}.member-booking-action-message{margin:4px 0 0;padding:10px 14px;border-radius:10px;background:#1f6b4f1a;color:#1f6b4f;font-size:14px;font-weight:700;text-align:center}.member-booking-action-blocked{opacity:.72}.member-booking-action-attended:disabled{opacity:.72;cursor:not-allowed}.member-booking-detail-card:has(.member-booking-confirm-actions),.member-booking-session-card:has(.member-booking-confirm-actions){flex-direction:column;align-items:stretch}.member-booking-confirm-actions{display:flex;flex-direction:column;gap:10px;width:100%;min-width:0}.member-booking-confirm-text{margin:0;color:#1d2525;font-size:14px;font-weight:700;line-height:1.45;text-align:center;white-space:pre-line}.member-booking-confirm-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}.member-booking-confirm-buttons .primary-button,.member-booking-confirm-buttons .secondary-button{min-height:44px;padding:0 16px;font-size:15px}.calendar-day-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;overflow-y:auto;background:#1c201e73}.calendar-day-modal{width:min(520px,100%);max-height:min(85vh,720px);margin:auto;overflow-y:auto;padding:16px 18px 18px;border-radius:14px;background:#fffdf8;box-shadow:0 24px 60px #2024222e}.calendar-day-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.calendar-day-modal-header h3{margin:2px 0 0;font-size:19px;line-height:1.25}.calendar-day-detail{margin-top:16px;padding:16px 18px 18px;border:1px solid rgba(29,37,37,.1);border-radius:14px;background:#fffdf8}.calendar-day-detail-header{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px 16px;margin-bottom:14px}.calendar-day-detail-sessions{display:grid;gap:10px}.calendar-day-inline-detail{margin-top:16px;padding:16px 18px 18px;border:1px solid rgba(29,37,37,.1);border-radius:14px;background:#fffdf8;box-shadow:0 10px 24px #20242214}.calendar-day-detail-toolbar{display:grid;gap:10px;margin-bottom:14px}.calendar-add-session-form{display:grid;gap:10px;padding:12px;border:1px solid rgba(31,94,88,.16);border-radius:12px;background:#1f5e580a}.calendar-add-session-form label{display:grid;gap:4px;font-size:.88rem}.calendar-add-session-form select,.calendar-add-session-form .time-select-row select{width:100%;padding:8px 10px;border:1px solid rgba(29,37,37,.14);border-radius:8px;background:#fff}.calendar-add-session-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.calendar-add-session-actions .primary-button,.calendar-add-session-actions .secondary-button{min-height:44px;padding:0 18px;font-size:15px}.calendar-session-delete{flex-shrink:0}.calendar-day-detail-sessions.inline{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.calendar-day-detail-sessions-list{grid-template-columns:minmax(0,420px);max-width:420px}.calendar-session-list-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.calendar-session-list-row .session-list-primary{display:grid;gap:1px;min-width:0}.calendar-session-list-row .session-list-primary .session-time{font-size:16px;font-weight:900;line-height:1.1}.calendar-session-list-row .session-list-primary strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-session-list-row .session-list-meta{display:grid;justify-items:end;gap:1px;flex-shrink:0;text-align:right}.calendar-session-list-row .session-list-meta .session-instructor-name{font-size:11px;color:#66716d}.calendar-session-list-row .session-list-meta em{font-size:12px;font-weight:800}.calendar-session-list-row .session-list-meta .capacity-override-badge{font-size:10px}.session-date-override-badge{display:inline-block;padding:1px 6px;border-radius:999px;background:#b478141f;color:#9a6b00;font-size:10px;font-weight:700;font-style:normal}.calendar-session-override-button{flex-shrink:0;min-height:36px;padding:6px 10px;font-size:12px}.calendar-session-override-form input[type=text]{width:100%;padding:8px 10px;border:1px solid rgba(29,37,37,.14);border-radius:8px;background:#fff}.calendar-session-override-head{display:grid;gap:4px}.calendar-day-detail-sessions .calendar-session-card{padding:10px 12px}.calendar-day-detail-sessions.inline .calendar-session-card.selectable{cursor:pointer}.calendar-day-detail-sessions.inline .calendar-session-card.selectable:hover,.calendar-day-detail-sessions.inline .calendar-session-card.selected{border-color:#1f5e5857;box-shadow:0 8px 18px #1f5e5814}.calendar-day-detail-sessions.inline .calendar-session-card.selected{background:#fffefa}.calendar-day-detail-sessions.inline .calendar-session-main{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;align-items:start}.calendar-day-detail-sessions.inline .calendar-session-main>span,.calendar-day-detail-sessions.inline .calendar-session-main>strong,.calendar-day-detail-sessions.inline .calendar-session-main>small,.calendar-day-detail-sessions.inline .calendar-session-main>em,.calendar-day-detail-sessions.inline .calendar-session-main>.capacity-override-badge{grid-column:1}.calendar-day-detail-sessions.inline .calendar-session-main>.calendar-session-delete{grid-column:2;grid-row:1 / -1;align-self:start;justify-self:end;margin-left:0}.calendar-day-detail-sessions.inline .calendar-session-main>.session-time{font-size:18px;font-weight:900;line-height:1.1}.calendar-day-detail-sessions.inline .calendar-session-main>strong{margin-top:1px}.calendar-day-detail-sessions.inline .calendar-session-main>small{margin-top:1px}.calendar-day-detail-sessions.inline .session-capacity-tools{grid-column:2;grid-row:1 / span 3;margin-top:0;gap:3px}.calendar-day-detail-sessions.inline .capacity-stepper{grid-template-columns:auto 24px minmax(84px,auto) 24px;gap:4px;padding:4px}.calendar-day-detail-sessions.inline .capacity-stepper span{color:#66716d;font-size:11px;white-space:nowrap}.calendar-day-detail-sessions.inline .capacity-stepper button{width:24px;height:24px;border-radius:7px}.calendar-day-detail-sessions.inline .capacity-stepper strong{min-width:84px;font-size:24px;font-weight:900}.calendar-day-detail-sessions.inline .capacity-override-badge{font-size:11px;line-height:1.1}.reservation-member-list{display:grid;gap:5px;margin-top:8px}.reservation-detail-screen{display:grid;gap:10px}.reservation-detail-screen-head{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border:1px solid rgba(31,94,88,.1);border-radius:12px;background:#f7fbf8}.reservation-detail-screen-summary{flex:1 1 auto;min-width:0}.reservation-detail-screen-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:4px}.reservation-detail-screen-head h4{margin:2px 0;color:#1d2525;font-size:16px}.reservation-detail-screen-head .session-time{font-size:19px;font-weight:900;letter-spacing:.02em}.reservation-detail-screen-head span,.reservation-member-brief-head span{color:#6b7572;font-size:13px;font-weight:800}.reservation-member-row{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:6px 8px;border:1px solid rgba(31,94,88,.1);border-radius:10px;background:#eff6f4d1;text-align:left;cursor:pointer}.reservation-member-row:hover,.reservation-member-row.active{border-color:#1f5e5857;background:#e5f1edf5}.reservation-member-row:disabled{cursor:default;opacity:.78}.reservation-member-row-with-actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px;cursor:default}.reservation-member-row-with-actions .reservation-member-row-main{flex:1 1 120px;min-width:0}.reservation-member-actions{display:flex;flex-wrap:nowrap;gap:4px;padding-top:0;flex:0 0 auto}.reservation-member-actions .secondary-button{min-height:28px;padding:2px 8px;font-size:12px;white-space:nowrap}.reservation-member-row-main{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.reservation-member-row-main:disabled{cursor:default;opacity:.78}.reservation-member-row div{display:grid;gap:2px;min-width:0}.reservation-member-name{overflow:hidden;display:block;width:100%;color:#1d2525;font-size:14px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.reservation-member-row span{color:#6b7572;font-size:11px;font-weight:800}.reservation-member-row em{flex:0 0 auto;padding:3px 7px;border-radius:999px;background:#1f5e581a;color:#1f5e58;font-size:11px;font-style:normal;font-weight:900;white-space:nowrap}.reservation-member-empty{margin:10px 0 0;color:#7a8683;font-size:13px;font-weight:700}.reservation-member-brief{margin-top:12px;padding:12px;border:1px solid rgba(31,94,88,.14);border-radius:12px;background:#f4faf7}.reservation-member-brief-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.reservation-member-brief-head h4{margin:2px 0 0;color:#1d2525;font-size:17px}.reservation-member-brief-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin:0}.reservation-member-brief-grid div{padding:8px 9px;border-radius:10px;background:#ffffffc7}.reservation-member-brief-grid dt,.reservation-member-brief-memo span{color:#6b7572;font-size:12px;font-weight:900}.reservation-member-brief-grid dd{margin:2px 0 0;color:#1d2525;font-size:14px;font-weight:800}.reservation-member-brief-memo{margin-top:9px;padding:9px 10px;border-radius:10px;background:#ffffffc7}.reservation-member-brief-memo p{margin:4px 0 0;color:#1d2525;font-size:14px;line-height:1.45;white-space:pre-wrap}.owner-class-calendar-compact .calendar-session-card.compact.session-full{border-color:#8b2f2f38;background:#fff7f5fa}.owner-class-calendar-compact .calendar-session-card.compact .session-time{color:#7a5236;font-size:13px;font-weight:900;letter-spacing:.01em;white-space:nowrap}.owner-class-calendar-compact .calendar-session-card.compact .session-title{overflow:hidden;color:#1d2525;font-size:13px;font-weight:700;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.schedule-registration-layout{display:grid;gap:16px}.schedule-overlap-prompt{margin-bottom:14px;padding:12px 14px;border:1px solid rgba(155,106,72,.28);border-radius:10px;background:#fff8f0eb}.schedule-overlap-prompt p{margin:0 0 10px;font-size:14px;line-height:1.45}.schedule-overlap-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.overlap-template-list{margin:0;padding-left:18px;color:#5c6764;font-size:13px}.weekly-schedule-board{margin-top:16px;padding-top:14px;border-top:1px solid rgba(29,37,37,.08)}.weekly-schedule-board h3{margin:0 0 10px;font-size:15px}.weekly-schedule-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.weekly-schedule-day{display:flex;flex-direction:column;gap:6px;min-height:72px;padding:8px;border:1px solid rgba(29,37,37,.08);border-radius:8px;background:#fffdf8}.weekly-schedule-day strong{font-size:13px;color:#5c6764}.weekly-schedule-slots{display:flex;flex-direction:column;gap:4px}.weekly-schedule-slot{display:flex;flex-direction:column;gap:1px;font-size:12px;line-height:1.3}.weekly-schedule-slot em{font-style:normal;font-weight:700;color:#1d2525}.weekly-schedule-program-select{width:100%;min-width:0;padding:2px 4px;border:1px solid rgba(29,37,37,.14);border-radius:4px;background:#fff;font-size:11px;line-height:1.3}.weekly-schedule-empty{color:#9aa5a2;font-size:13px}.schedule-set-list{display:grid;gap:10px;margin-top:16px}.schedule-set-list-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}.schedule-set-list-head h3{margin:0;font-size:15px}.schedule-set-create-button{min-height:34px;padding:0 12px;font-size:14px}.schedule-set-list h3{margin:0 0 4px;font-size:15px}@keyframes schedule-card-flash{0%{background:#fffdf8;box-shadow:none}20%{background:#d4a01738;box-shadow:0 0 0 2px #d4a0178c}50%{background:#d4a01714;box-shadow:0 0 0 1px #d4a01733}80%{background:#d4a01738;box-shadow:0 0 0 2px #d4a0178c}to{background:#fffdf8;box-shadow:none}}.schedule-set-card.just-copied{animation:schedule-card-flash .8s ease 3}.schedule-set-card{display:grid;gap:8px;padding:12px 14px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8}.schedule-set-card-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 10px}.schedule-set-card-label{color:#5c6764;font-size:13px;font-weight:700}.schedule-set-card .schedule-set-card-meta{color:#3d4f49;font-size:14px;font-weight:700;line-height:1.35}.schedule-set-card strong{display:block;font-size:15px}.schedule-set-card span{display:block;margin-top:2px;color:#5c6764;font-size:13px}.schedule-set-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.schedule-set-delete-button{min-height:32px}.schedule-orphan-prompt{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 4px;padding:10px 12px;border:1px solid rgba(184,76,53,.28);border-radius:8px;background:#fff8f0f2}.schedule-orphan-prompt p{margin:0}.schedule-orphan-detail{margin-top:6px!important;color:#5c6764;font-size:13px;font-size:14px;line-height:1.45}.weekly-builder-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:11000;display:flex;background:#1c201e80;touch-action:manipulation}.weekly-builder-shell{display:flex;flex-direction:column;width:100%;height:100%;background:#f7f4ef}.weekly-builder-header{display:flex;flex-direction:column;gap:10px;padding:14px 18px;border-bottom:1px solid rgba(29,37,37,.1);background:#fffdf8}.weekly-builder-header-main{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}.weekly-builder-header h2{margin:4px 0 0;font-size:22px;line-height:1.25}.weekly-builder-set-name-field{min-width:160px;flex:1 1 180px;max-width:280px}.weekly-builder-date-inline{display:flex;align-items:center;gap:8px;width:fit-content}.weekly-builder-date-inline span{font-size:13px;font-weight:600;color:#3d4845;white-space:nowrap}.weekly-builder-date-inline input[type=date]{width:auto;min-width:0;max-width:148px;min-height:34px;padding:6px 8px;border:1px solid rgba(29,37,37,.16);border-radius:8px;background:#fff;color:#1d2525;font-size:13px;box-sizing:border-box}.weekly-builder-date-field{min-width:180px}.weekly-builder-date-block{display:grid;gap:8px;min-width:min(100%,320px)}.weekly-builder-guide{display:grid;gap:4px}.weekly-builder-guide p{margin:0;font-size:12px;line-height:1.45;color:#5f6b68}.weekly-builder-guide strong{font-weight:700;color:#3d4845}.weekly-builder-header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.weekly-builder-overlap-msg{margin:0;padding:8px 18px}.weekly-builder-body{display:flex;flex-direction:column;flex:1;min-height:0}.weekly-builder-grid-wrap-full{flex:1;min-height:0}.weekly-builder-grid-wrap{overflow:auto;padding:8px 10px 12px;min-width:0;touch-action:pan-y}.weekly-builder-grid{display:grid;grid-template-columns:40px repeat(7,minmax(44px,1fr));gap:4px;width:100%;min-width:0}.weekly-builder-time-axis{position:relative}.weekly-builder-time-axis span{position:absolute;right:2px;font-size:10px;color:#7a8683;transform:translateY(-50%)}.weekly-builder-day-column{display:flex;flex-direction:column;min-width:0}.weekly-builder-day-header{position:sticky;top:0;z-index:6;text-align:center;font-size:12px;font-weight:700;padding-bottom:4px;color:#3d4845;background:linear-gradient(180deg,#fffdf8 78%,#fffdf800)}.weekly-builder-time-axis-header{visibility:hidden;padding-bottom:4px;min-height:1.4em}.weekly-builder-day-track{position:relative;border:1px solid rgba(29,37,37,.12);border-radius:6px;background:#fffdf8;overflow:hidden}.weekly-builder-day-track .grid-tick{position:absolute;left:0;right:0;height:0;border-top:1px solid rgba(29,37,37,.06);pointer-events:none}.weekly-builder-day-track .grid-tick.half-hour{border-top-color:#1d25251f}.weekly-builder-day-track .grid-tick.hour{border-top-color:#1d252533}.weekly-builder-slot{position:absolute;left:3px;right:3px;z-index:2;display:flex;flex-direction:column;padding:0;border:2px solid rgba(72,110,92,.55);border-radius:5px;cursor:grab;overflow:hidden;touch-action:manipulation;-webkit-user-select:none;user-select:none}.weekly-builder-slot.dragging-source{opacity:.28;border-style:dashed;pointer-events:none}.weekly-builder-drag-ghost{position:fixed;z-index:10050;display:flex;align-items:flex-start;padding:4px 6px;border:2px solid rgba(47,107,79,.75);border-radius:5px;box-shadow:0 10px 28px #0f181647;opacity:.88;pointer-events:none;cursor:grabbing;font-size:12px;font-weight:700;line-height:1.25;color:#1d2525;box-sizing:border-box}.weekly-builder-drag-ghost span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weekly-builder-slot-body{flex:1;min-height:16px}.weekly-builder-slot.selected{border-width:3px;border-color:#133933!important;box-shadow:0 0 0 3px #1f5e5861;z-index:4}@keyframes coach-hint-pulse{0%{transform:scale(1);box-shadow:0 0 #d4a01700}40%{transform:scale(1.02);box-shadow:0 0 0 4px #d4a01759}to{transform:scale(1);box-shadow:0 0 #d4a01700}}.weekly-builder-coach-hint{margin:0 0 10px;padding:10px 12px;border-radius:10px;border:2px solid rgba(212,160,23,.55);background:#fff8e173;color:#6b4d08;font-size:14px;font-weight:800;line-height:1.45;opacity:.2;transition:opacity .22s ease,background .22s ease}.weekly-builder-coach-hint.is-lit{opacity:1;background:#fff8e1f7;animation:coach-hint-pulse .44s ease}.weekly-builder-move-hint{margin-bottom:12px}.weekly-builder-slot-title{display:block;padding:4px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;line-height:1.25;pointer-events:none}.weekly-builder-slot.overlap{border-color:#b45309!important;background:#ffedd5f2!important}.weekly-builder-slot-detail-popup{padding:12px 14px;border-radius:10px;background:#1f3330;color:#eef3ef;box-shadow:0 8px 24px #0f181638;font-size:13px;line-height:1.5}.weekly-builder-slot-detail-popup .help-tooltip-summary,.weekly-builder-slot-detail-popup .help-tooltip-detail{color:#dce8e4}.schedule-set-card-main{flex:1;min-width:0}.schedule-set-label-field{display:block;width:100%;min-width:0}.schedule-set-label-field input{width:100%;max-width:none;box-sizing:border-box;font-size:15px;font-weight:700}.weekly-builder-resize-handle{position:relative;flex-shrink:0;width:100%;height:5px;padding:0;border:none;background:transparent;cursor:ns-resize;z-index:3}.weekly-builder-resize-handle.top{margin-bottom:auto}.weekly-builder-resize-handle.bottom{margin-top:auto}.weekly-builder-side{display:flex;flex-direction:column;gap:10px;padding:8px 6px;border-left:1px solid rgba(29,37,37,.1);background:#fffdf8;overflow:auto;min-width:0}.weekly-builder-header .weekly-builder-palette{padding-top:2px}.weekly-builder-header .weekly-builder-inspector{padding-top:2px;border-top:1px solid rgba(29,37,37,.08)}.weekly-builder-section-head{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-bottom:6px}.weekly-builder-section-head h3{margin:0;font-size:12px;line-height:1.2}.weekly-builder-palette h3,.weekly-builder-inspector h3{margin:0 0 6px;font-size:12px}.weekly-builder-palette-list{display:flex;flex-wrap:wrap;gap:6px}.weekly-builder-palette-card{width:auto;min-width:72px;max-width:140px;flex:0 1 auto;padding:7px 10px;border:2px solid rgba(47,107,79,.45);border-radius:6px;text-align:center;font-size:12px;font-weight:700;line-height:1.25;word-break:keep-all;overflow-wrap:anywhere;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.weekly-builder-palette .inline-note,.weekly-builder-side .inline-note{font-size:11px;line-height:1.35}.weekly-builder-inspector-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;min-width:0}.weekly-builder-program-picker{display:grid;gap:4px;max-height:160px;overflow-y:auto}.weekly-builder-program-picker-item{width:100%;padding:7px 8px;border:2px solid rgba(47,107,79,.45);border-radius:6px;text-align:center;font-size:11px;font-weight:700;line-height:1.25;word-break:keep-all;overflow-wrap:anywhere;cursor:pointer}.weekly-builder-program-picker-item.active{box-shadow:inset 0 0 0 1px #183f3b59;outline:2px solid rgba(24,63,59,.28);outline-offset:1px}.weekly-builder-inspector-empty{margin:0;font-size:11px;line-height:1.35}.weekly-builder-time-row{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.weekly-builder-compact-field{display:grid;gap:3px;min-width:0;flex:0 1 auto;width:auto;min-width:96px}.weekly-builder-compact-field span{font-size:10px;font-weight:600;letter-spacing:0;text-transform:none;color:#7a8683;line-height:1.2}.weekly-builder-compact-field select,.weekly-builder-compact-field input{width:auto;min-width:96px;max-width:160px;min-height:28px;padding:4px 6px;border:1px solid rgba(29,37,37,.16);border-radius:6px;background:#fff;color:#1d2525;font-size:12px;line-height:1.2;box-sizing:border-box}.weekly-builder-compact-field select,.weekly-builder-time-row .time-select-row select{text-align:center;font-variant-numeric:tabular-nums;padding:4px 2px}.weekly-builder-slot-delete{width:auto;min-width:72px;flex-shrink:0;min-height:28px;padding:2px 10px;border:1px solid rgba(154,52,18,.25);border-radius:4px;background:#fff;color:#9a3412;font-size:11px;cursor:pointer}.weekly-builder-slot-delete:hover{background:#fef2f2e6}.member-session-card .primary-button,.member-session-card .secondary-button{width:100%;min-height:34px;font-size:13px}.role-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.role-card-list{display:grid;gap:10px}.role-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8}.community-profile-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px;padding:16px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#fffdf8}.community-request-list{margin-bottom:14px}.community-card.matched{border-color:#1f5e585c;background:#edf7ef}.role-card span,.role-card strong,.role-card em,.role-card small{display:block}.role-card span{color:#66716d;font-size:13px;font-weight:800}.role-card strong{margin-top:4px}.role-card em,.role-card small{margin-top:5px;color:#5c6764;font-size:13px;font-style:normal}.role-card-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.attendance-list{display:grid;gap:8px;margin-top:12px}.attendance-list.compact{max-width:560px}.attendance-row{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;padding:6px 8px;border:1px solid rgba(29,37,37,.08);border-radius:8px;background:#f8f4ed}.attendance-row span{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-row em{flex:0 0 auto;min-width:42px}.attendance-row span,.attendance-row em{margin:0;font-size:13px;font-style:normal;font-weight:900}.attendance-row em{color:#9b6a48}.attendance-row .secondary-button{flex:0 0 auto;min-height:28px;padding:2px 7px;font-size:12px;white-space:nowrap}.notice-panel{max-width:720px}.notice-form{display:grid;gap:12px;padding:16px;margin-bottom:16px;border:1px solid rgba(29,37,37,.1);border-radius:10px;background:#fffdf8f2}.notice-form textarea{min-height:90px;resize:vertical}.notice-form-actions{display:flex;justify-content:flex-end;gap:8px}.notice-list{display:grid;gap:10px}.notice-empty{padding:32px;color:var(--text-muted);text-align:center;font-size:15px}.notice-card{display:grid;gap:8px;padding:14px 16px;border:1px solid rgba(29,37,37,.1);border-radius:10px;background:#fffdf8;transition:box-shadow .15s}.notice-card:hover{box-shadow:0 2px 10px #1d252512}.notice-card.pinned{border-left:4px solid var(--brand-secondary);border-color:#9b6a484d;background:#fff8ef}.notice-card-head{display:flex;align-items:center;gap:8px}.notice-card-head>svg{color:var(--brand-secondary);flex-shrink:0}.notice-card-head strong{flex:1;font-size:16px;font-weight:700}.notice-date{color:var(--text-muted);font-size:13px;font-weight:500;white-space:nowrap}.notice-content{margin:0;color:#5c6764;font-size:15px;line-height:1.55;white-space:pre-wrap}.notice-card-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}.notice-card-actions .secondary-button{min-height:30px;padding:0 10px;font-size:13px;gap:4px}.notice-image-field{display:grid;gap:8px}.notice-image-label{font-size:14px;font-weight:600;color:#3f4a47}.notice-image-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.notice-image-thumb,.notice-image-add{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden}.notice-image-thumb{border:1px solid rgba(29,37,37,.12);background:#fff}.notice-image-thumb img{width:100%;height:100%;object-fit:cover}.notice-image-remove{position:absolute;top:4px;right:4px;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:999px;background:#1d2525b8;color:#fff;cursor:pointer}.notice-image-add{display:grid;place-items:center;gap:4px;border:1px dashed rgba(29,37,37,.22);background:#fffdf8e6;color:var(--text-muted);font-size:13px;font-weight:600;cursor:pointer}.notice-image-add:disabled{opacity:.6;cursor:wait}.notice-important-section{display:grid;gap:8px}.notice-important-heading{margin:0;font-size:15px;font-weight:700}.notice-important-toggle{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600}.notice-banner-schedule{display:grid;gap:10px;padding:12px;border-radius:10px;background:#9b6a4814;border:1px solid rgba(155,106,72,.18)}.notice-banner-start{display:grid;gap:8px;margin:0;padding:0;border:none}.notice-banner-start legend{font-size:14px;font-weight:700;margin-bottom:2px}.notice-banner-start>label:not(.notice-banner-end-only){display:flex;align-items:center;gap:8px;font-size:14px}.notice-banner-end-only{display:flex;align-items:center;gap:10px;margin-top:4px}.notice-banner-end-only span{flex-shrink:0;white-space:nowrap}.notice-banner-end-only input[type=date]{width:auto;flex:0 0 148px;max-width:100%}.notice-banner-period{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.notice-banner-period input[type=date]{flex:1 1 120px;min-width:0}.notice-banner-period-separator{font-size:15px;font-weight:700;color:#5c6764}.important-notice-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;background:#fffdf8}.important-notice-popup{display:grid;grid-template-rows:auto auto auto;align-content:start;width:100%;height:100%;max-height:100dvh;overflow-y:auto;padding:calc(16px + env(safe-area-inset-top,0px)) 16px calc(16px + env(safe-area-inset-bottom,0px));background:#fffdf8}.important-notice-popup-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid rgba(29,37,37,.08)}.important-notice-popup-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#c0392b1f;color:#c0392b;font-size:13px;font-weight:700}.important-notice-popup-close{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:999px;background:#1d25250f;color:#1d2525;cursor:pointer}.important-notice-popup-body{overflow-y:visible;padding:20px 0;display:grid;gap:14px;align-content:start}.important-notice-popup-title{margin:0;font-size:22px;line-height:1.35;color:#1d2525}.important-notice-popup-content{margin:0;font-size:16px;line-height:1.65;color:#3d4845;white-space:pre-wrap}.important-notice-popup-images{display:flex;flex-direction:column;align-items:center;gap:10px}.important-notice-popup-images img{display:block;max-width:100%;max-height:min(50vh,420px);width:auto;height:auto;border-radius:10px;object-fit:contain;border:1px solid rgba(29,37,37,.08)}.important-notice-popup-footer{padding-top:12px;border-top:1px solid rgba(29,37,37,.08)}.important-notice-popup-dismiss{width:100%}.survey-greeting-popup-footer{display:flex;gap:8px}.survey-greeting-popup-footer .secondary-button,.survey-greeting-popup-footer .primary-button{flex:1}.survey-panel .survey-date-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.survey-questions-editor{display:grid;gap:12px}.survey-questions-editor-header{display:flex;flex-direction:column;gap:8px}.survey-question-template-row{display:flex;flex-wrap:wrap;gap:6px}.survey-question-editor-card{display:grid;gap:8px;padding:12px;border:1px solid rgba(29,37,37,.1);border-radius:12px;background:#ffffff8c}.survey-question-editor-top{display:flex;justify-content:space-between;align-items:center}.survey-options-editor,.survey-option-row{display:grid;gap:8px}.survey-option-row{grid-template-columns:1fr auto;align-items:center}.survey-form-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.survey-results-panel{display:grid;gap:12px;margin-bottom:16px;padding:14px;border:1px solid rgba(29,37,37,.1);border-radius:14px;background:#ffffffb3}.survey-results-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.survey-result-question{display:grid;gap:8px}.survey-result-bar-row{display:grid;gap:4px}.survey-result-bar{height:8px;border-radius:999px;background:#1d252514;overflow:hidden}.survey-result-bar>div{height:100%;background:#2f6fed}.survey-result-text{margin:0;padding:8px 10px;border-radius:10px;background:#1d25250a}.survey-choice-option{display:flex;align-items:center;gap:8px;margin:4px 0}.survey-rating-options{display:flex;flex-wrap:wrap;gap:8px}.survey-response-form,.survey-response-done{display:grid;gap:14px}.survey-response-actions{display:flex;gap:8px;justify-content:flex-end}.survey-required{color:#c0392b}.survey-question-field{margin:0;padding:12px;border:1px solid rgba(29,37,37,.1);border-radius:12px}.notice-image-picker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:flex-start;justify-content:center;padding:max(12px,env(safe-area-inset-top,0px)) 16px 16px;background:#1218176b}.notice-image-picker-sheet{display:grid;gap:8px;width:min(100%,420px);margin:0;padding:16px;border-radius:14px;background:#fffdf8;box-shadow:0 18px 40px #1d25252e}.notice-image-picker-sheet>p{margin:0 0 4px;font-size:16px;font-weight:700}.notice-important-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#c0392b1f;color:#c0392b;font-size:12px;font-weight:700}.notice-card.important{border-color:#c0392b38}.notice-card.is-focused{box-shadow:0 0 0 2px #9b6a4859}.notice-card-images{display:flex;flex-direction:column;align-items:center;gap:8px}.notice-card-images img{display:block;max-width:100%;max-height:min(70vh,520px);width:auto;height:auto;border-radius:8px;object-fit:contain;border:1px solid rgba(29,37,37,.08)}.notice-banner-status{margin:0;font-size:13px;color:#9b6a48;font-weight:600}.important-notice-banner{display:flex;align-items:flex-start;gap:10px;width:100%;margin-bottom:12px;padding:12px 14px;border:1px solid rgba(192,57,43,.24);border-radius:12px;background:linear-gradient(135deg,#c0392b1f,#9b6a481a);text-align:left;cursor:pointer}.important-notice-banner-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:#c0392b24;color:#c0392b;flex-shrink:0}.important-notice-banner-copy{display:grid;gap:2px;min-width:0}.important-notice-banner-copy strong{font-size:13px;color:#c0392b;letter-spacing:.02em}.important-notice-banner-title{font-size:15px;font-weight:700;color:#1d2525}.important-notice-banner-preview{font-size:14px;color:#5c6764;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.danger-button{color:#c0392b!important;border-color:#c0392b40!important}.danger-button:hover{background:#fdf2f0!important;border-color:#c0392b66!important}.inquiry-panel{max-width:720px}.inquiry-form,.inquiry-reply-form{display:grid;gap:12px;padding:16px;margin-bottom:16px;border:1px solid rgba(29,37,37,.1);border-radius:10px;background:#fffdf8f2}.inquiry-owner-target{display:grid;gap:10px}.inquiry-form textarea,.inquiry-reply-form textarea{min-height:90px;resize:vertical}.inquiry-form-actions{display:flex;justify-content:flex-end;gap:8px}.inquiry-list{display:grid;gap:10px}.inquiry-item{display:grid;gap:6px;padding:14px 16px;border:1px solid rgba(29,37,37,.1);border-radius:10px;background:#fffdf8;text-align:left;transition:box-shadow .15s}.inquiry-item:hover{box-shadow:0 2px 10px #1d252512}.inquiry-item.needs-reply{border-left:4px solid var(--brand-secondary)}.inquiry-item.has-reply{border-left:4px solid rgba(46,125,96,.55)}.inquiry-item-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.inquiry-item-heading em{font-style:normal;font-size:13px;color:var(--text-muted)}.inquiry-item-meta{display:flex;justify-content:space-between;gap:8px;color:var(--text-muted);font-size:13px}.inquiry-detail{display:grid;gap:16px}.inquiry-detail-header{display:flex;justify-content:space-between;align-items:center}.inquiry-message{display:grid;gap:10px;padding:16px;border:1px solid rgba(29,37,37,.1);border-radius:10px;background:#fffdf8}.inquiry-message-reply{background:#f7fbf8;border-color:#2e7d602e}.inquiry-message-heading{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.inquiry-message-heading h3,.inquiry-message-heading h4{margin:0}.inquiry-message-heading span{color:var(--text-muted);font-size:13px}.inquiry-attached-image,.inquiry-image-preview img{max-width:100%;max-height:280px;border-radius:8px;object-fit:contain}.inquiry-image-preview{display:grid;gap:8px}.member-board-subtabs{display:flex;gap:8px;margin-bottom:16px}.member-board-subtabs button{flex:1;padding:10px 12px;border:1px solid rgba(29,37,37,.12);border-radius:999px;background:#fffdf8;font-weight:600}.member-board-subtabs button.active{background:#9b6a481f;border-color:#9b6a4859}.nav-board-group{position:relative}.nav-board-toggle{display:inline-flex;align-items:center;gap:4px}.nav-board-subtabs{margin-top:-4px}.member-inquiry-fab{position:fixed;right:18px;bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:120}.mobile-bottom-nav,.mobile-settings-backdrop,.mobile-settings-sheet,.mobile-fab,.mobile-fab-group,.mobile-fab-secondary{display:none}.ai-assistant-pro-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;padding:1px 4px;border-radius:4px;background:#b453091f;color:#b45309;font-size:10px;font-weight:800;letter-spacing:.04em;line-height:1.2}.nav-tab-ai{display:inline-flex;align-items:center;gap:6px}.nav-tab-ai--locked{opacity:.85}.ai-assistant-upsell-panel{max-width:640px}.ai-assistant-upsell-hero{display:grid;gap:10px;margin-bottom:16px}.ai-assistant-upsell-badge{display:inline-flex;width:fit-content;padding:4px 10px;border-radius:999px;background:#b453091f;color:#b45309;font-size:13px;font-weight:700}.ai-assistant-upsell-hero h2{margin:0;font-size:24px}.ai-assistant-upsell-hero p{margin:0;color:#66716d;line-height:1.55}.ai-assistant-upsell-list{margin:0 0 18px;padding-left:18px;color:#3d4844;line-height:1.55}.ai-assistant-upsell-actions{display:grid;gap:10px}@media(max-width:860px){body{background:#f7f3ec}.app-shell{--mobile-header-h: 52px;display:block;min-height:100svh;background:#f7f3ec}.app-shell-instructor,.app-shell-member{--mobile-header-h: 36px}.app-shell-attendance{--mobile-header-h: 58px}.app-shell.mobile-header-expanded{--mobile-header-h: 80px}.sidebar{position:fixed;top:0;left:0;right:0;z-index:100;display:block;width:100%;height:var(--mobile-header-h);max-height:var(--mobile-header-h);padding:0!important;margin:0;gap:0!important;border-right:0;border-bottom:1px solid rgba(29,37,37,.08);background:#fffdf8fa;overflow:hidden;box-shadow:none!important}.app-top-bar{box-sizing:border-box;display:grid;align-content:start;gap:4px;width:100%;height:var(--mobile-header-h);min-height:var(--mobile-header-h);max-height:var(--mobile-header-h);padding:6px 10px;margin:0;overflow:hidden}.app-top-bar-owner{grid-template-rows:24px 28px}.app-top-bar-owner.settings-open{grid-template-rows:24px 28px 28px}.app-top-bar-attendance{grid-template-rows:24px 28px}.app-top-bar-attendance{gap:2px;grid-template-rows:22px 32px}.app-shell-attendance .sidebar .nav-tabs-attendance .nav-tab{min-height:32px;padding:0 12px;line-height:1.2}.app-shell-attendance .main-workspace{padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}.app-top-bar-instructor,.app-top-bar-member{grid-template-rows:24px}.brand-lockup{display:flex;align-items:center;height:24px!important;min-height:24px!important;max-height:24px!important;margin:0;overflow:hidden}.brand-mark{width:24px!important;height:24px!important;border-radius:6px}.brand-mark-icon{width:24px;height:24px}.brand-lockup strong{font-size:15px;line-height:1;color:var(--text-dark)}.db-status-pill{flex-shrink:0;margin-left:auto;padding:2px 7px;border-radius:999px;font-size:11px;font-weight:700;line-height:1.3;white-space:nowrap}.brand-lockup-meta{display:flex;align-items:center;gap:6px;margin-left:auto;flex-shrink:0}.brand-lockup-meta .db-status-pill{margin-left:0}.app-version-pill{display:inline-block;flex-shrink:0;padding:2px 7px;border-radius:999px;border:1px solid rgba(29,37,37,.1);background:#1d25250d;color:var(--text-muted);font-size:11px;font-weight:700;line-height:1.3;white-space:nowrap}.db-status-pill.db-status-ahead{background:#b4781429;color:#9a6b12}.db-status-pill.db-status-connected{background:#183f3b1a;color:var(--brand-primary)}.db-status-pill.db-status-loading{background:#3474b81f;color:#3474b8}.db-status-pill.db-status-error,.db-status-pill.db-status-seed{background:#c24f371f;color:#b04a32}.db-status-pill{display:inline-block}.brand-lockup>div>span{display:none}.app-shell-owner .sidebar .nav-tabs,.app-shell-owner .sidebar .nav-subtabs{display:none!important}.app-shell-owner{--mobile-header-h: calc(52px + env(safe-area-inset-top, 0px)) }.app-shell-owner .sidebar{padding-top:env(safe-area-inset-top,0px)!important}.app-shell-owner .app-top-bar{display:flex;align-items:center;height:52px;min-height:52px;max-height:52px;padding:8px 14px}.app-shell-owner .revenue-drilldown-overlay{padding-top:calc(env(safe-area-inset-top,0px) + var(--mobile-header-h, 52px) + var(--owner-banner-offset, 0px) + 10px)}.app-shell-owner .revenue-drilldown-window{max-height:calc(100dvh - var(--mobile-header-h, 52px) - var(--owner-banner-offset, 0px) - 96px - env(safe-area-inset-bottom,0px))}.app-shell-owner .brand-lockup{height:auto!important;min-height:unset!important;max-height:none!important}.sidebar .nav-tabs-attendance,.sidebar .nav-subtabs{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;gap:4px;height:28px!important;min-height:28px!important;max-height:28px!important;margin:0;padding:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.sidebar .nav-tabs::-webkit-scrollbar,.sidebar .nav-subtabs::-webkit-scrollbar{display:none}.sidebar .nav-subtabs{border-top:1px dashed rgba(29,37,37,.12)}.sidebar .nav-subtabs:not(.is-visible){display:none!important}.sidebar .nav-tab,.sidebar .nav-settings-toggle,.sidebar .nav-subtabs button{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 auto!important;width:auto!important;height:28px!important;min-height:28px!important;max-height:28px!important;padding:0 8px;border:0!important;border-radius:6px;background:transparent!important;color:var(--text-dark)!important;font-size:12px;font-weight:600;white-space:nowrap;box-shadow:none!important;transform:none!important}.sidebar .nav-tab:hover,.sidebar .nav-settings-toggle:hover,.sidebar .nav-subtabs button:hover{background:#183f3b0f!important;color:var(--brand-primary)!important}.sidebar .nav-tab.active,.sidebar .nav-settings-toggle.active{background:var(--brand-primary-light)!important;color:var(--brand-primary)!important;font-weight:700}.sidebar .nav-subtabs button.active{background:#183f3b1a!important;color:var(--brand-primary)!important;font-weight:700}.sidebar .nav-settings-group{flex:0 0 auto;display:inline-flex}.sidebar .nav-settings-toggle{gap:3px}.sidebar .nav-settings-chevron{flex-shrink:0;opacity:.55;transition:transform .2s ease}.sidebar .nav-settings-group.is-open .nav-settings-chevron{transform:rotate(180deg)}.sidebar-note{display:none}.main-workspace{position:relative;z-index:1;width:100%;max-width:none;min-height:calc(100svh - var(--mobile-header-h));padding:calc(var(--mobile-header-h) + 8px) 10px calc(var(--mobile-bottom-nav-h, 68px) + 16px);margin:0}.onboarding-only .main-workspace{padding-bottom:24px}.app-shell{--mobile-bottom-nav-h: 60px;--mobile-submit-bar-h: 56px}:root{--mobile-bottom-nav-h: 60px}.mobile-bottom-nav{display:flex!important;position:fixed;bottom:0;left:0;right:0;z-index:200;height:var(--mobile-bottom-nav-h);background:#fffdf8fa;border-top:1px solid rgba(29,37,37,.09);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 -2px 16px #0000000f;padding-bottom:env(safe-area-inset-bottom,0px)}.mobile-bottom-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:100%;padding:0;border:none;background:transparent;color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.01em;transition:color .15s ease;-webkit-tap-highlight-color:transparent}.mobile-bottom-tab svg{flex-shrink:0;transition:transform .15s ease}.mobile-bottom-tab:active svg{transform:scale(.88)}.mobile-bottom-tab.active{color:var(--brand-primary)}.mobile-bottom-tab.active svg{stroke:var(--brand-primary)}.mobile-bottom-tab-ai{position:relative}.mobile-bottom-tab--locked{color:#9aa39f}.mobile-bottom-tab--locked.active{color:#7a8680}.mobile-bottom-tab-ai .ai-assistant-pro-badge{position:absolute;top:6px;right:calc(50% - 22px)}.mobile-settings-backdrop{display:block!important;position:fixed;top:0;right:0;bottom:0;left:0;z-index:185;background:#f7f3ec;animation:fadeInBackdrop .18s ease}.app-shell.mobile-settings-open .main-workspace{visibility:hidden;pointer-events:none}.app-shell.mobile-settings-open .mobile-fab,.app-shell.mobile-settings-open .mobile-fab-group{display:none!important}@keyframes fadeInBackdrop{0%{opacity:0}to{opacity:1}}.mobile-settings-sheet{position:fixed;bottom:calc(var(--mobile-bottom-nav-h) + 14px);right:18px;z-index:190;display:flex;flex-direction:column;align-items:flex-end;gap:12px;animation:speedDialUp .25s cubic-bezier(.34,1.3,.64,1)}@keyframes speedDialUp{0%{transform:translateY(32px) scale(.88);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.mobile-settings-row{display:flex;align-items:center;gap:10px;border:none;background:transparent;padding:0;-webkit-tap-highlight-color:transparent;cursor:pointer}.mobile-settings-label{padding:8px 20px;border-radius:22px;background:#fff;color:var(--text-dark);font-size:16px;font-weight:600;box-shadow:0 1px #ffffffe6 inset,0 4px 14px #00000021,0 1px 3px #00000014;white-space:nowrap;transition:box-shadow .12s ease,background .12s ease}.mobile-settings-row.active .mobile-settings-label{background:var(--brand-primary-light);color:var(--brand-primary);box-shadow:0 1px #ffffffe6 inset,0 4px 14px #183f3b2e,0 1px 3px #0000000f}.mobile-settings-row:active .mobile-settings-label{box-shadow:0 1px #fff9 inset,0 2px 6px #0000001a;background:#183f3b0f}.mobile-settings-icon-btn{display:flex;align-items:center;justify-content:center;width:52px;height:52px;flex-shrink:0;border-radius:50%;background:#fff;color:var(--text-dark);box-shadow:0 2px #fffc inset,0 -1px #0000000f inset,0 6px 18px #00000026,0 2px 6px #00000014;transition:transform .12s ease,box-shadow .12s ease}.mobile-settings-row.active .mobile-settings-icon-btn{background:var(--brand-primary);color:#fff;box-shadow:0 2px #fff3 inset,0 6px 18px #183f3b59,0 2px 6px #0000001a}.mobile-settings-row:active .mobile-settings-icon-btn{transform:scale(.91);box-shadow:0 2px #fff9 inset,0 3px 8px #0000001a}.mobile-settings-close-btn{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border:none;border-radius:50%;background:var(--brand-primary);color:#fff;box-shadow:0 2px #ffffff26 inset,0 6px 20px #183f3b73,0 2px 8px #0000001f;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,box-shadow .12s ease;margin-left:auto}.mobile-settings-close-btn:active{transform:scale(.91);box-shadow:0 1px #ffffff1a inset,0 3px 10px #183f3b4d}.mobile-fab{position:fixed;bottom:calc(var(--mobile-bottom-nav-h, 60px) + 14px + env(safe-area-inset-bottom,0px));right:calc(18px + env(safe-area-inset-right,0px));z-index:450;display:flex!important;visibility:visible!important;opacity:1!important;align-items:center;justify-content:center;width:54px;height:54px;border:none;border-radius:50%;background:var(--brand-primary);color:#fff;box-shadow:0 4px 16px #183f3b59;transition:transform .15s ease,box-shadow .15s ease;touch-action:none;-webkit-tap-highlight-color:transparent;pointer-events:auto}.mobile-fab--dragging{transition:none;cursor:grabbing;box-shadow:0 6px 20px #183f3b6b}.mobile-fab:active:not(.mobile-fab--dragging){transform:scale(.92);box-shadow:0 2px 8px #183f3b40}.mobile-fab-group{position:fixed;bottom:calc(var(--mobile-bottom-nav-h) + 14px);right:18px;z-index:180;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.mobile-fab-secondary{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:none;border-radius:50%;background:var(--brand-secondary);color:#fff;box-shadow:0 3px 10px #8c55284d;transition:transform .15s ease;-webkit-tap-highlight-color:transparent}.mobile-fab-secondary:active{transform:scale(.9)}.workspace-panel{padding:10px 12px;border-radius:10px!important;box-shadow:none!important}.workspace-panel:hover,.metric-card:hover,.session-row:hover,.decision-card:hover,.template-card:hover,.role-card:hover,.instructor-card:hover,.membership-card:hover,.notice-card:hover{transform:none!important}.section-heading{gap:8px;margin-bottom:8px;align-items:flex-start}.section-heading h2{font-size:17px!important;margin:0;line-height:1.25}.eyebrow{font-size:11px!important;letter-spacing:.04em}.studio-onboarding-header{flex-direction:column;align-items:stretch;gap:8px;margin-bottom:8px;padding:2px 0}.studio-onboarding-header h2{max-width:none;margin:2px 0 4px;font-size:19px!important;line-height:1.2}.studio-onboarding-header p:last-child{font-size:13px;line-height:1.4}.header-actions{display:flex;flex-wrap:wrap;gap:6px;width:100%}.header-actions .primary-button,.header-actions .secondary-button{min-height:30px!important;padding:0 10px!important;font-size:12px!important}.primary-button,.secondary-button{min-height:32px!important;padding:0 10px!important;font-size:13px!important;border-radius:6px!important}.member-booking-confirm-buttons .primary-button,.member-booking-confirm-buttons .secondary-button{min-height:44px!important;padding:0 16px!important;font-size:15px!important;border-radius:8px!important}.attendance-kiosk-submit{min-height:68px!important;padding:0 20px!important;font-size:22px!important;border-radius:12px!important}.member-booking-action-button,.member-booking-action-button-bottom{min-width:0!important;width:100%!important;padding:0 14px!important;white-space:nowrap!important}.form-section{padding:10px 12px;gap:8px;background:#fffdf8;box-shadow:none}.form-section-title h3{font-size:15px}.form-section-title span{min-width:24px;height:24px;font-size:12px}.field span{font-size:12px}.field input,.field select,.field textarea{min-height:34px!important;font-size:15px!important;padding:6px 10px}.custom-refund-text-field textarea{min-height:200px!important;padding:10px 12px!important}.member-search-input{padding:0 10px}.member-search-input input{min-height:34px!important}.segmented-control{gap:6px}.segmented-control button{min-height:32px;font-size:13px;border-radius:6px}.member-list-control,.member-detail-panel,.member-split-panel>.form-section{padding:10px 12px!important}.member-workspace--catalog .member-catalog-panel{padding:0!important;border:none!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.member-catalog-filters{padding:10px;border-bottom:none;background:transparent}.member-catalog-summary{padding:4px 10px 8px;border-bottom:none;background:transparent}.member-catalog-list{padding:0 10px 10px;max-height:none;padding-bottom:calc(10px + var(--mobile-bottom-nav-h, 0px))}.member-catalog-desktop-header{display:none}.member-list-tabs,.member-search-field{margin-top:8px}.member-list-rows{gap:6px;margin-top:8px}.member-list-row{padding:8px 10px;gap:4px;border-radius:6px}.member-list-row-head strong{font-size:14px}.member-list-row-meta{font-size:12px}.member-list-empty{padding:12px 8px;font-size:13px}.membership-card,.role-card,.instructor-card{padding:10px 12px}.notice-panel{max-width:none}.notice-create-button,.member-create-button{display:none}.notice-form{gap:8px;padding:10px 12px;margin-bottom:10px}.notice-form textarea{min-height:64px}.notice-list{gap:8px}.notice-empty{padding:16px 8px;font-size:13px}.notice-card{padding:10px 12px;gap:6px;border-radius:8px}.notice-card-head strong{font-size:14px}.notice-date,.notice-content{font-size:13px;line-height:1.45}.notice-card-actions .secondary-button{min-height:28px!important;padding:0 8px!important;font-size:12px!important}.setup-assistant-heading h2{font-size:17px!important;line-height:1.25}.setup-assistant-lead{font-size:12px;line-height:1.4}.setup-assistant-brief{margin-top:1.75em}.setup-assistant-brief-field textarea{min-height:260px;font-size:15px!important}.setup-assistant-actions .primary-button{min-height:32px!important;font-size:13px!important}.studio-list-panel{position:static;padding:10px 12px;background:#fffdf8;box-shadow:none}.studio-option{min-height:56px;padding:10px}.studio-option-icon{width:34px;height:34px}.app-shell:not(.onboarding-only) .mobile-submit-bar{position:fixed;right:0;bottom:var(--mobile-bottom-nav-h);left:0;z-index:190;display:block;padding:8px 10px max(8px,env(safe-area-inset-bottom));border-top:1px solid rgba(29,37,37,.08);background:#fffdf8f0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.onboarding-only .mobile-submit-bar{position:static;display:block;margin-top:14px;padding:0;border-top:none;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.app-shell:not(.onboarding-only) .workspace-panel:has(.mobile-submit-bar),.app-shell:not(.onboarding-only) .studio-profile-panel{padding-bottom:calc(var(--mobile-bottom-nav-h) + var(--mobile-submit-bar-h) + 24px)}.mobile-submit-bar .primary-button{width:100%;min-height:40px!important}.inline-note,.tooltip-hint-row{font-size:12px}.session-row,.decision-card,.template-card,.preview-row{padding:10px 12px}.decision-card strong{font-size:14px}.decision-card p{font-size:13px}.desktop-submit{display:none}.hero-band,.workspace-two-column,.metric-row,.studio-registration-layout,.pass-products-body,.pass-policy-form-grid,.pass-policy-detail-list,.studio-form,.form-section,.address-row,.schedule-form-grid,.preview-strip,.role-summary-grid,.holiday-layout,.holiday-form,.holiday-calendar-list,.collection-grid,.setup-assistant-grid,.setup-draft-board,.service-plan-summary,.service-plan-grid,.service-plan-cycle-toggle,.bank-transfer-account{grid-template-columns:1fr}.mobile-bottom-tab{font-size:10px}.pass-products-body--form-open .pass-products-detail-col{order:-1}.pass-products-body--form-open{min-height:0}.pass-products-list-col{max-height:none;overflow:visible}.pass-products-detail-col{min-height:200px}.pass-products-empty-slot,.pass-product-panel{min-height:200px;max-height:none}.policy-product-card.compact{padding:8px 10px}.setup-day-row{grid-template-columns:22px minmax(0,1fr);gap:4px;padding:6px 8px;border-radius:8px}.setup-day-row h4{font-size:11px;padding-top:6px}.setup-day-row-cells{gap:4px}.setup-draft-row{grid-template-columns:minmax(0,.95fr) minmax(0,.95fr) minmax(0,1.15fr) 22px;gap:4px;padding:4px 5px;width:100%;max-width:100%}.setup-draft-row .field{gap:2px;min-width:0}.setup-draft-row .field span{font-size:10px!important}.setup-draft-row .field input,.setup-draft-row .field select{min-height:28px!important;padding:0 4px!important;font-size:13px!important;border-radius:6px}.setup-draft-row.template-card{padding:4px 5px!important;border-radius:6px!important;box-shadow:none!important;transform:none!important}.setup-draft-row .field:first-child,.schedule-form-grid .field:first-child,.field:first-child{grid-column:auto}.class-program-form-page{padding-bottom:calc(56px + env(safe-area-inset-bottom,0px))}.class-program-form-page .class-special-toggle{align-self:stretch}.setup-draft-row .icon-button{width:22px;height:22px;min-height:22px}.field.wide{grid-column:auto}.member-workspace-layout,.member-split-panel{grid-template-columns:1fr}.member-register-actions{flex-direction:column-reverse}.member-register-actions .primary-button,.member-register-actions .secondary-button{width:100%}.member-detail-panel{position:static}.member-list-control.mobile-hidden,.member-detail-panel.mobile-hidden{display:none}.member-detail-panel.mobile-active{display:block}.member-mobile-detail-head{display:flex;justify-content:flex-start;margin-bottom:12px}.app-shell-owner .member-detail-panel.mobile-active{scroll-margin-top:calc(var(--mobile-header-h, 56px) + var(--owner-banner-offset, 0px) + 14px);margin-top:calc(var(--mobile-header-h, 56px) + var(--owner-banner-offset, 0px) + 6px)}.app-shell-owner .member-mobile-detail-head{margin-bottom:10px;position:sticky;top:calc(var(--mobile-header-h, 56px) + var(--owner-banner-offset, 0px) + 6px);z-index:12;padding:4px 0 6px;background:linear-gradient(180deg,#fffdf8fa,#fffdf8eb 82%,#fffdf800);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.member-mobile-back-button{min-height:48px;padding:10px 18px 10px 10px;font-size:17px;font-weight:700;border-radius:12px;background:#1d25250f;color:#1d2525;-webkit-tap-highlight-color:transparent}.member-mobile-back-button:active{background:#1d25251f}.member-list-rows{max-height:none}.refund-policy-toggle{align-items:flex-start}.refund-toggle-label{flex:1;min-width:0}.help-tooltip.is-open{z-index:420}.help-tooltip-popup--hover{display:none!important}.help-tooltip-popup--fixed{left:12px!important;right:12px!important;width:auto!important;max-width:none!important;box-sizing:border-box;padding:12px 14px;font-size:13px;line-height:1.5}.help-tooltip-popup--fixed .help-tooltip-detail,.help-tooltip-popup--fixed .help-tooltip-clause-full{font-size:13px}.role-card{display:grid}.role-card-actions{justify-content:stretch}.role-card-actions button,.role-card>button{width:100%}.attendance-row{gap:4px;padding:5px 6px}.attendance-row .secondary-button{min-height:26px;padding:2px 6px;font-size:11px}.command-grid{display:flex;flex-direction:column;gap:12px}.command-grid .workspace-two-column{order:1;grid-template-columns:1fr;gap:12px}.command-grid .metric-row{order:2;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.command-grid .hero-band{order:3;grid-template-columns:1fr;gap:6px;min-height:0;padding:14px 16px}.command-grid .hero-band h1{font-size:22px}.command-grid .hero-band p{font-size:13px;line-height:1.4}.command-grid .hero-metric{padding:12px 14px}.command-grid .hero-metric strong{font-size:26px}.command-grid .metric-card{min-height:0;padding:10px 12px}.command-grid .metric-icon{width:28px;height:28px;margin-bottom:8px}.command-grid .metric-card strong{font-size:22px}.command-grid .metric-card span,.command-grid .decision-card span,.command-grid .eyebrow{font-size:11px}.command-grid .workspace-panel{padding:14px}.command-grid .section-heading{margin-bottom:10px}.command-grid .section-heading h2{font-size:18px}.command-grid .decision-list{gap:8px}.command-grid .decision-card{padding:10px 12px}.command-grid .decision-card strong{font-size:14px}.command-grid .decision-card p{font-size:13px;line-height:1.4}.owner-class-calendar-compact{padding:14px}.owner-class-calendar-compact .class-calendar-grid,.owner-class-calendar-compact .calendar-week-header{gap:3px}.owner-class-calendar-compact .class-calendar-day{padding:4px}.owner-class-calendar-compact .calendar-week-header span{font-size:11px}.owner-class-calendar-compact .calendar-day-head strong{font-size:12px}.owner-class-calendar-compact .holiday-name{max-width:100%;font-size:10px}.owner-class-calendar-compact .calendar-session-card.compact{grid-template-columns:1fr;gap:1px;padding:3px 4px}.owner-class-calendar-compact .calendar-session-card.compact .session-time{font-size:11px}.owner-class-calendar-compact .calendar-session-card.compact .session-title{font-size:11px;white-space:normal}.owner-class-calendar-reservation .class-calendar-grid{grid-auto-rows:minmax(52px,auto)}.owner-class-calendar-reservation .class-calendar-day.calendar-day-minimal,.member-booking-calendar .class-calendar-day.calendar-day-minimal,.owner-class-calendar-compact .class-calendar-day.calendar-day-minimal{min-height:52px;padding:4px 6px}.owner-class-calendar-reservation .calendar-day-number,.class-calendar-day.calendar-day-minimal .calendar-day-number,.class-calendar-day.calendar-day-minimal .calendar-day-head strong{font-size:13px}.class-calendar-day.is-today .calendar-day-number,.class-calendar-day.is-today .calendar-day-head strong{font-size:15px}.reservation-summary-line{font-size:12px}.reservation-summary-line .session-time,.reservation-summary-line .session-occupancy{font-size:13px}.calendar-day-modal{padding:14px 14px 16px;max-height:min(88vh,680px)}.calendar-day-modal-header h3{font-size:17px}.calendar-day-detail{padding:12px;margin-top:12px}.calendar-panel .section-heading h2{font-size:16px!important}.month-switcher{gap:6px}.month-switcher button{min-height:32px;padding:0 10px;font-size:13px}.month-switcher strong{min-width:6.5em;font-size:1.2rem}.policy-category-block{padding:8px;border-radius:8px}.policy-category-title{font-size:14px}@media(max-width:420px){.app-shell{zoom:.92}}}.session-row,.decision-card,.template-card,.preview-row,.collection-chip,.role-card,.instructor-card,.membership-card,.preview-stat{border:1px solid var(--glass-border)!important;background:#ffffffd9!important;border-radius:12px!important;box-shadow:0 4px 14px #0b191708!important;transition:all .25s cubic-bezier(.4,0,.2,1)!important}.session-row:hover,.decision-card:hover,.template-card:hover,.role-card:hover,.instructor-card:hover,.membership-card:hover{transform:translateY(-2.5px);box-shadow:0 10px 24px #0b191714!important;border-color:#19574f40!important}.primary-button{background:var(--brand-primary)!important;font-family:Outfit,Inter,sans-serif;font-weight:600;font-size:14px;min-height:34px;padding:0 12px;border-radius:7px;transition:all .2s cubic-bezier(.4,0,.2,1)!important;box-shadow:0 2px 8px #183f3b1f!important}.primary-button:hover{background:#174f48!important;transform:translateY(-1px);box-shadow:0 4px 12px #183f3b2e!important}.secondary-button{background:#fff9!important;border-color:#1d25251f!important;color:var(--brand-primary)!important;font-weight:600;font-size:14px;min-height:34px;padding:0 11px;border-radius:7px;transition:all .2s ease!important}.secondary-button:hover{background:#fffffff2!important;transform:translateY(-1.5px)}.preview-stat{background:var(--brand-primary-light)!important;color:var(--brand-primary)!important}.eyebrow{color:var(--brand-secondary)!important;letter-spacing:.8px}.member-import-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:20px;background:#1c201e73}.member-import-panel{width:min(920px,100%);max-height:min(90vh,900px);overflow:auto;padding:22px 24px 26px;border-radius:18px;background:#fffdf8;box-shadow:0 24px 60px #2024222e}.member-import-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.member-import-dropzone{display:flex;align-items:center;gap:12px;padding:16px 18px;margin-bottom:16px;border:1px dashed #c5cdc8;border-radius:12px;cursor:pointer;color:#4d5854}.member-import-dropzone input{display:none}.member-import-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.member-import-mapping-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin-bottom:14px}.member-import-preview-table-wrap{overflow:auto;margin-bottom:14px;border:1px solid #e8ece9;border-radius:10px}.member-import-preview-table{width:100%;border-collapse:collapse;font-size:14px}.member-import-preview-table th,.member-import-preview-table td{padding:8px 10px;text-align:left;border-bottom:1px solid #eef1ef}.member-import-actions{display:flex;justify-content:flex-end;gap:10px}.task-progress{display:grid;gap:7px;margin:10px 0 14px;padding:10px 12px;border:1px solid rgba(29,37,37,.12);border-radius:10px;background:#f6faf7}.task-progress-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.task-progress-meta strong{color:#2c3b38;font-size:14px}.task-progress-meta span{color:#1f5e58;font-size:13px;font-weight:900}.task-progress-track{position:relative;height:8px;overflow:hidden;border-radius:999px;background:#dfe9e4}.task-progress-track i{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:linear-gradient(90deg,#1f5e58,#57a17d);transition:width .2s ease}.setup-assistant-panel{width:100%;max-width:none}.setup-assistant-heading h2{margin:2px 0 0;font-size:24px;line-height:1.25}.setup-assistant-lead{max-width:720px;margin:6px 0 0;color:#66716d;font-size:13px;line-height:1.45}.setup-assistant-brief{width:100%;margin-top:2em;margin-bottom:10px}.setup-assistant-brief-field{display:grid;gap:6px;width:100%}.setup-assistant-brief-field span{font-size:13px}.setup-assistant-brief-field textarea{width:100%;min-height:320px;resize:vertical}.setup-assistant-brief-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:8px}.setup-assistant-brief-saved{font-size:13px;color:#2f6b4f}.setup-assistant-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:10px}.setup-assistant-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.setup-assistant-panel textarea{min-height:320px}.setup-draft-list{display:grid;gap:10px;margin:8px 0 10px}.setup-draft-board{display:grid;grid-template-columns:1fr;gap:10px;margin:8px 0 10px}.setup-day-row{display:grid;grid-template-columns:28px minmax(0,1fr);gap:6px;align-items:start;padding:6px 8px;border:1px solid rgba(29,37,37,.12);border-radius:8px;background:#fbfaf6}.setup-day-row h4{margin:0;padding-top:6px;color:#2f4540;font-size:12px;font-weight:900;text-align:left}.setup-empty-day{margin:0;padding:8px 0 8px 6px;color:#8a9691;font-size:12px;text-align:left}.setup-day-row-cells{display:grid;gap:4px;min-width:0}.setup-draft-row{display:grid;grid-template-columns:84px 84px minmax(72px,1fr) 24px;gap:5px;align-items:end;padding:5px 6px;width:100%;max-width:100%;min-width:0}.setup-draft-row.template-card{display:grid!important;justify-content:stretch;padding:5px 6px!important;border-radius:6px!important;box-shadow:none!important;transform:none!important}.setup-draft-row .field{gap:3px;min-width:0}.setup-draft-row .field:first-child{grid-column:auto}.setup-draft-row .field span{font-size:11px;letter-spacing:.01em;text-transform:none;white-space:nowrap}.setup-draft-row .field input,.setup-draft-row .field select{min-height:30px;padding:0 5px;font-size:13px;width:100%;min-width:0}.setup-draft-row .icon-button{width:24px;height:24px;min-height:24px}.member-row-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.member-refund-panel{display:grid;gap:12px;margin-top:12px;padding:12px 14px;border:1px solid rgba(155,106,72,.22);border-radius:10px;background:#fffbf5f5}.member-refund-pass-block{display:grid;gap:10px}.member-refund-pass-title{margin:0;color:#183f3b;font-size:14px;font-weight:800}.attendance-panel .attendance-qr-stage{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:20px;align-items:start}.attendance-qr-card{display:grid;justify-items:center;gap:10px;padding:18px;border:1px solid rgba(29,37,37,.12);border-radius:12px;background:#fffdf8}.attendance-qr-image{width:280px;height:280px;border-radius:8px}.attendance-qr-placeholder{display:grid;place-items:center;gap:8px;width:280px;height:280px;color:#7a5236;border:1px dashed rgba(122,82,54,.35);border-radius:8px}.attendance-qr-timer{color:#9b6a48;font-size:14px;font-weight:900}.attendance-qr-session{color:#1d2525;font-size:15px;font-weight:800;text-align:center}.attendance-steps{margin:0;padding-left:18px;color:#4f5b57;line-height:1.6}.attendance-kiosk-layout{display:grid;gap:14px;max-width:420px}.attendance-kiosk-display{display:grid;justify-items:center;gap:6px;padding:18px 12px;border:1px solid rgba(29,37,37,.12);border-radius:12px;background:#fffdf8f5}.attendance-kiosk-display strong{font-size:clamp(38px,8vw,54px);letter-spacing:.2em}.attendance-kiosk-display span{color:#66716d;font-size:14px;font-weight:800}.attendance-keypad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.attendance-keypad.mobile{max-width:360px;margin:0 auto}.attendance-key{min-height:56px;border:1px solid rgba(29,37,37,.14);border-radius:10px;background:#fffdf8;color:#1d2525;font-size:26px;font-weight:900}.attendance-key.utility{font-size:17px}.attendance-kiosk-submit{width:100%;min-height:72px;padding:0 24px;border-radius:12px;font-size:24px;font-weight:900;letter-spacing:.02em}.attendance-kiosk-message{margin:4px 0 0;font-size:clamp(22px,5vw,30px);font-weight:800;line-height:1.45;text-align:center}.attendance-collision-list{display:grid;gap:8px}.attendance-collision-card{display:grid;gap:4px;padding:12px 14px;border:1px solid rgba(29,37,37,.12);border-radius:10px;background:#fffdf8;text-align:left}.attendance-collision-card strong{font-size:17px}.attendance-collision-card span,.attendance-collision-card em{color:#66716d;font-size:13px;font-style:normal}.attendance-success{color:#1f7a58;font-size:15px;font-weight:900}.attendance-success-toast{position:sticky;bottom:18px;z-index:5;width:min(100%,360px);margin:4px auto 0;padding:14px 18px;border:1px solid rgba(31,122,88,.18);border-radius:999px;background:#1f7a58f5;box-shadow:0 16px 38px #1f7a5842;color:#fffdf8;font-size:16px;font-weight:900;text-align:center;animation:attendance-success-toast 3s ease forwards}@keyframes attendance-success-toast{0%{opacity:0;transform:translateY(10px) scale(.98)}12%{opacity:1;transform:translateY(0) scale(1)}82%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(.98)}}.member-checkin-pass{display:grid;gap:14px;margin-bottom:18px;padding:16px;border:1px solid rgba(29,37,37,.1);border-radius:12px;background:#fffdf8f5}.member-checkin-pass-card{display:grid;justify-items:center;gap:8px}.member-checkin-pass-card .member-checkin-qr-image,.member-checkin-pass-card .member-checkin-qr-placeholder{width:168px;height:168px}.member-checkin-pass-card .member-checkin-qr-image{border-radius:8px}.member-checkin-pass-card .member-checkin-qr-placeholder{display:grid;place-items:center;gap:8px;color:#7a5236;border:1px dashed rgba(122,82,54,.35);border-radius:8px}.member-checkin-walkin-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.member-checkin-walkin-select{flex:1 1 180px;min-width:0}.member-checkin-walkin-button{flex:0 0 auto;justify-self:start}.member-checkin-walkin-unavailable{color:#7a5236}.member-checkin-walkin-badge{display:inline-block;margin-right:6px;padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:600;color:#7a5236;background:#7a52361f}.member-checkin-walkin-cancel{justify-self:start;margin-top:.75rem}.member-checkin-choice-note{margin:0 0 1rem;line-height:1.5}.member-checkin-choice-list{display:flex;flex-direction:column;gap:.65rem}.member-checkin-choice-button{display:grid;grid-template-columns:auto 1fr auto;gap:.5rem .75rem;align-items:center;width:100%;padding:.85rem 1rem;border:1px solid var(--border-subtle, #e5e7eb);border-radius:12px;background:var(--surface-raised, #fff);text-align:left;cursor:pointer}.member-checkin-choice-button:hover{border-color:var(--accent, #2563eb)}.member-checkin-choice-time{font-weight:600;font-variant-numeric:tabular-nums}.member-checkin-choice-title{font-weight:500}.member-checkin-choice-badge{font-size:.75rem;padding:.15rem .45rem;border-radius:999px;background:#eef2ff;color:#3730a3;white-space:nowrap}.member-checkin-late-badge{display:inline-block;margin-right:.35rem;font-size:.75rem;padding:.1rem .4rem;border-radius:999px;background:#fef3c7;color:#92400e}.section-heading.compact h3{margin:4px 0;font-size:19px}@media(orientation:portrait){.app-shell-attendance .attendance-panel-qr:not(.attendance-panel-qr-landscape){padding-top:20px}}.attendance-scanner-start,.attendance-scanner-stop{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:56px;padding:0}.attendance-scanner-start{gap:8px;padding:0 20px;min-width:160px}.attendance-scanner-actions{display:grid;gap:12px;width:100%;max-width:520px}.attendance-scanner-actions .attendance-scanner-start{width:100%;min-height:52px;font-size:17px}.attendance-scanner-action-message{margin:0}.attendance-scanner-idle-hint{margin:0;color:#4f5b57;font-size:15px}.attendance-scanner-stop{position:absolute;top:10px;right:10px;z-index:2;min-width:44px;min-height:44px;border-radius:999px;background:#fffdf8eb}.attendance-scanner-layout{position:relative;display:grid;gap:12px;max-width:520px}.attendance-scanner-viewport.is-live{min-height:var(--attendance-scanner-h, 280px);height:var(--attendance-scanner-h, 280px)}.attendance-scanner-viewport.is-live video{width:100%!important;height:100%!important;object-fit:cover}.attendance-scanner-viewport.is-live.is-mirrored-preview{transform:scaleX(-1)!important;transform-origin:center center}.attendance-scanner-viewport.is-live>div,.attendance-scanner-viewport.is-live #qr-shaded-region{width:100%!important;height:100%!important}.attendance-panel-landscape{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px);gap:12px 16px;align-items:start}.attendance-panel-landscape .section-heading{grid-column:1 / -1}.attendance-panel-landscape .section-heading p,.attendance-panel-landscape .attendance-steps{display:none}.attendance-panel-landscape .section-heading h2{margin:0;font-size:18px}.attendance-panel-landscape .eyebrow{display:none}.attendance-panel-landscape .attendance-scanner-layout{max-width:none;margin:0}.attendance-panel-landscape .attendance-success,.attendance-panel-landscape .field-error,.attendance-panel-landscape .attendance-scanner-actions{grid-column:1 / -1}@media(orientation:landscape)and (max-height:520px){.app-shell-attendance .main-workspace{display:flex;flex-direction:column;align-items:center;min-height:100dvh;padding-top:calc(var(--mobile-header-h) + 4px);padding-inline:8px}.app-shell-attendance .attendance-panel{width:min(100%,960px);margin-inline:auto}.attendance-panel-landscape{justify-content:center;justify-items:center;align-items:center}.attendance-panel-qr-landscape.attendance-panel-landscape{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;width:min(100%,960px);min-height:calc(100dvh - var(--mobile-header-h) - 16px);gap:8px}.attendance-panel-qr-landscape .section-heading{flex:0 0 auto;width:100%;text-align:center}.attendance-panel-qr-landscape .section-heading h2{font-size:clamp(17px,3.2vh,22px)}.attendance-panel-qr-landscape .attendance-scanner-layout{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;width:min(100%,calc(100dvh - var(--mobile-header-h) - 48px));max-width:min(100%,calc(100dvh - var(--mobile-header-h) - 48px));min-height:0;margin-inline:auto}.attendance-panel-qr-landscape .attendance-scanner-viewport.is-live{flex:1 1 auto;width:100%;min-height:min(280px,calc(100dvh - var(--mobile-header-h) - 160px))!important;height:auto!important;max-height:calc(100dvh - var(--mobile-header-h) - 160px)}.attendance-panel-qr-landscape .attendance-scanner-idle{flex:0 0 auto;width:100%;min-height:140px!important;height:auto!important;max-height:none}.attendance-panel-qr-landscape .attendance-scanner-actions{flex:0 0 auto;width:100%;max-width:none;padding-bottom:env(safe-area-inset-bottom,0px)}.attendance-panel-landscape .attendance-scanner-layout{width:min(100%,min(72vh,640px));max-width:min(72vh,640px);margin-inline:auto;justify-self:center}.attendance-panel-kiosk-landscape.attendance-panel-landscape{grid-template-columns:minmax(220px,300px) minmax(280px,420px)}.attendance-panel-kiosk-landscape .attendance-kiosk-layout{width:min(100%,420px);margin-inline:auto;justify-self:center}}.pass-wallet-attendance-summary{margin:8px 0 0;font-size:14px;font-weight:700}.pass-wallet:not(.membership-pass-card) .pass-wallet-attendance-summary{color:#395753}.attendance-screen-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#0f234bd1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;animation:attendance-scan-flash .55s ease-out forwards}.attendance-scanner-flash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:12;border-radius:12px;background:#0f234bd1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;animation:attendance-scan-flash .55s ease-out forwards}@keyframes attendance-scan-flash{0%{opacity:0}18%{opacity:1}to{opacity:0}}.attendance-scanner-viewport{position:relative;min-height:280px;overflow:hidden;border:1px solid rgba(29,37,37,.12);border-radius:12px;background:#1d2525}.attendance-scanner-viewport:not(.is-live){display:none}.attendance-panel-camera-off{padding-bottom:calc(120px + env(safe-area-inset-bottom,0px))}.attendance-camera-dock{position:fixed;left:0;right:0;bottom:0;z-index:1200;display:grid;gap:10px;padding:14px 16px calc(14px + env(safe-area-inset-bottom,0px));background:#fffdf8fa;border-top:1px solid rgba(29,37,37,.14);box-shadow:0 -10px 28px #1d252524}.attendance-camera-dock-message{margin:0;color:#4f5b57;font-size:15px;line-height:1.45;text-align:center}.attendance-camera-dock-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:56px;font-size:18px;font-weight:700}.attendance-scanner-idle{display:grid;justify-items:center;align-content:center;gap:10px;min-height:180px;padding:24px;border:1px dashed rgba(29,37,37,.2);border-radius:12px;background:#fffdf8f5;color:#4f5b57;text-align:center}@media(max-width:900px){.attendance-panel .attendance-qr-stage{grid-template-columns:1fr}}.ai-assistant-hub{display:grid;gap:16px}.assistant-hub{display:grid;gap:14px}.assistant-hub-header{display:grid}.assistant-hub-brand{display:flex;align-items:center;gap:12px}.assistant-hub-brand-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;background:linear-gradient(145deg,#1f5e58,#2a7a72);color:#f4fffc;box-shadow:0 8px 18px #1f5e5838}.assistant-hub-brand-copy{display:grid;gap:2px;min-width:0}.assistant-hub-brand-copy h1{margin:0;font-size:1.35rem;letter-spacing:-.02em;color:#163c38}.assistant-hub-brand-copy p{margin:0;color:#66716d;font-size:.88rem;line-height:1.35}.assistant-hub-segment{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:6px;border-radius:16px;border:1px solid rgba(31,94,88,.12);background:#ffffffb8;box-shadow:0 10px 28px #163c380d}.assistant-hub-segment-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:8px 6px;border:0;border-radius:12px;background:transparent;color:#5a6662;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.assistant-hub-segment-btn:hover{background:#1f5e580f;color:#1f5e58}.assistant-hub-segment-btn.active{background:#1f5e58;color:#f7fffc;box-shadow:0 8px 18px #1f5e5838}.assistant-hub-segment-label-short{display:none}.assistant-hub-stage{display:grid;gap:12px;padding:14px 14px 16px;border-radius:18px;border:1px solid rgba(31,94,88,.1);background:linear-gradient(180deg,#ffffffe0,#f8faf9f5);box-shadow:0 14px 36px #163c380f}.assistant-hub-stage-label{margin:0;color:#8a9590;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.assistant-team-panel{display:grid;gap:14px}.assistant-team-heading{display:grid;gap:6px}.assistant-team-heading-row{display:flex;align-items:center;gap:8px}.assistant-team-heading-row h2{margin:0;font-size:1.15rem}.assistant-team-lead{margin:0;color:var(--ink-muted, #5c6470);font-size:.9rem}.assistant-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.assistant-toolbar-group{display:flex;flex-wrap:wrap;gap:6px}.assistant-toolbar-divider{width:1px;align-self:stretch;min-height:28px;background:#94a39e59}.assistant-toolbar-note{margin:0;color:#66716d;font-size:13px;line-height:1.45;flex:1 1 180px}.assistant-chip{border:1px solid rgba(31,94,88,.14);border-radius:999px;padding:7px 13px;background:#ffffffeb;color:#3d4844;font-size:13px;font-weight:600;cursor:pointer}.assistant-chip:hover{border-color:#1f5e5847;color:#1f5e58}.assistant-chip.active{border-color:#1f5e58;background:#1f5e58;color:#f7fffc}.assistant-chip-quiet{border-color:transparent;background:#1f5e580d;color:#4f5b57;font-weight:500}.assistant-chip-quiet.active{border-color:#1f5e5859;background:#1f5e581f;color:#1f5e58}.assistant-team-tabs{display:flex;flex-wrap:wrap;gap:8px}.assistant-team-tab{border:1px solid rgba(29,37,37,.12);border-radius:999px;padding:7px 14px;background:#fffdf8eb;color:#4f5b57;font-size:13px;cursor:pointer}.assistant-team-tab.active{border-color:#1f5e58;background:#1f5e5814;color:#1f5e58;font-weight:600}.assistant-team-body{display:grid;gap:16px}.marketing-toolbar .marketing-actions{display:inline-flex;flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto}.research-toolbar .research-saved-at{margin:0}@media(max-width:720px){.assistant-hub-segment{gap:4px;padding:5px}.assistant-hub-segment-btn{min-height:46px;flex-direction:column;gap:3px;font-size:11px;padding:7px 4px}.assistant-hub-segment-label-full{display:none}.assistant-hub-segment-label-short{display:inline}.assistant-hub-stage{padding:12px}.assistant-toolbar-divider{display:none}.assistant-toolbar-group,.assistant-toolbar-group-tools{width:100%}.assistant-toolbar-group{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px;-webkit-overflow-scrolling:touch}.assistant-chip{flex:0 0 auto}}.statistics-panel{display:grid;gap:16px}.statistics-head-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:end}.statistics-month-select{max-width:220px}.statistics-updated-at{margin:0;color:#5c6470;font-size:.86rem;display:inline-flex;gap:6px;align-items:center}.statistics-metric-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.statistics-capacity-note{margin:-4px 0 0;color:#697281;font-size:.84rem}.statistics-metric-card{border:1px solid rgba(29,37,37,.12);border-radius:14px;padding:12px;background:#fffefb;display:grid;gap:4px}.statistics-metric-card>span{color:#5c6470;font-size:.82rem}.statistics-metric-card strong{font-size:1.35rem;line-height:1.2}.statistics-metric-card small{color:#68727f;font-size:.8rem}.statistics-metric-card.primary{text-align:left;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.statistics-metric-card.primary:hover{transform:translateY(-1px);box-shadow:0 8px 18px #1f5e581f}.statistics-metric-card.primary em{color:#1f5e58;font-size:.78rem;font-style:normal;font-weight:600}.statistics-chart-card{border:1px solid rgba(29,37,37,.12);border-radius:14px;padding:12px;background:#fffefb;display:grid;gap:10px}.statistics-chart-card h3{margin:0;font-size:1rem;display:inline-flex;align-items:center;gap:6px}.statistics-instructor-note{margin:0;color:#697281;font-size:.84rem;line-height:1.45}.statistics-instructor-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.statistics-instructor-row{display:grid;gap:6px}.statistics-instructor-meta{display:flex;justify-content:space-between;gap:10px;align-items:baseline;flex-wrap:wrap}.statistics-instructor-meta strong{display:inline-flex;align-items:center;gap:6px;font-size:.95rem}.statistics-instructor-meta span{color:#5c6470;font-size:.84rem;font-variant-numeric:tabular-nums}.statistics-instructor-primary{color:#1f5e58!important;font-weight:700}.statistics-instructor-sub{margin:0;color:#697281;font-size:.8rem;line-height:1.4;font-variant-numeric:tabular-nums}.statistics-instructor-owner-badge{display:inline-flex;align-items:center;border-radius:999px;padding:1px 7px;font-size:.72rem;font-weight:700;color:#1f5e58;background:#1f5e581a;border:1px solid rgba(31,94,88,.22)}.statistics-instructor-bar{height:8px;border-radius:999px;background:#1d252514;overflow:hidden}.statistics-instructor-bar>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1f5e58,#3a8f7a)}.statistics-utilization-highlights{list-style:none;margin:0;padding:0;display:grid;gap:8px}.statistics-utilization-highlights li{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:8px 10px;border-radius:10px;background:#1f5e580f;border:1px solid rgba(31,94,88,.12)}.statistics-utilization-highlights span{color:#5c6470;font-size:.84rem}.statistics-utilization-highlights strong{font-size:.92rem;text-align:right}.statistics-utilization-best td{background:#1f5e580f}.statistics-utilization-best-badge{display:inline-flex;margin-left:6px;border-radius:999px;padding:1px 7px;font-size:.68rem;font-weight:700;line-height:1.3;white-space:nowrap;color:#1f5e58;background:#1f5e581f;border:1px solid rgba(31,94,88,.22);vertical-align:middle}.statistics-utilization-badge-demand{color:#1d4f91;background:#1d4f911a;border-color:#1d4f9138}.statistics-utilization-badge-saturation{color:#9a3412;background:#9a34121a;border-color:#9a341238}.statistics-utilization-day-table{min-width:620px}.statistics-trend-chart{display:grid;gap:8px}.statistics-trend-chart svg{width:100%;height:auto}.statistics-chart-axis{stroke:#1d252547;stroke-width:1}.statistics-chart-grid{stroke:#1d25251f;stroke-width:1}.statistics-chart-label{fill:#697281;font-size:10px}.statistics-line-attendance,.statistics-line-no-show,.statistics-line-utilization{fill:none;stroke-width:2}.statistics-line-attendance{stroke:#1f5e58}.statistics-line-no-show{stroke:#d46a1f}.statistics-line-utilization{stroke:#3f63c8}.statistics-chart-legend{display:flex;flex-wrap:wrap;gap:10px;color:#5c6470;font-size:.8rem}.statistics-chart-legend span{display:inline-flex;align-items:center;gap:6px}.statistics-legend-dot{width:10px;height:10px;border-radius:999px;display:inline-block}.statistics-legend-dot.attendance{background:#1f5e58}.statistics-legend-dot.no-show{background:#d46a1f}.statistics-legend-dot.utilization{background:#3f63c8}.statistics-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2300;background:#0f172a66;display:flex;align-items:flex-start;justify-content:center;overflow:auto;padding:max(18px,env(safe-area-inset-top)) 14px calc(84px + env(safe-area-inset-bottom))}.statistics-detail-sheet{width:min(980px,100%);max-height:calc(100dvh - 130px - env(safe-area-inset-bottom));overflow:auto;background:#fffefb;border:1px solid rgba(29,37,37,.14);border-radius:16px;box-shadow:0 16px 34px #0f172a33;padding:16px;display:grid;gap:14px}.statistics-detail-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.statistics-detail-head h3{margin:0}.statistics-detail-head p{margin:4px 0 0;color:#5c6470;font-size:.88rem}.statistics-detail-actions{display:inline-flex;align-items:center;gap:8px}.statistics-detail-section{display:grid;gap:8px}.statistics-detail-section h4{margin:0;display:inline-flex;gap:6px;align-items:center;font-size:.97rem}.statistics-table-wrap{overflow:auto}.statistics-table{width:100%;border-collapse:collapse;min-width:560px}.statistics-table th,.statistics-table td{border-bottom:1px solid rgba(29,37,37,.09);padding:8px 6px;text-align:left;font-size:.86rem}.statistics-table th{color:#4f5b57;font-weight:700}.statistics-warning-badge{display:inline-flex;min-width:58px;justify-content:center;border-radius:999px;padding:2px 8px;font-size:.8rem;font-weight:700;border:1px solid rgba(29,37,37,.14);color:#3f4a45;background:#f4f6f5}.statistics-warning-badge.yellow{border-color:#d7a200;color:#8a6100;background:#fff7dc}.statistics-warning-badge.red{border-color:#cc4a4a;color:#8b2222;background:#ffe8e8}.statistics-empty{margin:0;color:#697281;font-size:.88rem}@media(max-width:920px){.statistics-metric-grid{grid-template-columns:1fr}}.revenue-panel{display:grid;gap:20px}.revenue-drilldown-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2300;background:#0f172a66;display:flex;justify-content:center;align-items:flex-start;overflow:auto;padding:max(18px,env(safe-area-inset-top,0px)) 14px calc(84px + env(safe-area-inset-bottom,0px))}.revenue-drilldown-window{width:min(980px,100%);max-height:calc(100dvh - 130px - env(safe-area-inset-bottom,0px));overflow:auto;border-radius:12px;background:#fffdf8;border:1px solid rgba(29,37,37,.14);box-shadow:0 16px 44px #0f172a3d;padding:14px;display:grid;gap:12px}.revenue-drilldown-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.revenue-drilldown-title{margin:0;font-size:.92rem;color:#1f5e58;font-weight:700}.revenue-drilldown-close{flex-shrink:0}.revenue-month-nav{display:flex;align-items:center;gap:10px}.revenue-month-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid rgba(29,37,37,.14);border-radius:6px;background:var(--surface-raised, #fffdf8);color:#4f5b57;cursor:pointer;flex-shrink:0}.revenue-month-btn:disabled{opacity:.35;cursor:default}.revenue-month-label{display:flex;align-items:center;gap:6px;font-size:1rem;font-weight:600;color:#1f5e58}.revenue-save-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border:1px solid rgba(31,94,88,.14);border-radius:12px;background:#1f5e580a}.revenue-save-meta{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}.revenue-save-status{font-size:.85rem;color:#6b7c78}.revenue-save-dirty{font-size:.82rem;font-weight:600;color:#b45309}.revenue-save-button{display:inline-flex;align-items:center;gap:6px}.revenue-save-message{margin:0;font-size:.85rem;color:#1f5e58}.revenue-save-error{margin:0;font-size:.85rem;color:#b42318}.revenue-section{display:grid;gap:10px}.revenue-section-title{margin:0;font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6b7c78;display:flex;align-items:center;gap:8px}.revenue-section-hint{font-size:.78rem;font-weight:400;color:#9aaba7;text-transform:none;letter-spacing:0}.revenue-section-hint-block{margin:0;font-size:.85rem;color:#7a8b87}.revenue-table{display:grid;gap:0;border:1px solid rgba(29,37,37,.1);border-radius:8px;overflow:hidden;background:var(--surface-raised, #fffdf8)}.revenue-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:9px 14px;font-size:.9rem;border-bottom:1px solid rgba(29,37,37,.06)}.revenue-row.revenue-row-clickable{width:100%;border:none;background:transparent;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:background .15s ease}.revenue-row.revenue-row-clickable:hover{background:#1f5e580a}.revenue-row.revenue-row-clickable.expanded{background:#1f5e580f}.revenue-row.revenue-row-with-action{grid-template-columns:minmax(0,1fr) auto auto}.revenue-row-label{display:inline-flex;align-items:center;gap:6px;min-width:0}.revenue-inline-toggle{border:none;background:transparent;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:left;min-width:0}.revenue-inline-toggle:hover .revenue-row-chevron,.revenue-inline-toggle.expanded .revenue-row-chevron{color:#1f5e58}.revenue-inline-toggle.expanded .revenue-row-chevron{transform:rotate(180deg)}.revenue-row-chevron{flex-shrink:0;color:#9aaba7;transition:transform .15s ease}.revenue-row-clickable.expanded .revenue-row-chevron{transform:rotate(180deg)}.revenue-row-meta-action{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.revenue-inline-edit-button{display:inline-flex;align-items:center;gap:4px}.revenue-instructor-row{align-items:start}.revenue-instructor-info{display:grid;gap:2px;min-width:0}.revenue-instructor-name{font-weight:600}.revenue-detail-panel{padding:0 14px 12px;border-bottom:1px solid rgba(29,37,37,.06);background:#1f5e5808}.revenue-detail-empty{margin:8px 0 0;font-size:.85rem;color:#9aaba7}.revenue-detail-table{width:100%;border-collapse:collapse;font-size:.84rem;margin-top:8px}.revenue-detail-table th,.revenue-detail-table td{padding:7px 8px;text-align:left;border-bottom:1px solid rgba(29,37,37,.06)}.revenue-detail-table th{font-weight:600;color:#6b7c78;font-size:.78rem}.revenue-detail-table td.revenue-detail-amount{font-variant-numeric:tabular-nums;white-space:nowrap}.revenue-detail-table tbody tr:last-child td{border-bottom:none}.revenue-row:last-child{border-bottom:none}.revenue-row.revenue-subtotal{background:#1d252508;font-weight:600}.revenue-row.revenue-net-profit{background:#1f5e580f;font-weight:700;font-size:1rem}.revenue-amount{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.revenue-amount.income{color:#2563eb}.revenue-amount.expense{color:#c0392b}.revenue-amount.positive{color:#2563eb}.revenue-amount.negative{color:#c0392b}.revenue-manual-income-row{align-items:center}.revenue-line-item-panel{margin-top:10px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#1d252505;padding:10px;display:grid;gap:8px}.revenue-line-item-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;padding:16px;z-index:2000}.revenue-line-item-modal{width:min(760px,100%);max-height:min(88vh,900px);overflow:auto;border-radius:12px;border:1px solid rgba(29,37,37,.12);background:#fffdf8;box-shadow:0 20px 48px #0f172a38;padding:12px;display:grid;gap:10px}.revenue-line-item-modal.income{border-color:#2563eb40}.revenue-line-item-modal.expense{border-color:#c0392b40}.revenue-line-item-modal-header{display:flex;justify-content:flex-start;gap:10px;align-items:center}.revenue-line-item-modal-title{margin:0;font-size:.95rem;font-weight:700;color:#2d3a38}.revenue-line-item-panel.income{border-color:#2563eb33;background:#2563eb0a}.revenue-line-item-panel.expense{border-color:#c0392b33;background:#c0392b0a}.revenue-line-item-title{margin:0;font-size:.82rem;font-weight:600;color:#5c6470}.revenue-line-item-editor{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(120px,1fr) auto;gap:8px;align-items:center}.revenue-line-item-description{border:1px solid rgba(29,37,37,.16);border-radius:6px;background:#fff;padding:8px 10px;font-size:.88rem}.revenue-line-item-description:focus{outline:none;border-color:#1f5e5873}.revenue-line-item-amount-wrap{margin:0;min-width:0}.revenue-line-item-add{display:inline-flex;align-items:center;gap:4px;justify-self:end}.revenue-line-item-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.revenue-line-item-list-readonly{margin-top:8px}.revenue-line-item-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;border:1px solid rgba(29,37,37,.08);border-radius:6px;padding:8px 10px;background:#fff}.revenue-line-item-list-readonly .revenue-line-item-row{grid-template-columns:minmax(0,1fr) auto}.revenue-line-item-description-text{font-size:.86rem;color:#3a4746;min-width:0}.revenue-line-item-delete{border:none;background:transparent;color:#8b9b97;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:2px}.revenue-line-item-delete:hover{color:#c0392b}.revenue-line-item-select{border:none;background:transparent;padding:0;margin:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;width:100%;align-items:center;text-align:left;cursor:pointer}.revenue-line-item-select.selected .revenue-line-item-description-text{font-weight:600;color:#1f5e58}.revenue-line-item-controls{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;width:100%}.revenue-line-item-delete-button{display:inline-flex;align-items:center;gap:4px}.revenue-line-item-editor-spacer{height:10px}.revenue-line-item-total{display:flex;justify-content:space-between;align-items:center;font-size:.86rem;font-weight:600;color:#5c6470;border-top:1px dashed rgba(29,37,37,.15);padding-top:8px}.revenue-line-item-footer{display:inline-flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.revenue-income-input-wrap{display:flex;align-items:center;gap:6px;border:1px solid rgba(37,99,235,.28);border-radius:6px;background:#2563eb0a;padding:0 10px;min-width:140px;justify-self:end}.revenue-income-input{flex:1;border:none;outline:none;background:transparent;font-size:.9rem;padding:8px 0;min-width:0;font-variant-numeric:tabular-nums;color:#2563eb;text-align:right}.revenue-income-unit{font-size:.82rem;color:#64748b;flex-shrink:0}.revenue-detail-income{color:#2563eb}.revenue-instructor-cost-input{min-width:140px;justify-self:end}.revenue-count{font-size:.78rem;color:#9aaba7;min-width:28px;text-align:right}.revenue-comp-detail{font-size:.78rem;color:#9aaba7}.revenue-occupancy-note{margin:0;font-size:.82rem;color:#7a8b87;padding:0 2px}.revenue-empty-note{margin:0;font-size:.85rem;color:#9aaba7;padding:10px 2px}.revenue-expense-layout{display:grid;gap:14px}.revenue-expense-readonly{display:grid;gap:6px;padding:12px 14px;border:1px solid rgba(29,37,37,.1);border-radius:8px;background:#1d252505}.revenue-expense-readonly-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.revenue-expense-readonly-amount{font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums;color:#c0392b}.revenue-expense-readonly-hint{font-size:.78rem;color:#9aaba7}.revenue-expense-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}@media(max-width:720px){.revenue-line-item-modal-overlay{padding:8px}.revenue-line-item-modal-header{flex-direction:column;align-items:stretch}.revenue-expense-grid,.revenue-line-item-editor{grid-template-columns:1fr}.revenue-line-item-add{justify-self:stretch;justify-content:center}.revenue-row-meta-action{display:grid;justify-items:end;gap:4px}.revenue-inline-edit-button{width:100%;justify-content:center}.revenue-line-item-footer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.revenue-detail-table{display:block;overflow-x:auto}}.revenue-expense-field{display:grid;gap:6px;min-width:0}.revenue-expense-label{font-size:.82rem;color:#5c6470;font-weight:500}.revenue-expense-input-wrap{display:flex;align-items:center;gap:6px;border:1px solid rgba(192,57,43,.28);border-radius:6px;background:#c0392b0a;padding:0 10px}.revenue-expense-input{flex:1;border:none;outline:none;background:transparent;font-size:.9rem;padding:8px 0;min-width:0;font-variant-numeric:tabular-nums;color:#c0392b;text-align:right}.revenue-expense-unit{font-size:.82rem;color:#9aaba7;flex-shrink:0}.revenue-summary-section .revenue-table{border-color:#1f5e5826}.revenue-diagnosis-btn{display:inline-flex;align-items:center;gap:7px;width:fit-content}.revenue-spin{animation:revenue-rotate 1s linear infinite}@keyframes revenue-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.revenue-diagnosis-result{border:1px solid rgba(31,94,88,.2);border-radius:10px;padding:16px;background:#1f5e5808}.revenue-diagnosis-result.offline{border-color:#1d25251f;background:#1d252505}.revenue-diagnosis-warning{margin:0 0 10px;font-size:.83rem;color:#c0392b}.revenue-diagnosis-text{margin:0;font-size:.9rem;line-height:1.7;color:#2a3530;word-break:keep-all}.revenue-diagnosis-text p{margin:0}.revenue-diagnosis-text p+p{margin-top:10px}.revenue-diagnosis-saved-at,.research-saved-at{margin:0 0 8px;color:#66716d;font-size:12px}.marketing-panel{display:grid;gap:14px}.marketing-actions{display:flex;flex-wrap:wrap;gap:10px}.marketing-fetch-btn,.marketing-analyze-btn{display:inline-flex;align-items:center;gap:8px}.marketing-error{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:12px;border:1px solid rgba(180,83,9,.2);background:#fbbf2414;color:#92400e;font-size:14px}.marketing-context-card{padding:16px;border-radius:14px;border:1px solid rgba(31,94,88,.12);background:#ffffffb8}.marketing-context-card h3{margin:0 0 12px;font-size:15px}.marketing-context-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.marketing-context-item{display:grid;gap:4px;padding:12px;border-radius:12px;border:1px solid rgba(148,163,158,.25);background:#f8faf9e6;font-size:13px;color:#4b5a56}.marketing-context-item strong{color:#1f3d39;font-size:14px}.marketing-context-item.ready{border-color:#1f5e5838;background:#1f5e580d}.marketing-context-item.missing{border-color:#b453092e;background:#fbbf240f}.marketing-analysis-result{display:grid;gap:14px;padding:16px;border-radius:14px;border:1px solid rgba(31,94,88,.14);background:linear-gradient(180deg,#1f5e580d,#ffffffe6)}.marketing-analysis-result.offline{border-color:#94a39e59}.marketing-analysis-warning{margin:0;color:#92400e;font-size:13px}.marketing-analysis-section h3{margin:0 0 8px;font-size:15px;color:#1f3d39}.marketing-analysis-text p{margin:0;line-height:1.6;color:#33413d}.marketing-analysis-text p+p{margin-top:10px}.marketing-time-summary{margin:0 0 8px;line-height:1.6;color:#33413d}.marketing-tip-list{margin:0;padding-left:18px;color:#33413d;line-height:1.6}.marketing-tip-list li+li{margin-top:6px}.marketing-caption-list{display:grid;gap:10px}.marketing-caption{margin:0;padding:12px 14px;border-left:3px solid rgba(31,94,88,.45);border-radius:0 10px 10px 0;background:#ffffffd9;color:#33413d;line-height:1.55;white-space:pre-wrap}.marketing-brief-card{display:grid;gap:14px;padding:16px;border-radius:14px;border:1px solid rgba(31,94,88,.12);background:#f8faf9eb}.marketing-data-card-list{display:grid;gap:8px}.marketing-data-card{border-radius:12px;border:1px solid rgba(148,163,158,.25);background:#fff;overflow:hidden}.marketing-data-card.marketing-brief-ok{border-color:#1f5e5838}.marketing-data-card.marketing-brief-missing{border-color:#b453092e;background:#fbbf240a}.marketing-data-card-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border:0;background:transparent;text-align:left;cursor:pointer;color:inherit}.marketing-data-card-title{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.marketing-data-card-title strong{font-size:14px;color:#1f3d39}.marketing-data-card-meta{display:inline-flex;flex-shrink:0;align-items:center;gap:6px;color:#66716d;font-size:12px}.marketing-data-card-detail{padding:0 14px 12px;border-top:1px solid rgba(148,163,158,.18)}.marketing-brief-card-head h3{margin:0 0 6px;font-size:15px}.marketing-brief-card-lead{margin:0;color:#66716d;font-size:13px;line-height:1.5}.marketing-brief-group{display:grid;gap:8px}.marketing-brief-group h4{margin:0;font-size:13px;color:#35524f}.marketing-brief-section{padding:12px;border-radius:10px;border:1px solid rgba(148,163,158,.25);background:#fff}.marketing-brief-section.marketing-brief-ok{border-color:#1f5e5838}.marketing-brief-section.marketing-brief-partial{border-color:color-mix(in srgb,var(--brand-amber, #c4a35a) 55%,transparent)}.marketing-brief-section.marketing-brief-missing{border-color:#b453092e;background:#fbbf240a}.marketing-brief-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.marketing-brief-section-head strong{font-size:13px;color:#1f3d39}.marketing-brief-status{font-size:11px;padding:2px 8px;border-radius:999px;background:#1f5e5814;color:#35524f}.marketing-brief-missing .marketing-brief-status{background:#fbbf2426;color:#92400e}.marketing-brief-lines{margin:0;padding-left:18px;color:#33413d;font-size:13px;line-height:1.55}.marketing-brief-lines li+li{margin-top:4px}.marketing-brief-note{margin:0;color:#8a9590;font-size:13px}.marketing-prompt-preview{display:grid;gap:8px}.marketing-prompt-toggle{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:transparent;color:#35524f;font-size:13px;cursor:pointer}.marketing-prompt-text{margin:0;max-height:320px;overflow:auto;padding:12px;border-radius:10px;border:1px solid rgba(148,163,158,.3);background:#fff;color:#33413d;font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.marketing-target-primary,.marketing-target-secondary{margin:0 0 8px;color:#33413d;line-height:1.6}.research-panel{display:grid;gap:14px}.research-controls{display:grid;gap:8px}.research-controls-row{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.research-radius-field{flex:0 1 220px;min-width:160px}.research-radius-input{width:132px!important;max-width:132px}.research-run-button{width:auto;min-height:36px;padding:0 12px;font-size:14px}.research-controls-hint{margin:0;color:#66716d;font-size:15px;font-weight:600}.research-controls-baseline{margin:0;color:#2a3b36;font-size:16px;font-weight:700}.research-controls-baseline strong{font-weight:800}.research-loading,.research-error{display:flex;align-items:center;gap:12px;font-size:14px}.research-loading{padding:14px 16px;border-radius:12px;border:1px solid rgba(31,94,88,.12);background:#1f5e580a;color:#35524f}.research-loading-copy{display:flex;flex-direction:column;gap:6px}.research-loading-dots{display:inline-flex;gap:4px}.research-loading-dots span{width:6px;height:6px;border-radius:50%;background:#1f5e58;animation:research-dot-pulse 1.2s ease-in-out infinite}.research-loading-dots span:nth-child(2){animation-delay:.15s}.research-loading-dots span:nth-child(3){animation-delay:.3s}@keyframes research-dot-pulse{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.research-hourglass{position:relative;width:22px;height:32px;flex-shrink:0}.research-hourglass-frame{position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid #1f5e58;border-radius:2px 2px 8px 8px;clip-path:polygon(0 0,100% 0,62% 50%,100% 100%,0 100%,38% 50%);opacity:.85}.research-hourglass-sand{position:absolute;left:50%;transform:translate(-50%);background:#1f5e58;border-radius:999px}.research-hourglass-sand-top{top:4px;width:12px;height:10px;animation:research-sand-top 1.6s ease-in-out infinite}.research-hourglass-sand-stream{top:15px;width:2px;height:6px;animation:research-sand-stream 1.6s ease-in-out infinite}.research-hourglass-sand-bottom{bottom:3px;width:12px;height:0;animation:research-sand-bottom 1.6s ease-in-out infinite}@keyframes research-sand-top{0%,20%{height:10px;opacity:1}80%,to{height:2px;opacity:.35}}@keyframes research-sand-stream{0%,25%{opacity:0;height:0}45%,55%{opacity:1;height:8px}80%,to{opacity:0;height:0}}@keyframes research-sand-bottom{0%,40%{height:2px;opacity:.35}to{height:10px;opacity:1}}.research-note-inline{margin-bottom:8px}.research-error{color:#9b3d3d}.research-results{display:grid;gap:14px}.research-warning,.research-note{margin:0;padding:10px 12px;border-radius:10px;background:#b48c141a;color:#7a5d00;font-size:13px;line-height:1.45}.research-summary-card{display:grid;gap:10px;padding:14px;border-radius:12px;border:1px solid rgba(31,94,88,.14);background:#1f5e580a}.research-summary-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:#1f5e58;font-size:13px}.research-summary-head strong{font-size:15px}.research-source-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#1f5e581f;color:#1f5e58;font-size:11px;font-weight:700}.research-api-error-details{display:grid;gap:8px}.research-api-error-details>summary{cursor:pointer;list-style:none}.research-api-error-details>summary::-webkit-details-marker{display:none}.research-headline{margin:0;font-size:15px;line-height:1.5;color:#24312d}.research-metrics{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.research-metrics div{display:grid;gap:2px;padding:8px 10px;border-radius:10px;background:#ffffffb8}.research-metrics span{font-size:11px;color:#66716d}.research-metrics strong{font-size:14px;color:#1f5e58}.research-source-compare{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.research-source-column{display:grid;gap:8px;padding:10px;border-radius:10px;background:#ffffff8c;border:1px solid rgba(31,94,88,.1)}.research-source-column h4{margin:0;font-size:13px;color:#1f5e58}.research-source-column-empty .research-note{margin:0}.research-source-chart-row{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.research-section{display:grid;gap:10px}.research-section h3,.research-section h4{margin:0;font-size:14px;color:#1f5e58}.research-age-chart{display:grid;gap:8px}.research-age-row{display:grid;grid-template-columns:52px 1fr auto;gap:8px;align-items:center}.research-age-label{font-size:12px;color:#44524e}.research-age-bar-track{height:10px;border-radius:999px;background:#1f5e581a;overflow:hidden}.research-age-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#1f5e588c,#1f5e58e6)}.research-age-value{font-size:11px;color:#66716d;white-space:nowrap}.research-hour-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(88px,1fr))}.research-hour-card{display:grid;gap:2px;padding:8px;border-radius:10px;border:1px solid rgba(31,94,88,.12);background:#ffffffb8;text-align:center}.research-hour-card strong{font-size:12px;color:#1f5e58}.research-hour-card span{font-size:11px;color:#66716d}.research-trend-list{display:grid;gap:4px}.research-trend-list p{margin:0;font-size:12px}.research-trend-up{color:#1f5e58}.research-trend-down{color:#9b3d3d}.research-trend-neutral{color:#66716d}.research-insight-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.research-insight-group{display:grid;gap:8px}.research-insight-card{padding:10px 12px;border-radius:10px;border:1px solid rgba(31,94,88,.12);background:#ffffffb8}.research-insight-card strong{display:block;margin-bottom:4px;font-size:13px;color:#1f5e58}.research-insight-card p{margin:0;font-size:13px;line-height:1.45;color:#44524e}.research-cautions{margin:0;padding-left:18px;color:#66716d;font-size:12px;line-height:1.45}.research-dong-list{display:flex;flex-wrap:wrap;gap:6px}.research-dong-chip{padding:4px 8px;border-radius:999px;background:#1f5e5814;color:#44524e;font-size:11px}.research-charts-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.research-chart-card{display:grid;gap:10px;padding:14px;border-radius:12px;border:1px solid rgba(31,94,88,.12);background:#fff}.research-chart-card h4,.research-chart-card h5{margin:0;color:#1f5e58;font-size:14px}.research-donut-wrap{position:relative;width:140px;margin:0 auto}.research-donut-svg{width:140px;height:140px;transform:rotate(-90deg)}.research-donut-track,.research-donut-segment{fill:none;stroke-width:14}.research-donut-track{stroke:#1f5e5814}.research-donut-male{stroke:#3d7ea6}.research-donut-female{stroke:#c45b7a}.research-donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.research-donut-center strong{color:#1f5e58;font-size:16px}.research-donut-center span{color:#66716d;font-size:12px}.research-legend{display:grid;gap:6px;margin:0;padding:0;list-style:none;font-size:13px;color:#35524f}.research-legend li{display:flex;align-items:center;gap:8px}.research-legend-swatch{width:10px;height:10px;border-radius:999px}.research-legend-male{background:#3d7ea6}.research-legend-female{background:#c45b7a}.research-pyramid{display:grid;gap:6px}.research-pyramid-row{display:grid;grid-template-columns:1fr 52px 1fr;gap:8px;align-items:center}.research-pyramid-label{text-align:center;font-size:12px;color:#66716d}.research-pyramid-bar{display:flex;align-items:center;gap:6px;min-height:18px}.research-pyramid-bar div{height:12px;border-radius:999px}.research-pyramid-bar span{font-size:11px;color:#66716d;white-space:nowrap}.research-pyramid-bar-male{justify-content:flex-end}.research-pyramid-bar-male div{background:#3d7ea6}.research-pyramid-bar-female div{background:#c45b7a}.research-vertical-bars{display:flex;justify-content:space-around;align-items:end;gap:12px;min-height:160px}.research-vertical-bar-col{display:grid;gap:6px;justify-items:center;flex:1}.research-vertical-bar-track{width:100%;max-width:48px;height:120px;display:flex;align-items:end;border-radius:10px 10px 4px 4px;background:#1f5e5814}.research-vertical-bar-fill{width:100%;border-radius:10px 10px 4px 4px;background:linear-gradient(180deg,#2f8f86,#1f5e58)}.research-vertical-bar-col strong{color:#1f5e58;font-size:14px}.research-vertical-bar-col span{color:#66716d;font-size:12px}.research-line-svg{width:100%;max-width:320px}.research-line-axis{stroke:#1f5e582e;stroke-width:1}.research-line-total{fill:none;stroke:#1f5e58;stroke-width:2}.research-line-dot-total{fill:#1f5e58}.research-line-label{fill:#66716d;font-size:10px}.research-subway-grid{display:grid;grid-template-columns:minmax(0,1fr) 168px;gap:10px}.research-subway-legend{display:flex;flex-wrap:wrap;gap:8px 12px;margin-bottom:8px}.research-subway-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#1b4f4a}.research-subway-legend-item i{width:16px;height:3px;border-radius:999px;display:inline-block}.research-subway-top-hours{display:grid;gap:8px;align-content:start}.research-subway-top-station{display:grid;gap:6px}.research-subway-top-hours h5{margin:0;font-size:13px;font-weight:900;color:#174d48}.research-subway-top-hour{display:grid;grid-template-columns:auto 1fr auto;gap:6px;align-items:center;padding:8px 10px;border-radius:10px;border:1px solid rgba(31,94,88,.18);font-size:12px}.research-subway-top-hour strong{font-size:14px;font-weight:900}.research-subway-top-hour span{font-size:13px;font-weight:800;color:#143f3b}.research-subway-top-hour em{font-style:normal;font-size:13px;font-weight:900}.research-subway-top-hour.rank-1{background:linear-gradient(135deg,#ffd64f47,#fff3b052);border-color:#b0781473}.research-subway-top-hour.rank-1 strong,.research-subway-top-hour.rank-1 em{color:#8a5700}.research-subway-top-hour.rank-2{background:linear-gradient(135deg,#85b4ff33,#b9d3ff42);border-color:#2561ae59}.research-subway-top-hour.rank-2 strong,.research-subway-top-hour.rank-2 em{color:#1f4f8f}.research-subway-top-hour.rank-3{background:linear-gradient(135deg,#c77e5d33,#e9b69b4d);border-color:#8a482d59}.research-subway-top-hour.rank-3 strong,.research-subway-top-hour.rank-3 em{color:#7d3e23}@media(max-width:700px){.research-subway-grid{grid-template-columns:1fr}.research-subway-top-hours{grid-template-columns:1fr;align-items:stretch}.research-subway-top-station{gap:8px}}.research-mini-metrics{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.research-mini-metrics div{display:grid;gap:2px;padding:8px;border-radius:8px;background:#1f5e580d}.research-mini-metrics span,.research-mini-metrics em{color:#66716d;font-size:11px;font-style:normal}.research-mini-metrics strong{color:#1f5e58;font-size:13px}.research-grouped-bars,.research-stacked-list,.research-migration-grid{display:grid;gap:10px}.research-grouped-bars{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;min-height:140px}.research-grouped-bar{display:grid;gap:6px;justify-items:center}.research-grouped-bar-track{width:100%;max-width:42px;height:100px;display:flex;align-items:end;background:#1f5e580f;border-radius:8px}.research-grouped-bar-track div{width:100%;border-radius:8px 8px 4px 4px}.research-bar-total{background:#1f5e58}.research-bar-male{background:#3d7ea6}.research-bar-female{background:#c45b7a}.research-stacked-row,.research-migration-row{display:grid;grid-template-columns:56px 1fr auto;gap:8px;align-items:center;font-size:12px}.research-stacked-track,.research-migration-track{display:flex;gap:2px;height:12px;border-radius:999px;overflow:hidden;background:#1f5e5814}.research-stacked-male,.research-stacked-female,.research-migration-track div{height:100%}.research-stacked-male{background:#3d7ea6}.research-stacked-female{background:#c45b7a}.research-migration-track div{background:#1f5e58}.research-migration-summary{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}.research-migration-summary span{display:block;color:#66716d;font-size:12px}.research-migration-net{text-align:center;padding:10px;border-radius:999px;background:#1f5e580f}.research-flow-bar{height:8px;margin-top:6px;border-radius:999px;background:#1f5e5814;overflow:hidden}.research-flow-in{height:100%;background:#2f8f86}.research-flow-out{height:100%;background:#b85c5c}.research-household-split{display:flex;min-height:72px;border-radius:12px;overflow:hidden}.research-household-block{display:grid;place-content:center;gap:4px;padding:10px;text-align:center;color:#fff}.research-household-single{background:#3d7ea6}.research-household-two{background:#2f6b8a}.research-household-three{background:#1f5e58}.research-household-four{background:#174038}.research-household-multi{background:#1f5e58}.research-household-block strong{font-size:16px}.research-household-block span{font-size:12px;opacity:.92}.research-chart-explorer{display:grid;gap:12px}.research-chart-toolbar{display:flex;flex-wrap:wrap;gap:6px}.research-chart-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid rgba(31,94,88,.18);background:#ffffffb8;color:#44524e;font-size:12px;cursor:pointer}.research-chart-tab.is-active{border-color:#1f5e5873;background:#1f5e581f;color:#1f5e58;font-weight:600}.research-chart-focus{max-width:720px}.research-chart-focus-wrap{min-width:0}.research-theme-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.research-theme-count{font-size:12px;color:#66716d}.research-theme-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.research-theme-card{display:grid;gap:4px;padding:10px 12px;border-radius:10px;border:1px solid rgba(31,94,88,.1);background:#ffffffb8}.research-theme-card.is-available{border-color:#1f5e5847;background:#1f5e580d}.research-theme-card-head{display:flex;align-items:center;gap:6px}.research-theme-card-head strong{font-size:12px;color:#1f5e58;line-height:1.35}.research-theme-icon-ok{color:#1f5e58;flex-shrink:0}.research-theme-icon-miss{color:#9aa5a1;flex-shrink:0}.research-theme-status{font-size:11px;color:#9aa5a1}.research-theme-status.is-ok{color:#1f5e58}.research-theme-error{margin:0;font-size:10px;line-height:1.35;color:#9b3d3d}@media(max-width:720px){.research-controls-row{flex-direction:row;align-items:flex-end}.research-radius-field{flex:0 0 auto;min-width:auto}.research-age-row{grid-template-columns:1fr}.research-age-value{white-space:normal}.research-charts-grid,.research-migration-summary,.research-mini-metrics{grid-template-columns:1fr}}.general-affairs-section{display:grid;gap:14px}.general-affairs-section-head h3{margin:0 0 4px;font-size:1.05rem}.general-affairs-form-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.yogaos-qr-panel{gap:16px}.yogaos-qr-stage{display:grid;gap:16px;justify-items:start}.yogaos-qr-card{width:min(100%,320px)}.yogaos-qr-url{margin:0;font-size:14px;font-weight:700;text-align:center;word-break:break-all}.yogaos-qr-url a{color:#1f5e58}.yogaos-qr-actions{display:flex;flex-wrap:wrap;gap:8px}.member-code-list-panel{gap:16px}.member-code-list-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.member-code-list-toolbar{display:flex;gap:8px;flex-wrap:wrap}.member-code-list-studio{display:grid;gap:10px;padding:14px 16px;border:1px solid rgba(29,37,37,.1);border-radius:14px;background:#fffdf8f2}.member-code-list-studio-main,.member-code-list-studio-code,.member-code-list-item-main,.member-code-list-item-code{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.member-code-list-label{min-width:72px;font-size:13px;color:#66706c}.member-code-list-studio strong,.member-code-list-item strong{font-size:15px;color:#1d2525}.member-code-list-copy-button{margin-left:auto}.member-code-list-empty{margin:0;color:#66706c}.member-code-list-textarea{width:100%;min-height:12rem;margin:0;padding:.875rem 1rem;border:1px solid rgba(29,37,37,.12);border-radius:12px;background:#ffffffb8;color:#1d2525;font:inherit;font-size:.875rem;line-height:1.6;resize:vertical;white-space:pre}.member-code-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.member-code-list-item{display:grid;gap:8px;padding:12px 14px;border:1px solid rgba(29,37,37,.08);border-radius:12px;background:#ffffffb8}.member-code-list-unissued{color:#8a9490}.member-code-list-spin{animation:member-code-list-spin .8s linear infinite}@keyframes member-code-list-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ai-assistant-tabs{display:flex;gap:8px;flex-wrap:wrap}.ai-assistant-tab{border:1px solid rgba(29,37,37,.12);border-radius:999px;padding:8px 14px;background:#fffdf8e6;color:#4f5b57;font-size:14px;cursor:pointer}.ai-assistant-tab.active{border-color:#1f5e58;background:#1f5e5814;color:#1f5e58;font-weight:600}.daily-ops-digest{display:grid;gap:10px;padding:14px 16px;border:1px solid rgba(31,94,88,.18);border-radius:12px;background:#1f5e580a}.daily-ops-digest-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px}.daily-ops-digest-head h2{margin:0;font-size:19px}.daily-ops-digest-note{margin:0;color:#66716d;font-size:13px}.daily-ops-membership-summary{display:grid;gap:6px;padding:12px 14px;border-radius:10px;border:1px solid rgba(31,94,88,.16);background:#ffffffb8}.daily-ops-membership-summary-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px;font-size:14px;color:#3d4744}.daily-ops-membership-summary-row strong{font-weight:700}.daily-ops-membership-summary-row.is-secondary{color:#5c6763;font-size:13px}.daily-ops-membership-change{font-weight:700}.daily-ops-membership-change.is-up{color:#1f6b4a}.daily-ops-membership-change.is-down{color:#c0392b}.daily-ops-membership-change.is-flat{color:#66716d}.daily-ops-digest-guidance{margin:0;color:var(--ink-muted, #5c6470);font-size:.95rem;line-height:1.5}.daily-ops-digest-empty{margin:0;color:#66716d;font-size:14px}.daily-ops-digest-groups{display:grid;gap:12px}.daily-ops-digest-group{display:grid;gap:8px}.daily-ops-digest-group.is-expiry{padding:12px 14px;border:1px solid rgba(31,94,88,.28);border-radius:12px;background:linear-gradient(180deg,#1f5e581f,#1f5e580d)}.daily-ops-digest-group.is-expiry .daily-ops-digest-guidance{color:#2f5c56}.daily-ops-digest-group.is-expiry h3{color:#1f5e58}.daily-ops-digest-group.is-churn-risk{margin-top:2px;padding:12px 14px;border:1px solid rgba(192,57,43,.28);border-radius:12px;background:linear-gradient(180deg,#c0392b1f,#c0392b0f)}.daily-ops-digest-group.is-churn-risk .daily-ops-digest-guidance{color:#7a342c}.daily-ops-digest-group.is-churn-risk h3{color:#8b2e24}.daily-ops-digest-group h3{margin:0 0 6px;font-size:15px;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.daily-ops-digest-sub{font-size:13px;font-weight:500;color:#66716d}.daily-ops-digest-group ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}.daily-ops-digest-group li{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:14px;line-height:1.4}.daily-ops-digest-group li strong{font-weight:600}.daily-ops-digest-group li .daily-ops-digest-attendance{color:#2563eb;font-weight:700}.daily-ops-digest-group li .daily-ops-digest-last-class-day{color:#c0392b!important;font-weight:700}.daily-ops-digest-group li>span{color:#4a5652}.daily-ops-churn-name{display:inline;margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.daily-ops-churn-name:hover,.daily-ops-churn-name:focus-visible{color:#c0392b;outline:none}.daily-ops-important-badge{display:inline-flex;align-items:center;margin-left:6px;padding:2px 8px;border:0;border-radius:999px;background:#9b6a0e29;color:#8a5a0a;font-size:12px;font-weight:700;line-height:1.3;cursor:pointer;vertical-align:middle}.daily-ops-important-badge:hover:not(:disabled),.daily-ops-important-badge:focus-visible:not(:disabled){background:#9b6a0e3d;outline:none}.daily-ops-important-badge:disabled{cursor:default}.daily-ops-important-reasons{display:grid;gap:6px;margin:0 0 12px;padding:10px 12px;border-radius:10px;border:1px solid rgba(155,106,14,.22);background:#9b6a0e14}.daily-ops-important-reasons h3{margin:0;font-size:14px;color:#8a5a0a}.daily-ops-important-reasons ul{margin:0;padding:0 0 0 18px;display:grid;gap:4px;color:#5c4a2a;font-size:13px;line-height:1.45}.daily-ops-extension-badge{display:inline-flex;align-items:center;margin-left:6px;padding:2px 8px;border:0;border-radius:999px;background:#2e6f8a24;color:#2a6078;font-size:12px;font-weight:700;line-height:1.3;cursor:pointer;vertical-align:middle}.daily-ops-extension-badge:hover:not(:disabled),.daily-ops-extension-badge:focus-visible:not(:disabled){background:#2e6f8a38;outline:none}.daily-ops-extension-badge:disabled,span.daily-ops-extension-badge{cursor:default}.daily-ops-extension-reasons{display:grid;gap:6px;margin:0 0 12px;padding:10px 12px;border-radius:10px;border:1px solid rgba(46,111,138,.22);background:#2e6f8a14}.daily-ops-extension-reasons h3{margin:0;font-size:14px;color:#2a6078}.daily-ops-extension-reasons ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}.daily-ops-extension-reasons li{display:grid;gap:2px;color:#334a52;font-size:13px;line-height:1.45}.daily-ops-extension-reasons li small{color:#66716d;font-size:12px}.daily-ops-churn-badge{display:inline-flex;align-items:center;margin-left:6px;padding:2px 8px;border:0;border-radius:999px;background:#c0392b24;color:#c0392b;font-size:12px;font-weight:700;line-height:1.3;cursor:pointer;vertical-align:middle}.daily-ops-churn-badge:hover,.daily-ops-churn-badge:focus-visible{background:#c0392b38;outline:none}.daily-ops-churn-detail-name{margin:0 0 8px;font-size:15px;font-weight:600}.daily-ops-churn-coaching{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:#1f5e5814;color:#2f3b38;font-size:14px;line-height:1.5}.daily-ops-churn-coaching p{margin:0}.daily-ops-churn-coaching small{display:block;margin-top:6px;color:#66716d;font-size:12px}.daily-ops-churn-reasons{margin:0 0 12px;padding:0;list-style:none;display:grid;gap:10px;color:#3d4744;font-size:14px;line-height:1.45}.daily-ops-churn-reasons li{display:grid;gap:4px;padding:8px 10px;border-radius:8px;background:#00000008}.daily-ops-churn-reasons li strong{font-size:13px;font-weight:700;color:#8b2e24}.daily-ops-churn-reasons li span{color:#4a5652}.daily-ops-churn-history-heading{margin:0 0 8px;font-size:15px}.daily-ops-churn-history-empty{margin:0 0 16px;color:#66716d;font-size:14px}.daily-ops-churn-history{margin:0 0 16px;padding:0;list-style:none;display:grid;gap:8px;max-height:min(40vh,280px);overflow:auto}.daily-ops-churn-history li{display:grid;grid-template-columns:3.2em 1fr auto;gap:8px;align-items:baseline;font-size:14px;color:#3d4744}.daily-ops-churn-history-date{color:#66716d;font-variant-numeric:tabular-nums}.daily-ops-churn-history-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.daily-ops-churn-history-status{font-weight:700}.daily-ops-churn-history-status.is-attended{color:#1f6b4a}.daily-ops-churn-history-status.is-no_show{color:#c0392b}.daily-ops-churn-history-status.is-late_cancel{color:#a16207}.care-brief-panel{display:grid;gap:14px}.care-brief-heading-row{display:flex;align-items:center;gap:8px}.care-brief-heading h2{margin:0;font-size:24px}.care-brief-lead{margin:6px 0 0;color:#66716d;font-size:13px;line-height:1.45;max-width:720px}.care-brief-env{margin:0;padding:10px 12px;border-radius:10px;background:#1f5e580f;color:#1f5e58;font-size:14px}.care-brief-forecast{display:grid;gap:12px;padding:12px;border-radius:12px;border:1px solid rgba(31,94,88,.12);background:#ffffffb8}.care-brief-forecast-head{display:grid;gap:4px}.care-brief-forecast-head strong{font-size:15px;color:#1f5e58}.care-brief-forecast-head span{font-size:12px;color:#66716d;line-height:1.4}.care-brief-forecast-group{display:grid;gap:8px}.care-brief-forecast-group-title{margin:0;font-size:13px;color:#44524e}.care-brief-forecast-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px}.care-brief-forecast-day{display:grid;gap:4px;padding:10px;border-radius:10px;border:1px solid rgba(31,94,88,.1);background:#1f5e5808}.care-brief-forecast-day-head{display:grid;gap:2px}.care-brief-forecast-date{font-size:12px;font-weight:600;color:#1f5e58}.care-brief-forecast-condition{font-size:12px;color:#44524e}.care-brief-forecast-condition-wrap{display:flex;align-items:center;justify-content:space-between;gap:8px}.care-brief-forecast-icons{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.care-brief-forecast-icon{fill:currentColor;stroke:currentColor;stroke-width:1.7}.care-brief-forecast-cloud-double{position:relative;width:28px;height:24px;display:inline-block;flex-shrink:0}.care-brief-forecast-cloud-double .cloud-back{position:absolute;left:0;top:7px;color:#7d8792}.care-brief-forecast-cloud-double .cloud-front{position:absolute;right:0;top:0;color:#9ca3af}.care-brief-forecast-emoji-icon{display:inline-flex;align-items:center;justify-content:center;font-size:18px;line-height:1}.care-brief-forecast-icon.sun{color:#f59e0b}.care-brief-forecast-icon.rain{color:#2563eb}.care-brief-forecast-icon.cloud-light{color:#9ca3af}.care-brief-forecast-icon.cloud-dark{color:#4b5563}.care-brief-forecast-temp{margin:0;font-size:14px;font-weight:600;color:#24312d}.care-brief-forecast-rain{margin:0;font-size:11px;color:#66716d}.care-brief-forecast-pm25{display:inline-flex;align-self:start;padding:2px 6px;border-radius:999px;font-size:10px;line-height:1.3}.care-brief-forecast-pm25-good{background:#1f5e581f;color:#1f5e58}.care-brief-forecast-pm25-moderate{background:#b48c1429;color:#7a5d00}.care-brief-forecast-pm25-bad{background:#b45a2829;color:#8a3f12}.care-brief-forecast-pm25-very-bad{background:#9b3d3d29;color:#9b3d3d}.care-brief-forecast-pm25-unavailable{background:#66716d1f;color:#66716d}.care-brief-session-picker .field{display:grid;gap:6px}.care-brief-session-meta{margin:6px 0 0;color:#66716d;font-size:13px}.care-brief-loading,.care-brief-error{display:flex;align-items:center;gap:8px;font-size:14px}.care-brief-error{color:#9b3d3d}.care-brief-summary-row{display:flex;align-items:flex-start;gap:8px}.care-brief-summary{margin:0;flex:1;font-size:15px;line-height:1.5}.care-brief-booked-members{display:grid;gap:10px}.care-brief-subhead{display:grid;gap:2px}.care-brief-subhead-with-action{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.care-brief-subhead-copy{display:grid;gap:2px;min-width:0;flex:1 1 auto}.care-brief-generate-btn{flex:0 0 auto;white-space:nowrap}.care-brief-booked-row.ineligible{opacity:.72}.care-brief-member-skip-note{margin:0;color:#8a9490;font-size:12px;line-height:1.4}.care-brief-subhead strong{color:#1d2525;font-size:15px}.care-brief-subhead span{color:#66716d;font-size:13px}.care-brief-booked-list{display:grid;gap:10px}.care-brief-booked-row{display:grid;gap:10px;padding:12px;border:1px solid rgba(29,37,37,.1);border-radius:12px;background:#fffdf8f5}.care-brief-booked-row.active{border-color:#1f5e5857;box-shadow:0 8px 18px #1f5e5814}.care-brief-booked-row-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.care-brief-booked-row-info{display:grid;gap:3px;min-width:0;flex:1 1 auto}.care-brief-booked-row-head strong{color:#1d2525;font-size:15px}.care-brief-booked-row-head .care-brief-last-class-day{color:#c0392b!important;font-weight:700}.care-brief-member-memo{margin:0;color:#66716d;font-size:13px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.care-brief-booked-actions{display:flex;flex:0 0 auto;gap:6px}.care-brief-memo-required-note{margin:0;color:#8a9490;font-size:12px;line-height:1.4}.care-brief-warning{margin:0;color:#8a6a1f;font-size:13px}.care-brief-member-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.care-brief-member-card{border:1px solid rgba(29,37,37,.1);border-radius:12px;padding:14px;background:#fffdf8f5}.care-brief-member-card h3{margin:0 0 8px;font-size:17px}.care-brief-member-card p{margin:0 0 8px;font-size:14px;line-height:1.45;color:#3f4a47}.ai-paragraph-text{margin:0 0 8px}.ai-paragraph-text p,.ai-paragraph-text blockquote{margin:0}.ai-paragraph-text p+p,.ai-paragraph-text blockquote+blockquote{margin-top:8px}.care-brief-poses-block{margin:0 0 10px;padding:10px 12px;border-radius:8px;background:#1f5e5812;border-left:3px solid #1f5e58}.care-brief-poses-heading{display:block;margin-bottom:6px;font-size:14px;color:#1f5e58}.care-brief-poses-rationale{margin:0 0 8px;font-size:13px;color:#3f4a47;line-height:1.45}.care-brief-pose-list{margin:0 0 8px;padding-left:18px;font-size:13px;line-height:1.5;color:#2a3532}.care-brief-pose-avoid{margin-bottom:8px;font-size:13px;color:#6b4a3a}.care-brief-pose-avoid ul{margin:4px 0 0;padding-left:18px}.care-brief-pose-meta{margin:0;font-size:13px;color:#3f4a47}.care-brief-tip,.care-brief-poses-muted,.care-brief-caution{font-size:13px}.care-brief-poses-muted{color:#6b7a76;font-style:italic}.care-brief-renewal{margin-top:8px;padding:10px;border-radius:8px;background:#1f5e580f;font-size:13px}.care-brief-renewal blockquote{margin:8px 0 0;padding-left:10px;border-left:3px solid rgba(31,94,88,.35);color:#1f5e58}.care-brief-disclaimer{margin:4px 0 0;color:#8a9490;font-size:12px}.care-brief-empty,.care-brief-empty-members{color:#66716d;font-size:14px}.care-brief-loading .spin{animation:care-brief-spin .8s linear infinite}@keyframes care-brief-spin{to{transform:rotate(360deg)}}.member-portal{position:relative;padding-bottom:104px}.member-portal-body{display:grid;gap:14px}.member-tabbar{position:fixed;bottom:0;left:50%;z-index:250;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;width:min(100vw,520px);margin:0;padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px));background:#fffdf8f7;border-top:1px solid rgba(29,37,37,.1);box-shadow:0 -8px 24px #1d25251f;transform:translate(-50%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.member-tab{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;border:none;border-radius:10px;background:transparent;color:#6b7572;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease}.member-tab:hover{background:#1f5e580f}.member-tab.is-active{background:#1f5e581f;color:#1f5e58}.member-tab-logout{color:#8a4a4a}.member-tab-logout:hover{background:#9b3d3d14;color:#7a3535}.member-tab-icon-wrap{position:relative;display:inline-flex}.member-tab-badge{position:absolute;top:-4px;right:-8px;min-width:16px;padding:1px 4px;border-radius:999px;background:#c0392b;color:#fff;font-size:11px;font-style:normal;font-weight:800;line-height:1.2;text-align:center}.member-activity-log{margin:0}.notification-item-heading{display:flex;align-items:center;gap:6px}.notification-kind-badge{flex:0 0 auto;padding:2px 6px;border-radius:999px;background:#1f5e581f;color:#1f5e58;font-size:11px;font-style:normal;font-weight:800}.notification-item-preview{margin:0;color:#5a6b67;font-size:13px;line-height:1.4}.member-reservation-history{display:grid;gap:12px;padding:14px;border:1px solid rgba(29,37,37,.08);border-radius:16px;background:#fffdf8eb}.member-reservation-groups{display:grid;gap:14px}.member-reservation-group{display:grid;gap:8px}.member-reservation-month{color:#5c6764;font-size:13px;font-weight:900;letter-spacing:.04em}.member-reservation-list{display:grid;gap:8px}.member-reservation-card{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:11px 12px;border-radius:12px;background:#eff6f4e6;border:1px solid rgba(31,94,88,.1);text-align:left;cursor:pointer}.member-reservation-card:hover:not(:disabled){border-color:#1f5e5857;background:#e5f1edf5}.member-reservation-card:disabled{cursor:default;opacity:.7}.member-reservation-card div{display:grid;gap:2px}.member-reservation-card strong{color:#1d2525;font-size:15px}.member-reservation-card span{color:#6b7572;font-size:13px;font-weight:700}.member-reservation-card em{flex:0 0 auto;padding:4px 8px;border-radius:999px;background:#1f5e58;color:#fff;font-size:12px;font-style:normal;font-weight:900}.pass-wallet{display:grid;gap:22px}.pass-wallet-section{display:grid;gap:12px}.pass-wallet-title{margin:0;font-size:16px;font-weight:800;color:#1d2525}.pass-wallet-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.pass-wallet-grid .membership-pass-card{min-height:190px}.pass-wallet-grid .membership-pass-card-head{padding-top:30px}.pass-wallet-card-body{display:flex;gap:18px}.pass-wallet-metric{display:grid;gap:2px}.pass-wallet-metric-value{font-size:24px;font-weight:900;line-height:1.1}.pass-wallet-metric-value em{font-size:14px;font-style:normal;font-weight:700;opacity:.85}.pass-wallet-metric-label{font-size:12px;font-weight:700;opacity:.85}.pass-wallet-period{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;opacity:.92}.pass-wallet-quotas,.member-reservation-quota{display:flex;flex-wrap:wrap;gap:6px}.pass-wallet-quotas span,.member-reservation-quota span{display:inline-flex;width:fit-content;padding:5px 8px;border-radius:999px;background:#ffffff2e;color:inherit;font-size:12px;font-weight:900}.member-reservation-quota{margin:8px 0}.member-reservation-quota span{background:#1f5e581a;color:#1f5e58}.pass-wallet-extensions{display:grid;gap:6px;padding-top:10px;border-top:1px solid rgba(255,255,255,.25)}.pass-wallet-extension-badge{justify-self:start;padding:3px 9px;border-radius:999px;background:#ffffffeb;color:#1d2525;font-size:12px;font-weight:800}.pass-wallet-extensions ul{margin:0;padding:0;list-style:none;display:grid;gap:4px}.pass-wallet-extensions li{display:flex;flex-wrap:wrap;gap:4px;align-items:baseline;font-size:13px}.pass-wallet-extensions li strong{font-weight:800}.pass-wallet-extensions li em{margin-left:auto;font-style:normal;font-size:12px;opacity:.85}.admin-console{max-width:1200px;margin:0 auto;padding:20px}.admin-console-login{display:grid;gap:12px;max-width:520px;margin:48px auto}.admin-console-login label{display:grid;gap:6px;font-size:14px;font-weight:700}.admin-console-login input{min-height:42px;padding:0 12px;border:1px solid rgba(29,37,37,.2);border-radius:10px}.admin-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.admin-header h1{margin:0}.admin-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px}.admin-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin:0 0 12px}.admin-kpi-card{display:grid;gap:4px;padding:12px;border:1px solid rgba(29,37,37,.12);border-radius:12px;background:#f7fbfae6}.admin-kpi-card span{font-size:13px;font-weight:700;color:#4f5f5c}.admin-kpi-card strong{font-size:24px;line-height:1.2;color:#1d2525}.admin-kpi-card small{font-size:13px;color:#5c6764}.admin-kpi-alert{margin:0 0 12px;padding:10px 12px;border:1px solid rgba(158,47,47,.24);border-radius:10px;background:#fff3f3db}.admin-kpi-alert p{margin:0;font-size:14px;color:#5b2e2e}.admin-filter-panel{display:grid;gap:10px;margin:0 0 12px;padding:12px;border:1px solid rgba(29,37,37,.12);border-radius:12px;background:#ffffffe6}.admin-filter-panel h2{margin:0;font-size:17px}.admin-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.admin-filter-grid label{display:grid;gap:5px;font-size:13px;font-weight:700;color:#42504d}.admin-filter-grid input,.admin-filter-grid select{min-height:36px;padding:0 10px;border:1px solid rgba(29,37,37,.2);border-radius:8px;background:#fff}.admin-list{display:grid;gap:10px}.admin-item{display:grid;gap:6px;padding:12px;border:1px solid rgba(29,37,37,.12);border-radius:12px;background:#ffffffe6}.admin-item span{font-size:14px;color:#42504d}.admin-manual-doc{display:grid;gap:6px;padding:8px;border:1px solid rgba(29,37,37,.12);border-radius:8px;background:#fafbfaf2}.admin-manual-doc img{width:min(100%,340px);border:1px solid rgba(29,37,37,.15);border-radius:8px;object-fit:contain;background:#fff}.admin-missing-doc{color:#9e2f2f!important;font-weight:700}.admin-billing-beta{color:#1f5e58!important;font-weight:800}.admin-log-list{display:grid;gap:8px}.admin-alert-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;padding:1px 6px;border-radius:999px;background:#9e2f2f2e;color:#8e2b2b;font-size:12px;font-weight:900}.admin-live-critical-panel{display:grid;gap:8px;margin:0 0 12px;padding:10px;border:1px solid rgba(158,47,47,.28);border-radius:10px;background:#fff4f4f0}.admin-live-critical-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.admin-live-critical-head strong{color:#7e2727}.admin-list-count{margin:0;font-size:13px;color:#596764}.admin-log-line{margin:0;padding:9px 10px;border-radius:8px;background:#1d25250f;overflow-x:auto;font-size:13px;line-height:1.35}.admin-log-line-critical{border-left:4px solid #9e2f2f;background:#9e2f2f1a}.admin-deletion-history{display:grid;gap:8px;margin-top:4px;padding-top:12px;border-top:1px dashed rgba(29,37,37,.22)}.admin-deletion-history h3{margin:0;font-size:15px;color:#35423f}.admin-error{margin:2px 0;color:#9e2f2f;font-size:14px;font-weight:700}.instructor-access-card{margin:16px 0}.instructor-portal{position:relative;padding-bottom:104px}.instructor-tabbar{grid-template-columns:repeat(4,1fr)}.instructor-portal-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:12px 14px;border:1px solid rgba(29,37,37,.12);border-radius:14px;background:#ffffffb8}.instructor-portal-toolbar strong{display:block;font-size:16px}.instructor-portal-toolbar span{color:#5f6d69;font-size:14px}.instructor-studio-switch{min-width:180px}.access-revoked-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:grid;place-items:center;padding:24px;background:#121816b8}.access-revoked-card{width:min(420px,100%);padding:28px 24px;border-radius:18px;background:#fff;box-shadow:0 24px 60px #0000003d;text-align:center}.access-revoked-card h2{margin:0 0 10px;font-size:24px}.access-revoked-card p{margin:0;color:#5f6d69;line-height:1.5}.marketing-page{min-height:100vh;background:linear-gradient(180deg,#f8f8f5,#f5f5f2);color:var(--text-dark)}.marketing-nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px clamp(20px,4vw,48px);border-bottom:1px solid rgba(24,24,22,.08);background:#f8f8f5e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.marketing-brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.marketing-brand-mark{width:42px;height:42px}.marketing-brand strong{display:block;font-size:18px}.marketing-brand span{display:block;font-size:13px;color:var(--text-muted)}.marketing-nav-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.marketing-nav-links a,.marketing-nav-admin{min-height:38px;padding:0 12px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--text-muted);font-size:14px;font-weight:600;text-decoration:none;transition:background .2s ease,border-color .2s ease,color .2s ease}.marketing-nav-links a:hover,.marketing-nav-admin:hover{background:#1111100d;border-color:#11111026;color:#121211}.marketing-hero,.marketing-section{padding:clamp(48px,8vw,96px) clamp(20px,4vw,48px)}.marketing-hero{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(320px,.98fr);gap:clamp(30px,5vw,64px);align-items:center;max-width:1240px;margin:0 auto}.marketing-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#121211b3}.marketing-hero h1{margin:0 0 18px;font-size:clamp(38px,6vw,68px);line-height:1.04;letter-spacing:-.055em}.marketing-hero h1 em{font-style:normal;color:#121211}.marketing-lead{margin:0 0 24px;max-width:640px;font-size:clamp(16px,2vw,19px);line-height:1.7;color:var(--text-muted)}.marketing-hero-actions,.marketing-download-actions{display:flex;flex-wrap:wrap;gap:12px}.marketing-primary,.marketing-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:999px;border:0;font-size:15px;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.marketing-primary{background:#111;color:#fff;box-shadow:0 8px 18px #1111103d}.marketing-secondary{background:#fff;color:#171715;border:1px solid rgba(17,17,16,.16)}.marketing-primary:hover,.marketing-secondary:hover{transform:translateY(-1px) scale(1.01)}.marketing-hero-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:520px;margin:26px 0 0}.marketing-hero-metrics div{padding:14px 16px;border:1px solid rgba(17,17,16,.12);border-radius:18px;background:#fff;box-shadow:0 12px 28px #1111100f}.marketing-hero-metrics dt{margin:0 0 4px;color:var(--text-muted);font-size:12px;font-weight:700}.marketing-hero-metrics dd{margin:0;color:#111;font-size:24px;font-weight:850;letter-spacing:-.04em}.marketing-version{margin:18px 0 0;font-size:13px;color:var(--text-muted)}.marketing-hero-panel{position:relative;display:grid;justify-items:center}.marketing-preview-shell{width:min(100%,520px);padding:clamp(18px,4vw,26px);border:1px solid rgba(17,17,16,.11);border-radius:34px;background:#fff;box-shadow:0 24px 52px #11111014;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.marketing-preview-topbar,.marketing-preview-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.marketing-preview-topbar span,.marketing-preview-summary span{color:var(--text-muted);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.marketing-preview-topbar strong{padding:6px 10px;border-radius:999px;background:#11111014;color:#111;font-size:12px}.marketing-preview-summary{margin:22px 0;padding:22px;border-radius:24px;background:#171716;color:#fff}.marketing-preview-summary strong{display:block;margin-top:8px;font-size:clamp(22px,4vw,30px);line-height:1.18;letter-spacing:-.04em}.marketing-preview-stack{display:grid;gap:12px}.marketing-preview-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:flex-start;padding:16px;border:1px solid rgba(17,17,16,.08);border-radius:22px;background:#fbfbfa;box-shadow:none}.marketing-preview-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:14px;background:#11111014;color:#222}.marketing-preview-card strong{display:block;margin-bottom:4px}.marketing-preview-card p{margin:0;color:var(--text-muted);font-size:13px;line-height:1.55}.marketing-preview-footer{margin-top:16px;color:#50504c;font-size:13px;font-weight:700;flex-wrap:wrap}.marketing-preview-footer span,.marketing-floating-note,.marketing-trust-strip span{display:inline-flex;align-items:center;gap:7px}.marketing-floating-note{position:absolute;right:0;bottom:-18px;max-width:250px;padding:14px 16px;border-radius:18px;background:#fff;color:#353532;box-shadow:0 16px 30px #1111101a;font-size:13px;font-weight:700}.marketing-trust-strip{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:1180px;margin:-18px auto 18px;padding:0 clamp(20px,4vw,48px)}.marketing-trust-strip span{padding:10px 14px;border:1px solid rgba(17,17,16,.12);border-radius:999px;background:#fff;color:#4a4a46;font-size:13px;font-weight:700}.marketing-section{max-width:1180px;margin:0 auto}.marketing-section-head{max-width:760px;margin-bottom:28px}.marketing-section-head h2{margin:0 0 12px;font-size:clamp(28px,4vw,40px);letter-spacing:-.02em}.marketing-section-head p{margin:0;color:var(--text-muted);line-height:1.7}.marketing-problem-grid,.marketing-feature-grid,.marketing-step-grid,.marketing-role-grid{display:grid;gap:16px}.marketing-problem-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.marketing-problem-grid article,.marketing-feature-card,.marketing-step-card,.marketing-role-card{padding:22px;border-radius:20px;background:#fff;border:1px solid rgba(17,17,16,.1);box-shadow:none}.marketing-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.marketing-feature-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:14px;border-radius:14px;background:#11111014;color:#222}.marketing-feature-card h3,.marketing-step-card h3,.marketing-role-card strong{margin:0 0 8px;font-size:18px}.marketing-feature-card p,.marketing-step-card p,.marketing-role-card span{margin:0;color:var(--text-muted);line-height:1.6}.marketing-step-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.marketing-step-card span{display:inline-block;margin-bottom:10px;font-size:12px;font-weight:800;letter-spacing:.08em;color:var(--brand-secondary)}.marketing-download-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:clamp(24px,4vw,36px);border-radius:28px;border:1px solid rgba(17,17,16,.1);background:#fff;color:#171716}.marketing-download-card p,.marketing-download-card .marketing-eyebrow{color:var(--text-muted)}.marketing-download-card h2{margin:0 0 12px;font-size:clamp(26px,3vw,34px)}.marketing-installed-badge{display:inline-flex;align-items:center;gap:8px;margin:0;font-weight:700}.marketing-role-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.marketing-role-card{display:grid;gap:8px;text-align:left;border:0;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.marketing-role-card:hover{transform:translateY(-2px);border-color:#1111103d;box-shadow:0 14px 28px #11111014}.marketing-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:28px clamp(20px,4vw,48px) 40px;border-top:1px solid rgba(17,17,16,.09)}.marketing-footer p{margin:6px 0 0;color:var(--text-muted)}.marketing-footer-links{display:flex;gap:12px}.marketing-footer-links button{border:0;background:transparent;color:#171716;font-weight:700}.admin-system-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.admin-system-card{display:grid;gap:6px;padding:14px;border-radius:14px;border:1px solid rgba(29,37,37,.08);background:#ffffffb8}.admin-system-card span{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#5f6d69}.admin-system-card strong{font-size:18px}.admin-system-card small{color:#5f6d69;line-height:1.4}.admin-system-card.admin-status-ok{border-color:#1f5e5838;background:#1f5e580f}.admin-system-card.admin-status-warn{border-color:#b5784a47;background:#b5784a14}.admin-system-card.admin-status-error{border-color:#b034343d;background:#b034340f}.admin-quick-links{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}@media(max-width:960px){.marketing-hero,.marketing-problem-grid,.marketing-feature-grid,.marketing-step-grid,.marketing-role-grid,.admin-system-grid{grid-template-columns:1fr}.marketing-download-card,.marketing-footer,.marketing-nav{flex-direction:column;align-items:flex-start}.marketing-hero{padding-top:42px}.marketing-hero-panel,.marketing-preview-shell{width:100%}.marketing-floating-note{position:static;width:100%;max-width:none;margin-top:14px}}@media(max-width:640px){.marketing-nav-links,.marketing-hero-actions,.marketing-download-actions,.marketing-footer-links{width:100%}.marketing-nav-links a,.marketing-nav-admin,.marketing-primary,.marketing-secondary{flex:1 1 auto}.marketing-hero-metrics{grid-template-columns:1fr}.marketing-preview-summary{padding:18px}.marketing-preview-card{grid-template-columns:1fr}.marketing-trust-strip{justify-content:flex-start;margin-top:-8px}}.landing-page{min-height:100vh;background:#f4f1ea;color:#1a1a1a}.landing-wrap{width:min(1200px,calc(100% - 48px));margin:0 auto}.landing-nav{position:fixed;top:0;left:0;right:0;z-index:50;transition:all .32s cubic-bezier(.16,1,.3,1)}.landing-nav.is-scrolled{background:#f4f1eae0;backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);box-shadow:0 1px #1a3a2a14,0 4px 28px #1a3a2a0f}.landing-nav-inner{display:flex;align-items:center;justify-content:space-between;min-height:72px}.landing-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none}.landing-brand-logo{width:34px;height:34px;border-radius:8px;object-fit:cover;display:block}.landing-brand-text-wrap{display:inline-flex;flex-direction:column;gap:1px;line-height:1;padding-top:2px}.landing-brand-title{font-family:"Noto Serif KR",serif;font-size:18px;font-weight:700;color:#1a3a2a;letter-spacing:-.02em}.landing-brand-subtitle{font-family:DM Mono,monospace;font-size:9.5px;letter-spacing:.14em;color:#9a9088;text-transform:uppercase;margin-top:4px}.landing-nav-links{display:inline-flex;align-items:center;gap:4px}.landing-nav-links a,.landing-nav-links button{border:0;background:transparent;color:#2a3d30;font:500 13.5px/1.1 Noto Sans KR,sans-serif;padding:9px 14px;border-radius:999px;text-decoration:none;transition:background .18s ease,color .18s ease;cursor:pointer}.landing-nav-links a:hover,.landing-nav-links button:hover{background:#1a3a2a12}.landing-nav-links .landing-nav-cta,.landing-mobile-menu .landing-nav-cta{background:#1a3a2a;color:#fff;padding:10px 18px;font-size:13.5px;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}.landing-nav-links .landing-nav-cta:hover,.landing-mobile-menu .landing-nav-cta:hover{background:#0f2218;transform:translateY(-1px);box-shadow:0 4px 14px #1a3a2a47}.landing-menu-toggle{display:none;border:0;background:transparent;color:#1a3a2a;padding:6px;cursor:pointer}.landing-mobile-menu{display:none}.landing-hero{position:relative;min-height:100dvh;overflow:hidden;display:flex;align-items:center;padding-top:80px}.landing-hero-bg,.landing-hero-overlay,.landing-hero-fade{position:absolute;left:0;right:0}.landing-hero-bg{top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center 30%;opacity:.48}.landing-hero-overlay{top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 110% 90% at 28% 55%,#f4f1eaf5,#f4f1eac2 48%,#f4f1ea38),linear-gradient(to bottom right,#f4f1ea33,#1a3a2a0a)}.landing-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:60px;align-items:center;padding:52px 0 88px}.landing-hero-copy{position:relative;z-index:2}.landing-hero-headline-lead{white-space:nowrap}.landing-label{display:inline-flex;align-items:center;gap:8px;margin:0 0 24px;padding:5px 12px 5px 8px;border-radius:999px;background:#1a3a2a12;border:1px solid rgba(26,58,42,.12);color:#1a3a2a;font:500 10.5px/1.2 DM Mono,monospace;letter-spacing:.14em;text-transform:uppercase}.landing-label span{width:6px;height:6px;border-radius:999px;background:#2d6a4f;flex-shrink:0;box-shadow:0 0 0 3px #2d6a4f2e}.landing-hero-copy h1{margin:0;font-family:"Noto Serif KR",serif;font-size:clamp(38px,5.2vw,60px);font-weight:700;line-height:1.2;letter-spacing:-.025em;color:#0f2218;word-break:keep-all;overflow-wrap:break-word}.landing-hero-copy h1 em{font-style:italic;color:#1a3a2a}.landing-description{margin:22px 0 0;max-width:500px;color:#4a4640;font:400 16.5px/1.82 Noto Sans KR,sans-serif}.landing-hero-install{margin-top:34px;max-width:600px}.landing-hero-install .landing-install-card{padding:32px;border-radius:26px}.landing-hero-install .landing-install-content{grid-template-columns:1fr;gap:22px}.landing-hero-install .landing-install-copy h2{font-size:clamp(24px,3.2vw,34px)}.landing-hero-actions{margin-top:26px;display:flex;flex-wrap:wrap;gap:10px}.landing-primary-btn,.landing-outline-btn,.landing-install-btn{border-radius:999px;border:1.5px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 24px;font:600 14px/1.1 Noto Sans KR,sans-serif;transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s ease,background-color .18s ease;cursor:pointer}.landing-primary-btn{background:#1a3a2a;color:#fff}.landing-primary-btn:hover{background:#0f2218;transform:translateY(-2px);box-shadow:0 8px 24px #1a3a2a47}.landing-primary-btn:active{transform:translateY(0) scale(.98);box-shadow:none}.landing-outline-btn{background:transparent;color:#1a3a2a;border-color:#1a3a2a38}.landing-outline-btn:hover{background:#1a3a2a0d;border-color:#1a3a2a57;transform:translateY(-1px)}.landing-version{margin-top:22px;color:#b0a898;font:400 11px/1.2 DM Mono,monospace;letter-spacing:.08em}.landing-mockup-wrap{position:relative;display:flex;justify-content:center;width:100%}.landing-phone-group{display:flex;align-items:flex-start;gap:clamp(12px,2.2vw,20px);width:min(100%,520px)}.landing-phone-shell{flex:1 1 0;min-width:0;border-radius:clamp(26px,4vw,42px);overflow:hidden;border:5px solid rgba(26,58,42,.9);box-shadow:0 32px 72px #1a3a2a42,0 0 0 1px #1a3a2a14,inset 0 1px #ffffff1f;background:#0f2218}.landing-phone-shell-secondary{transform:translateY(28px);opacity:.88}.landing-phone-shell img{display:block;width:100%;aspect-ratio:9 / 19.5;max-height:min(520px,54vh);object-fit:cover;object-position:top}.landing-float-card{position:absolute;background:#ffffffad;backdrop-filter:blur(18px) saturate(1.5);-webkit-backdrop-filter:blur(18px) saturate(1.5);border-radius:18px;border:1px solid rgba(255,255,255,.72);box-shadow:0 8px 32px #1a3a2a1a,inset 0 1px #ffffffe6;padding:14px 16px}.landing-float-left{left:-90px;top:44px;min-width:168px}.landing-float-right{right:-82px;bottom:76px;min-width:160px}.landing-float-card p{margin:0 0 4px;color:#9a9088;font:500 10px/1.2 DM Mono,monospace;letter-spacing:.1em;text-transform:uppercase}.landing-float-card strong{display:block;margin:0;color:#1a1a1a;font:700 13.5px/1.45 Noto Sans KR,sans-serif}.landing-float-card small{color:#5a5248;font:400 11.5px/1.35 Noto Sans KR,sans-serif}.landing-float-top{display:inline-flex;align-items:center;gap:4px;color:#2d6a4f}.landing-hero-fade{bottom:0;height:128px;background:linear-gradient(to bottom,transparent,#f4f1ea)}.landing-section{padding:108px 0}.landing-features{background:#fff}.landing-section-head{text-align:center;margin-bottom:64px}.landing-section-head p{margin:0;color:#2d6a4f;font:500 10.5px/1.2 DM Mono,monospace;letter-spacing:.16em;text-transform:uppercase}.landing-section-head h2{margin:14px 0 0;color:#0f2218;font-family:"Noto Serif KR",serif;font-size:clamp(32px,4.2vw,50px);font-weight:700;letter-spacing:-.025em;line-height:1.18}.landing-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.landing-feature-card:nth-child(1){grid-column:span 2}.landing-feature-card:nth-child(2){grid-column:span 2}.landing-feature-card:nth-child(5){grid-column:span 2}.landing-feature-card:nth-child(6){grid-column:span 2}.landing-feature-card{padding:28px 28px 32px;border-radius:22px;border:1px solid rgba(26,58,42,.07);background:#f4f1ea;box-shadow:0 2px 8px #1a3a2a08;transition:transform .32s cubic-bezier(.16,1,.3,1),box-shadow .32s ease,border-color .24s ease;cursor:default}.landing-feature-card:hover{transform:translateY(-5px);box-shadow:0 20px 56px #1a3a2a1c,0 4px 12px #1a3a2a0f;border-color:#1a3a2a21}.landing-feature-card.is-highlight{background:#1a3a2a;border-color:transparent}.landing-feature-card.is-highlight:hover{box-shadow:0 20px 56px #1a3a2a52,0 4px 12px #1a3a2a2e}.landing-feature-icon{width:44px;height:44px;border-radius:14px;margin-bottom:18px;display:flex;align-items:center;justify-content:center;background:#1a3a2a14;color:#1a3a2a}.landing-feature-card.is-highlight .landing-feature-icon{background:#ffffff1a;color:#a8d5b5}.landing-feature-card h3{margin:0;color:#0f2218;font:700 16.5px/1.3 Noto Sans KR,sans-serif;letter-spacing:-.01em}.landing-feature-card p{margin:10px 0 0;color:#6b6560;font:400 14px/1.68 Noto Sans KR,sans-serif}.landing-feature-card.is-highlight h3{color:#fff}.landing-feature-card.is-highlight p{color:#ffffffb3}.landing-stats{background:#f4f1ea;padding:0;border-top:1px solid rgba(26,58,42,.07);border-bottom:1px solid rgba(26,58,42,.07)}.landing-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.landing-stat-item{padding:48px 40px;text-align:center;position:relative}.landing-stat-item:after{content:"";position:absolute;right:0;top:25%;height:50%;width:1px;background:#1a3a2a1a}.landing-stat-item:last-child:after{display:none}.landing-stat-number{display:block;font-family:"Noto Serif KR",serif;font-size:clamp(38px,5vw,56px);font-weight:700;color:#1a3a2a;line-height:1;letter-spacing:-.04em}.landing-stat-suffix{font-size:.6em;letter-spacing:-.02em;vertical-align:super;margin-left:2px}.landing-stat-label{display:block;margin-top:10px;color:#6a6058;font:400 14px/1.5 Noto Sans KR,sans-serif}.landing-install{background:#fff}.landing-install-card{position:relative;border-radius:32px;overflow:hidden;background-size:cover;background-position:center;padding:48px;box-shadow:0 24px 72px #1a3a2a29}.landing-install-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(145deg,#0f2218f7,#1a3a2ae6 60%,#2d6a4fd1)}.landing-install-content{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.landing-install-copy p{margin:0;color:#74c69d;font:500 10.5px/1.2 DM Mono,monospace;letter-spacing:.16em;text-transform:uppercase}.landing-install-copy h2{margin:16px 0 14px;color:#fff;font-family:"Noto Serif KR",serif;font-size:clamp(30px,3.8vw,44px);line-height:1.22;letter-spacing:-.025em}.landing-install-copy span{display:block;margin-bottom:24px;color:#ffffffa6;font:400 15.5px/1.74 Noto Sans KR,sans-serif}.landing-install-btn{background:#fff;color:#1a3a2a;border-color:transparent}.landing-install-btn:hover{background:#f4f1ea;transform:translateY(-2px);box-shadow:0 8px 24px #0000002e}.landing-role-list{display:grid;gap:10px}.landing-role-card{width:100%;border-radius:16px;border:1px solid rgba(255,255,255,.1);background:#ffffff0f;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;transition:background .22s ease,border-color .22s ease,transform .22s cubic-bezier(.16,1,.3,1);cursor:pointer}.landing-role-card:hover{background:#ffffff1c;border-color:#fff3;transform:translate(4px)}.landing-role-card:active{transform:translate(2px) scale(.99)}.landing-role-card span{display:inline-flex;flex-direction:column;gap:3px;text-align:left}.landing-role-card strong{font:700 14px/1.2 Noto Sans KR,sans-serif}.landing-role-card small{color:#ffffff8c;font:400 12px/1.3 Noto Sans KR,sans-serif}.landing-role-card svg{color:#ffffff61;transition:transform .22s ease,color .22s ease}.landing-role-card:hover svg{color:#ffffffa6;transform:translate(2px)}.landing-role-card-kiosk{border-color:#74c69d33;background:#74c69d12;margin-top:4px}.landing-role-card-kiosk:hover{border-color:#74c69d59;background:#74c69d1f}.landing-role-card-kiosk strong{color:#a8e6c3}.landing-footer{background:#0f2218;border-top:none;padding:48px 0 56px}.landing-footer-legal{display:grid;gap:32px}.landing-footer-nav{display:flex;flex-wrap:wrap;gap:8px 20px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.08)}.landing-footer-nav a,.landing-footer-nav button{border:0;background:transparent;padding:0;cursor:pointer;color:#ffffff8c;font:500 13px/1.4 Noto Sans KR,sans-serif;text-decoration:none;transition:color .18s ease}.landing-footer-nav a:hover,.landing-footer-nav button:hover{color:#ffffffe6}.landing-footer-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 40px}.landing-footer-col h3{margin:0 0 14px;color:#ffffff73;font:600 10.5px/1.4 DM Mono,monospace;letter-spacing:.12em;text-transform:uppercase}.landing-footer-dl{margin:0;display:grid;gap:9px}.landing-footer-dl div{display:grid;gap:2px}.landing-footer-dl dt{margin:0;color:#ffffff59;font:500 10.5px/1.4 Noto Sans KR,sans-serif}.landing-footer-dl dd{margin:0;color:#ffffffb3;font:400 12px/1.58 Noto Sans KR,sans-serif}.landing-footer-dl a{color:inherit;text-decoration:underline;text-underline-offset:2px;opacity:.8}.landing-footer-dl a:hover{opacity:1}.landing-footer-copy{margin:0;padding-top:28px;border-top:1px solid rgba(255,255,255,.07);color:#ffffff4d;font:400 11px/1.5 Noto Sans KR,sans-serif}.landing-reveal{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.landing-reveal.visible{opacity:1;transform:translateY(0)}.landing-feature-card.landing-reveal{transition-delay:calc(var(--reveal-i, 0) * .06s)}@media(max-width:1100px){.landing-float-left,.landing-float-right{display:none}}@media(max-width:960px){.landing-nav-links{display:none}.landing-menu-toggle{display:inline-flex;align-items:center;justify-content:center}.landing-mobile-menu{display:flex;flex-direction:column;gap:6px;background:#f4f1eaf5;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(26,58,42,.08);padding:12px 16px 18px}.landing-mobile-menu a,.landing-mobile-menu button{border:0;background:transparent;text-align:left;color:#1a3a2a;font:500 14px/1.1 Noto Sans KR,sans-serif;text-decoration:none;border-radius:12px;padding:12px 14px;cursor:pointer;transition:background .15s ease}.landing-mobile-menu a:hover,.landing-mobile-menu button:hover{background:#1a3a2a0f}.landing-hero-grid,.landing-install-content{grid-template-columns:1fr}.landing-hero-headline-lead{white-space:normal}.landing-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-feature-card:nth-child(1),.landing-feature-card:nth-child(2),.landing-feature-card:nth-child(5),.landing-feature-card:nth-child(6){grid-column:span 1}.landing-hero{padding-top:100px}.landing-mockup-wrap{justify-content:center}.landing-phone-group{width:min(100%,460px)}.landing-stats-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.landing-wrap{width:calc(100% - 32px)}.landing-section{padding:80px 0}.landing-hero-actions{flex-direction:column;align-items:stretch}.landing-primary-btn,.landing-outline-btn,.landing-install-btn{width:100%;justify-content:center}.landing-phone-group{width:min(100%,340px);gap:10px}.landing-phone-shell-secondary{transform:translateY(16px)}.landing-install-card{padding:28px 24px;border-radius:24px}.landing-feature-grid{grid-template-columns:1fr}.landing-feature-card:nth-child(n){grid-column:span 1}.landing-footer-columns{grid-template-columns:1fr;gap:24px}.landing-stats-grid{grid-template-columns:1fr}.landing-stat-item:after{display:none}.landing-stat-item{padding:32px 24px;border-bottom:1px solid rgba(26,58,42,.08)}.landing-stat-item:last-child{border-bottom:none}}.landing-legal-dialog{position:fixed;top:0;right:0;bottom:0;left:0;margin:auto;width:min(680px,calc(100vw - 32px));max-height:calc(100vh - 64px);border:0;border-radius:24px;padding:0;background:#fff;box-shadow:0 32px 80px #0003,0 0 0 1px #1a3a2a0f;overflow:hidden;display:flex;flex-direction:column}.landing-legal-dialog::backdrop{background:#0f221880;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.landing-legal-inner{display:flex;flex-direction:column;overflow:hidden;max-height:calc(100vh - 64px)}.landing-legal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px 20px;border-bottom:1px solid #ece8e0;flex-shrink:0}.landing-legal-header h2{margin:0;color:#1a3a2a;font:700 18px/1.3 "Noto Serif KR",serif}.landing-legal-close{border:0;background:transparent;padding:6px;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;align-items:center;transition:background .15s ease,color .15s ease}.landing-legal-close:hover{background:#f4f1ea;color:#1a3a2a}.landing-legal-body{padding:24px 28px 32px;overflow-y:auto;flex:1}.landing-legal-section-label{margin:0 0 16px;color:#6b7280;font:600 11px/1.4 Noto Sans KR,sans-serif;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #ece8e0;padding-bottom:10px}.landing-legal-dl{margin:0;display:grid;gap:0;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.landing-legal-dl div{display:grid;grid-template-columns:148px 1fr;gap:0;border-bottom:1px solid #e5e7eb}.landing-legal-dl div:last-child{border-bottom:0}.landing-legal-dl dt{margin:0;padding:14px 16px;background:#f9fafb;color:#374151;font:500 13px/1.5 Noto Sans KR,sans-serif;border-right:1px solid #e5e7eb}.landing-legal-dl dd{margin:0;padding:14px 16px;color:#111827;font:400 13px/1.6 Noto Sans KR,sans-serif}.landing-legal-dl a{color:#1a3a2a;text-decoration:underline;text-underline-offset:2px}.landing-legal-text h3{margin:20px 0 8px;color:#1a3a2a;font:700 14px/1.4 Noto Sans KR,sans-serif}.landing-legal-text h3:first-of-type{margin-top:0}.landing-legal-text p,.landing-legal-text ul{margin:0 0 10px;color:#374151;font:400 13px/1.7 Noto Sans KR,sans-serif}.landing-legal-text ul{padding-left:20px}.landing-legal-text li{margin-bottom:4px}.landing-legal-updated{margin:0 0 20px;color:#9ca3af;font:400 12px/1.5 Noto Sans KR,sans-serif!important}.landing-legal-contact{margin-top:24px;padding-top:16px;border-top:1px solid #e5e7eb;color:#6b7280!important}.landing-legal-contact a{color:#1a3a2a;text-decoration:underline}@media(max-width:640px){.landing-legal-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 32px);border-radius:16px}.landing-legal-header{padding:18px 20px 16px}.landing-legal-body{padding:18px 20px 28px}.landing-legal-dl div{grid-template-columns:120px 1fr}}
