:root{--bg:#f3f0e9;--surface:#fffdf9;--surface-soft:#f8f5ef;--surface-deep:#ebe5db;--ink:#1e2924;--muted:#525b57;--faint:#626b66;--line:#ded9cf;--line-soft:#eae5dd;--sage:#507064;--sage-deep:#344f45;--sage-soft:#dfe8e1;--clay:#b86f50;--clay-soft:#f0dfd5;--rose:#a76e68;--rose-soft:#f2e1df;--gold:#a77f3f;--gold-soft:#f1e7cf;--danger:#9c4f44;--success:#426c58;--shadow:0 16px 40px #302d250f;--shadow-raised:0 18px 44px #302d251a;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--motion-press:.12s;--motion-fast:.14s;--motion-page:.22s;--ease-standard:cubic-bezier(.2, .72, .2, 1);--font-sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:Iowan Old Style, Baskerville, "Times New Roman", serif}@keyframes spin{to{transform:rotate(360deg)}}*{box-sizing:border-box}html{scroll-behavior:smooth;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);min-height:100dvh;color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}::selection{background:var(--sage-soft);color:var(--sage-deep)}.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}.app-frame{min-height:100vh}.sidebar{z-index:20;border-right:1px solid var(--line);background:#ece8df;flex-direction:column;width:246px;padding:28px 20px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;padding:0 6px;display:flex}.brand-mark{background:var(--sage-deep);color:#fff;width:42px;height:42px;font-family:var(--font-display);border-radius:50%;flex:0 0 42px;place-items:center;font-size:24px;display:grid}.brand strong,.brand small{display:block}.brand strong{font-family:var(--font-display);letter-spacing:-.01em;font-size:17px;font-weight:600}.brand small{color:var(--muted);letter-spacing:.15em;text-transform:uppercase;margin-top:2px;font-size:13px}.sidebar-nav{gap:5px;margin-top:48px;display:grid}.nav-eyebrow,.eyebrow,.studio-kicker{color:var(--faint);letter-spacing:.17em;text-transform:uppercase;margin:0;font-size:13px;font-weight:700}.nav-eyebrow{padding:0 12px 10px}.nav-item{color:#5d6761;border-radius:11px;align-items:center;gap:12px;min-height:43px;padding:0 12px;font-size:15px;font-weight:570;transition:background .18s,color .18s,transform .18s;display:flex}.nav-item:hover{color:var(--ink);background:#ffffff8c}.nav-item.is-active{background:var(--surface);color:var(--sage-deep);box-shadow:0 8px 20px #3e413712}.nav-item.is-active:after{background:var(--clay);content:"";border-radius:50%;width:5px;height:5px;margin-left:auto}.sidebar-spacer{flex:1}.profile-chip strong,.profile-chip small{display:block}.settings-link{margin-bottom:10px}.profile-chip{border-top:1px solid var(--line);grid-template-columns:36px 1fr 15px;align-items:center;gap:9px;padding:16px 7px 0;display:grid}.profile-avatar{background:var(--clay-soft);width:36px;height:36px;color:var(--clay);border-radius:50%;place-items:center;display:grid}.profile-chip strong{font-family:var(--font-display);font-size:15px}.profile-chip small{color:var(--faint);margin-top:1px;font-size:13px}.mobile-shell-header,.mobile-nav{display:none}.mobile-shell-actions,.mobile-shell-actions form{align-items:center}.mobile-shell-actions{gap:6px;display:flex}.mobile-shell-actions form{margin:0;display:flex}.app-main{min-height:100vh;margin-left:246px}.pull-refresh{top:calc(-42px + env(safe-area-inset-top,0px));z-index:25;pointer-events:none;opacity:var(--pull-progress,0);will-change:transform;transform:translate3d(-50%, var(--pull-y,0px), 0);position:fixed;left:50%}.pull-refresh.is-idle{opacity:0}.pull-refresh:not(.is-dragging){transition:transform var(--motion-page) var(--ease-standard), opacity var(--motion-fast) linear}.pull-refresh-dial{border:1px solid var(--line);background:var(--surface);width:38px;height:38px;color:var(--sage-deep);box-shadow:var(--shadow-raised);transform:rotate(var(--pull-spin,0deg));border-radius:50%;place-items:center;display:grid}.pull-refresh.is-refreshing .pull-refresh-dial{transform:none}@media (prefers-reduced-motion:reduce){.pull-refresh-dial{transform:none}.pull-refresh .spin{animation:none}}.page-wrap{width:min(1500px,100%);margin:0 auto;padding:42px 46px 64px}.page-header{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:30px;display:flex}.page-header h1{font-family:var(--font-display);letter-spacing:-.035em;margin:6px 0 0;font-size:clamp(34px,3.3vw,48px);font-weight:500;line-height:1}.page-subtitle{max-width:660px;color:var(--muted);margin:10px 0 0;font-size:15px;line-height:1.6}.header-actions{flex:none;align-items:center;gap:10px;display:flex}.button{letter-spacing:.01em;border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-size:14px;font-weight:700;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:disabled{cursor:not-allowed;border-color:var(--line);background:var(--surface-soft);color:var(--muted);box-shadow:none}.button:disabled:hover{transform:none}.button-primary{border-color:var(--sage-deep);background:var(--sage-deep);color:#fff;box-shadow:0 8px 18px #344f4526}.button-primary:hover{background:#2d463d}.button-secondary{border-color:var(--line);background:var(--surface);color:var(--ink)}.button-secondary:hover{box-shadow:var(--shadow);background:#fff;border-color:#c8c2b7}.button-compact{min-height:36px;padding:0 12px;font-size:13px}.button-full{width:100%}.icon-button{border:1px solid var(--line);background:var(--surface);border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.icon-button.subtle{width:32px;height:32px;color:var(--muted);background:0 0;border-color:#0000}.text-link{color:var(--sage-deep);align-items:center;gap:5px;font-size:13px;font-weight:700;display:inline-flex}.month-switcher,.week-switcher{border:1px solid var(--line);background:#fffdf9b8;border-radius:11px;align-items:center;min-height:40px;display:flex}.month-switcher>button,.month-switcher>a,.week-switcher>button{width:37px;height:38px;color:var(--muted);background:0 0;border:0;place-items:center;display:grid}.month-switcher span{text-align:center;min-width:104px;font-size:13px;font-weight:700}.metric-grid{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow);grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px;display:grid;overflow:hidden}.metric-card{border-left:1px solid var(--line-soft);min-width:0;padding:20px 21px 18px}.metric-card:first-child{border-left:0}.metric-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:7px;font-size:13px;font-weight:700;display:flex}.metric-card>strong{font-family:var(--font-display);letter-spacing:-.03em;text-overflow:ellipsis;margin-top:13px;font-size:clamp(25px,2.2vw,34px);font-weight:500;display:block;overflow:hidden}.metric-card>strong small{color:var(--faint);font-family:var(--font-sans);font-size:14px}.metric-card p{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0;font-size:13px;line-height:1.45;overflow:hidden}.metric-progress{background:var(--surface-deep);border-radius:5px;height:4px;margin-top:13px;overflow:hidden}.metric-progress span{border-radius:inherit;background:var(--clay);height:100%;display:block}.dashboard-grid{grid-template-columns:minmax(0,1.45fr) minmax(310px,.75fr);gap:18px;display:grid}.panel{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow)}.today-panel,.payment-panel,.statement-panel{padding:24px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.panel-heading h2,.settings-intro h2,.settings-card h3,.security-card h3{font-family:var(--font-display);letter-spacing:-.02em;margin:5px 0 0;font-size:21px;font-weight:550}.panel-heading .text-link{white-space:nowrap;flex:none;margin-top:4px}.lesson-timeline{margin-top:22px}.lesson-row{grid-template-columns:45px 20px 1fr auto;align-items:flex-start;gap:10px;min-height:73px;display:grid}.lesson-time strong,.lesson-time span{display:block}.lesson-time strong{font-family:var(--font-display);font-size:15px}.lesson-time span{color:var(--faint);margin-top:4px;font-size:12px}.timeline-pin{justify-content:center;height:100%;display:flex;position:relative}.timeline-pin span{z-index:1;border:2px solid var(--surface);background:currentColor;border-radius:50%;width:9px;height:9px;margin-top:4px;position:relative;box-shadow:0 0 0 1px}.timeline-pin i{background:var(--line);width:1px;position:absolute;top:18px;bottom:-1px}.tone-sage{color:var(--sage)}.tone-clay{color:var(--clay)}.tone-ink{color:#687883}.tone-rose{color:var(--rose)}.lesson-detail strong,.lesson-detail span{display:block}.lesson-detail strong{font-size:14px}.lesson-detail span{color:var(--muted);align-items:center;gap:4px;margin-top:5px;font-size:13px;display:flex}.lesson-duration{color:var(--faint);align-items:center;gap:5px;margin-top:1px;font-size:12px;display:flex}.lesson-row.is-cancelled{filter:saturate(.5);opacity:.82}.lesson-row.is-cancelled .lesson-detail>strong{text-decoration:line-through;text-decoration-thickness:1px}.lesson-cancelled{background:var(--rose-soft);color:var(--danger);border-radius:999px;align-items:center;margin-top:7px;padding:3px 9px;font-size:11px;font-style:normal;font-weight:750;display:inline-flex}.day-summary{border-top:1px solid var(--line-soft);color:var(--muted);grid-template-columns:1fr auto 1fr auto;gap:10px;padding-top:15px;font-size:13px;display:grid}.day-summary strong{color:var(--ink);font-size:13px}.progress-number{color:var(--clay);font-family:var(--font-display);font-size:26px}.ring-row{align-items:center;gap:25px;margin:18px 0;display:flex}.progress-ring{background:conic-gradient(var(--sage) var(--progress), var(--surface-deep) 0);border-radius:50%;flex:0 0 102px;place-items:center;width:102px;height:102px;display:grid}.progress-ring:before{background:var(--surface);content:"";border-radius:50%;width:76px;height:76px;position:absolute}.progress-ring div{z-index:1;text-align:center;position:relative}.progress-ring strong,.progress-ring span{display:block}.progress-ring strong{font-family:var(--font-display);font-size:25px;font-weight:500}.progress-ring span{color:var(--faint);text-transform:uppercase;margin-top:-2px;font-size:11px}.payment-summary-list{flex:1;min-width:0}.payment-summary-list>div{color:var(--muted);grid-template-columns:10px 1fr;gap:7px;margin:9px 0;font-size:12px;display:grid}.payment-summary-list strong{color:var(--ink);font-family:var(--font-display);grid-column:2;margin-top:-5px;font-size:15px;font-weight:550}.legend-dot{border-radius:50%;width:7px;height:7px;margin-top:2px}.legend-dot.is-paid{background:var(--sage)}.legend-dot.is-due{background:var(--clay-soft);box-shadow:inset 0 0 0 1px var(--clay)}.attention-list{border:1px solid var(--line-soft);background:var(--line-soft);border-radius:11px;gap:1px;margin:0 0 15px;display:grid;overflow:hidden}.attention-list>div{background:var(--surface);grid-template-columns:29px 1fr auto;align-items:center;gap:8px;padding:9px;display:grid}.attention-list span strong,.attention-list span small{display:block}.attention-list span strong{font-size:13px}.attention-list span small{color:var(--faint);margin-top:2px;font-size:11px}.attention-list>div>strong{font-size:13px}.mini-avatar{background:var(--sage-soft);width:29px;height:29px;color:var(--sage-deep);font-family:var(--font-display);border-radius:50%;flex:0 0 29px;place-items:center;font-size:14px;font-weight:600;display:grid}.avatar{background:var(--sage-soft);color:var(--sage-deep);font-family:var(--font-display);border-radius:50%;flex:none;place-items:center;font-weight:600;display:grid;overflow:hidden}.avatar-72{width:72px;height:72px;font-size:30px}.avatar-160{width:160px;height:160px;font-size:64px}.avatar-figure{border-radius:50%;display:block}.avatar-emoji{line-height:1}.operations-panel{min-height:310px;padding:24px}.operations-grid{border:1px solid var(--line-soft);background:var(--line-soft);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:21px;display:grid;overflow:hidden}.operations-grid article{background:var(--surface);min-width:0;padding:13px}.operations-grid span,.operations-grid small{color:var(--faint);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.operations-grid strong{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;margin-top:8px;font-size:20px;font-weight:550;display:block;overflow:hidden}.operations-grid small{letter-spacing:0;text-transform:none;margin-top:5px;font-weight:500;display:block}.effective-hourly{border-top:1px solid var(--line-soft);grid-template-columns:1fr auto;align-items:baseline;gap:7px 16px;margin-top:16px;padding-top:14px;display:grid}.effective-hourly span{color:var(--muted);font-size:13px;font-weight:700}.effective-hourly strong{color:var(--sage-deep);font-family:var(--font-display);font-size:19px;font-weight:550}.effective-hourly small{color:var(--faint);grid-column:1/-1;font-size:11px;line-height:1.45}.soft-badge,.connection-badge{background:var(--surface-soft);color:var(--muted);text-transform:uppercase;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:700}.statement-lines{gap:11px;margin-top:22px;display:grid}.statement-lines>div{color:var(--muted);justify-content:space-between;gap:15px;font-size:13px;display:flex}.statement-lines strong{color:var(--ink);font-size:13px}.statement-total{border-top:1px solid var(--ink);justify-content:space-between;align-items:baseline;gap:20px;margin-top:17px;padding-top:14px;font-size:13px;font-weight:700;display:flex}.statement-total strong{color:var(--sage-deep);font-family:var(--font-display);font-size:23px;font-weight:550}.fine-print{color:var(--faint);margin:9px 0 0;font-size:11px;line-height:1.5}.report-icon{background:var(--sage-soft);width:45px;height:45px;color:var(--sage-deep);border-radius:13px;place-items:center;display:grid}.table-panel{overflow:hidden}.table-toolbar{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:20px;padding:15px 18px;display:flex}.segmented-control{gap:4px;display:flex}.segmented-control button{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:7px 10px;font-size:13px;font-weight:700}.segmented-control button.is-active{background:var(--sage-soft);color:var(--sage-deep)}.table-count{color:var(--faint);margin:0;font-size:12px}.responsive-table{overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;overflow-x:auto}.responsive-table::-webkit-scrollbar{-webkit-appearance:none;height:11px}.responsive-table::-webkit-scrollbar-track{background:var(--surface-soft);border-radius:99px}.responsive-table::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--muted) 45%, transparent);background-clip:content-box;border:3px solid #0000;border-radius:99px}.responsive-table::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--muted) 70%, transparent);background-clip:content-box}.responsive-table th:last-child,.responsive-table td.row-actions{z-index:1;position:sticky;right:0}.responsive-table td.row-actions{background:var(--surface);box-shadow:-9px 0 12px -10px #282a244d}.responsive-table th:last-child{background:var(--surface-soft);box-shadow:-9px 0 12px -10px #282a244d}table{border-collapse:collapse;text-align:left;width:100%}th{background:var(--surface-soft);color:var(--faint);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;padding:11px 13px;font-size:11px;font-weight:750}td{border-top:1px solid var(--line-soft);color:var(--muted);white-space:nowrap;padding:11px 13px;font-size:13px}tbody tr:hover{background:#fdfbf7}td strong{color:var(--ink)}.student-cell{align-items:center;gap:9px;display:flex}.student-cell>span:last-child strong,.student-cell>span:last-child small{display:block}.student-cell>span:last-child small{color:var(--faint);margin-top:2px;font-size:11px}.status-pill{border-radius:999px;padding:5px 8px;font-size:11px;font-weight:750;display:inline-flex}.status-paid{background:var(--sage-soft);color:var(--success)}.status-unpaid{background:var(--rose-soft);color:var(--danger)}.record-payment-button{border:1px solid var(--line);background:var(--surface);height:32px;color:var(--sage-deep);border-radius:8px;align-items:center;gap:5px;padding:0 10px;font-size:11px;font-weight:750;display:inline-flex}.record-payment-button:hover{box-shadow:var(--shadow);background:#fff;border-color:#c8c2b7}.row-actions{text-align:right;white-space:nowrap}.row-actions>*{vertical-align:middle}.row-actions .icon-button{display:inline-grid}.row-actions>*+*{margin-left:6px}.payment-summary-grid{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:8px;display:grid;overflow:hidden}.payment-summary-grid>div{border-left:1px solid var(--line-soft);min-height:83px;padding:16px}.payment-summary-grid>div:first-child{border-left:0}.payment-summary-grid span,.payment-summary-grid strong{align-items:center;gap:5px;display:flex}.payment-summary-grid span{min-height:18px;color:var(--faint);text-transform:uppercase;font-size:12px;font-weight:750}.payment-summary-grid strong{color:var(--ink);font-family:var(--font-display);margin-top:8px;font-size:17px;font-weight:550}.reconciliation-line{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin:0 0 17px;font-size:12px;display:flex}.reconciliation-line strong{background:var(--sage-soft);color:var(--success);text-transform:uppercase;border-radius:999px;padding:4px 8px;font-size:11px}.inline-success{background:var(--sage-soft);color:var(--success);border-radius:9px;align-items:center;gap:6px;padding:9px 11px;font-size:12px;display:flex}.inline-warning{background:var(--rose-soft);color:var(--danger);border-radius:9px;align-items:flex-start;gap:6px;margin:0 0 17px;padding:9px 11px;font-size:12px;line-height:1.5;display:flex}.inline-warning svg{flex:none;margin-top:2px}.table-empty{color:var(--muted);text-align:center;margin:0;padding:28px;font-size:13px}.field-note{gap:8px;display:grid}.field-note>span{color:var(--ink);font-size:12px;font-weight:650}.price-list{border:1px solid var(--line);background:var(--paper-soft,transparent);border-radius:9px;gap:0;margin:0;padding:0 11px;list-style:none;display:grid}.price-list>li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:13px;display:flex}.price-list>li:first-child{border-top:0}.price-list>li span{color:var(--muted)}.price-list>li strong{font-variant-numeric:tabular-nums;font-weight:650}.payment-layout-switch.directory-layout-switch,.payment-compact{display:none}.payment-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.payment-row{border:1px solid var(--line-soft);background:var(--surface);border-radius:11px;grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px;display:grid;position:relative}.payment-row-open{z-index:1;background:0 0;border:0;border-radius:11px;position:absolute;inset:0}.payment-row-open:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}.payment-row-copy{z-index:2;pointer-events:none;gap:2px;min-width:0;display:grid;position:relative}.payment-row-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:620;overflow:hidden}.payment-row-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.payment-row-figure{z-index:2;pointer-events:none;justify-items:end;gap:4px;display:grid;position:relative}.payment-row-figure strong{white-space:nowrap;font-size:14px;font-weight:650}.payment-row-record{z-index:2;position:relative}.payment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.payment-card{border:1px solid var(--line);background:var(--surface);border-radius:13px;gap:8px;padding:13px;display:grid;position:relative}.payment-card-open{z-index:1;background:0 0;border:0;border-radius:13px;position:absolute;inset:0}.payment-card-open:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}.payment-card .mini-avatar{z-index:2;pointer-events:none;width:34px;height:34px;position:relative}.payment-card-copy{z-index:2;pointer-events:none;gap:1px;min-width:0;display:grid;position:relative}.payment-card-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:620;overflow:hidden}.payment-card-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.payment-card-figures{z-index:2;border-top:1px solid var(--line-soft);pointer-events:none;grid-template-columns:1fr 1fr;gap:8px;padding-top:8px;display:grid;position:relative}.payment-card-figures span{color:var(--faint);text-transform:uppercase;gap:2px;font-size:10px;font-weight:700;display:grid}.payment-card-figures strong{color:var(--ink);text-transform:none;white-space:nowrap;font-size:13px;font-weight:650}.payment-card-foot{z-index:2;justify-content:space-between;align-items:center;gap:8px;display:flex;position:relative}.payment-card-foot .icon-button{z-index:2;position:relative}@media (max-width:900px){.payment-layout-switch.directory-layout-switch{display:inline-flex}.payment-compact{display:block}.table-panel>.responsive-table,.payment-compact .payment-list,.payment-compact .payment-grid{display:none}.payment-compact[data-layout=list] .payment-list,.payment-compact[data-layout=grid] .payment-grid{display:grid}.table-toolbar{flex-wrap:wrap;row-gap:10px}.table-count{flex:1 0 100%;order:3}}@media (max-width:480px){.payment-grid{grid-template-columns:1fr}}.state-panel{padding:28px}.state-panel h2{font-family:var(--font-display);font-size:21px;font-weight:550}.state-panel p{color:var(--muted);margin:8px 0 18px;font-size:13px}.dialog-backdrop{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2325206b;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow:hidden}.payment-dialog{border:1px solid var(--line);background:var(--surface);scrollbar-gutter:stable;border-radius:18px;width:min(520px,100%);max-height:min(860px,100dvh - 48px);overflow:auto;box-shadow:0 32px 90px #2527223b}.payment-dialog>header{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:18px;padding:19px 21px;display:flex}.payment-dialog h2{font-family:var(--font-display);margin:4px 0 0;font-size:24px;font-weight:550}.payment-dialog-summary{grid-template-columns:repeat(3,1fr);gap:8px;padding:17px 21px 0;display:grid}.payment-dialog-summary span{border:1px solid var(--line-soft);color:var(--faint);text-transform:uppercase;border-radius:9px;padding:10px;font-size:12px}.payment-dialog-summary strong{color:var(--ink);margin-top:5px;font-size:13px;display:block}.payment-dialog form{gap:14px;padding:20px 21px 21px;display:grid}.payment-dialog form>label>span,.payment-dialog legend{color:var(--muted);align-items:center;gap:5px;margin-bottom:6px;font-size:11px;font-weight:750;display:flex}.payment-dialog input:not([type=radio]):not([type=checkbox]),.payment-dialog select,.payment-dialog textarea{border:1px solid var(--line);background:var(--surface-soft);width:100%;color:var(--ink);font:inherit;border-radius:9px;outline:none;padding:10px 11px;font-size:13px}.payment-dialog input::placeholder,.payment-dialog textarea::placeholder{color:var(--faint)}.payment-dialog textarea{resize:vertical}@media (min-width:681px){.add-lesson-dialog{width:min(660px,100%)}.add-lesson-form{grid-template-columns:repeat(2,minmax(0,1fr))}.add-lesson-form>label:first-child,.add-lesson-form>.lesson-type-field,.add-lesson-form>.field-hint,.add-lesson-form>.form-error,.add-lesson-form>footer{grid-column:1/-1}}.allocation-preview{background:var(--sage-soft);color:var(--sage-deep);border-radius:10px;grid-template-columns:1fr auto;gap:5px;padding:12px;font-size:12px;display:grid}.allocation-preview small{color:var(--muted);grid-column:1/-1;font-size:12px}.form-error{background:var(--rose-soft);color:var(--danger);border-radius:8px;margin:0;padding:9px 10px;font-size:11px;line-height:1.5}.payment-dialog footer{border-top:1px solid var(--line-soft);justify-content:flex-end;gap:8px;padding-top:15px;display:flex}.dialog-details{grid-template-columns:repeat(2,1fr);gap:10px;padding:20px 21px;display:grid}.dialog-details>div{border:1px solid var(--line-soft);border-radius:9px;padding:10px}.dialog-details span{color:var(--faint);text-transform:uppercase;font-size:12px;font-weight:750;display:block}.dialog-details strong{color:var(--ink);margin-top:5px;font-size:13px;display:block}.dialog-details>button{border:1px solid var(--line-soft);background:var(--surface);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:9px;padding:10px;display:block}.dialog-details>button:hover:not(:disabled){border-color:var(--sage-deep)}.dialog-details>button:disabled{cursor:default;opacity:.62}.dialog-details>button>strong{justify-content:space-between;align-items:center;gap:8px;display:flex}.dialog-details>button>strong svg{color:var(--faint);flex:none}.payment-dialog form.rate-editor{gap:12px;padding:4px 21px 0}.rate-editor-fields{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.payment-dialog form.payment-entry-editor{border:1px solid var(--line-soft);border-radius:10px;gap:11px;padding:12px}.payment-dialog form.payment-entry-editor footer{padding-top:12px}.payment-dialog form.rate-editor footer{padding-top:13px}.entry-actions{flex:none;gap:4px;display:flex}.dialog-error{margin:16px 21px 0}.adjustment-list>.field-hint{margin:1px 0 0}.dialog-footer{border-top:1px solid var(--line-soft);background:var(--surface);flex-wrap:wrap;flex:none;justify-content:flex-end;gap:8px;padding:15px 21px 21px;display:flex}.adjustment-list,.payment-entry-list{gap:8px;padding:0 21px;display:grid}.adjustment-list>div,.payment-entry-list>div{border:1px solid var(--line-soft);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.adjustment-list>div>span,.payment-entry-list>div>span{min-width:0;display:grid}.adjustment-list strong,.payment-entry-list strong{font-size:13px}.adjustment-list small,.payment-entry-list small{color:var(--faint);margin-top:3px;font-size:11px;line-height:1.45}.payment-entry-list>.field-hint{margin:1px 0 0}.method-note{color:var(--faint);margin-top:2px;font-size:11px;display:block}@media (max-width:680px){.payment-entry-list>div{flex-wrap:wrap}.payment-entry-list .segmented-control{width:100%}.payment-entry-list .segmented-control button{flex:1}.payment-entry-list>div>span{flex:100%}.payment-entry-list .segmented-control{flex:auto;width:auto}.entry-actions{margin-left:auto}.rate-editor-fields{grid-template-columns:1fr}}.spin{animation:.85s linear infinite spin}.directory-toolbar{align-items:center;gap:10px;margin-bottom:18px;display:flex}.directory-toolbar>span{color:var(--faint);margin-left:auto;font-size:12px}.directory-filter select{border:1px solid var(--line);background:var(--surface);min-height:35px;color:var(--muted);font:inherit;border-radius:8px;padding:0 9px;font-size:12px}.directory-toolbar .button.is-active{border-color:var(--sage);background:var(--sage-soft);color:var(--sage-deep)}.directory-toolbar .button{white-space:nowrap}.search-field{border:1px solid var(--line);background:var(--surface);width:min(390px,100%);min-height:39px;color:var(--faint);border-radius:11px;align-items:center;gap:9px;padding:0 12px;display:flex}.search-field input{background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:13px}.search-clear{background:var(--surface-deep);width:22px;height:22px;color:var(--muted);border:0;border-radius:50%;flex:0 0 22px;place-items:center;display:grid}.student-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.student-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;grid-template-columns:48px 1fr;align-content:start;gap:13px;padding:17px;transition:transform .18s,box-shadow .18s;display:grid;position:relative}.student-card:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.large-avatar{background:var(--sage-soft);width:48px;height:48px;color:var(--sage-deep);font-family:var(--font-display);border-radius:14px;place-items:center;font-size:16px;display:grid;overflow:hidden}:is(.large-avatar:has(>.avatar),.mini-avatar:has(>.avatar)){background:0 0;border-radius:50%}.avatar-1{background:var(--clay-soft);color:var(--clay)}.avatar-2{background:var(--rose-soft);color:var(--rose)}.avatar-3{background:var(--gold-soft);color:var(--gold)}.student-card-copy h2{font-family:var(--font-display);margin:2px 0 0;font-size:17px;font-weight:550}.student-card-copy p{color:var(--muted);margin:5px 0 0;font-size:12px}.student-card-copy span{color:var(--faint);margin-top:3px;font-size:11px;display:block}.student-card-meta{border-top:1px solid var(--line-soft);grid-column:1/-1;justify-content:space-between;margin-top:4px;padding-top:11px;display:flex}.student-card-meta span{color:var(--faint);text-transform:uppercase;font-size:11px}.student-card-meta strong{font-size:12px}.student-card-open{z-index:1;background:0 0;border:0;border-radius:14px;position:absolute;inset:0}.student-card-open:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}.student-card-tags{flex-wrap:wrap;grid-column:1/-1;gap:6px;margin-top:2px;display:flex}.payer-chip,.duplicate-chip,.family-message-chip{border-radius:999px;align-items:center;gap:5px;padding:4px 9px;font-size:11px;font-weight:700;display:inline-flex}.payer-chip{background:var(--sage-soft);color:var(--sage-deep)}.duplicate-chip{background:var(--gold-soft);color:var(--gold)}.family-message-chip{background:var(--clay-soft);color:var(--clay)}.student-card-actions{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:2px;display:grid}.student-card-action{z-index:2;white-space:nowrap;min-width:0;position:relative;overflow:hidden}.student-card-action>span{text-overflow:ellipsis;overflow:hidden}.family-message-dialog{flex-direction:column;width:min(900px,100%);display:flex;overflow:hidden}.family-message-dialog>header{flex:none}.family-message-layout{grid-template-columns:250px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.family-message-groups{border-right:1px solid var(--line-soft);background:var(--surface-soft);overscroll-behavior:contain;min-height:0;max-height:150px;padding:18px;overflow-y:auto}.family-message-groups>.button{width:100%}.family-message-groups>.field-hint{margin:18px 2px 0}.family-message-groups ul{gap:6px;margin:14px 0 0;padding:0;list-style:none;display:grid}.family-message-groups li>button{width:100%;color:var(--muted);text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;align-items:flex-start;gap:9px;padding:10px;display:flex}.family-message-groups li>button:hover{background:var(--surface)}.family-message-groups li>button.is-active{border-color:var(--line);background:var(--surface);color:var(--sage-deep)}.family-message-groups li>button>svg{flex:none;margin-top:2px}.family-message-groups li span{gap:3px;min-width:0;display:grid}.family-message-groups li strong{overflow-wrap:anywhere;color:var(--ink);font-size:12px}.family-message-groups li small{color:var(--faint);font-size:11px}.payment-dialog form.family-message-form{flex-direction:column;min-height:0;display:flex;overflow:hidden}.payment-dialog form.family-message-form>*{flex:none}.payment-dialog form.family-message-form .family-member-picker>div{flex:auto;min-height:0}.family-message-form h3{font-family:var(--font-display);margin:0 0 5px;font-size:18px;font-weight:550}.family-message-form .field-hint{margin:0}.family-message-search{width:100%}.family-member-picker{display:contents}.family-member-picker>div{border:1px solid var(--line);overscroll-behavior:contain;border-radius:11px;flex:auto;align-content:start;min-height:190px;display:grid;overflow-y:auto}.family-member-picker label{border-top:1px solid var(--line-soft);cursor:pointer;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:10px;min-height:54px;padding:9px 11px;display:grid}.family-member-picker label:first-child{border-top:0}.family-member-picker label:has(input:checked){background:var(--sage-soft)}.family-member-picker label.is-unavailable{cursor:not-allowed;opacity:.56}.family-member-picker input{width:16px;height:16px;accent-color:var(--sage-deep);margin:0}.family-member-picker label>span{gap:2px;display:grid}.family-member-picker strong{font-size:13px}.family-member-picker small{color:var(--faint);font-size:11px}.family-message-preview{background:var(--sage-soft);border-radius:11px;gap:4px;padding:12px 14px;display:grid}.family-message-preview span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:700}.family-message-preview strong{overflow-wrap:anywhere;color:var(--sage-deep);font-size:14px}.family-message-preview small{color:var(--muted);font-size:11px}.family-message-form footer>span{flex:1}.family-message-delete{border-color:color-mix(in srgb, var(--danger) 30%, var(--line));color:var(--danger)}@media (max-width:680px){.family-message-layout{flex-direction:column;min-height:0;display:flex;overflow:hidden}.family-message-groups{border-right:0;border-bottom:1px solid var(--line-soft);overscroll-behavior:contain;flex:none;max-height:96px;overflow-y:auto}.payment-dialog form.family-message-form{flex:auto}.family-member-picker>div{min-height:220px}.family-message-form footer{flex-wrap:wrap}.family-message-form footer>span{display:none}.family-message-form footer .family-message-delete{flex-basis:100%}}.student-profile-dialog{flex-direction:column;width:min(620px,100%);display:flex;overflow:hidden}.student-profile-dialog>header{flex:none}.profile-body{overscroll-behavior:contain;gap:20px;min-height:0;padding:20px 21px;display:grid;overflow-y:auto}.profile-section h3{color:var(--faint);font-family:var(--font-sans);letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:750}.profile-note{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.sibling-list{gap:7px;margin:11px 0 0;padding:0;list-style:none;display:grid}.sibling-list li{border:1px solid var(--line-soft);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;padding:10px 12px;display:flex}.sibling-list strong{font-size:13px}.sibling-list span{color:var(--muted);font-size:12px}.field-note{color:var(--faint);margin-top:7px;font-size:11px;line-height:1.5;display:block}.sync-status{background:var(--sage-soft);color:var(--sage-deep);border:1px solid #5070642e;border-radius:999px;align-items:center;gap:6px;padding:8px 10px;font-size:11px;font-weight:700;display:inline-flex}.schedule-controls{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.week-switcher{background:0 0;border:0}.schedule-controls-end{align-items:center;gap:10px;display:flex}.view-switch{border:1px solid var(--line);background:#fffdf9b8;border-radius:11px;display:flex;overflow:hidden}.view-switch a{color:var(--muted);padding:9px 15px;font-size:13px;font-weight:650}.view-switch a+a{border-left:1px solid var(--line)}.view-switch a.is-selected{background:var(--sage,#3c4c3f);color:#fff}.month-grid{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.month-weekdays{border-bottom:1px solid var(--line-soft);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.month-weekdays span{color:var(--faint);text-align:center;text-transform:uppercase;padding:10px 0;font-size:11px;font-weight:700}.month-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.month-day{border-top:1px solid var(--line-soft);border-left:1px solid var(--line-soft);flex-direction:column;gap:3px;min-height:122px;padding:7px;display:flex}.month-day:nth-child(7n+1){border-left:0}.month-day>header{justify-content:space-between;align-items:baseline;margin-bottom:2px;display:flex}.month-day>header strong{font-family:var(--font-display);font-size:15px;font-weight:550}.month-day>header small{color:var(--clay);text-transform:uppercase;font-size:10px;font-weight:750}.month-day.is-outside{background:#faf8f4}.month-day.is-outside>header strong{color:var(--faint)}.month-day.is-today{background:#fbf8f2}.month-day.is-today>header strong{background:var(--clay);color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;display:grid}.month-event{background:color-mix(in srgb, currentColor 10%, white);text-align:left;border:0;border-left:3px solid;border-radius:6px;align-items:baseline;gap:5px;padding:4px 6px;display:flex;overflow:hidden}.month-event:hover{filter:brightness(.97)}.month-event span{font-variant-numeric:tabular-nums;flex:none;font-size:11px;font-weight:750}.month-event strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.month-event em{color:var(--danger);text-transform:uppercase;flex:none;margin-left:auto;font-size:10px;font-style:normal;font-weight:800}.month-event.is-cancelled{filter:saturate(.45);opacity:.78;border-left-style:dashed}.month-event.is-cancelled strong{text-decoration:line-through;text-decoration-thickness:1px}.month-more{color:var(--muted);padding:2px 6px;font-size:11px;font-weight:650}.month-more:hover{color:var(--ink)}.checkbox-field{align-items:flex-start;gap:9px;display:flex}.checkbox-field input{margin-top:3px}.checkbox-field span{font-size:14px}.checkbox-field small{color:var(--muted);margin-top:2px;font-size:12px;display:block}.lesson-note{border-top:1px solid var(--line);margin-top:20px}.lesson-disclosure>summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:10px;min-height:60px;padding:12px 21px;list-style:none;display:grid}.lesson-disclosure>summary::-webkit-details-marker{display:none}.lesson-disclosure>summary>span{font-family:var(--font-display);align-items:center;gap:7px;font-size:16px;font-weight:550;display:flex}.lesson-disclosure>summary>small{color:var(--faint);font-size:12px;font-weight:650}.lesson-disclosure>summary>svg{color:var(--muted);transition:transform var(--motion-fast) var(--ease-standard)}.lesson-disclosure[open]>summary>svg{transform:rotate(180deg)}.lesson-note-content{border-top:1px solid var(--line-soft);padding-top:16px}.lesson-note-content>.field-hint{margin:0;padding-inline:21px}.lesson-note-content form{padding-top:12px}.lesson-note textarea{width:100%}.rating-field{margin-top:4px}.rating-choice{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.rating-choice label{align-items:center;gap:5px;font-size:14px;display:flex}.link-button{color:var(--muted);background:0 0;border:0;font-size:13px;font-weight:650;text-decoration:underline}.link-button:hover{color:var(--ink)}.record-sheet{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow);margin-top:18px;padding:34px 36px}.record-masthead{gap:5px;padding-bottom:18px;display:grid}.record-kicker{color:var(--sage);letter-spacing:.15em;text-transform:uppercase;margin:0;font-size:11px;font-weight:650}.record-masthead h2{font-family:var(--font-display);margin:0;font-size:31px;font-weight:550;line-height:1.15}.record-byline{color:var(--faint);margin:0;font-size:13px}.record-rule{background:linear-gradient(90deg, var(--sage) 0%, var(--line) 38%, transparent 100%);border-radius:2px;height:2px}.record-facts{grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:12px;margin:22px 0 0;display:grid}.record-facts>div{border-radius:var(--radius-sm);background:var(--surface-soft);padding:13px 16px}.record-facts dt{color:var(--faint);letter-spacing:.05em;margin:0 0 4px;font-size:11px;font-weight:650}.record-facts dd{font-family:var(--font-display);flex-wrap:wrap;align-items:baseline;gap:7px;margin:0;font-size:21px;font-weight:550;display:flex}.record-facts dd small{color:var(--faint);font-family:var(--font-sans);font-size:12px;font-weight:500}.record-facts dd.is-dates{gap:1px;font-size:15px;display:grid}.record-focus{border-left:3px solid var(--sage);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--sage-soft);break-inside:avoid;margin:18px 0 0;padding:14px 18px}.record-focus p{white-space:pre-wrap;margin:0;font-size:15px;line-height:1.7}.record-focus p:first-child{color:var(--sage-deep);letter-spacing:.07em;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:650}.record-marks{gap:3px;display:inline-flex}.record-marks i{background:var(--line);border-radius:50%;width:7px;height:7px}.record-marks i.is-on{background:var(--sage)}.record-timeline{margin:26px 0 0;padding:2px 0 0 25px;list-style:none;position:relative}.record-timeline:before{content:"";background:var(--line);width:1px;position:absolute;top:8px;bottom:10px;left:4px}.record-timeline>li{break-inside:avoid;padding-bottom:22px;position:relative}.record-timeline>li:last-child{padding-bottom:0}.record-timeline>li:before{content:"";box-sizing:border-box;border:2px solid var(--sage);background:var(--surface);border-radius:50%;width:9px;height:9px;position:absolute;top:6px;left:-25px}.record-entry-head{flex-wrap:wrap;align-items:baseline;gap:9px;display:flex}.record-entry-head strong{font-family:var(--font-display);font-size:16px;font-weight:550}.record-entry-head small{color:var(--faint);font-size:12px}.record-cancelled{color:var(--danger);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-style:normal;font-weight:700}.record-note{white-space:pre-wrap;margin:9px 0 0;font-size:14px;line-height:1.75}.record-note span{color:var(--faint);letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px;font-size:11px;font-weight:650;display:block}.record-note.is-practise{border-left:2px solid var(--line-soft);padding-left:13px}.record-empty{border:1px dashed var(--line);border-radius:var(--radius-sm);color:var(--muted);text-align:center;margin:26px 0 0;padding:30px 24px;font-size:14px;line-height:1.7}.week-switcher strong{text-align:center;min-width:130px;font-family:var(--font-display);font-size:16px;font-weight:550}.week-grid{grid-template-columns:var(--axis-width,50px) repeat(7, minmax(0, 1fr));border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow);display:grid;overflow:hidden}.time-axis{border-right:1px solid var(--line-soft);background:var(--surface-soft);position:relative}.time-axis>header{border-bottom:1px solid var(--line-soft);height:80px}.time-axis span{height:var(--hour-height,96px);color:var(--faint);padding:0 7px;font-size:10px;font-weight:700;line-height:1;display:block;transform:translateY(-4px)}.day-column{border-left:1px solid var(--line-soft)}.time-axis+.day-column{border-left:0}.day-column>header{border-bottom:1px solid var(--line-soft);align-content:center;justify-items:center;gap:2px;min-height:80px;padding:7px 4px;display:grid}.day-column>header span{color:var(--faint);text-transform:uppercase;font-size:11px;font-weight:700}.day-column>header strong{font-family:var(--font-display);margin-top:3px;font-size:22px;font-weight:500}.day-column>header small{color:var(--clay);text-transform:uppercase;font-size:11px;font-weight:750;line-height:1}.day-column.is-today{background:#fbf8f2}.day-column.is-today>header strong{background:var(--clay);color:#fff;border-radius:50%;place-items:center;width:33px;height:33px;display:grid}.day-events{background-image:repeating-linear-gradient(to bottom, transparent 0, transparent 63px, var(--line-soft) 64px);position:relative;overflow:hidden}.calendar-event{background:color-mix(in srgb, currentColor 10%, white);text-align:left;left:calc(var(--lane-offset,0%) + var(--lane-gap,6px));width:calc(var(--lane-width,100%) - var(--lane-gap,6px) * 2);border:0;border-left:3px solid;border-radius:8px;padding:8px;position:absolute;overflow:hidden}.calendar-event:hover{filter:brightness(.97)}.calendar-event span,.calendar-event strong,.calendar-event small{display:block}.calendar-event span{font-size:11px;font-weight:750}.calendar-event strong{color:var(--ink);margin-top:5px;font-size:13px}.calendar-event small{color:var(--muted);margin-top:3px;font-size:10px}.calendar-event .event-top{justify-content:space-between;align-items:center;gap:5px;display:flex}.calendar-event .event-time,.calendar-event .event-time-end{display:inline}.calendar-event.is-tight{padding:6px 8px}.calendar-event.is-tight em{margin-top:4px;padding:2px 5px}.calendar-event.is-compact{padding:5px 7px}.calendar-event.is-compact span{font-size:10px}.calendar-event.is-compact strong{margin-top:1px;font-size:12px}.calendar-event.is-compact .event-top em{flex:0 auto;margin-top:0;padding:1px 4px}.calendar-event em{text-overflow:ellipsis;white-space:nowrap;color:var(--danger);text-transform:uppercase;background:#ffffffc7;border-radius:999px;margin-top:7px;padding:3px 5px;font-size:10px;font-style:normal;font-weight:800;display:inline-block;overflow:hidden}.calendar-event.is-cancelled{filter:saturate(.45);opacity:.78;border-left-style:dashed}.calendar-event.is-cancelled strong{text-decoration:line-through;text-decoration-thickness:1px}.cancellation-dialog fieldset{border:0;margin:0;padding:0}.choice-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.choice-grid label{border:1px solid var(--line);min-height:44px;color:var(--muted);border-radius:9px;align-items:center;gap:8px;padding:10px;font-size:12px;display:flex}.choice-grid label:has(input:checked){border-color:var(--sage-deep);background:var(--sage-soft);color:var(--sage-deep)}.field-hint{color:var(--faint);margin:-2px 0 9px;font-size:11px;line-height:1.5}.locked-choice,.saved-cancellation{background:var(--sage-soft);color:var(--sage-deep);border-radius:10px;align-items:flex-start;gap:9px;padding:13px;font-size:12px;display:flex}.saved-cancellation{margin:0}.saved-cancellation p{color:var(--muted);margin:5px 0 0;font-size:11px}.cancelled-lesson{gap:11px;padding:20px 21px 21px;display:grid}.cancelled-lesson>.button{justify-self:start}.cancelled-lesson>.field-hint{margin:0}.schedule-legend{color:var(--muted);flex-wrap:wrap;gap:17px;margin-top:12px;font-size:11px;display:flex}.schedule-legend span{align-items:center;gap:5px;display:flex}.schedule-legend i{background:currentColor;border-radius:2px;width:7px;height:7px}.report-layout{grid-template-columns:minmax(0,1.4fr) minmax(270px,.6fr);gap:18px;display:grid}.report-history-panel,.automation-panel{padding:24px}.report-history{border-top:1px solid var(--line-soft);margin-top:10px;display:grid}.report-history>div{border-bottom:1px solid var(--line-soft);grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:11px;min-height:67px;display:grid}.report-received{text-align:right}.report-received strong{font-variant-numeric:tabular-nums}.report-received small{text-transform:uppercase;letter-spacing:.06em}.report-year{margin-top:20px}.report-year:first-of-type{margin-top:14px}.report-year>h3{font-family:var(--font-display);justify-content:space-between;align-items:baseline;gap:12px;margin:0;font-size:17px;font-weight:550;display:flex}.report-year>h3 small{color:var(--faint);font-family:var(--font-sans);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.report-download{position:relative}.report-download .form-error{z-index:2;background:var(--surface);width:220px;margin-top:5px;position:absolute;right:0}.file-type-icon{background:var(--sage-soft);width:34px;height:34px;color:var(--sage-deep);border-radius:9px;place-items:center;display:grid}.report-history span strong,.report-history span small{display:block}.report-history span strong{font-size:13px}.report-history span small{color:var(--faint);margin-top:4px;font-size:11px}.automation-panel{background:#ebe6dc}.automation-illustration{background:var(--surface);width:58px;height:58px;color:var(--clay);border-radius:18px;place-items:center;margin-bottom:20px;display:grid}.automation-panel h2{font-family:var(--font-display);margin:5px 0 0;font-size:23px;font-weight:550}.privacy-note{color:var(--sage-deep);border-top:1px solid #d6d0c5;gap:9px;padding-top:15px;display:flex}.privacy-note span strong,.privacy-note span small{display:block}.privacy-note strong{font-size:12px}.privacy-note small{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.45}.success-banner,.error-banner{border-radius:10px;align-items:center;gap:8px;margin:-10px 0 24px;padding:10px 12px;font-size:13px;display:flex}.success-banner{background:var(--sage-soft);color:var(--success)}.error-banner{background:var(--rose-soft);color:var(--danger)}.settings-section{border-top:1px solid var(--line);grid-template-columns:minmax(210px,.52fr) minmax(0,1.48fr);gap:32px;margin-top:22px;padding-top:28px;display:grid}.settings-intro h2{font-size:20px}.settings-intro>p:last-child{max-width:290px;color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.6}.settings-card{padding:22px;overflow:hidden}.settings-card-heading{grid-template-columns:45px minmax(150px,1fr) minmax(0,max-content);align-items:start;gap:12px;display:grid}.google-calendar-mark{color:#3d69ad;background:#e3ecfb;border-radius:12px;place-items:center;width:43px;height:43px;display:grid}.settings-card h3{margin:0;font-size:16px}.settings-card-heading p{color:var(--muted);margin:3px 0 0;font-size:11px}.connection-badge{background:var(--gold-soft);color:#80602c}.connection-badge.is-connected{background:var(--sage-soft);color:var(--success)}.calendar-connection{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;min-width:0;display:flex}.calendar-connection .calendar-last-sync,.calendar-connection .calendar-sync-status,.calendar-connection .calendar-stale,.calendar-connection .form-error{flex-basis:100%;margin:2px 0 0;font-size:11px}.calendar-setup{color:var(--muted);text-align:right;flex-basis:100%;margin:4px 0 0;font-size:12px;line-height:1.6}.calendar-setup code{background:var(--surface-soft);border-radius:4px;padding:1px 4px;font-size:12px}.calendar-last-sync{color:var(--success);justify-content:flex-end;align-items:center;gap:5px;display:flex}.calendar-sync-status{color:var(--success);justify-content:flex-end;align-items:center;gap:5px;line-height:1.5;display:flex}.calendar-last-sync.is-stale{color:var(--gold)}.calendar-stale{background:var(--gold-soft);color:var(--gold);text-align:right;border-radius:8px;justify-content:flex-end;align-items:flex-start;gap:5px;padding:9px 10px;line-height:1.5;display:flex}.calendar-stale svg{flex:none;margin-top:2px}.saving-indicator{color:var(--muted);align-items:center;gap:7px;margin:14px 0;font-size:12px;display:flex}.feature-checks{border-block:1px solid var(--line-soft);gap:10px;margin:20px 0;padding:16px 0;list-style:none;display:grid}.feature-checks li{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.feature-checks svg{color:var(--sage)}.settings-card-footer{justify-content:space-between;align-items:center;gap:20px;display:flex}.settings-card-footer p{max-width:380px;color:var(--faint);align-items:center;gap:6px;margin:0;font-size:11px;line-height:1.5;display:flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;display:grid}.settings-fields{border:0;min-width:0;margin:0;padding:0}.form-grid label>span{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.form-grid input,.form-grid select{border:1px solid var(--line);background:var(--surface-soft);border-radius:9px;outline:0;width:100%;height:39px;padding:0 10px;font-size:13px}.input-prefix{position:relative}.input-prefix span{color:var(--faint);font-size:13px;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.input-prefix input{padding-left:26px}.tax-note{background:var(--surface-soft);color:var(--sage-deep);border-radius:10px;gap:9px;margin-top:20px;padding:12px;display:flex}.tax-note p{color:var(--muted);margin:0;font-size:11px;line-height:1.55}.tax-note strong{color:var(--ink)}.security-card{color:var(--sage-deep);gap:14px;padding:20px;display:flex}.security-card h3{margin:0;font-size:16px}.security-card p{color:var(--muted);margin:5px 0 0;font-size:12px;line-height:1.55}.login-page{background:radial-gradient(circle at 80% 15%, #e4d9ca 0 10%, transparent 10.2%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:var(--surface);border-radius:22px;width:min(460px,100%);padding:30px;box-shadow:0 30px 80px #302d251f}.login-copy{margin:48px 0 25px}.login-copy .profile-avatar{margin-bottom:17px}.login-copy h1{font-family:var(--font-display);letter-spacing:-.04em;margin:7px 0 0;font-size:42px;font-weight:500}.login-copy>p:last-child{color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.65}.login-form{gap:13px;display:grid}.login-form label>span{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.login-form label>div{border:1px solid var(--line);background:var(--surface-soft);height:43px;color:var(--faint);border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:flex}.login-form input{background:0 0;border:0;outline:0;width:100%;font-size:13px}.login-message{border-radius:8px;margin:0;padding:9px;font-size:12px}.login-message.success{background:var(--sage-soft);color:var(--success)}.login-message.error{background:var(--rose-soft);color:var(--danger)}.login-privacy{color:var(--faint);align-items:center;gap:6px;margin:22px 0 0;font-size:11px;display:flex}.studio-site{color:#203029;background:#f5f1e9;min-height:100vh}.studio-nav{border-bottom:1px solid #d8d1c5;justify-content:space-between;align-items:center;width:min(1180px,100% - 64px);height:90px;margin:0 auto;display:flex}.studio-wordmark{font-family:var(--font-display);align-items:center;gap:10px;font-size:15px;display:flex}.studio-wordmark>span{background:var(--sage-deep);color:#fff;border-radius:50%;place-items:center;width:35px;height:35px;font-size:19px;display:grid}.studio-nav nav{color:#667169;gap:24px;margin-inline:auto;font-size:13px;display:flex}.studio-nav nav a{transition:color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard)}.studio-nav nav a:hover{color:var(--sage-deep)}.studio-nav nav a>span{position:relative}.studio-nav nav a.is-current{color:var(--sage-deep)}.studio-nav nav a.is-current>span:after{content:"";background:currentColor;height:1px;position:absolute;inset:auto 0 -6px}.studio-site section[id]{scroll-margin-top:calc(var(--kl-nav-h,90px) + 18px)}.studio-hero{text-align:center;width:min(1180px,100% - 64px);margin:0 auto;padding:118px 0 86px}.hero-copy{margin-inline:auto}.studio-kicker{color:#8b7564}.hero-places{display:block}.hero-copy h1{overflow-wrap:break-word;max-width:1100px;font-family:var(--font-display);letter-spacing:-.048em;margin:22px auto 0;font-size:clamp(52px,6vw,82px);font-weight:400;line-height:.98}.hero-copy>p:not(.studio-kicker){text-wrap:pretty;color:#68736c;max-width:580px;margin:28px auto 0;font-size:15px;line-height:1.8}.hero-actions{justify-content:center;align-items:center;gap:23px;margin-top:38px;display:flex}.button-studio{background:var(--sage-deep);color:#fff;border-radius:0;min-height:48px;padding:0 20px}.hero-trust{color:#6d766f;border-top:1px solid #ddd6ca;flex-wrap:wrap;justify-content:center;gap:14px 30px;max-width:660px;margin:46px auto 0;padding-top:26px;font-size:12px;display:flex}.hero-trust span{align-items:center;gap:5px;display:flex}.hero-band{background:#10150f;place-items:center;padding:clamp(0px,2vw,30px) max(0px,50% - 590px);display:grid;position:relative;overflow:hidden}.hero-band img{width:100%;max-width:1180px;height:auto;display:block}.studio-stage{color:#f2ede3;background:#10150f;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);min-height:630px;display:grid}.stage-photo{position:relative}.stage-photo img{object-fit:cover;object-position:44% 47%;width:100%;height:100%;position:absolute;inset:0}.stage-copy{align-self:center;padding:84px max(32px,50% - 590px) 84px 64px}.stage-copy .studio-kicker{color:#d3ae8c}.stage-copy h2{font-family:var(--font-display);letter-spacing:-.035em;margin:16px 0 0;font-size:clamp(33px,3.6vw,48px);font-weight:400;line-height:1.08}.stage-copy>p{color:#f2ede3bd;margin:24px 0 0;font-size:15px;line-height:1.85}.stage-credentials{color:#f2ede38c;letter-spacing:.1em;text-transform:uppercase;border-top:1px solid #f2ede338;gap:18px;margin-top:42px;padding-top:26px;font-size:11px;display:grid}.stage-credentials strong{color:#f2ede3;font-family:var(--font-display);letter-spacing:-.01em;text-transform:none;margin-bottom:5px;font-size:17px;font-weight:500;display:block}.studio-intro{background:#fffdf8;grid-template-columns:minmax(0,300px) minmax(0,1fr);align-items:start;gap:64px;padding:92px max(32px,50% - 590px);display:grid}.studio-intro h2,.lesson-offer h2,.studio-contact h2{max-width:540px;font-family:var(--font-display);letter-spacing:-.035em;margin:15px 0 0;font-size:clamp(37px,4vw,54px);font-weight:400;line-height:1.06}.studio-intro>div:nth-child(2)>p:not(.studio-kicker){color:#69746d;margin:22px 0 0;font-size:15px;line-height:1.9}.studio-intro>div:nth-child(2)>p:not(.studio-kicker)+p{margin-top:18px}.studio-facts{color:#879087;text-transform:uppercase;border-top:1px solid #ded8ce;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:38px;padding-top:24px;font-size:11px;display:grid}.studio-facts strong{color:var(--ink);font-family:var(--font-display);text-transform:none;margin-bottom:5px;font-size:17px;font-weight:500;display:block}.studio-profile-detail{background:#fffdf8;grid-template-columns:repeat(3,1fr);padding:0 max(32px,50% - 590px) 110px;display:grid}.studio-profile-detail article{border-top:1px solid #ded8ce;border-left:1px solid #ded8ce;min-height:320px;padding:38px 34px 30px}.studio-profile-detail article:first-child{border-left:0}.studio-profile-detail article>svg{color:var(--clay);margin-bottom:34px}.studio-profile-detail h3,.format-grid h3,.course-list h3,.event-list h3{font-family:var(--font-display);letter-spacing:-.02em;margin:13px 0 0;font-size:23px;font-weight:500}.studio-profile-detail article>p:last-child,.format-grid p{color:#6b756e;margin:14px 0 0;font-size:13px;line-height:1.75}.lesson-offer{padding:110px max(32px,50% - 590px)}.lesson-offer-heading{justify-content:space-between;align-items:flex-end;display:flex}.offer-grid{border-block:1px solid #d8d1c5;grid-template-columns:repeat(3,1fr);margin-top:58px;display:grid}.offer-grid article{border-left:1px solid #d8d1c5;min-height:310px;padding:42px 35px;position:relative}.offer-grid article:first-child{border-left:0}.offer-grid article>span{color:#a79e91;font-family:var(--font-display);font-size:13px;position:absolute;top:18px;right:20px}.offer-grid svg{color:var(--clay)}.offer-grid h3{font-family:var(--font-display);margin:55px 0 0;font-size:23px;font-weight:500}.offer-grid p{color:#6b756e;margin:14px 0 0;font-size:13px;line-height:1.7}.lesson-formats{background:#e9e3d8;padding:100px max(32px,50% - 590px)}.section-heading-compact{max-width:620px;margin-bottom:54px}.section-heading-compact h2,.courses-heading h2,.events-heading h2{font-family:var(--font-display);letter-spacing:-.035em;margin:15px 0 0;font-size:clamp(35px,4vw,50px);font-weight:400;line-height:1.08}.format-grid{border-block:1px solid #cec5b8;grid-template-columns:repeat(3,1fr);display:grid}.format-grid article{border-left:1px solid #cec5b8;padding:34px 28px 38px}.format-photo{aspect-ratio:5/4;background:#d9d2c5;border-radius:4px;margin-bottom:30px;overflow:hidden}.format-photo img{object-fit:cover;width:100%;height:100%;display:block}.format-grid article:first-child .format-photo img{object-position:44% center}.format-grid article:nth-child(2) .format-photo img{object-position:center 27%}.format-grid article:nth-child(3) .format-photo img{object-position:center 46%}.format-grid article:first-child{border-left:0}.format-grid svg{color:var(--sage-deep)}.format-grid h3{margin-top:28px;font-size:19px}.studio-courses{background:#fffdf8;padding:110px max(32px,50% - 590px)}.courses-heading{grid-template-columns:1fr .65fr;align-items:end;gap:70px;display:grid}.courses-heading>p{color:#6b756e;margin:0 0 5px;font-size:14px;line-height:1.8}.course-list{border-top:1px solid #d8d1c5;margin-top:60px}.course-list article{border-bottom:1px solid #d8d1c5;grid-template-columns:38px 28px 1fr auto;align-items:center;gap:22px;min-height:96px;display:grid}.course-number{color:#9a9185;font-family:var(--font-display);font-size:13px}.course-list svg{color:var(--clay)}.course-list h3{margin:0;font-size:19px}.course-list p{color:#8a928d;text-transform:uppercase;margin:5px 0 0;font-size:12px}.course-list article>strong{color:var(--sage-deep);font-family:var(--font-display);font-size:24px;font-weight:500}.studio-quote{background:var(--sage-deep);color:#fff;text-align:center;padding:100px max(32px,50% - 450px)}.studio-quote svg{color:#cfaa89}.studio-quote blockquote{font-family:var(--font-display);margin:24px 0;font-size:clamp(30px,4vw,47px);font-weight:400;line-height:1.25}.studio-quote p{color:#ffffff94;letter-spacing:.12em;text-transform:uppercase;font-size:12px}.studio-events{grid-template-columns:.78fr 1.22fr;gap:95px;padding:110px max(32px,50% - 590px);display:grid}.events-heading>p:last-child{color:#6b756e;max-width:420px;margin:24px 0 0;font-size:14px;line-height:1.8}.event-list article{grid-template-columns:108px 30px minmax(0,1fr) 190px;gap:15px;min-height:156px;display:grid}.event-list article>span{color:#8d7969;text-transform:uppercase;padding-top:5px;font-size:12px;font-weight:700}.event-marker{color:var(--clay);justify-content:center;display:flex;position:relative}.event-marker svg{z-index:1;box-sizing:content-box;background:#f5f1e9;border:7px solid #f5f1e9;border-radius:50%;position:relative}.event-marker i{background:#d8d1c5;width:1px;position:absolute;inset:32px auto 0}.event-list article:last-child .event-marker i{display:none}.event-list h3{margin:7px 0 0;font-size:22px}.event-body>p{color:#a09990;letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.event-body>span{color:#6b756e;margin-top:12px;font-size:13px;line-height:1.7;display:block}.event-list article.event-unillustrated .event-body{grid-column:3/-1}.event-photo{aspect-ratio:1/1.414;background:#fbf8f2;border:1px solid #d8d1c5;border-radius:3px;align-self:start;place-items:center;margin:0 0 34px 14px;padding:7px;display:grid}.event-photo img{width:auto;max-width:100%;height:auto;max-height:100%;display:block}.events-gallery{grid-column:1/-1;grid-template-columns:1.25fr 1.25fr .8fr;gap:18px;margin-top:28px;display:grid}.events-gallery>div{height:330px;box-shadow:var(--shadow);background:#e4ded3;border-radius:8px;overflow:hidden}.events-gallery img{object-fit:cover;width:100%;height:100%;display:block}.events-gallery>div:first-child img{object-position:center 44%}.events-gallery>div:nth-child(2) img{object-position:center 40%}.events-gallery>div:nth-child(3) img{object-position:center 42%}.events-gallery>div:nth-child(4) img{object-position:center 40%}.events-gallery>div:nth-child(5) img{object-position:center 46%}.events-gallery>div:nth-child(6) img{object-position:center 34%}.studio-contact{color:#241e1a;background:#c98d70;grid-template-columns:1fr 1fr;gap:90px;padding:110px max(32px,50% - 590px);display:grid}.studio-contact .studio-kicker{color:#604132}.studio-contact>div:nth-child(2) p{margin:0;font-size:14px;line-height:1.8}.contact-details{border-block:1px solid #241e1a38;gap:0;margin-top:28px;display:grid}.contact-details>a,.contact-details>div{border-bottom:1px solid #241e1a2e;align-items:center;gap:13px;min-height:62px;display:flex}.contact-details>:last-child{border-bottom:0}.contact-details span{font-size:13px}.contact-details small{color:#241e1a99;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.button-studio-light{color:#3c2d25;background:#fff7ef;border-radius:0;min-height:46px;margin-top:26px}.studio-footer{color:#ffffff94;text-transform:uppercase;background:#1d2823;justify-content:space-between;gap:20px;padding:30px max(32px,50% - 590px);font-size:11px;display:flex}.studio-footer span{align-items:center;gap:5px;display:flex}.footer-return{color:#ffffffdb;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);border:1px solid #ffffff4d;border-radius:999px;flex:none;align-items:center;gap:6px;padding:8px 15px;font-size:11px;display:inline-flex}.footer-return:hover{color:#fff;background:#ffffff1f}@media (max-width:1180px){.page-wrap{padding-inline:30px}.metric-grid{grid-template-columns:repeat(2,1fr)}.metric-card:nth-child(3){border-left:0;border-top:1px solid var(--line-soft)}.metric-card:nth-child(4){border-top:1px solid var(--line-soft)}.student-grid{grid-template-columns:repeat(2,1fr)}.payment-summary-grid{grid-template-columns:repeat(4,1fr)}.payment-summary-grid>div:nth-child(5){border-top:1px solid var(--line-soft);border-left:0}.payment-summary-grid>div:nth-child(n+6){border-top:1px solid var(--line-soft)}}@media (max-width:900px){.sidebar{display:none}.app-main{margin-left:0;padding:74px 0 76px}.pull-refresh{top:26px}.mobile-shell-header{z-index:30;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ece8dff0;justify-content:space-between;align-items:center;height:64px;padding:0 18px;display:flex;position:fixed;inset:0 0 auto}.mobile-brand .brand-mark{flex-basis:34px;width:34px;height:34px;font-size:18px}.mobile-brand strong{font-size:15px}.mobile-nav{z-index:30;border-top:1px solid var(--line);min-height:62px;padding:6px 2px max(6px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf9f5;grid-template-columns:repeat(7,1fr);display:grid;position:fixed;inset:auto 0 0}.mobile-nav a{min-width:0;color:var(--faint);letter-spacing:-.01em;text-align:center;align-content:center;place-items:center;gap:3px;font-size:12px;line-height:1.1;display:grid}.mobile-nav a span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.mobile-nav a.is-active{color:var(--sage-deep)}.dashboard-grid{grid-template-columns:1fr}.month-grid{min-width:700px}.month-scroll{overscroll-behavior-x:contain;scrollbar-width:thin;padding-bottom:4px;overflow-x:auto}.schedule-controls{flex-wrap:wrap;gap:10px}.report-layout{grid-template-columns:1fr}.settings-section{grid-template-columns:1fr;gap:15px}.settings-intro>p:last-child{max-width:none}.studio-intro,.studio-contact{grid-template-columns:1fr;gap:38px}.studio-profile-detail{grid-template-columns:1fr}.studio-profile-detail article{border-left:0;min-height:auto}.studio-events{grid-template-columns:1fr;gap:48px}.studio-stage{min-height:0;display:block}.stage-photo{aspect-ratio:3/2}.stage-photo img{object-position:46% 47%}.stage-copy{padding:46px max(20px,50% - 590px) 62px}.section-heading-compact{margin-bottom:40px}.events-gallery{grid-template-columns:1fr 1fr;gap:14px}.events-gallery>div{height:240px}.courses-heading{grid-template-columns:1fr;gap:24px}}@media screen and (max-width:760px){.statement-sheet{padding:18px 15px}.record-sheet{padding:22px 17px}.record-masthead h2{font-size:25px}.statement-sheet>section{overscroll-behavior-x:contain;overflow-x:auto}.statement-table{font-size:13px}.statement-breakdown{min-width:620px}.statement-sheet-header{gap:12px}.statement-sheet-meta span{grid-template-columns:1fr auto}}@media (max-width:1280px){.responsive-table{overflow:visible}.responsive-table table,.responsive-table tbody,.responsive-table tr,.responsive-table td{width:100%;display:block}.responsive-table thead{display:none}.responsive-table tbody{gap:10px;padding:10px;display:grid}.responsive-table tbody tr{border:1px solid var(--line-soft);background:var(--surface);border-radius:11px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}@media (min-width:901px){.responsive-table tbody tr{grid-template-columns:repeat(3,minmax(0,1fr))}}.responsive-table td{border:0;border-left:1px solid var(--line-soft);white-space:normal;padding:11px 13px;display:block}.responsive-table td:before{color:var(--faint);letter-spacing:.02em;text-transform:uppercase;content:attr(data-label);margin-bottom:5px;font-size:11px;font-weight:750;display:block}.responsive-table td strong{font-family:var(--font-display);font-size:15px;font-weight:550}.responsive-table td:first-child{border-left:0;border-bottom:1px solid var(--line-soft);grid-column:1/-1;padding:13px 13px 12px}.responsive-table td:first-child:before,.responsive-table td.row-actions:before{display:none}.responsive-table td:nth-child(2n){border-left:0}@media (min-width:901px){.responsive-table td:nth-child(2n){border-left:1px solid var(--line-soft)}.responsive-table td:nth-child(3n+2){border-left:0}}.responsive-table td[data-label=Status]{border-left:0;border-top:1px solid var(--line-soft);grid-column:1/-1;margin-top:4px;padding-top:12px}.responsive-table td.row-actions{box-shadow:none;border-left:0;grid-column:1/-1;justify-content:flex-end;align-items:center;padding-top:9px;display:flex;position:static}}@media (max-width:560px){.responsive-table tbody tr{grid-template-columns:1fr}}@media (max-width:680px){.page-wrap{padding:28px 16px 42px}.page-header{flex-direction:column;align-items:flex-start;gap:18px}.header-actions{flex-wrap:wrap;justify-content:space-between;width:100%}.header-actions>.month-picker{min-width:max-content}.header-actions .button{white-space:nowrap}.metric-grid{grid-template-columns:1fr}.metric-card{border-top:1px solid var(--line-soft);border-left:0}.metric-card:first-child{border-top:0}.metric-card>strong{font-size:31px}.today-panel,.payment-panel,.statement-panel{padding:19px}.lesson-row{grid-template-columns:40px 17px 1fr}.lesson-duration{display:none}.payment-summary-grid{grid-template-columns:repeat(2,1fr)}.payment-summary-grid>div{border-top:1px solid var(--line-soft)}.payment-summary-grid>div:nth-child(-n+2){border-top:0}.payment-summary-grid>div:nth-child(odd){border-left:0}.reconciliation-line{flex-direction:column;align-items:flex-start;line-height:1.5}.dialog-backdrop{align-items:end;padding:0}.payment-dialog{border-radius:18px 18px 0 0;width:100%}.payment-dialog-summary,.choice-grid,.student-grid{grid-template-columns:1fr}.directory-toolbar{flex-wrap:wrap;align-items:stretch}.search-field{flex:100%}.directory-toolbar>span{margin-left:0}.report-history>div{flex-wrap:wrap;align-items:center;gap:9px 11px;padding:12px 0;display:flex}.report-history>div>span:nth-of-type(2){flex:150px}.report-received{text-align:right;margin-left:auto}.report-history>div>.text-link{margin-left:auto}.form-grid{grid-template-columns:1fr}.settings-card-footer{flex-direction:column;align-items:flex-start}.settings-card-footer .button{width:100%}.studio-nav,.studio-hero{width:min(100% - 32px,1180px)}.studio-nav{height:70px}.studio-nav nav{display:none}.studio-hero{min-height:auto;padding:75px 0}.hero-copy h1{font-size:49px}.hero-copy>p:not(.studio-kicker){font-size:14px}.hero-actions{flex-direction:column;align-items:center}.studio-intro,.lesson-offer,.lesson-formats,.studio-courses,.studio-events,.studio-contact{padding:80px 20px}.studio-profile-detail{padding:0 20px 80px}.studio-facts,.offer-grid{grid-template-columns:1fr}.offer-grid article{border-top:1px solid #d8d1c5;border-left:0;min-height:240px}.offer-grid article:first-child{border-top:0}.format-grid,.event-list,.events-gallery{overscroll-behavior-x:contain;scrollbar-width:none;margin-inline:-20px;padding-inline:20px;overflow-x:auto}.format-grid::-webkit-scrollbar{display:none}.event-list::-webkit-scrollbar{display:none}.events-gallery::-webkit-scrollbar{display:none}.events-gallery{grid-template-columns:none;gap:14px;margin-top:26px;display:flex}.events-gallery>div{flex:0 0 76%;height:232px}.format-grid{border-block:0;grid-template-columns:none;gap:14px;display:flex}.format-grid article{border:1px solid #cec5b8;border-radius:10px;flex:0 0 82%;padding:20px 20px 26px}.format-grid article:first-child{border-left:1px solid #cec5b8}.format-grid h3{margin-top:22px}.format-photo{max-width:none}.course-list article{grid-template-columns:28px 22px 1fr;gap:12px;padding:17px 0}.course-list article>strong{grid-column:3;margin-top:-8px;font-size:20px}.event-list{gap:16px;display:flex}.event-list article{flex:0 0 84%;grid-template-rows:auto auto 1fr auto;grid-template-columns:minmax(0,1fr);gap:0;min-height:0}.event-list article>span{margin-bottom:7px;padding-top:0}.event-marker{order:-1;justify-content:flex-start;align-items:center;height:31px;margin-bottom:10px}.event-marker i{width:auto;height:1px;inset:50% -16px auto 34px}.event-photo{align-self:end;max-width:178px;margin:18px 0 0}.studio-quote{padding:80px 24px}.studio-footer{flex-direction:column;align-items:flex-start;padding-inline:20px}}.statement-sheet{background:var(--surface,#fff);border:1px solid var(--line,#e4e0d8);border-radius:14px;margin-top:18px;padding:28px}.statement-sheet-header{border-bottom:2px solid var(--ink,#2c2a26);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;padding-bottom:14px;display:flex}.statement-sheet-header h2{letter-spacing:.08em;margin:0;font-size:22px}.statement-sheet-header p{color:var(--faint,#8a857c);margin:2px 0 0;font-size:13px}.statement-sheet-meta{gap:6px;font-size:13px;display:grid}.statement-sheet-meta span{color:var(--faint,#8a857c);grid-template-columns:auto 1fr;gap:10px;display:grid}.statement-sheet-meta strong{color:var(--ink,#2c2a26);text-align:right}.statement-sheet section{margin-bottom:20px}.statement-sheet h3{letter-spacing:.06em;text-transform:uppercase;color:var(--faint,#8a857c);margin:0 0 8px;font-size:14px}.statement-table{border-collapse:collapse;width:100%;font-size:14px}.statement-table th,.statement-table td{letter-spacing:normal;text-transform:none;white-space:normal;background:0 0}.statement-table th{text-align:left;border-bottom:1px solid var(--line,#e4e0d8);color:inherit;font-weight:400;font-size:inherit;padding:8px 14px 8px 4px}.statement-table td{text-align:right;border-bottom:1px solid var(--line,#e4e0d8);color:inherit;font-size:inherit;font-variant-numeric:tabular-nums;border-top:0;padding:8px 4px 8px 14px}.statement-table .statement-subtotal th,.statement-table .statement-subtotal td{border-bottom:2px solid var(--ink,#2c2a26);font-weight:600}.statement-breakdown thead th{text-transform:uppercase;letter-spacing:.05em;color:var(--faint,#8a857c);font-size:12px}.statement-breakdown thead th+th{text-align:right}.statement-breakdown td small{color:var(--faint,#8a857c)}.statement-breakdown .unit-cell{color:var(--muted,#6f6a61)}.statement-breakdown th:first-child,.statement-breakdown td:first-child{text-align:left;padding-left:4px;padding-right:14px}.expense-editor{border:1px dashed var(--line,#e4e0d8);background:var(--tint,#f6f3ed);border-radius:12px;margin-bottom:20px;padding:16px}.expense-editor h2{font-family:var(--font-display);letter-spacing:-.02em;margin:4px 0 0;font-size:17px;font-weight:550}.expense-editor>.field-hint{margin:8px 0 0}.expense-rows{gap:12px;margin:14px 0 0;padding:0;list-style:none;display:grid}.expense-rows li{align-items:flex-end;gap:8px;display:flex}.expense-rows .form-grid{flex:1;gap:12px;min-width:0}.expense-rows .icon-button{margin-bottom:2px}.expense-add{justify-content:center;width:100%;margin-top:12px}.expense-total{background:var(--surface);color:var(--muted);border-radius:10px;justify-content:space-between;align-items:baseline;margin:14px 0 0;padding:10px 12px;font-size:12px;font-weight:700;display:flex}.expense-total strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:17px}.expense-editor .form-error,.expense-editor .inline-success{margin:12px 0 0}.expense-footer{justify-content:flex-end;margin-top:14px;display:flex}.statement-pending{color:var(--muted);align-items:flex-start;gap:10px;margin-bottom:20px;font-size:13px;line-height:1.6;display:flex}.statement-pending svg{color:var(--clay);flex:none;margin-top:2px}.statement-pending strong{color:var(--ink);margin-bottom:3px;font-size:14px;display:block}.statement-note-field{margin-top:14px;display:block}.statement-note-field>span{color:var(--muted);margin-bottom:6px;font-size:13px;font-weight:650;display:block}.statement-note-field :where(textarea,input){border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);font:inherit;border-radius:10px;padding:10px 12px;font-size:15px;line-height:1.5;display:block}.statement-note-field textarea{resize:vertical;min-height:76px}.statement-note-field input{font-variant-numeric:tabular-nums;max-width:220px;height:44px;padding-block:0}.statement-note-field :where(textarea,input):focus-visible{border-color:var(--sage);outline:2px solid color-mix(in srgb, var(--sage) 48%, transparent);outline-offset:1px}@media (max-width:680px){.expense-rows li{align-items:flex-end}.expense-editor{padding:14px}}.statement-result{background:var(--tint,#f6f3ed);border-radius:10px;justify-content:space-between;align-items:baseline;padding:14px 16px;display:flex}.statement-result strong{font-variant-numeric:tabular-nums;font-size:22px}.statement-note{border-top:1px solid var(--line,#e4e0d8);padding-top:12px}.statement-note p{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.7}.statement-disclaimer{border-top:1px solid var(--line,#e4e0d8);padding-top:12px}.statement-payers{gap:20px;display:grid}.statement-payer h4{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 7px;font-size:15px;font-weight:650;display:flex}.statement-payer h4 small{color:var(--faint,#8a857c);font-size:12px;font-weight:500}.statement-breakdown tfoot th{font-size:13px}.statement-breakdown tfoot td{text-align:right}.statement-variance{color:var(--danger,#9c4f44);font-style:normal;font-weight:650}.statement-variance-note{background:var(--rose-soft,#f2e1df);color:var(--danger,#9c4f44);border-radius:9px;margin:14px 0 0;padding:11px 13px;font-size:12px;line-height:1.65}.statement-variance-note span{color:var(--muted,#68716c);margin-top:3px;display:block}.statement-disclaimer p{color:var(--faint,#8a857c);margin:0 0 6px;font-size:13px;line-height:1.6}.profile-chip-form{align-items:center;gap:6px;display:flex}.profile-chip-form .profile-chip{flex:1}@media print{.sidebar,.mobile-nav,.mobile-shell-header,.no-print,.header-actions{display:none!important}.app-frame,.app-main,.page-wrap{max-width:none;margin:0;padding:0;display:block}.statement-sheet{border:none;border-radius:0;margin:0;padding:0}.record-sheet{box-shadow:none;border:none;border-radius:0;margin:0;padding:0}.record-timeline>li,.record-facts,.statement-payer{break-inside:avoid}.statement-sheet section{break-inside:auto}.statement-result,.statement-variance-note,.statement-note{break-inside:avoid}body{color:#000;background:#fff}@page{margin:16mm}}.studio-wordmark img{object-fit:cover;border-radius:50%;width:35px;height:35px}.intro-portrait{width:min(300px,100%);box-shadow:var(--shadow);border-radius:150px 150px 10px 10px;overflow:hidden}.intro-portrait img{width:100%;height:auto;display:block}.courses-note{color:#6b756e;margin:30px 0 0;font-size:13px;line-height:1.8}.studio-nav{z-index:40;-webkit-backdrop-filter:blur(10px);background:#f5f1e9eb;width:100%;padding:0 max(32px,50% - 590px);position:sticky;top:0}.studio-wordmark{flex-shrink:0}.studio-wordmark strong{white-space:nowrap}.studio-lang{color:#97998f;background:#ffffff80;border:1px solid #d8d1c5;border-radius:999px;flex-shrink:0;align-items:center;gap:2px;padding:3px 3px 3px 9px;display:flex;position:relative}.studio-lang-toggle{display:none}.studio-lang-list{align-items:center;gap:2px;display:flex}.studio-lang-list>a{color:#667169;white-space:nowrap;min-height:28px;transition:color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard);border-radius:999px;align-items:center;padding:0 10px;font-size:12px;line-height:1;display:flex}.studio-lang-list>a:hover{color:var(--sage-deep)}.studio-lang-list>a.is-current{background:var(--sage-deep);color:#fff;font-weight:700}[data-zoom]{cursor:zoom-in}[data-zoom]:focus-visible{outline:2px solid var(--sage-deep);outline-offset:4px}.hero-band[data-zoom] img,.intro-portrait[data-zoom] img,.stage-photo[data-zoom] img,.format-photo[data-zoom] img,.events-gallery>[data-zoom] img{transition:transform var(--motion-page) var(--ease-standard)}.hero-band[data-zoom]:hover img,.intro-portrait[data-zoom]:hover img,.stage-photo[data-zoom]:hover img,.format-photo[data-zoom]:hover img,.events-gallery>[data-zoom]:hover img{transform:scale(1.035)}.stage-photo{overflow:hidden}.event-photo[data-zoom]{transition:border-color var(--motion-fast) var(--ease-standard)}.event-photo[data-zoom]:hover{border-color:var(--sage-deep)}.photo-viewer{z-index:100;-webkit-backdrop-filter:blur(7px);animation:photo-viewer-in var(--motion-page) var(--ease-standard);cursor:zoom-out;background:#f5f1e9f2;place-items:center;padding:clamp(18px,5vw,54px);display:grid;position:fixed;inset:0}.photo-viewer figure{cursor:default;justify-items:center;max-width:100%;margin:0;display:grid}.photo-viewer img{background:var(--surface);border:1px solid #d8d1c5;border-radius:4px;width:auto;max-width:min(1100px,88vw);height:auto;max-height:calc(100vh - clamp(110px,20vh,190px));padding:10px;display:block;box-shadow:0 26px 64px #2527222b}.photo-viewer figcaption{color:#6b756e;text-align:center;max-width:min(620px,88vw);margin-top:17px;font-size:12.5px;line-height:1.65}.photo-viewer-close{background:var(--surface);color:#667169;width:42px;height:42px;transition:color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard);border:1px solid #d8d1c5;border-radius:50%;place-items:center;display:grid;position:fixed;top:clamp(14px,3vw,26px);right:clamp(14px,3vw,26px)}.photo-viewer-close:hover{border-color:var(--sage-deep);color:var(--sage-deep)}@keyframes photo-viewer-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.photo-viewer{animation:none}.hero-band[data-zoom] img,.intro-portrait[data-zoom] img,.stage-photo[data-zoom] img,.format-photo[data-zoom] img,.events-gallery>[data-zoom] img{transition:none}.hero-band[data-zoom]:hover img,.intro-portrait[data-zoom]:hover img,.stage-photo[data-zoom]:hover img,.format-photo[data-zoom]:hover img,.events-gallery>[data-zoom]:hover img{transform:none}}.studio-actions{z-index:60;flex-direction:row;align-items:center;gap:10px;display:flex;position:fixed;bottom:26px;right:26px}.studio-actions>*{opacity:0;pointer-events:none;transition:opacity .22s,transform .22s,background .18s,color .18s;transform:translateY(9px)}.studio-actions>.is-visible{opacity:1;pointer-events:auto;transform:none}.action-contact{background:var(--sage-deep);color:#fff;white-space:nowrap;height:44px;box-shadow:var(--shadow), 0 0 0 1.5px #f5f1e9e0;border-radius:999px;align-items:center;gap:8px;padding:0 19px;font-size:13px;font-weight:700;display:flex}.action-contact:hover{background:#23362e}.studio-return{background:var(--sage-deep);color:#fff;width:44px;height:44px;box-shadow:var(--shadow), 0 0 0 1.5px #f5f1e9e0;cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid}.studio-return:hover{background:#23362e}@media (max-width:680px){.studio-nav{flex-wrap:wrap;gap:6px 10px;height:auto;padding:11px 16px 9px}.studio-nav nav{order:3;grid-template-columns:repeat(auto-fit,minmax(52px,1fr));gap:2px;width:100%;font-size:12px;display:grid}.studio-nav nav a{text-align:center;white-space:nowrap;place-items:center;min-height:44px;padding-inline:3px;display:grid}.studio-wordmark{flex:1 1 0;gap:8px;min-width:0;font-size:13px}.studio-wordmark strong{text-overflow:ellipsis;min-width:0;overflow:hidden}.studio-lang{background:0 0;border:0;gap:0;padding:0}.studio-lang-mark{display:none}.studio-lang-toggle{color:#667169;background:#ffffff80;border:1px solid #d8d1c5;border-radius:999px;align-items:center;gap:6px;min-height:36px;padding:0 9px 0 10px;font-size:12px;line-height:1;display:flex}.studio-lang-toggle>span{text-align:center;min-width:38px}.studio-lang-toggle>svg:last-child{transition:transform var(--motion-fast) var(--ease-standard)}.studio-lang.is-open .studio-lang-toggle{border-color:var(--sage-deep);color:var(--sage-deep)}.studio-lang.is-open .studio-lang-toggle>svg:last-child{transform:rotate(180deg)}.studio-lang-list{z-index:60;background:var(--surface);border:1px solid #d8d1c5;border-radius:12px;grid-auto-flow:row;gap:2px;padding:4px;display:none;position:absolute;inset:calc(100% + 7px) 0 auto auto;box-shadow:0 12px 28px #25272221}.studio-lang.is-open .studio-lang-list{display:grid}.studio-lang-list>a{border-radius:9px;justify-content:center;min-width:116px;min-height:40px;padding:0 12px;font-size:13px}.studio-actions{gap:8px;bottom:16px;right:16px}.action-contact{max-width:calc(100vw - 110px);overflow:hidden}.studio-return{width:40px;height:40px}.action-contact{height:40px;padding:0 16px;font-size:12px}}@media (max-width:400px){.studio-wordmark{font-size:12px}}@media (prefers-reduced-motion:reduce){.studio-actions>*{transition:none}}.message-layout{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:20px;display:grid}.message-students{padding:20px}.message-students .eyebrow{margin-bottom:12px}.message-student-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.message-student{border-radius:var(--radius-sm);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;gap:2px;width:100%;min-height:62px;padding:10px 12px;display:grid}.message-student:hover{background:var(--surface-soft)}.message-student.is-active{border-color:var(--sage-soft);background:var(--sage-soft)}.message-student strong{font-size:14px;font-weight:650}.message-student small{color:var(--muted);font-size:12px}.message-student.is-active small{color:var(--sage-deep)}.message-student-count{color:var(--faint);font-size:12px;font-weight:600}.message-student.is-active .message-student-count{color:var(--sage-deep)}.message-student-count.needs-checking,.message-student.is-active .message-student-count.needs-checking{color:var(--danger)}.message-panel{flex-direction:column;gap:14px;padding:22px 24px 24px;display:flex}.message-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.message-field{display:block}.message-field>span{color:var(--muted);margin-bottom:8px;font-size:13px;font-weight:600;display:block}.message-field textarea{resize:vertical;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft);width:100%;min-height:320px;color:var(--ink);font-family:var(--font-sans);padding:16px 18px;font-size:15px;line-height:1.75;display:block}.message-field textarea:focus-visible{outline:2px solid var(--sage);outline-offset:1px;background:var(--surface)}.message-status{min-height:18px;color:var(--success);margin:0;font-size:13px;font-weight:600}.message-status.is-error{color:var(--danger)}.message-footer{border-top:1px solid var(--line-soft);flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:20px;padding-top:16px;display:flex}.message-breakdown{flex-wrap:wrap;gap:10px 26px;margin:0;display:flex}.message-breakdown div{gap:2px;display:grid}.message-breakdown dt{color:var(--faint);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:700}.message-breakdown dd{margin:0;font-size:15px;font-weight:650}.message-note{color:var(--faint);margin:0;font-size:12px;line-height:1.6}.message-placeholder{text-align:center;color:var(--muted);justify-items:center;gap:8px;padding:60px 24px;display:grid}.message-placeholder h2{font-family:var(--font-display);margin:4px 0 0;font-size:21px;font-weight:550}.message-placeholder p{max-width:46ch;margin:0;font-size:13px;line-height:1.7}.message-placeholder .button{margin-top:10px}@media (max-width:1100px){.message-layout{grid-template-columns:minmax(0,1fr)}.message-student-list{overscroll-behavior-x:contain;flex-direction:row;padding-bottom:4px;overflow-x:auto}.message-student-list>li{flex:none}.message-student{width:auto;min-width:190px}}@media (max-width:680px){.message-panel{padding:18px 16px 20px}.message-toolbar{flex-direction:column;align-items:stretch}.message-toolbar .button{width:100%}.message-field textarea{padding:14px;font-size:15px}}.message-student strong{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.message-student-payer{color:var(--muted);font-size:12px;font-weight:600}.message-student.is-active .message-student-payer{color:var(--sage-deep)}.message-student.is-quiet:not(.is-active) strong,.message-student.is-quiet:not(.is-active) small{opacity:.55}@media (max-width:680px){.month-grid{min-width:0}.month-scroll{overflow-x:visible}.month-day{gap:4px;min-height:64px;padding:6px 5px}.month-day>header{margin-bottom:0}.month-day>header strong{font-size:14px}.month-day>header small{display:none}.month-day.is-today>header strong{width:23px;height:23px;font-size:13px}.month-weekdays span{padding:8px 0;font-size:11px}.page-wrap{padding-top:22px}.page-header{gap:13px;margin-bottom:18px}.page-header h1{font-size:30px}.page-subtitle{margin-top:7px;font-size:14px;line-height:1.5}.header-actions{gap:8px}.header-actions .button{flex:1 1 0;min-width:0;padding:0 11px}.schedule-controls{gap:8px;margin-bottom:10px}.schedule-controls-end{justify-content:space-between;width:100%}.week-switcher strong{min-width:0;font-size:15px}.schedule-legend{flex-wrap:wrap;gap:7px 14px}.action-word{display:none}.student-card{grid-template-columns:42px 1fr;gap:11px;padding:14px}.large-avatar{border-radius:12px;width:42px;height:42px;font-size:15px}.student-card-copy h2{font-size:16px}.student-card-copy p,.student-card-copy span{font-size:12px}.student-card-meta{gap:10px;margin-top:0;padding-top:9px}.student-card-meta span{flex:none}.student-card-meta strong{text-align:right}.student-card-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.student-card-action{flex:0 auto;gap:5px;min-width:0;padding:0 8px;font-size:12px;overflow:hidden}.student-card-action svg{flex:none}.student-card-action>span{text-overflow:ellipsis;overflow:hidden}.sibling-list span{overflow-wrap:anywhere}}@media (max-width:360px){.student-card-action{justify-content:center;width:100%;overflow:visible}.student-card-action>span{text-overflow:clip;overflow:visible}}@media (max-width:680px){.message-student-list{overscroll-behavior-y:contain;flex-direction:column;max-height:46vh;padding-bottom:0;overflow:hidden auto}.message-student-list>li{flex:none}.message-student{width:100%;min-width:0}.message-student strong{flex-wrap:nowrap;min-width:0}.message-student strong>:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.message-students{padding:16px}}.studio-legal{width:min(760px,100% - 64px);margin:0 auto;padding:64px 0 88px}.studio-legal h1{font-family:var(--font-display);letter-spacing:-.03em;margin:12px 0 0;font-size:clamp(34px,4vw,48px);font-weight:400;line-height:1.08}.studio-legal-updated{color:#879087;letter-spacing:.1em;text-transform:uppercase;margin:14px 0 44px;font-size:11px}.studio-legal h2{font-family:var(--font-display);letter-spacing:-.02em;margin:42px 0 0;font-size:22px;font-weight:500}.studio-legal p{color:#69746d;margin:14px 0 0;font-size:15px;line-height:1.9}.studio-legal ul{margin:14px 0 0;padding-left:20px}.studio-legal li{color:#69746d;margin-top:8px;font-size:15px;line-height:1.9}.studio-legal a{color:var(--sage-deep);text-underline-offset:3px;text-decoration:underline}.studio-footer a{color:inherit;text-underline-offset:3px;text-decoration:underline}@media (max-width:720px){.studio-legal{width:calc(100% - 40px);padding:40px 0 60px}.studio-legal h2{margin-top:34px}}.month-picker{position:relative}.month-picker-trigger{border-radius:10px;min-width:132px;height:38px;padding:0 10px;font-size:13px;font-weight:700;width:auto!important;color:var(--ink)!important}.month-picker-trigger:hover{background:#fffc!important}.month-picker-trigger[aria-expanded=true]{background:var(--sage-soft)!important;color:var(--sage-deep)!important}.month-picker-panel{z-index:40;border:1px solid var(--line);background:var(--surface);border-radius:14px;width:300px;padding:12px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 24px 60px #2527222e}.month-picker-year{grid-template-columns:34px 1fr 34px;align-items:center;margin-bottom:10px;display:grid}.month-picker-year button{width:34px;height:34px;color:var(--muted);background:0 0;border:0;border-radius:9px;place-items:center;display:grid}.month-picker-year button:hover{background:var(--surface-soft);color:var(--ink)}.month-picker-year strong{font-family:var(--font-display);text-align:center;font-size:19px;font-weight:550}.month-picker-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.month-cell{background:var(--surface-soft);min-height:46px;color:var(--muted);border:1px solid #0000;border-radius:10px;place-items:center;gap:2px;font-size:13px;font-weight:650;display:grid;position:relative}.month-cell:hover{border-color:var(--line);color:var(--ink);background:#fff}.month-cell.has-activity{background:var(--sage-soft);color:var(--sage-deep)}.month-cell.is-now:after{background:var(--clay);content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:6px;right:7px}.month-cell.is-selected{border-color:var(--sage-deep);background:var(--sage-deep);color:#fff}.month-cell.is-selected.is-now:after{background:#fff}.month-cell em{letter-spacing:.06em;text-transform:uppercase;opacity:.75;font-size:10px;font-style:normal;font-weight:750}.month-picker-foot{border-top:1px solid var(--line-soft);justify-content:center;margin-top:10px;padding-top:9px;display:flex}.month-picker-foot button{white-space:nowrap;width:auto;height:auto;padding:4px 8px}.month-context-note{border:1px solid var(--line);color:var(--muted);background:#fffdf9b8;border-radius:11px;flex-wrap:wrap;align-items:center;gap:8px;margin:-6px 0 18px;padding:10px 14px;font-size:13px;line-height:1.5;display:flex}.month-context-note strong{color:var(--ink)}.year-panel{margin-top:18px;padding:24px}.year-stepper{align-items:center;gap:4px;display:flex}.year-stepper a{border:1px solid var(--line);width:34px;height:34px;color:var(--muted);border-radius:9px;place-items:center;display:grid}.year-stepper a:hover{background:var(--surface-soft);color:var(--ink);border-color:#c8c2b7}.year-stepper strong{min-width:62px;font-family:var(--font-display);text-align:center;font-size:19px;font-weight:550}.year-months{--year-columns:minmax(116px, 1fr) 112px 112px 122px 62px;margin-top:20px}.year-months-head,.year-month{grid-template-columns:var(--year-columns);align-items:center;gap:14px;display:grid}.year-months-head{color:var(--faint);letter-spacing:.08em;text-transform:uppercase;padding:0 10px 8px;font-size:11px;font-weight:750}.year-months-head span:nth-child(n+2),.year-months-head span:last-child{text-align:right}.year-month{border-top:1px solid var(--line-soft);border-radius:9px;min-height:46px;padding:0 10px;transition:background .16s}.year-month:hover{background:var(--surface-soft)}.year-month.is-selected{background:var(--sage-soft)}.year-month.is-quiet{color:var(--faint)}.year-month-name{align-items:baseline;gap:7px;font-size:14px;font-weight:620;display:flex}.year-month.is-quiet .year-month-name{font-weight:550}.year-month.is-selected .year-month-name{color:var(--sage-deep)}.year-month-name em{background:var(--clay);color:#fff;text-transform:uppercase;border-radius:999px;padding:2px 6px;font-size:10px;font-style:normal;font-weight:750}.year-month-figure,.year-month-lessons{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px;font-weight:600}.year-month-figure small,.year-month-lessons small{color:var(--faint);font-size:12px;font-weight:500}.year-month-figure.is-due{color:var(--danger)}.year-month-lessons{color:var(--muted)}.year-total{border-top:1px solid var(--ink);flex-wrap:wrap;align-items:flex-end;gap:12px 32px;margin-top:18px;padding-top:15px;display:flex}.year-total-name{font-family:var(--font-display);margin-right:auto;font-size:18px;font-weight:550}.year-total small{color:var(--faint);font-family:var(--font-sans);font-size:12px;font-weight:500;display:block}.year-total-figures{flex-wrap:wrap;gap:12px 32px;display:flex}.year-total-figures>span{text-align:right;min-width:96px}.year-total-figures small{color:var(--faint);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:750}.year-total strong{font-family:var(--font-display);font-variant-numeric:tabular-nums;margin-top:4px;font-size:19px;font-weight:550;display:block}.calendar-event.is-movable{cursor:grab}.week-grid.is-dragging{-webkit-user-select:none;user-select:none}.week-grid.is-dragging .calendar-event.is-movable{cursor:grabbing}.calendar-event.is-dragging{z-index:5;opacity:.97;box-shadow:0 16px 34px #2527223d}.calendar-event.is-saving{opacity:.82}.calendar-event.is-saving .event-top svg{color:var(--muted)}.event-resize{cursor:ns-resize;height:7px;position:absolute;inset:auto 0 0}.event-resize:after{content:"";opacity:0;background:currentColor;border-radius:2px;width:22px;height:2px;transition:opacity .14s;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.calendar-event:hover .event-resize:after{opacity:.5}.day-column.is-drop-target{background:color-mix(in srgb, var(--sage-soft) 60%, transparent)}.drag-time-label{z-index:6;background:var(--sage-deep);color:#fff;white-space:nowrap;pointer-events:none;font-variant-numeric:tabular-nums;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:750;position:absolute;left:50%;transform:translate(-50%)}.month-event.is-movable{cursor:grab}.month-grid.is-dragging{-webkit-user-select:none;user-select:none}.month-grid.is-dragging .month-event.is-movable{cursor:grabbing}.month-event.is-dragging{opacity:.97;box-shadow:0 10px 22px #25272238}.month-event.is-saving{opacity:.82}.month-event span svg{vertical-align:-1px;color:var(--muted);margin-left:4px}.month-day.is-drop-target{background:var(--sage-soft);box-shadow:inset 0 0 0 2px var(--sage)}@media (pointer:coarse){.event-resize{display:none}.calendar-event.is-movable,.month-event.is-movable{cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.calendar-event.is-dragging,.month-event.is-dragging{transform:scale(1.03)}}.lesson-edit{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.lesson-edit>h3{font-family:var(--font-display);align-items:center;gap:7px;margin:0 0 12px;padding-inline:21px;font-size:16px;font-weight:550;display:flex}.lesson-edit>.button{margin:0 21px 4px}.lesson-facts{margin:0 21px 14px;display:grid}.lesson-facts>div{border-top:1px solid var(--line-soft);grid-template-columns:124px 1fr;gap:12px;padding:8px 0;display:grid}.lesson-facts>div:first-child{border-top:0;padding-top:0}.lesson-facts dt{color:var(--muted);margin:0;font-size:13px}.lesson-facts dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-size:13px;font-weight:570}.lesson-facts .trial-note{background:var(--clay-soft);color:var(--ink);border-radius:999px;margin-left:7px;padding:2px 8px;font-size:12px;font-weight:650}.lesson-danger{border-top:1px solid var(--line);margin-top:20px;padding:16px 21px 21px}.delete-button{min-height:40px;color:var(--danger);background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex}.delete-button:hover{border-color:color-mix(in srgb, var(--danger) 32%, transparent);background:var(--rose-soft)}.delete-button.is-confirm{border-color:var(--danger);background:var(--rose-soft)}.delete-button:disabled{cursor:not-allowed;opacity:.6}.delete-confirm>p{background:var(--rose-soft);color:#7d3d34;border-radius:10px;align-items:flex-start;gap:9px;margin:0 0 12px;padding:12px 13px;font-size:13px;line-height:1.6;display:flex}.delete-confirm>p svg{flex:none;margin-top:2px}.delete-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}@media (max-width:900px){.year-months{--year-columns:104px 1fr 1fr 1fr 44px}.year-panel{padding:18px 15px}.year-months-head,.year-month{gap:8px}.year-month-figure,.year-month-lessons{font-size:12px}}@media (max-width:560px){.month-picker-panel{z-index:90;width:auto;padding:16px 16px max(16px, env(safe-area-inset-bottom));border-radius:18px 18px 0 0;position:fixed;inset:auto 0 0;box-shadow:0 -18px 50px #2527223d}.month-cell{min-height:52px;font-size:14px}.month-picker-trigger{flex:1;min-width:0}.month-picker{flex:1}.year-months{--year-columns:minmax(0, 1fr) auto}.year-months-head{display:none}.year-month{align-items:baseline;gap:3px 12px;min-height:0;padding:11px 10px}.year-month-name{grid-area:1/1}.year-month-figure.is-expected{grid-area:1/2;font-size:14px}.year-month-figure.is-received{text-align:left;grid-area:2/1}.year-month-figure.is-outstanding{grid-area:2/2}.year-month-lessons{display:none}.year-month-figure.is-received:before,.year-month-figure.is-outstanding:before{content:attr(data-label) " ";color:var(--faint);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:750}.year-total{gap:14px}.year-total-name{flex:1 0 100%;margin-right:0}.year-total-figures{flex:1 0 100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 14px;display:grid}.year-total-figures>span{text-align:left;min-width:0}.year-total-figures>span:nth-child(2n){text-align:right}}@keyframes route-enter{0%{opacity:.01}to{opacity:1}}@keyframes skeleton-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.route-stage{min-height:100%;animation:route-enter var(--motion-page) var(--ease-standard) both}:where(button,a[href],summary,[role=button]){touch-action:manipulation;transition:transform var(--motion-fast) var(--ease-standard)}:where(button,summary,[role=button],.mobile-nav a,.sidebar a,.studio-nav nav a,.month-cell){-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}button:not(:disabled):not(.is-dragging):active,a[href]:active,[role=button]:not([aria-disabled=true]):active{transition:transform var(--motion-press) var(--ease-standard);transform:scale(.98)}.student-card:has(.student-card-open:active){transition-duration:var(--motion-press);transform:scale(.992)}:where(a[href],button,summary,[role=button],input,select,textarea):focus-visible{outline:2px solid var(--sage);outline-offset:3px}:where(input,select,textarea){scroll-margin-block:120px}input[type=number]{appearance:textfield}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}:where(.search-field,.login-form label>div,.input-prefix):focus-within{border-color:var(--sage);box-shadow:0 0 0 3px color-mix(in srgb, var(--sage-soft) 72%, transparent)}:where(.form-grid input,.form-grid select,.payment-dialog input,.payment-dialog select,.payment-dialog textarea):focus-visible{border-color:var(--sage);outline:2px solid color-mix(in srgb, var(--sage) 48%, transparent);outline-offset:1px;background:var(--surface)}:where(section[id]){scroll-margin-top:112px}.dashboard-skeleton{-webkit-user-select:none;user-select:none}.skeleton-page-header{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:30px;display:flex}.skeleton-page-header>div{width:min(660px,62%)}.skeleton-block{border:1px solid color-mix(in srgb, var(--line-soft) 76%, transparent);background:linear-gradient(100deg, var(--surface-deep) 18%, var(--surface-soft) 40%, var(--surface-deep) 62%);background-size:240% 100%;animation:1.35s ease-in-out infinite skeleton-shimmer;display:block}.skeleton-line{border:0;border-radius:999px;height:13px}.skeleton-line.is-eyebrow{width:112px}.skeleton-line.is-heading{width:min(340px,78%);height:43px;margin-top:12px}.skeleton-line.is-subtitle{width:min(520px,94%);height:15px;margin-top:12px}.skeleton-action{border-radius:11px;flex:0 0 132px;width:132px;height:42px}.skeleton-metrics{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--line-soft);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-bottom:18px;display:grid;overflow:hidden}.skeleton-metric{border:0;border-radius:0;height:116px}.skeleton-dashboard-grid{grid-template-columns:minmax(0,1.45fr) minmax(310px,.75fr);gap:18px;display:grid}.skeleton-panel{border-radius:var(--radius-md);min-height:270px}.skeleton-panel-tall{min-height:336px}.skeleton-toolbar{border-radius:var(--radius-md);height:58px;margin-bottom:18px}.skeleton-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.skeleton-directory-card{border-radius:14px;height:196px}.skeleton-calendar{border-radius:var(--radius-md);height:min(650px,65vh)}.skeleton-metrics-wide{grid-template-columns:repeat(6,minmax(0,1fr))}.skeleton-summary{border:0;border-radius:0;height:88px}.skeleton-table{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--line-soft);gap:1px;display:grid;overflow:hidden}.skeleton-table-row{border:0;border-radius:0;height:58px}.skeleton-message-grid{grid-template-columns:300px minmax(0,1fr);gap:20px;display:grid}.skeleton-message-list,.skeleton-message-editor{border-radius:var(--radius-md);height:540px}.skeleton-report-grid{grid-template-columns:minmax(0,1.4fr) minmax(270px,.6fr);gap:18px;display:grid}.skeleton-sheet{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);gap:18px;padding:26px;display:grid}.skeleton-sheet-header{border-radius:var(--radius-sm);height:108px}.skeleton-settings-list{gap:22px;display:grid}.skeleton-settings-row{border-top:1px solid var(--line);grid-template-columns:minmax(210px,.52fr) minmax(0,1.48fr);gap:32px;padding-top:28px;display:grid}.skeleton-settings-copy{border-radius:var(--radius-sm);height:92px}.skeleton-settings-card{border-radius:var(--radius-md);height:210px}@media (hover:hover) and (pointer:fine){.icon-button:not(:disabled):hover{background:#fff;border-color:#c8c2b7;box-shadow:0 8px 20px #302d2514}}@media (max-width:1180px){.skeleton-metrics,.skeleton-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skeleton-metrics-wide{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:900px){.mobile-shell-header{height:calc(64px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 18px 0}.app-main{padding-top:calc(74px + env(safe-area-inset-top));padding-bottom:calc(76px + env(safe-area-inset-bottom))}.skeleton-dashboard-grid,.skeleton-report-grid{grid-template-columns:1fr}}@media (max-width:680px){.skeleton-page-header{flex-direction:column;align-items:stretch;gap:18px}.skeleton-page-header>div{width:100%}.skeleton-action{flex-basis:42px;width:100%}.skeleton-metrics,.skeleton-card-grid,.skeleton-metrics-wide,.skeleton-message-grid,.skeleton-settings-row{grid-template-columns:1fr}.skeleton-directory-card{height:170px}.skeleton-calendar{height:500px}.skeleton-message-list{height:260px}.skeleton-message-editor{height:430px}.skeleton-settings-row{gap:15px}.skeleton-settings-copy{height:72px}.skeleton-sheet{padding:18px 16px}.skeleton-sheet-header{height:88px}.payment-dialog{padding-bottom:env(safe-area-inset-bottom)}.studio-actions{bottom:calc(16px + env(safe-area-inset-bottom))}}.app-frame,.app-main,.page-wrap,.studio-site{max-width:100%}.payment-dialog{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-padding-block:82px}.payment-dialog>header{z-index:3;background:color-mix(in srgb, var(--surface) 96%, transparent);position:sticky;top:0}.payment-dialog>header>div{min-width:0}.payment-dialog h2,.calendar-setup,.contact-details span,.student-card-meta strong{overflow-wrap:anywhere}.dialog-backdrop{overscroll-behavior:contain}@media (max-width:680px){.mobile-shell-header{-webkit-backdrop-filter:none;background:#ece8df}.mobile-nav{background:var(--surface);-webkit-backdrop-filter:none}.studio-nav{-webkit-backdrop-filter:none;background:#f5f1e9}.mobile-nav a{min-height:50px}.studio-wordmark{min-height:44px}.studio-return{width:44px;height:44px}.action-contact{height:44px}.button,.button-compact{min-height:44px}.icon-button,.icon-button.subtle{flex:0 0 44px;width:44px;height:44px}.month-switcher,.week-switcher{min-height:46px}.month-switcher>button,.month-switcher>a,.week-switcher>button,.week-switcher>a{flex:0 0 44px;width:44px;height:44px}.month-switcher>.month-picker-trigger{text-overflow:ellipsis;white-space:nowrap;flex:auto;width:auto;min-width:0;height:44px;overflow:hidden}.month-picker-year{grid-template-columns:44px 1fr 44px}.month-picker-year button{width:44px;height:44px}.segmented-control button,.zoom-switch button,.layout-switch button,.directory-layout-switch button,.view-switch a{justify-content:center;align-items:center;min-height:44px;display:inline-flex}.record-payment-button,.delete-button{min-height:44px;font-size:12px}.search-field,.directory-filter select,.form-grid input,.form-grid select,.login-form label>div{min-height:44px}.search-clear{background:0 0;border-radius:10px;flex-basis:44px;width:44px;height:44px;margin-right:-11px}.rating-choice label{justify-content:center;min-width:44px;min-height:44px}.checkbox-field{align-items:center;min-height:44px}.search-field input,.form-grid input,.form-grid select,.login-form input,.payment-dialog input:not([type=radio]):not([type=checkbox]),.payment-dialog select,.payment-dialog textarea{font-size:16px}.payment-dialog input:not([type=radio]):not([type=checkbox]),.payment-dialog select{min-height:44px}.payment-dialog form>label>span,.payment-dialog legend,.form-error,.field-hint,.field-note{font-size:12px}.payment-dialog{max-height:calc(100dvh - env(safe-area-inset-top))}.payment-dialog>header{padding:14px 16px}.payment-dialog form{padding:17px 16px}.payment-dialog footer{background:var(--surface)}.payment-dialog footer .button{flex:1 1 0;min-width:0}.cancelled-lesson{padding:17px 16px}.dialog-footer{padding:15px 16px 17px}.page-header>.button{width:100%}.header-actions>*{min-width:0}.directory-toolbar .button{flex:auto}.directory-filter{flex:calc(50% - 5px)}.directory-filter select{width:100%}.directory-toolbar>span{flex:1 0 100%}.student-card-action{min-height:44px}.settings-card{padding:18px 16px}.settings-card-heading{grid-template-columns:42px minmax(0,1fr)}.settings-card-heading .calendar-connection{grid-column:1/-1;justify-content:flex-start}.calendar-connection .button{width:100%}.calendar-setup{text-align:left}.tax-note p,.settings-card-heading p,.settings-card-footer p,.calendar-connection .calendar-last-sync,.calendar-connection .calendar-sync-status,.calendar-connection .calendar-stale,.calendar-connection .form-error{font-size:12px}.calendar-stale{text-align:left;justify-content:flex-start}.studio-hero{padding:52px 0 58px}.hero-copy h1{font-size:clamp(32px,9vw,44px)}.hero-actions{gap:14px;width:100%;margin-top:28px}.hero-actions .button{width:100%}.studio-intro,.lesson-offer,.lesson-formats,.studio-courses,.studio-events,.studio-contact{padding-block:64px}.studio-profile-detail{padding-bottom:64px}.studio-quote{padding-block:64px}.contact-details>a>span,.contact-details>div>span{min-width:0}}@media (max-width:360px){.year-month{column-gap:8px}.year-month-figure.is-received:before,.year-month-figure.is-outstanding:before{letter-spacing:0;font-size:10px}.header-actions{flex-direction:column;align-items:stretch}.header-actions>*{width:100%}.studio-nav{column-gap:8px}.studio-wordmark strong{text-overflow:ellipsis;max-width:178px;overflow:hidden}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.route-stage,.skeleton-block{animation:none}:where(*){scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.today-panel{margin-bottom:18px}@media (min-width:901px){.statement-panel{grid-column:1/-1}.statement-panel .statement-lines{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:34px}}.level-chip,.past-chip{border-radius:999px;align-items:center;gap:5px;padding:4px 9px;font-size:11px;font-weight:700;display:inline-flex}.level-chip{background:var(--surface-deep);color:var(--ink)}.past-chip{background:var(--surface-soft);color:var(--faint)}.message-dialog{flex-direction:column;width:min(720px,100%);display:flex;overflow:hidden}.message-dialog>header{flex:none}.message-dialog-body{overscroll-behavior:contain;flex-direction:column;flex:auto;gap:14px;min-height:0;padding:18px 21px 21px;display:flex;overflow-y:auto}.message-dialog-body .message-field textarea{min-height:200px}.message-dialog-body .message-placeholder{padding:34px 8px}@media (max-width:680px){.message-dialog-body{gap:12px;padding:16px 16px 18px}.message-dialog-body .message-field textarea{min-height:168px}}.expense-summary-list{gap:0;margin:16px 0 0;padding:0;list-style:none;display:grid}.expense-summary-list li{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;font-size:14px;display:flex}.expense-summary-list li:first-child{border-top:0}.expense-summary-list span{color:var(--muted);overflow-wrap:anywhere}.expense-summary-list strong{font-variant-numeric:tabular-nums;white-space:nowrap}.statement-expense-list{max-width:520px;margin-top:2px}.statement-expense-list li{border-top:0;padding:7px 4px;font-size:13px}.statement-expense-list li+li{border-top:1px solid var(--line-soft)}.statement-expense-list span{color:inherit}.week-panel{margin-bottom:18px;padding:24px}.week-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:20px 0 0;padding:0;list-style:none;display:grid}.week-day{border:1px solid var(--line-soft);background:var(--surface);border-radius:11px;flex-direction:column;gap:7px;min-width:0;padding:10px 8px;display:flex}.week-day.is-today{border-color:var(--sage);background:var(--sage-soft)}.week-day.is-empty{background:var(--surface-soft)}.week-day-name{color:var(--faint);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;align-items:baseline;gap:6px;margin:0;font-size:12px;font-weight:700;display:flex}.week-day-name strong{color:var(--ink);font-family:var(--font-display);letter-spacing:0;font-size:16px;font-weight:550}.week-day.is-today .week-day-name,.week-day.is-today .week-day-name strong{color:var(--sage-deep)}.week-day-free{color:var(--faint);font-size:13px}.week-day-lessons{gap:5px;margin:0;padding:0;list-style:none;display:grid}.week-lesson{border-left:3px solid var(--sage);background:var(--surface-soft);border-radius:7px;gap:1px;padding:5px 7px;display:grid;overflow:hidden}.week-lesson.tone-clay{border-left-color:var(--clay)}.week-lesson.tone-ink{border-left-color:var(--ink)}.week-lesson.tone-rose{border-left-color:var(--rose)}.week-lesson-time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.week-lesson-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:620;overflow:hidden}.week-lesson.is-cancelled{opacity:.6}.week-lesson.is-cancelled .week-lesson-name{text-decoration:line-through}@media (max-width:900px){.week-panel{padding:18px 15px}.week-days{grid-template-columns:1fr;gap:6px}.week-day{flex-direction:row;align-items:flex-start;gap:12px;padding:9px 11px}.week-day-name{flex-direction:column;flex:0 0 46px;align-items:flex-start;gap:1px}.week-day-name strong{font-size:15px}.week-day-lessons{flex-wrap:wrap;flex:auto;gap:6px;min-width:0;display:flex}.week-lesson{align-items:baseline;gap:7px;padding:4px 9px;display:flex}.week-lesson-name{max-width:24ch}.week-day-free{padding-top:3px}}.student-profile-dialog .student-edit-form{flex-direction:column;flex:auto;gap:0;min-height:0;padding:0;display:flex}.student-edit-form .profile-body{align-content:start;gap:22px;display:grid}.student-edit-form .profile-section{gap:12px;display:grid}.student-edit-form .profile-section h3{margin:0}.student-edit-form label{display:block}.student-edit-form label>span{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:750;display:block}.student-edit-form .checkbox-field{display:flex}.student-edit-form .checkbox-field>span{color:var(--ink);margin-bottom:0;font-size:14px;font-weight:500}.student-edit-form .field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.student-edit-form .field-hint{margin:-2px 0 0}.student-edit-form .form-error{margin:0}@media (max-width:560px){.student-edit-form .field-row{grid-template-columns:1fr}}.directory-layout-switch{border:1px solid var(--line);background:#fffdf9b8;border-radius:12px;align-items:center;gap:3px;width:fit-content;margin:0;padding:3px;display:flex}.directory-layout-switch button{min-height:34px;color:var(--muted);background:0 0;border:0;border-radius:9px;align-items:center;gap:6px;padding:0 13px;font-size:13px;font-weight:700;display:inline-flex}.directory-layout-switch button.is-selected{background:var(--sage-deep);color:#fff}.student-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.student-row{border:1px solid var(--line);background:var(--surface);border-radius:13px;grid-template-columns:42px minmax(0,1.5fr) minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:11px 14px;display:grid;position:relative}.student-row:hover{background:var(--surface-soft);border-color:#cfc8bb}.student-row .large-avatar{width:42px;height:42px;font-size:14px}.student-row-copy{gap:2px;min-width:0;display:grid}.student-row-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:620;overflow:hidden}.student-row-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.student-row-tags{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.student-row-price{text-align:right;white-space:nowrap;gap:1px;font-size:14px;font-weight:620;display:grid}.student-row-price small{color:var(--faint);text-transform:uppercase;font-size:11px;font-weight:600}.student-row-actions{z-index:2;gap:4px;display:flex;position:relative}@media (max-width:900px){.student-row{grid-template-columns:38px minmax(0,1fr) auto;gap:10px;padding:10px 12px}.student-row .large-avatar{width:38px;height:38px}.student-row-tags{grid-column:2/-1}.student-row-price{text-align:left;grid-column:2}.student-row-actions{grid-area:3/3}}.report-dialog{flex-direction:column;width:min(560px,100%);display:flex;overflow:hidden}.report-dialog>header{flex:none}.report-dialog-body{overscroll-behavior:contain;align-content:start;gap:20px;min-height:0;padding:20px 21px;display:grid;overflow-y:auto}.report-block h3{font-family:var(--font-display);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin:0 0 10px;font-size:17px;font-weight:550;display:flex}.report-block h3 small{color:var(--faint);font-family:var(--font-sans);font-size:12px;font-weight:500}.report-figures{border:1px solid var(--line-soft);background:var(--line-soft);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.report-figures>div{background:var(--surface);gap:4px;padding:11px 12px;display:grid}.report-figures dt{color:var(--faint);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:5px;font-size:11px;font-weight:750;display:flex}.report-figures dd{font-family:var(--font-display);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:7px;margin:0;font-size:18px;font-weight:550;display:flex}.report-figures dd em{background:var(--gold-soft);color:var(--gold);font-family:var(--font-sans);text-transform:uppercase;border-radius:999px;padding:2px 7px;font-size:10px;font-style:normal;font-weight:750}.report-figure-total{grid-column:1/-1}.report-figure-total dd{color:var(--sage-deep);font-size:21px}.report-lines{gap:0;margin:0;padding:0;list-style:none;display:grid}.report-lines li{border-top:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr) auto minmax(0,auto) auto;align-items:baseline;gap:10px;padding:9px 2px;font-size:13px;display:grid}.report-lines li:first-child{border-top:0}.report-line-date{font-weight:620}.report-line-time{color:var(--muted);font-variant-numeric:tabular-nums}.report-lines strong{font-variant-numeric:tabular-nums;white-space:nowrap}.report-line-tags{flex-wrap:wrap;gap:5px;display:flex}.planned-tag{background:var(--surface-deep);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:2px 7px;font-size:10px;font-style:normal;font-weight:750}@media (max-width:560px){.report-figures{grid-template-columns:1fr}.report-dialog-body{padding:16px}.report-lines li{grid-template-columns:minmax(0,1fr) auto}.report-line-time{grid-area:2/1}.report-line-tags{grid-area:2/2;justify-content:flex-end}}.toast-region{z-index:200;pointer-events:none;gap:9px;width:min(420px,100vw - 32px);display:grid;position:fixed;inset:auto 20px 20px auto}.toast{border:1px solid var(--line);border-left:4px solid var(--success);background:var(--surface);box-shadow:var(--shadow-raised);pointer-events:auto;animation:toast-in var(--motion-fast) var(--ease-standard);border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:12px 12px 12px 14px;display:grid}.toast p{margin:0;font-size:14px;font-weight:550;line-height:1.45}.toast-mark{color:var(--success);place-items:center;display:grid}.toast.is-error{border-left-color:var(--danger)}.toast.is-error .toast-mark{color:var(--danger)}.toast.is-info{border-left-color:var(--sage)}.toast.is-info .toast-mark{color:var(--sage)}.toast-action{border:1px solid var(--line);background:var(--surface-soft);min-height:34px;color:var(--sage-deep);border-radius:9px;align-items:center;gap:5px;padding:0 11px;font-size:13px;font-weight:700;display:inline-flex}.toast-action:hover{background:var(--sage-soft);border-color:#c8c2b7}.toast-close{width:28px;height:28px;color:var(--faint);background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.toast-close:hover{background:var(--surface-soft);color:var(--ink)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}@media (max-width:900px){.toast-region{inset:auto 12px calc(74px + env(safe-area-inset-bottom)) 12px;width:auto}}.schedule-controls-row{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 12px;display:flex}.layout-switch{border:1px solid var(--line);background:#fffdf9b8;border-radius:12px;align-items:center;gap:3px;width:fit-content;padding:3px;display:none}.layout-switch button{min-height:34px;color:var(--muted);background:0 0;border:0;border-radius:9px;align-items:center;gap:6px;padding:0 13px;font-size:13px;font-weight:700;display:inline-flex}.layout-switch button.is-selected{background:var(--sage-deep);color:#fff}.week-fit{display:none}@media (max-width:900px){.layout-switch{display:flex}.schedule-views.is-fit .week-grid{display:none}.schedule-views.is-fit .week-fit{display:block}.schedule-controls-row.is-fit .zoom-switch{display:none}}.week-agenda{gap:12px;display:grid}.agenda-day{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.agenda-day.is-today{border-color:color-mix(in srgb, var(--clay) 40%, var(--line))}.agenda-day>header{border-bottom:1px solid var(--line-soft);background:var(--surface-soft);align-items:baseline;gap:9px;padding:11px 15px;display:flex}.agenda-day>header strong{font-family:var(--font-display);font-size:17px;font-weight:600}.agenda-day>header em{background:var(--clay);color:#fff;text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:11px;font-style:normal;font-weight:750}.agenda-day>header span{color:var(--faint);margin-left:auto;font-size:12px;font-weight:650}.agenda-day:not(.is-today):not(:has(.agenda-row))>header{background:0 0;border-bottom:0}.agenda-day:not(:has(.agenda-row))>header strong{color:var(--muted);font-size:15px}.agenda-row{border:0;border-top:1px solid var(--line-soft);text-align:left;background:0 0;border-left:3px solid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:58px;padding:9px 15px;display:grid}.agenda-row:first-of-type{border-top:0}.agenda-row:hover{background:var(--surface-soft)}.agenda-time strong,.agenda-time small,.agenda-detail strong,.agenda-detail small{display:block}.agenda-time strong{font-variant-numeric:tabular-nums;font-size:14px;font-weight:750}.agenda-time small{color:var(--faint);font-variant-numeric:tabular-nums;margin-top:2px;font-size:12px}.agenda-detail strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:620;overflow:hidden}.agenda-detail small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;overflow:hidden}.agenda-row em{background:var(--rose-soft);color:var(--danger);text-transform:uppercase;border-radius:999px;padding:3px 8px;font-size:11px;font-style:normal;font-weight:750}.agenda-row.is-cancelled{filter:saturate(.5);opacity:.82}.agenda-row.is-cancelled .agenda-detail strong{text-decoration:line-through;text-decoration-thickness:1px}.zoom-switch{border:1px solid var(--line);background:#fffdf9b8;border-radius:12px;align-items:center;gap:3px;width:fit-content;margin:0;padding:3px 3px 3px 11px;display:flex}.zoom-switch>span{color:var(--faint);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:750}.zoom-switch button{width:34px;height:34px;color:var(--muted);background:0 0;border:0;border-radius:9px;place-items:center;display:grid}.zoom-switch button:hover:not(:disabled){background:var(--surface-soft);color:var(--ink)}.zoom-switch button:disabled{color:#bcb6ab;cursor:not-allowed}.zoom-level{min-width:46px;color:var(--ink);font-variant-numeric:tabular-nums;text-align:center;font-size:13px;font-weight:700}@media (max-width:680px){.week-grid{--axis-width:40px}.time-axis>header{height:58px}.time-axis span{padding:0 4px;font-size:10px}.day-column>header{gap:0;min-height:58px;padding:6px 2px}.day-column>header span{font-size:11px}.day-column>header strong{margin-top:1px;font-size:16px}.day-column>header small{font-size:10px}.day-column.is-today>header strong{width:25px;height:25px;font-size:14px}.week-grid{--lane-gap:1px}.calendar-event{padding:3px 4px}.calendar-event .event-time-end{display:none}.calendar-event .event-top{font-size:10px}.calendar-event strong{font-size:11px}.zoom-switch{justify-content:space-between;width:100%}.month-day{gap:3px;min-height:56px;padding:5px 3px}.month-event{border-left-width:2px;border-radius:5px;grid-template-columns:minmax(0,1fr);gap:0;padding:3px 4px;display:grid}.month-event span{font-size:10px;line-height:1.25}.month-event strong{font-size:11px;line-height:1.25}.month-event em{display:none}.month-more{padding:0 4px;font-size:10px}.month-event,.month-more{display:grid}}@media (max-width:360px){.month-day{padding:4px 2px}.month-event{padding:2px 3px}}.month-cell:disabled,.year-stepper a[aria-disabled=true]{color:#bcb6ab;cursor:not-allowed}.month-cell:disabled:hover{background:0 0}.year-stepper a[aria-disabled=true]{border-color:var(--line-soft);pointer-events:none;background:0 0}.year-months-note{color:var(--muted);margin:18px 0 0;font-size:14px}.message-month-switcher{flex:none;margin-left:auto}.message-month-switcher strong{place-items:center;min-width:104px;font-size:13px;font-weight:700;display:grid}.message-month-switcher button:disabled{color:#bcb6ab;cursor:not-allowed}@media (max-width:560px){.message-dialog>header{flex-wrap:wrap}.message-month-switcher{order:3;justify-content:space-between;width:100%;margin-left:0}.message-month-switcher strong{flex:auto}}.statement-stated-note{border-left:3px solid var(--gold);color:var(--ink);margin:14px 0 0;padding:2px 0 2px 12px;font-size:13px;line-height:1.6}.statement-stated-note span{color:var(--muted);font-size:12px;display:block}.unassigned-card{border-color:color-mix(in srgb, var(--gold) 38%, var(--line))}.unassigned-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.unassigned-list>li{border-top:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr) minmax(0,260px) auto;align-items:center;gap:14px;padding:14px 0;display:grid}.unassigned-list>li:first-child{border-top:0;padding-top:0}.unassigned-title{gap:3px;min-width:0;display:grid}.unassigned-title strong{color:var(--ink);font-size:15px;font-weight:600}.unassigned-title small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.unassigned-choice{min-width:0;display:block}.unassigned-choice select{border:1px solid var(--line);background:var(--surface-soft);width:100%;color:var(--ink);font:inherit;border-radius:9px;padding:10px 11px;font-size:13px}.unassigned-card .settings-card-footer p{align-items:flex-start;max-width:none}.unassigned-card .settings-card-footer p svg{flex:none;margin-top:2px}@media (max-width:680px){.unassigned-list>li{grid-template-columns:minmax(0,1fr);gap:10px}.unassigned-choice select{min-height:44px;font-size:16px}.unassigned-list .button{width:100%}}.love-letter-link{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0}.love-letter-link svg{color:var(--rose)}.ll-waiting{color:#fffdf8;background:#8b615b;border-radius:10px;place-items:center;min-width:19px;height:19px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;line-height:1;display:inline-grid}.love-letter-scene{z-index:120;overscroll-behavior:contain;color:#34302a;background:#f3eee4;place-items:center;padding:28px 0;animation:.26s both ll-fade;display:grid;position:fixed;inset:0;overflow-y:auto}@keyframes ll-fade{0%{opacity:0}to{opacity:1}}.ll-room{pointer-events:none;opacity:.05;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23p)'/%3E%3C/svg%3E");position:fixed;inset:0}.ll-light{pointer-events:none;opacity:.7;background:radial-gradient(46% 40% at 22% 14%,#ffe8bed9,#0000 68%),radial-gradient(52% 46% at 86% 92%,#e2ceb280,#0000 66%);transition:opacity .9s;animation:34s ease-in-out infinite alternate ll-drift;position:fixed;inset:-20%}.love-letter-scene.is-reading .ll-light{opacity:1}.love-letter-scene.is-reading{background:#f6f0e3;transition:background .9s}@keyframes ll-drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(3%,2.5%)scale(1.06)}}.ll-controls{z-index:4;gap:8px;display:flex;position:fixed;top:18px;right:18px}.ll-icon-button{color:#7c7264;cursor:pointer;background:#fffdf8;border:1px solid #e0d7c7;border-radius:8px;place-items:center;width:38px;height:38px;transition:color .16s,border-color .16s;display:grid}.ll-icon-button:hover{color:#34302a;border-color:#cec3ae}.ll-who,.ll-box,.ll-compose{z-index:2;width:min(92vw,540px);animation:ll-lift .32s var(--ease-standard) both;background:#fffdf8;border:1px solid #e5dccc;border-radius:10px;padding:30px 28px;position:relative;box-shadow:0 14px 40px #68543a17}@keyframes ll-lift{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ll-who h2,.ll-box h2{color:#34302a;font-family:var(--font-display);letter-spacing:-.015em;margin:8px 0 0;font-size:26px;font-weight:500}.ll-to{color:#8b8072;letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:13px;font-weight:700}.ll-who-choice{grid-template-columns:1fr 1fr;gap:12px;margin-top:22px;display:grid}.ll-who-card{cursor:pointer;text-align:left;background:#faf6ed;border:1px solid #e5dccc;border-radius:8px;justify-items:start;gap:5px;padding:18px 16px;transition:border-color .16s,background .16s;display:grid}.ll-who-card strong{color:#34302a;font-family:var(--font-display);font-size:19px;font-weight:550}.ll-who-card small{color:#7c7264;font-size:12px}.ll-who-card.is-her svg{color:#8a9187}.ll-who-card.is-him svg{color:#b08c86}.ll-who-card.is-her:hover{background:#fffdf8;border-color:#b9bdb2}.ll-who-card.is-him:hover{background:#fffdf8;border-color:#d8b6b0}.ll-shelves{border-bottom:1px solid #ece4d6;margin:20px 0 0;padding-bottom:14px}.ll-shelves button{color:#7c7264;cursor:pointer;border-radius:6px;align-items:center;gap:6px;font-size:13px;display:inline-flex}.ll-shelves button.is-active{color:#8a5b55;background:#f3e6e2}.ll-shelves em{color:#fffdf8;background:#b08c86;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-style:normal;font-weight:700;display:inline-grid}.ll-rack{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:12px;max-height:min(44vh,400px);margin:16px 0 0;padding:2px;list-style:none;display:grid;overflow-y:auto}.ll-mini{aspect-ratio:3/2;cursor:pointer;text-align:left;color:#4a443b;width:100%;transition:transform .18s var(--ease-standard), box-shadow .18s var(--ease-standard);background:#faf6ed;border:1px solid #e2d9c8;border-radius:3px;align-content:end;gap:3px;padding:10px 11px;display:grid;position:relative}.ll-mini:hover{transform:translateY(-2px);box-shadow:0 8px 18px #68543a1f}.ll-mini.is-her{color:#4a443b;background:#fbf8f0;border-color:#e4dbca}.ll-mini.is-him{color:#6b524c;background:#f9efec;border-color:#e6d0ca}.ll-mini-flap{clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(#ffffffa8,#fff0);border-radius:3px 3px 0 0;height:52%;position:absolute;inset:0 0 auto}.ll-mini-from{font-size:13px;font-weight:700;position:relative}.ll-mini-date{opacity:.68;font-size:12px;position:relative}.ll-mini-dot{background:#b08c86;border-radius:50%;width:7px;height:7px;position:absolute;top:9px;right:9px}.ll-mini-receipt{color:#92897b;letter-spacing:.04em;text-transform:uppercase;background:#fffdf8d1;border-radius:999px;align-items:center;gap:3px;padding:2px 6px 2px 4px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;top:7px;right:7px}.ll-mini-receipt.is-read{color:#4f6b58;background:#e8efe6}.ll-status{color:#7c7264;align-items:center;gap:8px;margin:20px 0 4px;font-size:14px;display:flex}.ll-status.is-error{color:var(--danger)}.ll-status.is-sent{color:#5d7a66;margin:14px 0 0}.ll-box-foot{border-top:1px solid #ece4d6;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding-top:16px;display:flex}.ll-signed{color:#8b8072;margin:0;font-size:12px}.ll-switch{color:#a1736c;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:700;text-decoration:underline}.ll-switch:hover{color:#7f5751}.ll-stage{z-index:2;place-items:center;gap:20px;padding:20px;display:grid;position:relative}.ll-envelope{aspect-ratio:3/2;cursor:pointer;width:min(80vw,340px);animation:ll-lift .3s var(--ease-standard) both;transition:transform .42s var(--ease-standard), opacity .26s ease .3s;background:0 0;border:0;padding:0;position:relative}.ll-envelope:active{transform:translateY(2px)}.is-opening .ll-envelope{opacity:0;transform:translateY(10px)}.ll-env-back,.ll-env-front,.ll-env-flap,.ll-env-note{border-radius:4px;position:absolute;inset:0}.ll-env-back{background:#fbf7ee url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23p)' opacity='.05'/%3E%3C/svg%3E");border:1px solid #e3dac9;box-shadow:0 16px 34px #68543a29}.ll-env-note{transition:transform .52s var(--ease-standard);background:#fffdf8;border:1px solid #ece4d6;border-radius:2px;inset:7% 7% 32%}.ll-env-front{clip-path:polygon(0 0,50% 32%,100% 0,100% 100%,0 100%);background:#f6f1e6;border-radius:0 0 4px 4px;height:62%;top:auto}.ll-env-flap{transform-origin:top;clip-path:polygon(0 0,100% 0,50% 100%);height:56%;transition:transform .42s var(--ease-standard);background:#f1eade;border-radius:4px 4px 0 0}.ll-envelope.is-her .ll-env-back{background-color:#fbf8f0}.ll-envelope.is-her .ll-env-front{background:#f4efe3}.ll-envelope.is-her .ll-env-flap{background:#ece5d6}.ll-envelope.is-him .ll-env-back{background-color:#faf0ed;border-color:#e8d4ce}.ll-envelope.is-him .ll-env-front{background:#f4e4e0}.ll-envelope.is-him .ll-env-flap{background:#efdcd7}.ll-address{z-index:5;color:#4b443a;font-family:var(--font-display);letter-spacing:.06em;font-size:clamp(19px,4.4vw,24px);font-weight:500;position:absolute;bottom:15%;left:50%;translate:-50%}.is-opening .ll-env-flap{transform:rotateX(-158deg)}.is-opening .ll-env-note{transform:translateY(-46%)}.is-opening .ll-address{opacity:0;transition:opacity .26s}.ll-hint{color:#8b8072;letter-spacing:.02em;margin:0;font-size:14px}.ll-paper{z-index:2;width:min(90vw,560px);max-height:78vh;animation:ll-page .42s var(--ease-standard) both;background:#fffdf8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23p)' opacity='.045'/%3E%3C/svg%3E");border:1px solid #e7dfd0;border-radius:3px;padding:clamp(30px,6vw,56px) clamp(26px,5.5vw,52px);position:relative;overflow-y:auto;box-shadow:0 18px 44px #68543a24}@keyframes ll-page{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.ll-flower{opacity:.3;pointer-events:none;width:clamp(64px,13vw,96px);position:absolute;bottom:3%;right:4%;rotate:9deg}.ll-salutation{color:#4b443a;font-family:var(--font-display);letter-spacing:.04em;animation:ll-ink .42s var(--ease-standard) both;margin:0 0 22px;font-size:clamp(17px,3.4vw,20px)}.ll-message{position:relative}.ll-message p{color:#34302a;font-family:var(--font-display);letter-spacing:.012em;animation:ll-ink .44s var(--ease-standard) both;margin:0 0 1.15em;font-size:clamp(17px,2.3vw,20px);font-weight:450;line-height:1.95}.ll-message p:last-child{margin-bottom:0}@keyframes ll-ink{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.ll-sign{animation:ll-ink .38s var(--ease-standard) .42s both;border-top:1px solid #eee7da;justify-items:end;gap:3px;margin-top:34px;padding-top:20px;display:grid}.ll-sign strong{color:#4b443a;font-family:var(--font-display);font-size:clamp(17px,3vw,19px);font-weight:500}.ll-sign small{color:#8b8072;letter-spacing:.06em;font-size:12px}.ll-receipt{color:#8b8072;align-items:center;gap:8px;margin:16px 0 0;font-size:13px;display:inline-flex}.ll-receipt.is-read{color:#4f6b58}.ll-after{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.ll-again{color:#4b443a;min-height:42px;font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #e0d7c7;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 18px;font-size:14px;font-weight:650;transition:background .16s,border-color .16s;display:inline-flex}.ll-again:hover{background:#fff;border-color:#cec3ae}.ll-again.is-primary{color:#fffdf8;background:#a1736c;border-color:#a1736c}.ll-again.is-primary:hover{background:#8b615b;border-color:#8b615b}.ll-again:disabled{opacity:.5;cursor:default}.ll-again:disabled:hover{background:#fffdf8;border-color:#e0d7c7}.ll-again.is-primary:disabled:hover{background:#a1736c;border-color:#a1736c}.ll-compose textarea{color:#34302a;width:100%;font-family:var(--font-display);resize:vertical;background:#faf6ed;border:1px solid #e0d7c7;border-radius:8px;outline:none;margin-top:16px;padding:16px;font-size:17px;line-height:1.85}.ll-compose textarea:focus{background:#fffdf8;border-color:#b08c86}.love-letter-icon{width:auto;position:relative}.love-letter-icon span{display:none}.love-letter-icon .ll-waiting{min-width:16px;height:16px;margin:0;padding:0 4px;font-size:10px;display:inline-grid;position:absolute;top:0;right:-3px}.pet-name{color:var(--rose);font-size:.62em}@media (max-width:680px){.love-letter-scene{padding:20px 0 max(20px, env(safe-area-inset-bottom))}.ll-controls{top:12px;right:12px}.ll-who-choice{grid-template-columns:1fr}.ll-rack{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));max-height:46vh}.ll-who,.ll-box,.ll-compose{padding:24px 20px}.ll-paper{max-height:72vh}.ll-after{gap:8px}.ll-after .ll-again{flex:46%;padding:0 12px}.ll-box-foot{flex-direction:column;align-items:stretch}.ll-box-foot .ll-again{width:100%}}@media (prefers-reduced-motion:reduce){.love-letter-scene,.ll-who,.ll-box,.ll-compose,.ll-envelope,.ll-paper,.ll-salutation,.ll-message p,.ll-sign,.ll-light{animation:none}.ll-envelope,.ll-env-flap,.ll-env-note{transition:none}.ll-mini:hover{transform:none}}.workspace-lock-controls{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:16px;display:flex}.workspace-lock-controls label{flex-direction:column;gap:6px;min-width:180px;display:flex}.workspace-lock-controls label span{color:var(--muted);font-size:13px;font-weight:600}.workspace-lock-controls input{box-sizing:border-box;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--ink);font-family:var(--font-sans);letter-spacing:.3em;padding:11px 12px;font-size:17px}.workspace-lock-controls input:focus-visible{outline:2px solid var(--sage);outline-offset:1px}@media (max-width:640px){.workspace-lock-controls{flex-direction:column;align-items:stretch}}.workspace-devices{border-top:1px solid var(--line-soft);flex-direction:column;align-items:flex-start;gap:10px;margin-top:20px;padding-top:18px;display:flex}.workspace-lock-legend{color:var(--muted);align-items:center;gap:6px;margin:0;font-size:13px;font-weight:600;display:flex}.workspace-lock-hint{max-width:52ch;color:var(--muted);margin:0;font-size:13px;line-height:1.6}.workspace-device-list{flex-direction:column;gap:8px;width:100%;margin:0;padding:0;list-style:none;display:flex}.workspace-device-list li{border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--surface-soft);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:14px;display:flex}.workspace-lock-controls{margin-top:16px}.workspace-lock-controls .workspace-lock-legend{flex-basis:100%}.games-unlock-device{justify-content:center;width:100%;padding-block:14px;font-size:16px}.games-unlock-or{color:var(--faint);text-align:center;margin:4px 0;font-size:13px}.games-unlock-pin{flex-direction:column;gap:16px;display:flex}.games-unlock-waiting{color:var(--muted);align-items:center;gap:8px;margin:0;font-size:15px;display:flex}.games-unlock-hint{max-width:46ch;color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.6}.workspace-lock-warning{background:var(--gold-soft);max-width:60ch;color:var(--gold);border-radius:8px;align-items:flex-start;gap:7px;margin:0 0 4px;padding:9px 11px;font-size:13px;line-height:1.55;display:flex}.workspace-lock-warning svg{flex:none;margin-top:1px}.enquiry-form{border-top:1px solid #241e1a38;gap:18px;margin-top:44px;padding-top:30px;display:grid}.enquiry-form h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:25px;font-weight:400;line-height:1.2}.enquiry-field{gap:7px;display:grid}.enquiry-field>span{color:#241e1ab8;letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:700}.enquiry-field input,.enquiry-field textarea{color:#241e1a;background:#fff7ef42;border:0;border-bottom:1px solid #241e1a6b;border-radius:0;width:100%;min-height:46px;padding:10px 4px;font-size:16px;line-height:1.5}.enquiry-field textarea{resize:vertical;min-height:118px}.enquiry-field input::placeholder,.enquiry-field textarea::placeholder{color:#241e1a85}.enquiry-field input:focus-visible,.enquiry-field textarea:focus-visible{outline-offset:2px;background:#fff7ef80;outline:2px solid #3c2d25}.enquiry-trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.studio-contact .enquiry-form .enquiry-note{color:#241e1ab8;font-size:12px;line-height:1.6}.studio-contact .enquiry-form .enquiry-status{background:#fff7ef;align-items:flex-start;gap:9px;padding:13px 15px;font-size:14px;line-height:1.6;display:flex}.enquiry-status svg{flex:none;margin-top:4px}.enquiry-status.is-sent{color:#2f4a3d}.enquiry-status.is-error{color:#7b2f24;border-left:3px solid #7b2f24}.studio-contact .enquiry-submit{justify-self:start;margin-top:2px}.enquiry-submit:disabled{cursor:progress;opacity:.72}.measure-consent,.measure-notice{left:max(16px, env(safe-area-inset-left,0px));bottom:max(16px, env(safe-area-inset-bottom,0px));z-index:60;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);width:min(440px,100% - 32px);color:var(--ink);box-shadow:var(--shadow-raised);font-size:14px;line-height:1.6;position:fixed}.measure-consent{gap:10px;padding:18px 20px;display:grid}.measure-consent p{margin:0}.measure-consent a{text-underline-offset:2px;text-decoration:underline}.measure-consent-title{font-family:var(--font-display);font-size:19px;line-height:1.3}.measure-consent-actions{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.measure-consent-actions button{border:1px solid var(--ink);background:var(--surface);border-radius:11px;flex:130px;min-height:44px;padding:0 14px;font-size:14px;font-weight:700}.measure-consent-actions button:hover{background:var(--surface-soft)}.measure-notice{justify-content:space-between;align-items:center;gap:12px;margin:0;padding:12px 10px 12px 18px;display:flex}.measure-notice button{background:0 0;border:0;border-radius:50%;flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid}.measure-notice button:hover{background:var(--surface-soft)}.nav-count{background:var(--clay);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-style:normal;font-weight:750;line-height:1;display:inline-grid}.nav-item .nav-count{margin-left:auto}.mobile-nav a{position:relative}.mobile-nav .nav-count{min-width:18px;height:18px;padding:0 5px;position:absolute;top:3px;left:calc(50% + 5px)}.insights-page code{background:var(--surface-deep);border-radius:5px;padding:1px 5px;font-size:.92em}.insight-tabs{border:1px solid var(--line);scrollbar-width:none;background:#fffdf9b8;border-radius:12px;gap:4px;width:max-content;max-width:100%;margin-bottom:16px;padding:4px;display:flex;overflow-x:auto}.insight-tabs::-webkit-scrollbar{display:none}.insight-tabs a{min-height:40px;color:var(--muted);border-radius:9px;flex:none;align-items:center;padding:0 15px;font-size:14px;font-weight:650;display:inline-flex}.insight-tabs a:hover{background:var(--surface-soft);color:var(--ink)}.insight-tabs a[aria-current=page]{background:var(--sage-deep);color:#fff}.insight-range{flex-wrap:wrap;align-items:flex-end;gap:10px 14px;margin-bottom:10px;display:flex}.insight-custom-range{flex-wrap:wrap;align-items:flex-end;gap:8px;margin:0;display:flex}.insight-custom-range label{color:var(--faint);gap:4px;font-size:12px;font-weight:700;display:grid}.insight-custom-range input{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-height:40px;padding:0 10px;font-size:14px}.insight-custom-range .button{min-height:40px}.insight-caption{color:var(--muted);flex-wrap:wrap;align-items:baseline;margin:0 0 18px;font-size:13px;line-height:1.7;display:flex}.insight-caption strong{color:var(--ink)}.insight-note{color:var(--faint);margin:0;font-size:12px;line-height:1.6}.insight-definitions{margin:-4px 0 18px}.insight-footnote{margin-top:22px}.insight-small{color:var(--faint);margin-top:3px;font-size:12px;font-weight:500;display:block}.insight-stack{gap:18px;display:grid}.insights-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.insights-column{gap:18px;min-width:0;display:grid}.insight-panel{padding:20px 22px}.insight-panel>.insight-note{margin-top:14px}.insight-table-title{font-family:var(--font-display);letter-spacing:-.02em;margin:4px 0 0;font-size:19px;font-weight:550}.insights-table th:last-child{box-shadow:none;position:static}.insights-metrics .metric-card:nth-child(4n+1){border-left:0}.insights-metrics .metric-card:nth-child(n+5){border-top:1px solid var(--line-soft)}.insights-metrics .metric-card p{white-space:normal}.metric-change{color:var(--faint)}.metric-change.is-up{color:var(--success)}.metric-change.is-down{color:var(--danger)}.insight-list{margin:14px 0 0;padding:0;list-style:none;display:grid}.insight-list li{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:14px;padding:11px 0;font-size:14px;display:flex}.insight-list li>span{color:var(--muted);text-align:right}.insight-likely a{gap:3px;min-width:0;display:grid}.insight-likely strong{color:var(--sage-deep)}.insight-likely small{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.score-band{font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;min-width:38px;padding:4px 9px;font-size:13px;font-weight:750;display:inline-grid}.score-band.is-high{background:var(--sage-soft);color:var(--sage-deep)}.score-band.is-warm{background:var(--gold-soft);color:#6a5022}.score-band.is-low{background:var(--surface-deep);color:var(--muted)}.visit-chart{gap:10px;margin:16px 0 0;display:grid}.visit-chart-plot{grid-template-columns:auto minmax(0,1fr);gap:6px 10px;display:grid}.visit-chart-axis{height:150px;color:var(--faint);font-variant-numeric:tabular-nums;text-align:right;flex-direction:column;justify-content:space-between;font-size:11px;line-height:1;display:flex}.visit-chart-bars{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line);background:linear-gradient(to bottom, transparent calc(50% - .5px), var(--line-soft) calc(50% - .5px), var(--line-soft) calc(50% + .5px), transparent calc(50% + .5px));align-items:flex-end;gap:2px;height:150px;display:flex;position:relative}.visit-chart-col{border-radius:4px;outline:none;flex:1 1 0;justify-content:center;align-items:flex-end;min-width:0;height:100%;display:flex;position:relative}.visit-chart-bar{background:var(--sage);border-radius:4px 4px 0 0;width:100%;max-width:24px}.visit-chart-col:hover .visit-chart-bar,.visit-chart-col:focus-visible .visit-chart-bar{background:var(--sage-deep)}.visit-chart-col:focus-visible{box-shadow:inset 0 0 0 2px var(--sage-deep)}.visit-chart-tip{z-index:3;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-raised);color:var(--ink);pointer-events:none;white-space:nowrap;border-radius:9px;padding:7px 10px;font-size:12px;line-height:1.45;display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.visit-chart-tip strong,.visit-chart-tip span{display:block}.visit-chart-col.is-start .visit-chart-tip{left:0;transform:none}.visit-chart-col.is-end .visit-chart-tip{left:auto;right:0;transform:none}.visit-chart-col:hover .visit-chart-tip,.visit-chart-col:focus-visible .visit-chart-tip{display:block}.visit-chart-dates{color:var(--faint);justify-content:space-between;gap:8px;font-size:11px;display:flex}.insight-table-view summary{color:var(--sage-deep);cursor:pointer;font-size:13px;font-weight:700}.insight-table-view .responsive-table{max-height:320px;margin-top:10px;overflow-y:auto}.insight-enquiry-bulk{justify-content:flex-end;margin-top:12px;display:flex}.insight-enquiries{margin:12px 0 0;padding:0;list-style:none;display:grid}.insight-enquiry{border-top:1px solid var(--line-soft);gap:6px;padding:14px 0;display:grid}.insight-enquiry.is-unread{border-left:3px solid var(--clay);margin-left:-22px;padding-left:19px}.insight-enquiry-head{flex-wrap:wrap;align-items:baseline;gap:6px 10px;display:flex}.insight-enquiry-head strong{font-family:var(--font-display);font-size:17px;font-weight:550}.insight-enquiry-head time{color:var(--faint);margin-left:auto;font-size:12px}.insight-enquiry-reply{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:13px}.insight-enquiry-reply a{color:var(--sage-deep);text-underline-offset:2px;font-weight:650;text-decoration:underline}.insight-enquiry-message{overflow-wrap:anywhere;white-space:pre-line;margin:2px 0 0;font-size:14px;line-height:1.65}.insight-enquiry-actions{flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:4px;display:flex}.insight-enquiry-actions>.insight-erase-confirm{flex:1 0 100%}.insight-small-button{min-height:36px;padding:0 12px;font-size:13px}.insight-badges{flex-wrap:wrap;gap:5px;display:inline-flex}.page-header .insight-badges{margin-top:12px}.insight-badge{background:var(--surface-deep);color:var(--muted);letter-spacing:.02em;border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;font-weight:750;display:inline-flex}.insight-badge.is-contact{background:var(--sage-soft);color:var(--sage-deep)}.insight-badge.is-new{background:var(--clay-soft);color:#7a3f27}.insight-filter-form{border-bottom:1px solid var(--line-soft);grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 14px;margin:0;padding:16px 18px;display:grid}.insight-filter-form label{min-width:0;color:var(--faint);gap:5px;font-size:12px;font-weight:700;display:grid}.insight-filter-form select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:42px;color:var(--ink);border-radius:10px;padding:0 10px;font-size:14px}.insight-filter-form select:disabled{background:var(--surface-soft);color:var(--faint)}.insight-filter-actions{flex-wrap:wrap;align-items:flex-end;gap:10px 14px;display:flex}.insight-person{gap:5px;display:grid}.insight-person strong{color:var(--sage-deep)}.insight-glossary{border-top:1px solid var(--line-soft);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 20px;margin:0;padding:16px 18px;display:grid}.insight-glossary dt{color:var(--ink);font-size:12px;font-weight:750}.insight-glossary dd{color:var(--faint);margin:2px 0 0;font-size:12px;line-height:1.5}.insight-readings{gap:12px;margin:14px 0 0;padding:0;list-style:none;display:grid}.insight-reading{border-left:3px solid var(--line);gap:6px;padding:2px 0 2px 14px;display:grid}.insight-reading p{margin:0;font-size:14px;line-height:1.6}.insight-kind{min-width:78px;color:var(--faint);letter-spacing:.08em;text-transform:uppercase;margin-right:8px;font-size:11px;font-weight:750;display:inline-block}.insight-kind.is-reading{color:#6a5022}.insight-reading .insight-caution{color:var(--danger);font-size:12px}.insight-back{margin-bottom:14px}.insight-anonymous{margin:-14px 0 18px}.insight-detail{grid-template:"timeline side""timeline erase"1fr/minmax(0,1.45fr) minmax(300px,1fr);align-items:start;gap:18px;display:grid}.insight-detail-main{grid-area:timeline;min-width:0}.insight-detail-side{grid-area:side;gap:18px;min-width:0;display:grid}.insight-erase-panel{grid-area:erase;gap:12px;display:grid}.insight-timeline{margin:14px 0 0;padding:0;list-style:none;display:grid}.insight-session{border-top:1px solid var(--line-soft);padding:16px 0}.insight-session-head{gap:3px;display:grid}.insight-session-head strong{font-family:var(--font-display);font-size:18px;font-weight:550}.insight-session-head p{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.insight-events{margin:10px 0 0;padding:0;list-style:none;display:grid}.insight-events li{border-left:2px solid var(--line);grid-template-columns:52px minmax(0,1fr);gap:10px;padding:6px 0 6px 12px;font-size:14px;line-height:1.5;display:grid}.insight-events li.is-key{border-left-color:var(--clay);font-weight:650}.insight-events time{color:var(--faint);font-variant-numeric:tabular-nums;font-size:13px;font-weight:500}.score-panel{gap:12px;display:grid}.score-figure{align-items:center;gap:12px;display:flex}.score-figure strong{font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:52px;font-weight:650;line-height:1}.score-reasons{gap:8px;margin:0;padding:0;list-style:none;display:grid}.score-reasons li{grid-template-columns:40px minmax(0,1fr);gap:8px;font-size:14px;line-height:1.45;display:grid}.score-reasons b{color:var(--sage-deep);font-variant-numeric:tabular-nums}.insight-rules summary{color:var(--sage-deep);cursor:pointer;font-size:13px;font-weight:700}.insight-rules[open] summary{margin-bottom:10px}.insight-rules .insight-note{margin-top:10px}.insight-facts{margin:12px 0 0;display:grid}.insight-facts>div{border-top:1px solid var(--line-soft);grid-template-columns:120px minmax(0,1fr);gap:12px;padding:10px 0;display:grid}.insight-facts dt{color:var(--faint);letter-spacing:.03em;text-transform:uppercase;font-size:12px;font-weight:750}.insight-facts dd{overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.5}.insight-plain-list{gap:3px;margin:0;padding-left:16px;display:grid}.insight-erase{color:var(--danger)}.insight-erase-confirm{background:var(--rose-soft);border-radius:12px;gap:12px;padding:14px;display:grid}.insight-erase-confirm p{color:var(--danger);margin:0;font-size:14px;line-height:1.55}.insight-erase-confirm div{flex-wrap:wrap;gap:10px;display:flex}.insight-erase-now{background:var(--danger);color:#fff}@media (max-width:1100px){.insights-grid{grid-template-columns:minmax(0,1fr)}.insight-detail{grid-template:"side""timeline""erase"/minmax(0,1fr)}}@media (max-width:900px){.insights-metrics.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.insights-metrics .metric-card{border-top:1px solid var(--line-soft);border-left:1px solid var(--line-soft)}.insights-metrics .metric-card:nth-child(odd){border-left:0}.insights-metrics .metric-card:nth-child(-n+2){border-top:0}.insight-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.insight-panel{padding:16px}.insight-enquiry.is-unread{margin-left:-16px;padding-left:13px}.insight-custom-range{width:100%}.insight-custom-range label{flex:130px}.insight-custom-range input{width:100%}.insight-facts>div{grid-template-columns:minmax(0,1fr);gap:3px}.visit-chart-axis,.visit-chart-bars{height:120px}.score-figure strong{font-size:44px}}@media (max-width:420px){.insight-filter-form{grid-template-columns:minmax(0,1fr)}}
