.global-search{z-index:40;width:min(560px,100%);margin-inline:auto;position:relative}.global-search-field{border:1px solid var(--color-border);background:#ffffffeb;border-radius:14px;align-items:center;gap:10px;min-height:44px;padding:0 12px 0 14px;transition:border-color .16s,box-shadow .16s,background .16s;display:flex;box-shadow:0 8px 24px #5839300f}.global-search-field.is-open,.global-search-field:focus-within{border-color:var(--color-brand);background:#fff;box-shadow:0 0 0 4px #a45f551a}.global-search-field>svg{width:18px;min-width:18px;color:var(--color-brand)}.global-search-field input{width:100%;min-width:0;color:var(--color-ink);background:0 0;border:0;outline:0;font-size:.86rem}.global-search-field input::-webkit-search-cancel-button{display:none}.global-search-field input::placeholder{color:#978b86}.global-search-field kbd{border:1px solid var(--color-border);min-width:max-content;color:var(--color-muted);background:#faf6f3;border-bottom-width:2px;border-radius:7px;padding:4px 7px;font-family:inherit;font-size:.64rem;font-weight:700}.global-search-clear{width:30px;min-width:30px;height:30px;color:var(--color-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.global-search-clear:hover{color:var(--color-brand-dark);background:#f7eae7}.global-search-clear svg{width:16px}.global-search-panel{border:1px solid var(--color-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffffa;border-radius:18px;max-height:min(540px,100vh - 120px);padding:10px;position:absolute;top:calc(100% + 10px);left:0;right:0;overflow-y:auto;box-shadow:0 24px 70px #31282533}.global-search-section+.global-search-section{border-top:1px solid var(--color-border);margin-top:8px;padding-top:8px}.global-search-section-label{color:var(--color-muted);letter-spacing:.09em;text-transform:uppercase;padding:7px 10px 6px;font-size:.67rem;font-weight:800;display:block}.global-search-result{width:100%;min-height:58px;color:var(--color-ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:11px;padding:9px 10px;display:flex}.global-search-result:hover,.global-search-result.is-active{background:#fbf2ef}.global-search-result-icon{width:38px;min-width:38px;height:38px;color:var(--color-brand);background:#f5e5e1;border-radius:11px;place-items:center;display:grid}.global-search-result-icon svg{width:18px}.global-search-result-copy{flex:1;min-width:0}.global-search-result-copy strong,.global-search-result-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.global-search-result-copy strong{font-size:.84rem}.global-search-result-copy small{color:var(--color-muted);margin-top:3px;font-size:.7rem}.global-search-result>svg{color:#a99c97;width:16px;min-width:16px}.global-search-empty{color:var(--color-muted);align-items:flex-start;gap:12px;padding:18px 14px;display:flex}.global-search-empty>svg{width:20px;min-width:20px;color:var(--color-brand)}.global-search-empty strong,.global-search-empty span{display:block}.global-search-empty strong{color:var(--color-ink);font-size:.83rem}.global-search-empty span{margin-top:4px;font-size:.74rem;line-height:1.45}.global-search-loading,.global-search-note,.global-search-error{border-radius:10px;margin:4px 8px;padding:10px 12px;font-size:.74rem}.global-search-loading,.global-search-note{color:var(--color-muted);background:#faf6f3}.global-search-error{color:var(--color-danger);background:#fff0ef}.app-topbar .topbar-title{flex:0 250px}.app-topbar .topbar-actions{margin-left:0}@media (max-width:980px){.global-search{width:min(420px,100%)}.global-search-field kbd{display:none}}@media (max-width:760px){.app-topbar{flex-wrap:wrap;row-gap:10px;height:auto;min-height:72px;padding-block:10px}.app-topbar .topbar-title{flex:1}.global-search{flex-basis:100%;order:4;width:100%;max-width:none}.global-search-panel{z-index:80;max-height:calc(100vh - 144px);position:fixed;top:128px;left:12px;right:12px}}@media (max-width:420px){.global-search-field{min-height:42px}.global-search-field input{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.global-search-field,.global-search-result{transition-duration:.01ms}}.notification-button{position:relative;overflow:visible!important}.notification-button .notification-dot{border:2px solid var(--surface,#fff);color:#fff;letter-spacing:-.02em;z-index:3;background:#a94f45;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 6px;font-size:.7rem;font-weight:900;line-height:1;display:grid;position:absolute;top:-8px;right:-9px;box-shadow:0 3px 10px #5b3a344d}.notifications-page{gap:18px}.notifications-hero,.notifications-toolbar,.notifications-list-card{padding:22px}.notifications-hero{justify-content:space-between;align-items:center;gap:18px;display:flex}.notifications-hero>svg{width:38px;height:38px}.notifications-toolbar{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.notifications-toolbar label{gap:6px;min-width:160px;display:grid}.notifications-toolbar label span{font-size:.82rem;font-weight:700}.notifications-toolbar input{min-height:42px}.notifications-toolbar .toolbar-spacer{flex:1}.notifications-list{gap:10px;display:grid}.notification-row{border:1px solid var(--border-color);background:var(--surface);border-radius:16px;grid-template-columns:auto 1fr auto;align-items:start;gap:14px;padding:16px;display:grid}.notification-row.is-unread{box-shadow:inset 4px 0 0 var(--accent-color)}.notification-icon{background:var(--surface-muted);border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.notification-copy{gap:5px;display:grid}.notification-copy strong{font-size:.98rem}.notification-copy p{color:var(--text-muted);margin:0;line-height:1.45}.notification-meta{color:var(--text-muted);font-size:.78rem}.notification-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.notifications-empty{text-align:center;color:var(--text-muted);place-items:center;gap:8px;padding:36px;display:grid}.whatsapp-notifications-card{background:linear-gradient(180deg, #a45f5508, transparent 140px), var(--surface);border-color:#a45f5529}.whatsapp-notifications-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.whatsapp-notifications-heading h3,.whatsapp-notifications-heading p{margin:0}.whatsapp-notifications-heading h3{margin-top:4px;font-size:1.25rem}.whatsapp-notifications-heading p{color:var(--text-muted);margin-top:5px;font-size:.86rem}.whatsapp-notifications-heading>svg{width:30px;height:30px;color:var(--accent-color)}.whatsapp-notification-row{transition:border-color var(--motion-ui,.18s) var(--ease-ui,cubic-bezier(.2, 0, 0, 1)), box-shadow var(--motion-ui,.18s) var(--ease-ui,cubic-bezier(.2, 0, 0, 1)), transform var(--motion-ui,.18s) var(--ease-ui,cubic-bezier(.2, 0, 0, 1))}.whatsapp-notification-icon{color:var(--accent-color);background:#a45f5514}@media (hover:hover) and (pointer:fine){.whatsapp-notification-row:hover{border-color:#a45f5540;transform:translateY(-1px);box-shadow:0 10px 28px #482d280f}}.whatsapp-notifications-empty{background:#ffffff8c;border:1px dashed #a45f5533;border-radius:16px;min-height:150px}@media (max-width:760px){.notification-row{grid-template-columns:auto 1fr}.notification-actions{grid-column:1/-1;justify-content:stretch}.notification-actions a,.notification-actions button{flex:1}.notifications-toolbar{grid-template-columns:1fr 1fr;display:grid}.notifications-toolbar .toolbar-spacer{display:none}.notifications-toolbar>button{grid-column:1/-1}}@media (max-width:520px){.notification-button .notification-dot{min-width:21px;height:21px;padding:0 5px;font-size:.66rem;top:-7px;right:-7px}.notifications-toolbar{grid-template-columns:1fr}.notifications-toolbar>button{grid-column:auto}.notification-row{grid-template-columns:1fr}.notification-icon,.whatsapp-notifications-heading>svg{display:none}}.app-shell{background:var(--color-cream);min-height:100vh}.app-sidebar{z-index:30;width:var(--sidebar-width);background:#fff;border-right:1px solid #ded0c9;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-brand{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;min-height:102px;padding:16px 18px;display:flex}.sidebar-brand img{object-fit:cover;border-radius:15px;width:60px;height:60px}.sidebar-brand div{min-width:0}.sidebar-brand strong,.sidebar-brand span{display:block}.sidebar-brand strong{font-family:Playfair Display,Georgia,serif;font-size:1rem}.sidebar-brand span{color:var(--color-muted);margin-top:2px;font-size:.69rem;line-height:1.35}.sidebar-close{margin-left:auto;display:none}.sidebar-navigation{flex:1;min-height:0;padding:18px 12px;overflow:auto}.sidebar-link,.navigation-group-trigger{color:#625753;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:46px;padding:10px 13px;font-size:.88rem;font-weight:600;display:flex}.sidebar-link:hover,.navigation-group-trigger:hover{color:var(--color-brand-dark);background:#fbf4f2}.sidebar-link.is-active{color:var(--color-brand-dark);background:#f5e5e1}.sidebar-link svg,.navigation-group-trigger svg{width:19px;min-width:19px;height:19px}.dashboard-link{margin-bottom:14px}.navigation-groups{gap:5px;display:grid}.navigation-group-trigger .group-chevron{width:16px;margin-left:auto;transition:transform .16s}.navigation-group.is-expanded .group-chevron{transform:rotate(180deg)}.navigation-group-items{gap:3px;margin:4px 0 8px;padding-left:12px;display:grid}.navigation-group-items[hidden]{display:none}.sidebar-sublink{min-height:40px;padding-left:15px;font-size:.8rem}.sidebar-sublink svg{width:16px;height:16px}.sidebar-profile{border-top:1px solid var(--color-border);align-items:center;gap:10px;min-height:82px;padding:13px 14px;display:flex}.profile-avatar{color:#fff;background:var(--color-brand);border-radius:13px;place-items:center;width:42px;min-width:42px;height:42px;font-size:.82rem;font-weight:700;display:grid}.profile-copy{flex:1;min-width:0}.profile-copy strong,.profile-copy span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.profile-copy strong{font-size:.82rem}.profile-copy span{color:var(--color-muted);margin-top:2px;font-size:.7rem}.app-workspace{min-height:100vh;margin-left:var(--sidebar-width)}.app-topbar{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8f4f0eb;border-bottom:1px solid #ded0c9cc;align-items:center;gap:16px;height:84px;padding:0 clamp(20px,3vw,42px);display:flex;position:sticky;top:0}.topbar-title{flex:1;min-width:0}.topbar-title>span{color:var(--color-muted);letter-spacing:.11em;text-transform:uppercase;font-size:.68rem;font-weight:700;display:block}.topbar-title h1{text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-family:Playfair Display,Georgia,serif;font-size:1.45rem;overflow:hidden}.topbar-actions{align-items:center;gap:10px;display:flex}.connection-status,.role-badge{border-radius:999px;align-items:center;gap:7px;min-height:34px;padding:0 11px;font-size:.7rem;font-weight:700;display:inline-flex}.connection-status{color:var(--color-success);background:#eaf6f0}.connection-status.is-offline{color:var(--color-warning);background:#fff3dc}.connection-status svg{width:15px}.role-badge{color:var(--color-brand-dark);background:#f3e4e0}.notification-button{position:relative}.notification-dot{background:var(--color-danger);border:2px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:8px;right:8px}.offline-banner{color:#754c10;background:#fff8e7;border:1px solid #edd8ac;margin:16px clamp(20px,3vw,42px) 0}.offline-banner strong,.offline-banner span{display:block}.offline-banner span{margin-top:3px;font-size:.8rem}.app-main{padding:clamp(22px,3vw,42px)}@media (max-width:1100px){.app-sidebar{width:270px;transition:transform .2s;transform:translate(-100%);box-shadow:20px 0 50px #2e1d1829}.app-sidebar.is-open{transform:translate(0)}.sidebar-close,.menu-button{display:inline-grid}.app-workspace{margin-left:0}}@media (max-width:700px){.app-topbar{height:72px;padding-inline:14px}.topbar-title>span,.connection-status span,.role-badge{display:none}.topbar-title h1{font-size:1.16rem}.connection-status{justify-content:center;width:38px;min-height:38px;padding:0}.app-main{padding:18px 14px 30px}.offline-banner{margin:12px 14px 0}}.app-sidebar{visibility:hidden;pointer-events:none;transition:transform .22s cubic-bezier(.22,1,.36,1),visibility 0s linear .22s;transform:translate(-100%)}.app-sidebar.is-open{visibility:visible;pointer-events:auto;transition-delay:0s;transform:translate(0)}.app-workspace{margin-left:0;transition:margin-left .22s cubic-bezier(.22,1,.36,1)}.menu-button{display:inline-grid}.sidebar-brand>div{flex:1}.sidebar-backdrop{z-index:25;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer;background:#31282561;border:0;padding:0;position:fixed;inset:0}@media (min-width:1101px){.app-shell.is-sidebar-open .app-workspace{margin-left:var(--sidebar-width)}.app-sidebar.is-open{box-shadow:none}.sidebar-backdrop{display:none}}@media (max-width:1100px){.app-sidebar{width:min(300px,88vw)}.app-workspace,.app-shell.is-sidebar-open .app-workspace{margin-left:0}}@media (prefers-reduced-motion:reduce){.app-sidebar,.app-workspace{transition-duration:.01ms}}.route-recovery{background:var(--color-surface,#f7f4f3);place-items:center;min-height:100dvh;padding:24px;display:grid}.route-recovery-card{text-align:center;gap:14px;width:min(100%,560px);display:grid}.route-recovery-card h1{color:var(--color-ink);margin:0}.route-recovery-card p{color:var(--color-muted);margin:0}.route-recovery-actions{justify-content:center;gap:10px;margin-top:8px;display:flex}@media (max-width:620px){.route-recovery{padding:16px}.route-recovery-actions{display:grid}.route-recovery-actions button{width:100%}}:root{color:#312825;font-synthesis:none;text-rendering:optimizelegibility;--color-brand:#a45f55;--color-brand-dark:#77443e;--color-brand-soft:#ecd8d3;--color-ink:#312825;--color-muted:#766b67;--color-border:#e8ded8;--color-cream:#f8f4f0;--color-surface:#fff;--color-success:#28795d;--color-warning:#9a6417;--color-danger:#a43d36;--shadow-card:0 18px 48px #58393014;--radius-large:24px;--radius-medium:16px;--sidebar-width:286px;background:#f8f4f0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--color-cream);min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--color-ink)}h2,h3{font-family:Playfair Display,Georgia,serif}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon-button{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:13px;place-items:center;width:42px;height:42px;padding:0;transition:border-color .16s,background .16s,transform .16s;display:inline-grid}.icon-button:hover{border-color:var(--color-brand-soft);background:#fff9f7}.icon-button:active{transform:scale(.97)}.icon-button svg{width:19px;height:19px}.primary-button{color:#fff;background:var(--color-brand);cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 22px;font-weight:700;transition:background .16s,transform .16s,box-shadow .16s;display:inline-flex;box-shadow:0 10px 24px #a45f553d}.primary-button:hover:not(:disabled){background:var(--color-brand-dark);transform:translateY(-1px);box-shadow:0 12px 28px #77443e47}.primary-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.primary-button svg{width:19px}.text-button{color:var(--color-brand-dark);cursor:pointer;background:0 0;border:0;padding:8px;font-weight:700}.text-button:disabled{opacity:.45;cursor:not-allowed}.eyebrow{color:var(--color-brand);letter-spacing:.13em;text-transform:uppercase;margin-bottom:8px;font-size:.73rem;font-weight:700;display:block}.full-page-loader{min-height:100vh;color:var(--color-muted);background:var(--color-cream);justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--color-brand-soft);border-top-color:var(--color-brand);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-page{background:var(--color-surface);grid-template-columns:minmax(360px,.9fr) minmax(480px,1.1fr);min-height:100vh;display:grid}.login-brand-panel{color:#fff;background:linear-gradient(155deg,#502a254d,#502a25e0),linear-gradient(135deg,#c89488,#7f4942);flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(36px,5vw,76px);display:flex;position:relative;overflow:hidden}.login-brand-panel:after{content:"";border:1px solid #ffffff38;border-radius:50%;width:440px;height:440px;position:absolute;bottom:-180px;right:-140px;box-shadow:0 0 0 60px #ffffff0a,0 0 0 120px #ffffff08}.login-brand,.login-brand-panel blockquote{z-index:1;position:relative}.login-brand img{border-radius:22px;width:min(270px,74%);box-shadow:0 18px 42px #391e1938}.login-brand p{letter-spacing:.12em;text-transform:uppercase;margin-top:24px;font-size:.78rem}.login-brand-panel blockquote{max-width:520px;margin:80px 0 0;font-family:Playfair Display,Georgia,serif;font-size:clamp(1.45rem,2.3vw,2.4rem);line-height:1.35}.login-form-panel{background:radial-gradient(circle at 80% 10%,#ecd8d380,#0000 30%),#fff;place-items:center;padding:32px;display:grid}.login-card{width:min(440px,100%)}.login-heading{margin-bottom:32px}.login-heading>span{color:var(--color-brand);letter-spacing:.13em;text-transform:uppercase;font-size:.75rem;font-weight:700}.login-heading h1{margin:8px 0 10px;font-family:Playfair Display,Georgia,serif;font-size:clamp(2.3rem,5vw,3.6rem)}.login-heading p,.login-help{color:var(--color-muted)}.login-card form{gap:18px;display:grid}.login-card label>span{margin-bottom:8px;font-size:.83rem;font-weight:700;display:block}.field-with-icon{border:1px solid var(--color-border);background:#fff;border-radius:14px;align-items:center;gap:12px;min-height:52px;padding:0 16px;transition:border-color .16s,box-shadow .16s;display:flex}.field-with-icon:focus-within{border-color:var(--color-brand);box-shadow:0 0 0 4px #a45f551a}.field-with-icon svg{width:19px;color:var(--color-brand)}.field-with-icon input{width:100%;min-width:0;color:var(--color-ink);background:0 0;border:0;outline:0}.configuration-alert,.offline-banner,.security-note{border-radius:14px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.configuration-alert{color:#754c10;background:#fff8e7;border:1px solid #edd8ac;margin-bottom:24px}.configuration-alert svg,.offline-banner svg,.security-note svg{width:20px;min-width:20px;margin-top:1px}.configuration-alert strong,.configuration-alert span{display:block}.configuration-alert span{margin-top:3px;font-size:.83rem}.form-message{border-radius:10px;margin:-4px 0 0;padding:11px 13px;font-size:.86rem}.form-message.is-error{color:var(--color-danger);background:#fff0ef}.form-message.is-success{color:var(--color-success);background:#edf8f3}.login-help{text-align:center;margin:28px 0 0;font-size:.82rem}.page-stack{gap:22px;display:grid}.welcome-card{border-radius:var(--radius-large);color:#fff;min-height:190px;box-shadow:var(--shadow-card);background:radial-gradient(circle at 90% 30%,#ffffff26,#0000 30%),linear-gradient(130deg,#a45f55,#73413b);justify-content:space-between;align-items:center;gap:30px;padding:clamp(26px,4vw,46px);display:flex;overflow:hidden}.welcome-card h2{color:#fff;margin-bottom:10px;font-size:clamp(2rem,4vw,3.2rem)}.welcome-card p{color:#ffffffd1;max-width:640px;margin-bottom:0}.welcome-card .eyebrow{color:#f5dcd7}.welcome-mark{color:#fffc;border:1px solid #ffffff40;border-radius:50%;place-items:center;width:130px;min-width:130px;height:130px;font-family:Playfair Display,Georgia,serif;font-size:2.8rem;display:grid;box-shadow:0 0 0 18px #ffffff0d,0 0 0 36px #ffffff08}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.metric-card,.content-card{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);box-shadow:var(--shadow-card)}.metric-card{padding:20px;display:grid}.metric-icon{width:42px;height:42px;color:var(--color-brand);background:#f7eae7;border-radius:13px;place-items:center;margin-bottom:22px;display:grid}.metric-icon svg{width:21px}.metric-card>span{color:var(--color-muted);font-size:.82rem;font-weight:600}.metric-card strong{margin:4px 0;font-family:Playfair Display,Georgia,serif;font-size:2rem}.metric-card small{color:#998d88;line-height:1.45}.dashboard-columns{grid-template-columns:1.4fr .8fr;gap:18px;display:grid}.content-card{padding:clamp(22px,3vw,30px)}.content-card h2,.content-card h3{margin-bottom:10px}.content-card p{color:var(--color-muted);line-height:1.65}.card-heading{justify-content:space-between;gap:20px;display:flex}.card-heading>svg{width:30px;height:30px;color:var(--color-brand)}.feature-list{gap:10px;margin:20px 0 0;padding:0;list-style:none;display:grid}.feature-list li{color:#554b47;padding-left:22px;font-size:.9rem;position:relative}.feature-list li:before{background:var(--color-brand);content:"";border-radius:50%;width:7px;height:7px;position:absolute;top:.55em;left:0}.muted-card{background:#f0e4df}.admission-hero{align-items:center;gap:clamp(24px,5vw,54px);display:flex}.admission-hero img{object-fit:contain;border-radius:50%;width:150px;height:150px}.signature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.signature-card>svg{width:30px;height:30px;color:var(--color-brand);margin-bottom:24px}.signature-card>span{color:var(--color-brand);letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;font-weight:700}.signature-card h3{margin:6px 0;font-size:1.55rem}.security-note{color:#285e4b;background:#eff8f3;border:1px solid #d6e8df}.security-note p{margin:0;line-height:1.55}.empty-state{text-align:center;align-content:center;place-items:center;min-height:420px;display:grid}.empty-state-icon{width:66px;height:66px;color:var(--color-brand);background:#f6e8e5;border-radius:20px;place-items:center;margin-bottom:18px;display:grid}.empty-state h2{margin-bottom:8px}.empty-state p{max-width:560px}.not-found-page{text-align:center;align-content:center;place-items:center;min-height:100vh;padding:30px;display:grid}.not-found-page>span{color:var(--color-brand);font-family:Playfair Display,Georgia,serif;font-size:5rem}.not-found-page .primary-button{margin-top:12px}.data-freshness{color:var(--color-success);align-items:center;gap:7px;margin:0;font-size:.78rem;font-weight:600;display:inline-flex}.data-freshness.is-cached{color:var(--color-warning)}.data-freshness svg{width:16px}@media (max-width:960px){.login-page{grid-template-columns:1fr}.login-brand-panel{min-height:auto;padding:28px}.login-brand{align-items:center;gap:20px;display:flex}.login-brand img{width:112px}.login-brand p{margin:0}.login-brand-panel blockquote{display:none}.login-form-panel{min-height:calc(100vh - 168px);padding:36px 24px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-columns{grid-template-columns:1fr}}@media (max-width:620px){.login-brand{flex-direction:column;align-items:flex-start}.login-brand p{font-size:.67rem}.welcome-card{min-height:170px}.welcome-mark{display:none}.metric-grid,.signature-grid{grid-template-columns:1fr}.admission-hero{flex-direction:column;align-items:flex-start}.admission-hero img{width:112px;height:112px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:900px){.login-page{grid-template-rows:auto 1fr;grid-template-columns:1fr;min-height:100dvh}.login-brand-panel{min-height:auto;padding:18px 24px 16px}.login-brand{justify-content:space-between;align-items:center;gap:20px;display:flex}.login-brand img{border-radius:18px;width:118px;max-width:34vw}.login-brand p{max-width:360px;margin:0;font-size:.7rem;line-height:1.5}.login-brand-panel blockquote{display:none}.login-form-panel{min-height:auto;padding:22px 24px calc(20px + env(safe-area-inset-bottom));place-items:start center}.login-card{width:min(560px,100%)}.login-heading{margin-bottom:20px}.login-heading h1{margin:6px 0 8px;font-size:clamp(2.35rem,10vw,3.15rem)}.login-heading p{margin-bottom:0}.login-card form{gap:14px}.login-card label>span{margin-bottom:6px}.field-with-icon{min-height:50px}.login-card .security-note{padding:11px 13px}.login-card .text-button{padding:6px 8px}.login-help{margin-top:18px}}@media (max-width:900px) and (max-height:800px){.login-brand-panel{padding:11px 20px 10px}.login-brand img{border-radius:15px;width:88px;max-width:28vw}.login-brand p{font-size:.61rem;line-height:1.35}.login-form-panel{padding:14px 20px calc(12px + env(safe-area-inset-bottom))}.login-heading{margin-bottom:12px}.login-heading>span{font-size:.68rem}.login-heading h1{margin:3px 0 5px;font-size:2.15rem}.login-heading p{margin-bottom:0;font-size:.9rem;line-height:1.3}.login-card form{gap:10px}.login-card label>span{margin-bottom:4px;font-size:.78rem}.field-with-icon,.primary-button{min-height:45px}.login-card .security-note{padding:8px 11px}.login-card .text-button{padding:4px 8px}.login-help{margin-top:10px;font-size:.76rem}}.button-primary,.button-secondary,.button-danger{min-height:44px;font:inherit;cursor:pointer;border-radius:13px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:750;transition:transform .16s,box-shadow .16s,border-color .16s,background .16s;display:inline-flex}.button-primary{border:1px solid var(--color-brand);color:#fff;background:var(--color-brand);box-shadow:0 9px 22px #a45f5538}.button-secondary{border:1px solid var(--color-border);color:var(--color-ink);background:#fff;box-shadow:0 5px 14px #4a2d2712}.button-danger,.admission-delete-button{color:var(--color-danger);background:#fff8f7;border:1px solid #efc5c2}.button-primary:hover:not(:disabled),.button-secondary:hover:not(:disabled),.button-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 11px 24px #4a2d2724}.button-primary:focus-visible,.button-secondary:focus-visible,.button-danger:focus-visible,.icon-button:focus-visible{outline-offset:2px;outline:3px solid #a45f5538}.button-primary:disabled,.button-secondary:disabled,.button-danger:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.admission-document-actions,.admission-admin-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admission-admin-actions{justify-content:flex-end;margin-top:10px}button,input,select,textarea{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline-offset:3px;outline:3px solid #a45f5547}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--color-brand)}@media (prefers-contrast:more){button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline-width:4px;outline-color:var(--color-brand-dark)}}.login-brand img,.sidebar-brand img,.install-device-screen img{object-fit:contain;background:#fff;border:1px solid #ffffff59}.login-brand img{border-radius:28px}.sidebar-brand img{border-radius:19px}.install-device-screen img{border-radius:22px}.app-main .page-stack{gap:14px;min-width:0}.app-main .content-card{border-radius:17px;min-width:0;padding:clamp(15px,1.7vw,20px)}.app-main .content-card h2,.app-main .content-card h3{margin-bottom:6px}.app-main .content-card p{margin-bottom:0;line-height:1.45}.app-main .eyebrow{margin-bottom:4px;font-size:.68rem}.app-main input:not([type=checkbox]):not([type=radio]),.app-main select,.app-main textarea,.app-main table{max-width:100%}.app-main table th,.app-main table td{line-height:1.25}.app-main .form-alert{border-radius:11px;padding:10px 12px;font-size:.8rem}.app-main .clients-hero h2{font-size:clamp(1.65rem,2.7vw,2.25rem)}.app-main .clients-summary-grid{gap:10px}.app-main .clients-summary-card{min-height:82px;padding:12px 15px}.app-main .clients-summary-card svg{width:19px;height:19px;margin-bottom:8px}.app-main .clients-summary-card strong{font-size:1.4rem}.app-main .clients-toolbar{gap:9px;margin-bottom:12px}.app-main .clients-search-field,.app-main .clients-filter-field select{border-radius:11px;min-height:40px}.app-main .clients-table th,.app-main .clients-table td{padding:9px 8px}.app-main .payments-summary-grid{gap:9px}.app-main .payments-summary-grid article{border-radius:15px;gap:9px;padding:12px 13px}.app-main .payments-summary-icon{border-radius:10px;width:34px;height:34px}.app-main .payments-summary-grid strong{font-size:clamp(1.02rem,1.45vw,1.3rem)}.app-main .payment-form-card,.app-main .payments-list-card{gap:14px}.app-main .payment-form-grid{gap:11px}.app-main .payment-row{border-radius:13px;gap:10px;padding:11px 12px}.app-main .payment-row-icon{width:34px;height:34px}.app-main .payment-row-actions{padding-top:7px}.app-main .payments-list-heading{gap:12px}.app-main .payments-filters{grid-template-columns:minmax(230px,1fr) 145px;width:min(520px,100%)}.app-main .subscriptions-summary-grid{gap:9px}.app-main .subscriptions-summary-grid article{border-radius:15px;padding:12px 14px}.app-main .subscriptions-summary-grid strong{font-size:1.4rem}.app-main .subscription-form-card{gap:14px}.app-main .subscription-form-grid{gap:11px}.app-main .subscription-slot{border-radius:12px;padding:10px}.app-main .subscriptions-list{gap:7px}.app-main .subscription-row{border-radius:13px;gap:10px;padding:11px 12px}.app-main .subscription-credit-breakdown{min-width:112px;padding:8px 10px}.app-main .planned-lessons span{padding:5px 6px}.app-main .bookings-page{gap:13px}.app-main .bookings-date-card{gap:10px}.app-main .bookings-empty{min-height:135px}.app-main .booking-slot-card{gap:10px}.app-main .booking-row{border-radius:12px;gap:10px;padding:10px 11px}.app-main .booking-capacity{border-radius:11px;padding:7px 10px}.app-main .certificates-summary-grid{gap:9px}.app-main .certificates-summary-grid article{border-radius:14px;padding:12px 14px}.app-main .certificates-summary-grid strong{font-size:1.35rem}.app-main .certificate-form-card{gap:13px;padding:16px}.app-main .certificate-form-grid{gap:11px}.app-main .certificate-field textarea{min-height:72px}.app-main .certificate-form-actions .button-primary{min-width:180px}.app-main .certificates-list{gap:7px}.app-main .certificate-row{border-radius:12px;gap:10px;padding:10px 11px}.app-main .notifications-page{gap:13px}.app-main .notifications-hero,.app-main .notifications-toolbar,.app-main .notifications-list-card{padding:15px}.app-main .notifications-toolbar{gap:9px}.app-main .notifications-list{gap:7px}.app-main .notification-row{border-radius:12px;gap:10px;padding:11px}.app-main .notification-icon{width:32px;height:32px}.app-main .notifications-empty{padding:24px 16px}.app-main .exports-page{gap:13px}.app-main .exports-grid{gap:10px}.app-main .export-card{gap:11px}.app-main .export-card-featured{min-height:118px;padding:16px}.app-main .export-card-featured .export-card-icon{width:45px;height:45px}.app-main .export-card-icon{width:38px;height:38px}.app-main .export-card p{margin:5px 0}.app-main .operational-calendar-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.app-main .operational-calendar-grid>article{border:1px solid var(--color-border);background:#fff;border-radius:12px;min-width:0;padding:10px}.app-main .operational-calendar-grid>article>header{text-transform:capitalize;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:7px;display:flex}.app-main .operational-calendar-grid>article>header strong{font-size:.82rem}.app-main .operational-calendar-grid>article>header small{color:var(--color-muted);font-size:.65rem}.app-main .studio-override-card{gap:11px}.app-main .studio-closure-alert{border-radius:12px;padding:10px 12px}.app-main .studio-override-grid{grid-template-columns:minmax(150px,.9fr) minmax(185px,1.15fr) minmax(120px,.65fr) minmax(155px,.85fr) minmax(150px,1fr) auto;gap:8px}.app-main .studio-override-grid input:not([type=checkbox]),.app-main .studio-override-grid select,.app-main .studio-override-grid>button{min-height:40px}.app-main .membership-fees-page{min-width:0;overflow-x:hidden}.app-main .membership-fees-table-wrap{overflow-x:hidden!important}.app-main .membership-fees-table{table-layout:fixed;width:100%;min-width:0!important}.app-main .membership-fee-method{color:var(--color-muted);margin-top:3px;display:block}.app-main .membership-fee-receipt-link{color:var(--color-brand-dark);font:inherit;text-underline-offset:2px;cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;padding:0;font-size:.72rem;font-weight:800;text-decoration:underline}.app-main .accounting-page{min-width:0;overflow-x:hidden}.app-main .accounting-page>*,.app-main .accounting-content-grid>*{min-width:0}.app-main .accounting-table-wrap{width:100%;overflow-x:hidden!important}.app-main .accounting-table-wrap table{width:100%;table-layout:fixed!important;min-width:0!important}.app-main .accounting-table-wrap th,.app-main .accounting-table-wrap td{overflow-wrap:anywhere;padding:8px 6px}.app-main .accounting-breakdown,.app-main .accounting-period-card,.app-main .accounting-movements{padding:15px}.app-main .accounting-period-card{align-content:start}.app-main .admission-hero{padding:15px 18px}.app-main .admission-brand-image{transform-origin:50%;transform:scale(.88)}.app-main .admission-create-card{gap:12px;padding:16px 18px}.app-main .admission-workspace{gap:12px}.app-main .admission-data-grid{gap:8px}.app-main .admission-data-grid>div{padding:10px 12px}.app-main .admission-verification span,.app-main .admission-verification code{display:none}.app-main .admission-verification{padding:11px 13px}.app-main .waitlist-form-card,.app-main .waitlist-list-card{gap:13px}.app-main .waitlist-form-grid{gap:9px}.app-main .waitlist-row{padding:10px 12px}.app-main .waitlist-inline-note{color:var(--color-muted);font-size:.78rem}.app-main .dashboard-hero{min-height:0;padding:26px 32px}.app-main .dashboard-summary-grid,.app-main .dashboard-finance-grid{gap:10px}.app-main .dashboard-summary-card,.app-main .dashboard-finance-card{min-height:0;padding:15px 18px}.app-main .dashboard-empty-state{min-height:120px;padding:22px}.app-main .staff-page .content-card,.app-main .settings-page .content-card,.app-main .account-page .content-card{padding:16px 18px}.app-main .staff-form-card,.app-main .settings-form-card{gap:13px}.app-main .staff-row{padding:12px 14px}.app-main .account-page{gap:12px}.app-main .app-health-page{gap:13px}.app-main .app-health-page .content-card{padding:15px 17px}.app-main .supabase-deploy-procedure{gap:12px}.app-main .supabase-deploy-block{padding:0;overflow:hidden}.app-main .supabase-deploy-block>summary{cursor:pointer;padding:12px 14px;list-style:none}.app-main .supabase-deploy-block>summary::-webkit-details-marker{display:none}.app-main .supabase-deploy-steps{padding:0 14px 12px}.app-main .supabase-deploy-steps li{padding:10px 0}.app-main .install-page .content-card{padding:17px 20px}.app-main .install-page .install-hero{min-height:0}.app-main .install-page .install-steps,.app-main .play-store-steps{gap:9px}.app-main .play-store-step{padding:10px 0}@media (min-width:901px){.app-main .button-primary,.app-main .button-secondary,.app-main .action-button,.app-main input:not([type=checkbox]):not([type=radio]),.app-main select{min-height:40px}}@media (max-width:1180px){.app-main .studio-override-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.app-main .content-card{border-radius:15px;padding:15px}.app-main .page-stack{gap:12px}.app-main .operational-calendar-grid,.app-main .studio-override-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-main .accounting-table-wrap{overflow-x:auto!important}.app-main .accounting-table-wrap table{table-layout:auto!important;min-width:680px!important}}@media (max-width:560px){.app-main .content-card{padding:13px}.app-main .eyebrow{font-size:.65rem}.app-main .clients-summary-card,.app-main .subscriptions-summary-grid article,.app-main .payments-summary-grid article{min-height:0}.app-main .operational-calendar-grid,.app-main .studio-override-grid{grid-template-columns:1fr}.app-main .dashboard-hero{padding:20px 18px}}.password-visibility-button{width:36px;min-width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;padding:0;transition:color .16s,background .16s,transform .16s;display:grid}.password-visibility-button:hover:not(:disabled){color:var(--color-brand-dark);background:var(--color-brand-soft)}.password-visibility-button:active:not(:disabled){transform:scale(.96)}.password-visibility-button:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.password-visibility-button:disabled{opacity:.45;cursor:not-allowed}.field-with-icon .password-visibility-button svg{color:currentColor;width:19px;height:19px}.remember-password-option{cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;margin-top:-2px;display:grid!important}.remember-password-option>input{width:17px;height:17px;accent-color:var(--color-brand);margin:2px 0 0}.remember-password-option>span{gap:2px;display:grid}.remember-password-option strong{color:var(--color-text);font-size:.88rem}.remember-password-option small{color:var(--color-muted);font-size:.78rem;line-height:1.35}.client-access-heading strong.is-invited{color:#77501a}.client-access-card .secondary-button{justify-content:center;align-items:center;gap:9px;min-height:44px;display:inline-flex}.client-access-card .secondary-button svg{width:18px;height:18px}.client-access-feedback{border-radius:11px;padding:11px 13px;font-weight:650;margin:12px 0!important;font-size:.83rem!important}.client-access-feedback.is-success{color:#21684f;background:#e9f6f0}.client-access-feedback.is-error{color:var(--color-danger);background:#fff0ef}.payments-page .payment-row-actions{align-items:center;gap:10px}.payments-page .payment-row-actions .action-button{color:#554b47;min-height:38px;font:inherit;cursor:pointer;background:#fff;border:1px solid #ded4d0;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:.78rem;font-weight:800;line-height:1;transition:transform .16s,border-color .16s,background .16s,color .16s,box-shadow .16s;display:inline-flex;box-shadow:0 4px 12px #4a2d270d}.payments-page .payment-row-actions .action-button svg{stroke-width:2.15px;width:16px;height:16px}.payments-page .payment-row-actions .action-button:hover:not(:disabled){color:var(--color-brand-dark);background:#fdfaf9;border-color:#a45f5561;transform:translateY(-1px);box-shadow:0 8px 18px #4a2d2717}.payments-page .payment-row-actions .action-button:focus-visible{outline-offset:2px;outline:3px solid #a45f552e}.payments-page .payment-row-actions .action-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.payments-page .payment-row-actions .action-button.is-primary{color:var(--color-brand-dark);background:linear-gradient(#fbf1ef 0%,#f8e9e6 100%);border-color:#a45f556b;box-shadow:0 5px 14px #a45f551a}.payments-page .payment-row-actions .action-button.is-primary:hover:not(:disabled){border-color:var(--color-brand);background:var(--color-brand-faint);box-shadow:0 8px 18px #a45f5529}.payments-page .payment-row-actions .action-button.is-danger{color:var(--payment-danger);background:snow;border-color:#e6c4c1}.payments-page .payment-row-actions .action-button.is-danger:hover:not(:disabled){background:var(--payment-danger-soft);color:#843737;border-color:#d99e99}.payments-page .payment-row-actions .action-button:has(.lucide-download){color:#62556e;background:linear-gradient(#fbf9fd 0%,#f5f1f8 100%);border-color:#d6cbdc}.payments-page .payment-row-actions .action-button:has(.lucide-download):hover:not(:disabled){color:#51435d;background:#f1ebf5;border-color:#bdaec8;box-shadow:0 8px 18px #52435d1f}.payments-page .payment-row-actions .action-button:has(.lucide-rotate-ccw){color:#8b4747;background:linear-gradient(#fffdfd 0%,#fff7f6 100%);border-color:#e7c9c5}.payments-page .payment-row-actions .action-button:has(.lucide-rotate-ccw):hover:not(:disabled){color:#7d3636;background:#fff0ef;border-color:#d9aaa5;box-shadow:0 8px 18px #7d36361a}@media (max-width:620px){.payments-page .payment-row-actions .action-button{min-height:42px;padding-inline:12px}}@media (prefers-reduced-motion:reduce){.payments-page .payment-row-actions .action-button{transition:none}}.accounting-page{gap:16px}.accounting-page .accounting-hero{background:radial-gradient(circle at 94% 16%,#a45f551a,#0000 25%),linear-gradient(135deg,#fff 0%,#fbf4f1 100%);border-color:#a45f5524;padding:20px 22px;position:relative;overflow:hidden}.accounting-page .accounting-hero:after{content:"";pointer-events:none;border:28px solid #a45f550a;border-radius:50%;width:190px;height:190px;position:absolute;bottom:-76px;right:-30px}.accounting-page .accounting-hero-icon{background:linear-gradient(145deg,#f6e9e5 0%,#ead7d1 100%);border-radius:15px;width:48px;height:48px;box-shadow:inset 0 0 0 1px #a45f5514}.accounting-page .accounting-filters{background:#fdfbf9;border-color:#a45f551a;grid-template-columns:minmax(280px,1.15fr) minmax(250px,.95fr) minmax(220px,1fr) auto;gap:12px;width:100%;min-width:0;padding:16px 18px;overflow:visible}.accounting-page .accounting-filters>*,.accounting-page .accounting-date-fields,.accounting-page .accounting-search,.accounting-page .accounting-search>div{min-width:0}.accounting-page .accounting-export{width:max-content;min-width:112px;padding-inline:14px}.accounting-page .accounting-kpi-grid{gap:10px}.accounting-page .accounting-kpi-grid article{background:linear-gradient(145deg,#fff 0%,#fdfbf9 100%);border-color:#eadfd9;border-radius:16px;min-height:88px;padding:14px;position:relative;overflow:hidden;box-shadow:0 10px 22px #4930280d}.accounting-page .accounting-kpi-grid article:before{background:var(--color-brand);content:"";opacity:.75;border-radius:20px 0 0 20px;width:4px;position:absolute;inset:0 auto 0 0}.accounting-page .accounting-kpi-grid article:first-child:before,.accounting-page .accounting-kpi-grid article:nth-child(3):before{background:#3d9c6a}.accounting-page .accounting-kpi-grid article:nth-child(2):before{background:#c94b4b}.accounting-page .accounting-kpi-grid article:nth-child(4):before{background:#d99b2b}.accounting-page .accounting-kpi-grid article:nth-child(5):before{background:#7769a8}.accounting-page .accounting-kpi-grid article>span{flex-basis:36px;width:36px;height:36px}.accounting-page .accounting-kpi-grid strong{color:#342b28;font-size:clamp(1rem,1.3vw,1.25rem);line-height:1.08}.accounting-page .accounting-kpi-grid small{margin-top:3px;font-size:.68rem;font-weight:650}.accounting-page .accounting-content-grid{gap:12px}.accounting-page .accounting-content-grid>article,.accounting-page .accounting-movements{border-color:#eadfd9;border-radius:18px;box-shadow:0 10px 24px #4930280d}.accounting-page .accounting-breakdown,.accounting-page .accounting-period-card,.accounting-page .accounting-movements{padding:18px}.accounting-page .accounting-breakdown-list{gap:8px}.accounting-page .accounting-breakdown-list>div{border-bottom:1px solid #f0e7e3;padding:7px 0}.accounting-page .accounting-breakdown-list>div:last-child{border-bottom:0}.accounting-page .accounting-progress{background:#f3ebe7;height:6px}.accounting-page .accounting-table-wrap{width:100%;overflow-x:hidden}.accounting-page .accounting-table-wrap table{table-layout:fixed;width:100%;min-width:0}.accounting-page .accounting-table-wrap th,.accounting-page .accounting-table-wrap td{overflow-wrap:anywhere;padding:9px 7px}.accounting-page .accounting-table-wrap th:first-child{width:11%}.accounting-page .accounting-table-wrap th:nth-child(2){width:18%}.accounting-page .accounting-table-wrap th:nth-child(3){width:21%}.accounting-page .accounting-table-wrap th:nth-child(4){width:13%}.accounting-page .accounting-table-wrap th:nth-child(5),.accounting-page .accounting-table-wrap th:nth-child(6){width:12%}.accounting-page .accounting-table-wrap th:nth-child(7){width:13%}.accounting-page .accounting-table-wrap thead{background:#faf6f4}.accounting-page .accounting-table-wrap th{color:#75645e;letter-spacing:.04em;font-size:.62rem;font-weight:900}.accounting-page .accounting-table-wrap td{font-size:.73rem}.accounting-page .accounting-table-wrap tbody tr{transition:background .13s}.accounting-page .accounting-table-wrap tbody tr:hover{background:#fdf8f6}.accounting-page .accounting-amount{color:#3d302c;font-size:.76rem}.accounting-page .accounting-status{border:1px solid #0000;justify-content:center;min-width:0;padding:4px 6px;font-size:.62rem}.accounting-page .accounting-status.is-paid{border-color:#cfe9da}.accounting-page .accounting-status.is-pending{border-color:#f2ddad}.accounting-page .accounting-status.is-refunded,.accounting-page .accounting-status.is-cancelled{border-color:#efcfca}@media (max-width:1240px){.accounting-page .accounting-filters{grid-template-columns:minmax(300px,1fr) minmax(260px,.9fr) minmax(0,1fr)}.accounting-page .accounting-export{grid-column:3;width:100%}}@media (max-width:1100px){.accounting-page .accounting-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.accounting-page .accounting-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end}.accounting-page .accounting-preset-group{grid-column:1/-1}.accounting-page .accounting-date-fields{grid-column:1}.accounting-page .accounting-search{grid-column:2}.accounting-page .accounting-export{grid-column:1/-1;width:100%}}@media (max-width:820px){.accounting-page .accounting-table-wrap{overflow-x:auto}.accounting-page .accounting-table-wrap table{table-layout:auto;min-width:760px}.accounting-page .accounting-filters{grid-template-columns:1fr;padding:14px}.accounting-page .accounting-preset-group,.accounting-page .accounting-date-fields,.accounting-page .accounting-search,.accounting-page .accounting-export{grid-column:1}}@media (max-width:560px){.accounting-page .accounting-kpi-grid article{min-height:78px}.accounting-page .accounting-hero{padding:16px}.accounting-page .accounting-date-fields{grid-template-columns:1fr}.accounting-page .accounting-preset-group{grid-template-columns:repeat(3,minmax(0,1fr))}.accounting-page .accounting-preset-group button{padding-inline:6px;font-size:.7rem}}.membership-fees-page{gap:16px}.membership-fees-page .membership-fees-hero{background:radial-gradient(circle at 94% 18%,#a45f551a,#0000 25%),linear-gradient(135deg,#fff 0%,#fbf4f1 100%);border-color:#a45f5524;padding:20px 22px;position:relative;overflow:hidden}.membership-fees-page .membership-fees-hero:after{content:"";pointer-events:none;border:28px solid #a45f550a;border-radius:50%;width:190px;height:190px;position:absolute;bottom:-80px;right:-34px}.membership-fees-page .membership-fees-hero-icon{background:linear-gradient(145deg,#f6e9e5 0%,#ead7d1 100%);border-radius:15px;width:48px;height:48px;box-shadow:inset 0 0 0 1px #a45f5514}.membership-fees-page .membership-fees-kpis{gap:10px}.membership-fees-page .membership-fees-kpis article{background:linear-gradient(145deg,#fff 0%,#fdfbf9 100%);border-color:#eadfd9;border-radius:16px;gap:10px;min-height:82px;padding:13px 15px;position:relative;overflow:hidden;box-shadow:0 10px 22px #4930280d}.membership-fees-page .membership-fees-kpis article:before{content:"";border-radius:20px 0 0 20px;width:4px;position:absolute;inset:0 auto 0 0}.membership-fees-page .membership-fees-kpis article:first-child:before,.membership-fees-page .membership-fees-kpis article:nth-child(2):before{background:#3d9c6a}.membership-fees-page .membership-fees-kpis article:nth-child(3):before{background:#c94b4b}.membership-fees-page .membership-fees-kpis article:nth-child(4):before{background:var(--color-brand)}.membership-fees-page .membership-fees-kpis article>svg{background:#f8efed;border-radius:11px;width:34px;height:34px;padding:7px}.membership-fees-page .membership-fees-kpis article:first-child>svg,.membership-fees-page .membership-fees-kpis article:nth-child(2)>svg{color:#2f7650;background:#eaf6ef}.membership-fees-page .membership-fees-kpis article:nth-child(3)>svg{color:#a43d36;background:#fff0ee}.membership-fees-page .membership-fees-kpis strong{color:#342b28;font-size:clamp(1rem,1.35vw,1.22rem)}.membership-fees-page .membership-fees-kpis span{margin-top:2px;font-size:.72rem;font-weight:650}.membership-fees-page .membership-fees-toolbar{background:#fdfbf9;border-color:#a45f551a;grid-template-columns:150px minmax(260px,1fr) minmax(210px,auto);gap:12px;padding:16px 18px}.membership-fees-page .membership-fees-toolbar select,.membership-fees-page .membership-fees-toolbar input,.membership-fees-page .membership-fees-search>div{min-height:40px}.membership-fees-page .membership-fees-config{background:#fff;border:1px solid #eadfd9;border-radius:12px;align-content:center;min-height:52px;padding:7px 11px}.membership-fees-page .membership-fees-config>span,.membership-fees-page .membership-fees-config small{font-size:.72rem}.membership-fees-page .membership-fees-config strong{color:var(--color-brand-dark);font-size:.96rem}.membership-fees-page .membership-fees-table-card{border-color:#eadfd9;border-radius:18px;box-shadow:0 10px 24px #4930280d}.membership-fees-page .membership-fees-table-wrap{overflow-x:hidden}.membership-fees-page .membership-fees-table{table-layout:fixed;width:100%;min-width:0}.membership-fees-page .membership-fees-table th,.membership-fees-page .membership-fees-table td{overflow-wrap:anywhere;padding:9px 8px}.membership-fees-page .membership-fees-table th:first-child{width:15%}.membership-fees-page .membership-fees-table th:nth-child(2){width:12%}.membership-fees-page .membership-fees-table th:nth-child(3){width:10%}.membership-fees-page .membership-fees-table th:nth-child(4){width:16%}.membership-fees-page .membership-fees-table th:nth-child(5){width:13%}.membership-fees-page .membership-fees-table th:nth-child(6){width:20%}.membership-fees-page .membership-fees-table th:nth-child(7){width:14%}.membership-fees-page .membership-fees-table th{color:#75645e;letter-spacing:.035em;background:#faf6f4;font-size:.64rem;font-weight:900}.membership-fees-page .membership-fees-table td{font-size:.74rem}.membership-fees-page .membership-fees-table td small{font-size:.66rem}.membership-fees-page .membership-fees-table tbody tr{transition:background .13s}.membership-fees-page .membership-fees-table tbody tr:hover{background:#fdf8f6}.membership-fees-page .membership-fee-status{border:1px solid #0000;justify-content:center;min-width:0;padding:4px 7px;font-size:.66rem}.membership-fees-page .membership-fee-status.is-paid{border-color:#cfe9da}.membership-fees-page .membership-fee-status.is-pending{border-color:#f2ddad}.membership-fees-page .membership-fee-status.is-cancelled,.membership-fees-page .membership-fee-status.is-refunded{color:#a43d36;background:#fff0ee;border-color:#efcfca}@media (max-width:980px){.membership-fees-page .membership-fees-toolbar{grid-template-columns:140px minmax(0,1fr)}.membership-fees-page .membership-fees-config{grid-column:1/-1}.membership-fees-page .membership-fees-table-wrap{overflow-x:auto}.membership-fees-page .membership-fees-table{table-layout:auto;min-width:760px}}@media (max-width:680px){.membership-fees-page .membership-fees-hero{padding:16px}.membership-fees-page .membership-fees-kpis article{min-height:74px}.membership-fees-page .membership-fees-toolbar{grid-template-columns:1fr}.membership-fees-page .membership-fees-config{grid-column:auto}}.subscriptions-summary-grid article{align-content:center;min-width:0;min-height:108px;padding:16px 18px}.subscriptions-summary-grid strong{min-width:0;font-size:clamp(1.45rem,2vw,1.8rem);line-height:1.05}.subscriptions-summary-grid span{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;min-width:0;font-size:.8rem;line-height:1.3;overflow:visible}.subscription-row{grid-template-columns:auto minmax(280px,1fr) minmax(150px,auto) auto}.subscription-main{min-width:0}.subscription-main>strong,.subscription-main>span,.subscription-main>small,.subscription-credit-breakdown span,.subscription-credit-breakdown strong{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;min-width:0;overflow:visible}.subscription-credit-breakdown{min-width:150px}.subscription-state{white-space:normal;text-align:center;max-width:100%;line-height:1.2}@media (max-width:1180px){.subscriptions-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.subscription-row{grid-template-columns:auto minmax(0,1fr) auto}.subscription-credit-breakdown{grid-column:2}}@media (max-width:700px){.subscriptions-summary-grid article{min-height:96px;padding:14px 16px}.subscriptions-summary-grid span{font-size:.77rem}}@media (max-width:540px){.subscriptions-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.subscriptions-summary-grid article{min-height:92px;padding:13px 14px}.subscriptions-summary-grid strong{font-size:1.45rem}.subscription-row{grid-template-columns:auto minmax(0,1fr)}.subscription-state{grid-column:1/-1;justify-self:start}}:root{--motion-instant:.1s;--motion-fast:.14s;--motion-ui:.18s;--motion-control:.22s;--motion-panel:.28s;--motion-page:.34s;--motion-hero:.42s;--ease-standard:cubic-bezier(.22, 1, .36, 1);--ease-ui:cubic-bezier(.2, 0, 0, 1);--ease-layout:cubic-bezier(.16, 1, .3, 1);--ease-exit:cubic-bezier(.4, 0, 1, 1)}.route-motion{animation:route-enter var(--motion-page) var(--ease-standard) both}@keyframes route-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}[data-motion-reveal=true]{opacity:0;transition:opacity .32s var(--ease-standard), transform .32s var(--ease-standard);will-change:opacity, transform;transform:translateY(10px)}[data-motion-reveal=true][data-motion-visible=true]{opacity:1;transform:translateY(0)}.content-card,.metric-card,.subscription-row,.accounting-kpi-grid article{transition:border-color var(--motion-ui) var(--ease-ui), box-shadow var(--motion-ui) var(--ease-ui), background-color var(--motion-ui) var(--ease-ui)}.metric-card,.admission-list-item,.subscription-row,button[class*=card]{transition:transform var(--motion-ui) var(--ease-ui), border-color var(--motion-ui) var(--ease-ui), box-shadow var(--motion-ui) var(--ease-ui), background-color var(--motion-ui) var(--ease-ui)}@media (hover:hover) and (pointer:fine){.metric-card:hover,.admission-list-item:hover,.subscription-row:hover,button[class*=card]:hover{transform:translateY(-2px)}.content-card:hover{border-color:color-mix(in srgb, var(--color-brand-soft) 68%, var(--color-border));box-shadow:0 20px 50px #5839301a}}.metric-card:active,.admission-list-item:active,button[class*=card]:active{transition-duration:var(--motion-instant);transform:scale(.992)}:where(.primary-button,.button-primary,.button-secondary,.button-danger,.action-button,.icon-button,.text-button,.navigation-group-trigger,.sidebar-link){transition:color var(--motion-ui) var(--ease-ui), background-color var(--motion-ui) var(--ease-ui), border-color var(--motion-ui) var(--ease-ui), box-shadow var(--motion-ui) var(--ease-ui), transform var(--motion-ui) var(--ease-ui), opacity var(--motion-fast) var(--ease-ui)}@media (hover:hover) and (pointer:fine){:where(.primary-button,.button-primary,.button-secondary,.action-button):hover:not(:disabled){transform:translateY(-1px)}:where(.primary-button,.button-primary,.button-secondary,.action-button):hover:not(:disabled) svg{transform:translate(1px)}.icon-button:hover:not(:disabled){transform:scale(1.035)}}:where(.primary-button,.button-primary,.button-secondary,.button-danger,.action-button):active:not(:disabled){transition-duration:var(--motion-instant);transform:scale(.985)}.icon-button:active:not(:disabled){transition-duration:var(--motion-instant);transform:scale(.96)}:where(.primary-button,.button-primary,.button-secondary,.button-danger,.action-button) svg{transition:transform var(--motion-ui) var(--ease-ui)}:where(input,select,textarea,.field-with-icon,.subscription-date-control,.accounting-search>div){transition:border-color var(--motion-ui) var(--ease-ui), box-shadow var(--motion-ui) var(--ease-ui), background-color var(--motion-ui) var(--ease-ui)}input[type=checkbox]{transition:transform var(--motion-fast) var(--ease-ui), background-color var(--motion-fast) var(--ease-ui), border-color var(--motion-fast) var(--ease-ui)}input[type=checkbox]:checked{transform:scale(1.035)}.form-alert,.form-message,.offline-banner{animation:feedback-enter var(--motion-control) var(--ease-standard) both}@keyframes feedback-enter{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.sidebar-backdrop{animation:backdrop-enter var(--motion-ui) var(--ease-ui) both}@keyframes backdrop-enter{0%{opacity:0}to{opacity:1}}.navigation-group-trigger .group-chevron{transition:transform var(--motion-control) var(--ease-layout)}.navigation-group-items:not([hidden]){animation:navigation-group-enter var(--motion-panel) var(--ease-layout) both;transform-origin:top}.navigation-group-items:not([hidden]) .sidebar-sublink{animation:navigation-item-enter var(--motion-control) var(--ease-standard) both}.navigation-group-items:not([hidden]) .sidebar-sublink:nth-child(2){animation-delay:24ms}.navigation-group-items:not([hidden]) .sidebar-sublink:nth-child(3){animation-delay:48ms}.navigation-group-items:not([hidden]) .sidebar-sublink:nth-child(4){animation-delay:72ms}.navigation-group-items:not([hidden]) .sidebar-sublink:nth-child(n+5){animation-delay:88ms}@keyframes navigation-group-enter{0%{opacity:0;transform:translateY(-4px)scaleY(.985)}to{opacity:1;transform:translateY(0)scaleY(1)}}@keyframes navigation-item-enter{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.sidebar-link.is-active{transition:color var(--motion-ui) var(--ease-ui), background-color var(--motion-ui) var(--ease-ui), box-shadow var(--motion-ui) var(--ease-ui)}.accounting-progress span{transition:width .5s var(--ease-standard)}progress::-webkit-progress-value{transition:width .5s var(--ease-standard)}:where(.status-pill,.subscription-state,.accounting-status,.connection-status,.role-badge){transition:color var(--motion-control) var(--ease-ui), background-color var(--motion-control) var(--ease-ui), border-color var(--motion-control) var(--ease-ui), transform var(--motion-control) var(--ease-standard)}.login-brand{animation:login-brand-enter var(--motion-hero) var(--ease-standard) both}.login-brand-panel blockquote{animation:login-copy-enter .38s var(--ease-standard) 90ms both}.login-card{animation:login-card-enter .38s var(--ease-standard) 60ms both}@keyframes login-brand-enter{0%{opacity:0;transform:scale(.975)}to{opacity:1;transform:scale(1)}}@keyframes login-copy-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes login-card-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}[data-motion-reveal=true]{opacity:1!important;transform:none!important}}
