/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.start\!{inset-inline-start:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.block{display:block}.contents{display:contents}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.grow{flex-grow:1}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.ordinal\!{--tw-ordinal:ordinal!important;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)!important}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:var(--theme-text,#25382f);--muted:var(--theme-muted,#7b827b);--line:var(--theme-line,#e8eae3);--paper:var(--theme-canvas,#f7f8f4);--green:var(--theme-accent,#294c3b);--lime:var(--theme-accent,#ddebba);--serif:Georgia,"Times New Roman",serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:calc(14px * var(--font-scale));-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.5;cursor:not-allowed}button{background:0 0;border:0}a{color:inherit;text-decoration:none}:is(button:focus-visible,a:focus-visible){outline:3px solid var(--theme-focus,#9cb77b);outline-offset:3px}input:focus,select:focus,textarea:focus{outline:2px solid var(--theme-focus,#a9bd90);outline-offset:1px}h1,h2,h3,p{margin:0}h2,h3{font-weight:650}h2{font-size:calc(17px * var(--font-scale));letter-spacing:-.4px}h3{font-size:calc(16px * var(--font-scale))}svg{flex-shrink:0}.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}.muted{color:var(--muted)}.padded{padding:24px}.green-text{color:var(--theme-success-text,#3c674e)}.strike{text-decoration:line-through}.app-shell{min-height:100vh;display:flex}.sidebar{background:var(--theme-sidebar,#233c30);width:232px;color:var(--theme-text,#d6dfd8);z-index:20;flex-direction:column;flex-shrink:0;padding:30px 18px 0;display:flex;position:fixed;inset:0 auto 0 0}.brand{font-family:"Manrope",var(--sans);font-size:calc(25px * var(--font-scale));letter-spacing:-1.3px;color:var(--theme-text,#fafbf6);align-items:center;margin:0 12px 31px;font-weight:750;display:flex}.brand-light{font-weight:400}.brand-mark{background:var(--lime);width:35px;height:35px;color:var(--theme-on-accent,#284b37);border-radius:10px;justify-content:center;align-items:center;margin-right:9px;display:flex;position:relative;transform:rotate(-6deg)}.brand-mark span{background:var(--lime);border-radius:50%;width:5px;height:5px;position:absolute;top:-5px;right:-4px}.workspace-label{font-size:calc(11px * var(--font-scale));background:var(--theme-sidebar-raised,#2e493b);border:1px solid var(--theme-line,#3c5545);border-radius:9px;align-items:center;gap:9px;margin-bottom:31px;padding:12px 10px;font-weight:500;display:flex}.workspace-symbol{border:1px solid var(--theme-line,#5a705c);border-radius:7px;place-items:center;width:29px;height:30px;display:grid}.workspace-label>svg{color:var(--theme-muted,#97b198);margin-left:auto}.workspace-label small{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#a1b2a4);font-weight:400;display:block}.nav-label{font-size:calc(9px * var(--font-scale));letter-spacing:1.4px;color:var(--theme-muted,#8ea293);margin-bottom:12px;padding-left:14px;font-weight:700}.sidebar nav{gap:6px;display:grid}.sidebar nav button{text-align:left;font-size:calc(13px * var(--font-scale));border-radius:7px;align-items:center;gap:13px;padding:12px 15px;transition:background .15s;display:flex}.sidebar nav button:hover{background:var(--theme-hover,#365140)}.sidebar nav button.active{background:var(--theme-accent,#e0edbf);color:var(--theme-on-accent,#284531);font-weight:650}.nav-count{font-size:calc(10px * var(--font-scale));background:var(--theme-nav-count,#ffffff1a);border-radius:5px;margin-left:auto;padding:1px 7px}.active .nav-count{background:var(--theme-accent-hover,#c7da9e)}.sidebar-bottom{margin-top:auto;padding-top:40px}.sidebar-note{border:1px solid var(--theme-line,#45604b);background:linear-gradient(135deg,var(--theme-sidebar-raised,#304c3b),var(--theme-sidebar-raised,#294334));border-radius:10px;margin:0 3px 24px;padding:24px 14px 20px}.sidebar-note>svg{color:var(--theme-muted,#d3dfad);margin-bottom:12px}.sidebar-note p{font-family:var(--serif);font-size:calc(18px * var(--font-scale));color:var(--theme-text,#e7eddb);line-height:1.5}.sidebar-note strong{color:var(--theme-muted,#d9e7b4);font-weight:400}.sidebar-note>span{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#98ae9b);margin-top:10px;display:block}.settings-link{font-size:calc(12px * var(--font-scale));border-radius:7px;align-items:center;gap:12px;width:100%;margin-bottom:14px;padding:12px 14px;display:flex}.settings-link:hover,.settings-link.active{background:var(--theme-hover,#365140)}.owner{border-top:1px solid var(--theme-line,#3d5546);font-size:calc(11px * var(--font-scale));align-items:center;gap:10px;padding:21px 8px;display:flex}.owner-avatar{background:var(--theme-selected,#e4e9db);color:var(--theme-text,#304c3b);border-radius:50%;place-items:center;width:32px;height:32px;font-weight:700;display:grid}.owner small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#91a895);display:block}.online-dot{background:var(--theme-soft,#b2cb84);border-radius:50%;width:5px;height:5px;margin-left:auto}.main{flex:1;min-width:0;margin-left:232px}.topbar{border-bottom:1px solid var(--line);background:var(--theme-raised,#fcfcfa);justify-content:space-between;align-items:center;height:76px;padding:0 38px;display:flex}.breadcrumb{font-size:calc(11px * var(--font-scale));align-items:center;gap:12px;display:flex}.breadcrumb>span{color:var(--theme-muted,#899087)}.breadcrumb strong{font-weight:500}.breadcrumb svg{color:var(--theme-muted,#9ca596)}.topbar-right{align-items:center;gap:21px;display:flex}.timezone{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#838b80);align-items:center;gap:6px;display:flex}.help-btn{place-items:center;display:grid}.top-avatar{background:var(--theme-selected,#ede7db);width:31px;height:31px;color:var(--theme-text,#6d614d);border:3px solid var(--theme-line,white);font-size:calc(11px * var(--font-scale));box-shadow:0 0 0 1px var(--theme-line,#e5e5dc);border-radius:50%;place-items:center;font-weight:650;display:grid}.mobile-menu{display:none!important}.content{max-width:1580px;margin:0 auto;padding:31px 38px 0}.demo-banner{background:var(--theme-soft,#edf2e2);border-bottom:1px solid var(--theme-line,#e0e8d3);font-size:calc(10px * var(--font-scale));color:var(--theme-text,#647554);justify-content:space-between;align-items:center;gap:15px;padding:8px 38px;display:flex}.demo-banner>span{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.demo-banner strong{font-weight:500}.demo-banner button{white-space:nowrap;align-items:center;gap:7px;font-weight:650;display:flex}.page-head{justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px;display:flex}.eyebrow{font-size:calc(9px * var(--font-scale));letter-spacing:1.6px;color:var(--theme-muted,#848d7d);margin-bottom:9px;font-weight:650}h1{font-family:var(--serif);font-size:calc(34px * var(--font-scale));letter-spacing:-1.15px;font-weight:400;line-height:1.2}.page-description{color:var(--theme-muted,#899082);font-size:calc(11px * var(--font-scale));margin-top:9px}.head-actions{align-items:center;gap:12px;display:flex}.btn{font-size:calc(11px * var(--font-scale));white-space:nowrap;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:11px 16px;font-weight:600;line-height:1.5;transition:background .15s,transform .15s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--green);color:var(--theme-on-accent,#fff)}.btn.primary:hover{background:var(--theme-accent-hover,#386047)}.btn.secondary{border-color:var(--theme-line,#dfe3d8);background:var(--theme-surface,white);color:var(--theme-text,#4e5c4b)}.btn.secondary:hover{background:var(--theme-hover,#f1f4e9)}.btn.small{font-size:calc(10px * var(--font-scale));padding:7px 11px}.date-chip{font-size:calc(10px * var(--font-scale));border:1px solid var(--theme-line,#e0e3da);background:var(--theme-surface,#fff);white-space:nowrap;color:var(--theme-muted,#71806b);border-radius:6px;align-items:center;gap:7px;padding:10px 12px;display:flex}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:25px;display:grid}.metric{background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:10px;padding:17px 19px 16px}.metric-heading{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#737e70);justify-content:space-between;align-items:center;gap:8px;display:flex}.metric-icon{border-radius:9px;place-items:center;width:32px;height:32px;display:grid}.sage{background:var(--theme-success-surface,#ecf1e3);color:var(--theme-success-text,#667d49)}.peach{background:var(--theme-warm-surface,#faeddf);color:var(--theme-warm-text,#ae7b48)}.lavender{background:var(--theme-purple-surface,#eeeaf8);color:var(--theme-purple-text,#8a77aa)}.sky{background:var(--theme-blue-surface,#e9f0f5);color:var(--theme-blue-text,#668aa2)}.rose{background:var(--theme-rose-surface,#f7e8e7);color:var(--theme-rose-text,#aa7c76)}.metric>strong{font-family:"Manrope",var(--sans);font-size:calc(27px * var(--font-scale));letter-spacing:-1.1px;margin:8px 0;font-weight:600;line-height:1.35;display:block}.metric>small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#959b8f)}.dashboard-grid{grid-template-columns:minmax(0,1.85fr) minmax(270px,1fr);align-items:start;gap:23px;display:grid}.panel{background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:11px;min-width:0}.section-head{justify-content:space-between;align-items:center;gap:15px;padding:22px 24px 17px;display:flex}.section-head p{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#92988c);margin-top:4px}.text-btn{font-size:calc(10px * var(--font-scale));color:var(--theme-accent-text,#647b53);white-space:nowrap;align-items:center;gap:6px;padding:3px 0;font-weight:600;display:inline-flex}.text-btn:hover{text-decoration:underline}.week-container{padding:1px 24px 16px}.week-month{justify-content:space-between;align-items:center;margin:4px 0 12px;display:flex}.week-month strong{font-size:calc(11px * var(--font-scale));font-weight:500}.week-month>div{align-items:center;gap:6px;display:flex}.icon-btn{color:var(--theme-muted,#87927f);border-radius:5px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.icon-btn:hover{background:var(--theme-hover,#f0f3eb);color:var(--theme-text,#37543c)}.week-strip{grid-template-columns:repeat(7,1fr);gap:7px;display:grid}.week-strip button{color:var(--theme-muted,#8b9386);border-radius:8px;flex-direction:column;align-items:center;gap:3px;padding:10px 3px 7px;display:flex}.week-strip button strong{font-size:calc(16px * var(--font-scale));color:var(--theme-text,#43583e);font-weight:500}.week-strip button i{border-radius:50%;width:4px;height:4px;margin-top:4px}.week-strip button i.has-lessons{background:var(--theme-soft,#aab997)}.week-strip button.selected{background:var(--theme-selected,#e8efd9);color:var(--theme-accent-text,#546c40)}.week-strip button.selected strong{color:var(--theme-accent-text,#375b2c)}.week-strip button:hover{background:var(--theme-hover,#f4f6ed)}.week-strip button.today:not(.selected){box-shadow:inset 0 0 0 1px var(--theme-focus,#e0e8d1)}.agenda{padding:0 23px}.agenda-row{text-align:left;border-top:1px solid var(--theme-line,#f0f1eb);align-items:center;gap:13px;width:100%;padding:17px 0;display:flex}.agenda-row:hover .agenda-detail>strong{color:var(--theme-muted,#70904f)}.agenda-time{font-size:calc(11px * var(--font-scale));flex-shrink:0;width:61px;font-weight:500}.agenda-time small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#a0a596);margin-top:4px;font-weight:400;display:block}.agenda-line{opacity:.5;border-radius:2px;flex-shrink:0;width:3px;height:41px;background:currentColor!important}.agenda-detail{flex:1;min-width:0}.agenda-detail>strong{font-size:calc(12px * var(--font-scale));font-weight:650;display:block}.agenda-detail>span{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#838f7c);flex-wrap:wrap;align-items:center;gap:6px;margin-top:3px;display:flex}.agenda-detail>span i{background:var(--theme-soft,#b5bcae);border-radius:50%;width:3px;height:3px}.agenda-detail>small{font-size:calc(8px * var(--font-scale));color:var(--theme-muted,#a0a595);align-items:center;gap:3px;margin-top:5px;display:flex}.agenda-row>.avatar{width:29px;height:29px;font-size:calc(9px * var(--font-scale))}.agenda-row>svg{color:var(--theme-muted,#a7b09e)}.avatar{width:30px;height:30px;font-size:calc(10px * var(--font-scale));border:2px solid var(--theme-line,#fff);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:500;display:inline-flex}.avatar.large{width:51px;height:51px;font-size:calc(16px * var(--font-scale));border:0}.panel-footer{border-top:1px solid var(--line);font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#9ba292);justify-content:space-between;align-items:center;gap:15px;padding:14px 24px;display:flex}.panel-footer>span{align-items:center;gap:5px;display:flex}.dot{background:var(--theme-soft,#a3b57b);border-radius:50%;width:4px;height:4px;display:inline-block}.right-column{gap:20px;display:grid}.welcome-card{background:var(--theme-welcome,#eeeeda);border:1px solid var(--theme-line,#e5e7d0);border-radius:10px;min-height:260px;padding:27px 25px;position:relative;overflow:hidden}.tiny-label{font-size:calc(7px * var(--font-scale));letter-spacing:1.3px;color:var(--theme-muted,#879373);font-weight:650;display:block}.welcome-card h2{font-family:var(--serif);font-size:calc(29px * var(--font-scale));letter-spacing:-1px;z-index:1;margin:17px 0 11px;font-weight:400;line-height:1.12;position:relative}.welcome-card p{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#8b937d);z-index:1;line-height:1.8;position:relative}.welcome-link{font-size:calc(10px * var(--font-scale));z-index:1;align-items:center;gap:8px;margin-top:24px;font-weight:550;display:flex;position:relative}.plant{opacity:.8;width:115px;height:174px;position:absolute;bottom:24px;right:13px;transform:rotate(3deg)}.plant-stem{background:#819a58;border-radius:4px;width:3px;height:120px;position:absolute;top:20px;left:58px;transform:rotate(1deg)}.plant-leaf{background:#a3b575;border-radius:80% 0;width:49px;height:25px;position:absolute}.leaf-one{top:38px;left:12px;transform:rotate(43deg)}.leaf-two{background:#90a867;top:18px;left:57px;transform:rotate(-27deg)}.leaf-three{background:#bcc990;top:78px;left:60px;transform:rotate(-24deg)}.plant-pot{clip-path:polygon(0 0,100% 0,85% 100%,17% 100%);background:#c99471;border-top:8px solid #d5aa8b;border-radius:4px;width:58px;height:49px;position:absolute;bottom:0;left:33px}.plant-spark{color:#c59f67;font-size:calc(28px * var(--font-scale));position:absolute;top:1px;left:15px}.attention .section-head{padding-bottom:9px}.attention-row{text-align:left;border-top:1px solid var(--theme-line,#f3f3ed);align-items:center;gap:11px;width:100%;padding:14px 23px;display:flex}.attention-row:hover{background:var(--theme-hover,#fafbf7)}.attention-icon{border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.attention-row>div{flex:1}.attention-row strong{font-size:calc(10px * var(--font-scale));font-weight:500;display:block}.attention-row small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#959d8d);margin-top:2px;display:block}.attention-row>svg{color:var(--theme-muted,#9faa92)}.dashboard-bottom{grid-template-columns:minmax(0,1fr);gap:23px;margin-top:23px;display:grid}.rating-summary{border-bottom:1px solid var(--theme-line,#eff0e8);align-items:center;gap:13px;margin:0 23px 14px;padding-bottom:16px;display:flex}.rating-summary>span:first-child{font-family:"Manrope",var(--sans);font-size:calc(34px * var(--font-scale));letter-spacing:-1px;font-weight:500}.stars{color:var(--theme-warning-text,#c8a766);gap:3px;display:inline-flex}.rating-summary small{font-size:calc(8px * var(--font-scale));color:var(--theme-accent-text,#a3a993);margin-top:4px;display:block}.rating-bloom{color:var(--theme-muted,#bdc797);margin-left:auto}.review-preview{margin:14px 24px}.review-preview p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#78856d);line-height:1.7}.review-preview>span{font-size:calc(8px * var(--font-scale));color:var(--theme-muted,#68795a);gap:6px;margin-top:7px;display:flex}.review-preview>span>span{color:var(--theme-muted,#a7ae9c)}.app-footer{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#a2ab97);justify-content:space-between;gap:16px;padding:27px 0;display:flex}.app-footer>span{align-items:center;gap:5px;display:flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%}th{color:var(--theme-muted,#929b87);font-weight:500;font-size:calc(9px * var(--font-scale));background:var(--theme-raised,#fafbf7);border-top:1px solid var(--theme-line,#edf0e5);border-bottom:1px solid var(--theme-line,#edf0e5);padding:12px 20px}td{font-size:calc(11px * var(--font-scale));border-bottom:1px solid var(--theme-line,#f0f1eb);vertical-align:middle;padding:17px 20px}td small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#909b85);white-space:normal;max-width:260px;margin-top:4px;display:block}td strong{font-weight:550}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--theme-hover,#fcfdf9)}.cell-link{font-size:calc(11px * var(--font-scale));padding:0;font-weight:600}.cell-link:hover{text-decoration:underline}.person{align-items:center;gap:8px;display:flex}.row-actions{align-items:center;gap:3px;display:flex}.badge{font-size:calc(8px * var(--font-scale));background:var(--theme-soft,#f0f2eb);color:var(--theme-muted,#7b896a);white-space:nowrap;border-radius:5px;align-items:center;gap:5px;padding:4px 7px;display:inline-flex}.badge>span{background:currentColor;border-radius:50%;width:4px;height:4px}.badge.paid,.badge.completed,.badge.active,.badge.recorded{background:var(--theme-success-surface,#eaf2e5);color:var(--theme-success-text,#60834b)}.badge.overdue{background:var(--theme-warning-surface,#f9ebe5);color:var(--theme-warning-text,#af7658)}.badge.part-paid{background:var(--theme-warning-surface,#f9f1df);color:var(--theme-warning-text,#ad9354)}.badge.unpaid{background:var(--theme-purple-surface,#f2edf9);color:var(--theme-purple-text,#9380b0)}.badge.cancelled,.badge.archived,.badge.reversed{background:var(--theme-soft,#f2f1ed);color:var(--theme-muted,#929082)}.toolbar,.list-toolbar{justify-content:space-between;align-items:center;gap:20px;padding:20px 23px;display:flex}.list-toolbar{padding:0 0 22px}.tabs{background:var(--theme-soft,#eef1e9);border-radius:7px;gap:3px;width:fit-content;padding:4px;display:flex}.tabs button{white-space:nowrap;font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#879578);border-radius:5px;padding:7px 12px}.tabs button.active{background:var(--theme-selected,#fff);box-shadow:0 1px 3px var(--theme-shadow,#3b512013);color:var(--theme-accent-text,#3e6033);font-weight:600}.search{border:1px solid var(--theme-control-line,#e0e6d8);background:var(--theme-input,#fff);min-width:0;max-width:260px;color:var(--theme-muted,#9ca88f);border-radius:6px;align-items:center;gap:7px;padding:7px 10px;display:flex}.search input{width:100%;min-width:0;font-size:calc(11px * var(--font-scale));color:var(--theme-text,#5d704e);background:0 0;border:0;outline:0}.search input::placeholder{color:var(--theme-placeholder,#a0aa93)}.search button{place-items:center;display:grid}select{background:var(--theme-input,#fff);border:1px solid var(--theme-control-line,#dfe5d6);font-size:calc(11px * var(--font-scale));color:var(--theme-text,#5b6f4e);border-radius:6px;max-width:100%;padding:9px 12px}.lesson-calendar{border-top:1px solid var(--line);align-items:center;gap:20px;padding:18px 0;display:flex}.lesson-calendar .week-container{flex:1;width:100%;max-width:650px}.family-grid,.tutor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:21px;display:grid}.family-card{padding:22px}.family-top,.tutor-top{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.card-title{font-size:calc(18px * var(--font-scale));text-align:left;letter-spacing:-.5px;justify-content:space-between;align-items:center;width:100%;padding:0;font-weight:600;display:flex}.card-title svg{color:var(--theme-muted,#8b9c7c)}.family-card>.muted{font-size:calc(11px * var(--font-scale));margin-top:4px}.family-children{flex-wrap:wrap;gap:6px;min-height:27px;margin:19px 0 22px;display:flex}.family-children>span{font-size:calc(10px * var(--font-scale));background:var(--theme-soft,#f4f5ef);color:var(--theme-muted,#879278);border-radius:5px;align-items:center;gap:4px;padding:5px 7px;display:flex}.family-card-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding-top:17px;display:flex}.family-card-footer small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#94a087);display:block}.family-card-footer strong{font-size:calc(16px * var(--font-scale));margin-top:3px;font-weight:500;display:block}.back-btn{margin-bottom:18px}.family-detail{align-items:center;gap:19px;margin-bottom:20px;padding:23px;display:flex}.family-detail p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#8b997d);white-space:pre-wrap;margin-top:4px}.detail-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.children-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px;display:grid}.child-card{padding:23px}.child-heading{align-items:center;gap:11px;display:flex}.child-heading>div{flex:1}.child-heading small{color:var(--theme-muted,#8f9c81);font-size:calc(10px * var(--font-scale));margin-top:3px;display:block}.child-icon{background:var(--theme-soft,#edeedb);width:43px;height:43px;color:var(--theme-muted,#85905d);border-radius:12px;place-items:center;display:grid}.child-tags{gap:7px;margin-top:18px;display:flex}.level-tag{font-size:calc(9px * var(--font-scale));background:var(--theme-soft,#e8efe2);color:var(--theme-muted,#79905f);border-radius:5px;padding:4px 10px}.learning-block{margin-top:19px}.learning-block>span,.focus-block>span{font-size:calc(8px * var(--font-scale));letter-spacing:.8px;color:var(--theme-muted,#859771);align-items:center;gap:6px;font-weight:600;display:flex}.learning-block p,.focus-block p{font-size:calc(11px * var(--font-scale));white-space:pre-wrap;color:var(--theme-muted,#6b7d5b);margin-top:7px;line-height:1.8}.focus-block{background:var(--theme-soft,#f5f6ec);border-radius:7px;margin-top:16px;padding:14px 16px}.learning-notes{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#9aa58d);white-space:pre-wrap;margin-top:15px}.child-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:20px;padding-top:16px;display:flex}.add-child-card{border:1px dashed var(--theme-line,#cfd8c0);min-height:250px;color:var(--theme-muted,#8b9f76);border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.add-child-card:hover{background:var(--theme-hover,#eff2e5)}.add-child-card>span{background:var(--theme-soft,#e9eedf);border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.add-child-card strong{font-size:calc(13px * var(--font-scale))}.add-child-card small{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#a0ad8e)}.tutor-card{padding:22px}.tutor-card h3{font-size:calc(18px * var(--font-scale));letter-spacing:-.5px}.tutor-subjects{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#8e9d7b);margin-top:6px}.tutor-bio{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#98a28b);min-height:39px;margin:15px 0;line-height:1.7}.tutor-rating{font-size:calc(11px * var(--font-scale));align-items:center;gap:7px;display:flex}.tutor-rating>span:last-child{color:var(--theme-muted,#a0aa93);font-size:calc(9px * var(--font-scale))}.tutor-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;margin-top:18px;padding:17px 0;display:grid}.tutor-details>div+div{border-left:1px solid var(--line);padding-left:16px}.tutor-details small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#96a287);display:block}.tutor-details strong{font-size:calc(16px * var(--font-scale));align-items:center;gap:4px;margin-top:4px;font-weight:500;display:flex}.tutor-footer{justify-content:space-between;align-items:center;padding-top:15px;display:flex}.review-details summary{font-size:calc(10px * var(--font-scale));color:var(--theme-accent-text,#82946e);cursor:pointer;justify-content:space-between;align-items:center;padding-top:14px;display:flex}.tutor-review{border-bottom:1px solid var(--line);padding:15px 0}.tutor-review p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#87977a);margin:8px 0}.tutor-review small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#a5af99);display:block}.tutor-review .text-btn{margin-top:7px}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.report-filters{margin-bottom:22px;padding:20px 23px}.date-filters{align-items:flex-end;gap:15px;margin-top:20px;display:flex}.date-filters label{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#8a9978);flex-direction:column;gap:6px;display:flex}.date-filters input{border:1px solid var(--theme-control-line,#dfe6d4);background:var(--theme-input,#fff);font-size:calc(11px * var(--font-scale));color:var(--theme-text,#667d53);border-radius:6px;padding:8px 10px}.date-filters .text-btn{margin-bottom:8px}.activity-panel{margin-top:24px}.activity-row{border-top:1px solid var(--line);font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#7c8f6b);align-items:center;gap:11px;padding:13px 23px;display:flex}.activity-row svg{color:var(--theme-muted,#a3b490)}.activity-row small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#a3af98);white-space:nowrap;margin-left:auto}.settings-grid{grid-template-columns:1fr 1fr;gap:23px;display:grid}.settings-line{border-top:1px solid var(--line);font-size:calc(11px * var(--font-scale));justify-content:space-between;align-items:center;gap:15px;padding:16px 23px;display:flex}.settings-line>span{color:var(--theme-muted,#91a180)}.settings-line strong{text-align:right;align-items:center;gap:5px;font-weight:500;display:flex}.settings-buttons{flex-wrap:wrap;gap:12px;padding:20px 23px;display:flex}.how-it-works>div:not(.section-head){gap:17px;padding:15px 24px;display:flex}.how-it-works>div>span{background:var(--theme-soft,#edf1e5);width:27px;height:27px;font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#8ba174);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.how-it-works p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#97a588);margin-top:4px;line-height:1.8}.help-notes{grid-column:1/-1;padding-bottom:20px}.help-notes>p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#8a9b7c);margin:0 24px 13px;line-height:1.9}.help-notes strong{color:var(--theme-muted,#637b50);font-weight:600}.empty{text-align:center;color:var(--theme-muted,#8f9f81);white-space:normal;padding:48px 25px}.empty-icon{background:var(--theme-soft,#f1f5e8);width:57px;height:57px;color:var(--theme-muted,#96ae7e);border-radius:50%;place-items:center;margin:0 auto 15px;display:grid}.empty h3{font-family:var(--serif);font-weight:400;font-size:calc(22px * var(--font-scale));color:var(--theme-text,#577148)}.empty p{font-size:calc(11px * var(--font-scale));max-width:350px;margin:8px auto 18px;line-height:1.8}.loading{justify-content:center;align-items:center;gap:15px;min-height:500px;display:flex}.spinner{border:2px solid var(--theme-line,#b8c7aa);border-top-color:#0000;border-radius:50%;width:25px;height:25px;animation:1s linear infinite spin;display:inline-block}.small-spinner{border-color:var(--theme-on-accent,#fff);border-top-color:#0000;width:15px;height:15px}@keyframes spin{to{transform:rotate(360deg)}}.record-dialog{border:1px solid var(--theme-line,#dee7d2);width:min(650px,100% - 32px);max-height:calc(100dvh - 48px);color:var(--ink);box-shadow:0 20px 90px var(--theme-shadow,#203b3140);background:var(--theme-surface,#fff);border-radius:15px;margin:auto;padding:0;position:fixed;inset:0;overflow:auto}.record-dialog::backdrop{background:var(--theme-scrim,#1d302b66);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog-header{border-bottom:1px solid var(--line);background:var(--theme-raised,#fbfcf8);justify-content:space-between;align-items:center;padding:25px 28px 20px;display:flex}.dialog-header h2{font-family:var(--serif);font-size:calc(27px * var(--font-scale));font-weight:400}.dialog-header .eyebrow{font-size:calc(8px * var(--font-scale))}.dialog-body{padding:25px 28px}.dialog-footer{border-top:1px solid var(--line);background:var(--theme-raised,#fbfcf8);justify-content:flex-end;gap:10px;padding:18px 28px;display:flex;position:sticky;bottom:0}.form-grid{grid-template-columns:1fr 1fr;gap:0 18px;display:grid}.field{font-size:calc(11px * var(--font-scale));flex-direction:column;gap:6px;min-width:0;margin-bottom:18px;display:flex}.field>span{color:var(--theme-muted,#687b58);font-weight:500}.field i{color:var(--theme-muted,#b3bd99);font-style:normal}.field input,.field textarea,.field select{border:1px solid var(--theme-control-line,#dfe6d5);background:var(--theme-input,#fff);width:100%;font-size:calc(12px * var(--font-scale));color:var(--theme-text,#4e6840);border-radius:6px;min-height:40px;padding:10px 11px}.field textarea{resize:vertical}.field input::placeholder,.field textarea::placeholder{color:var(--theme-placeholder,#aab79b)}.field small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#98a988);line-height:1.7}.form-hint{background:var(--theme-soft,#f2f5eb);color:var(--theme-muted,#849a6c);font-size:calc(11px * var(--font-scale));border-radius:6px;align-items:flex-start;gap:8px;margin-bottom:18px;padding:12px 14px;line-height:1.8;display:flex}.form-hint svg{margin-top:2px}.form-error{color:var(--theme-danger-text,#a66047);background:var(--theme-danger-surface,#fcf0eb);font-size:calc(11px * var(--font-scale));border-radius:6px;align-items:flex-start;gap:8px;padding:13px;display:flex}.form-subheading{font-size:calc(13px * var(--font-scale));border-top:1px solid var(--line);align-items:center;gap:8px;margin-bottom:18px;padding-top:20px;display:flex}.lesson-focus{background:var(--theme-soft,#f3f5e9);border-radius:7px;margin-bottom:18px;padding:13px 16px}.lesson-focus>span{color:var(--theme-muted,#8ba170);font-size:calc(10px * var(--font-scale));align-items:center;gap:6px;display:flex}.lesson-focus p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#7c9066);margin-top:7px}.rating-input{text-align:center;margin:22px 0 30px}.rating-input>span{font-size:calc(11px * var(--font-scale));color:var(--theme-text,#879b70)}.rating-input>div{justify-content:center;gap:8px;margin:14px 0 8px;display:flex}.rating-input button{color:var(--theme-warning-text,#c6a362);padding:4px}.rating-input>small{font-size:calc(10px * var(--font-scale));color:var(--theme-text,#9eac8c)}.toast{z-index:100;background:var(--theme-toast,#294b38);border:1px solid var(--theme-line,#42654c);color:var(--theme-text,#eef5e2);box-shadow:0 8px 25px var(--theme-shadow,#203b3125);font-size:calc(11px * var(--font-scale));border-radius:9px;align-items:center;gap:10px;max-width:min(600px,100vw - 30px);padding:13px 18px;display:flex;position:fixed;bottom:25px;left:calc(50% + 116px);transform:translate(-50%)}.toast>svg{color:var(--theme-muted,#c4d7a4)}.toast button{color:var(--theme-muted,#ccd7c3);place-items:center;margin-left:10px;display:grid}.nav-scrim{display:none}@media (min-width:1600px){.content{padding-top:40px}.metric{padding:22px}.metric-heading{font-size:calc(12px * var(--font-scale))}.metric>small{font-size:calc(10px * var(--font-scale))}.agenda-row{padding:21px 0}.agenda-detail>strong{font-size:calc(13px * var(--font-scale))}.agenda-detail>span{font-size:calc(10px * var(--font-scale))}.welcome-card{min-height:282px}.welcome-card h2{font-size:calc(34px * var(--font-scale))}.welcome-card p{font-size:calc(12px * var(--font-scale))}.attention-row{padding:17px 23px}.attention-row strong{font-size:calc(12px * var(--font-scale))}.attention-row small{font-size:calc(10px * var(--font-scale))}}@media (max-width:1200px){.sidebar{width:205px;padding-left:12px;padding-right:12px}.main{margin-left:205px}.brand{font-size:calc(23px * var(--font-scale))}.content{padding:27px 25px 0}.topbar,.demo-banner{padding-left:25px;padding-right:25px}.head-actions{flex-wrap:wrap;justify-content:flex-end}.date-chip{display:none}.metric{padding:14px}.metric-heading{font-size:calc(9px * var(--font-scale))}.metric-icon{width:27px;height:27px}.metric>strong{font-size:calc(25px * var(--font-scale))}.stats-grid{gap:12px}.dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(240px,1fr);gap:16px}.section-head{padding:20px}h1{font-size:calc(31px * var(--font-scale))}.welcome-card{padding:23px 20px}.plant{opacity:.55;right:-10px}.family-grid,.tutor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-bottom{gap:16px}.toast{left:calc(50% + 102px)}}@media (max-width:960px){.sidebar{width:185px;padding-top:23px}.main{margin-left:185px}.brand{font-size:calc(21px * var(--font-scale));margin-left:7px;margin-right:0}.brand-mark{width:30px;height:30px}.workspace-label{font-size:calc(10px * var(--font-scale));padding:10px 7px}.workspace-symbol{display:none}.sidebar nav button{font-size:calc(12px * var(--font-scale));padding:11px 12px}.sidebar-note{padding:20px 12px}.sidebar-note p{font-size:calc(17px * var(--font-scale))}.sidebar-note>span{font-size:calc(8px * var(--font-scale))}.content{padding:24px 22px 0}.topbar,.demo-banner{padding-left:22px;padding-right:22px}.topbar{height:65px}.page-head{align-items:flex-start}.page-description{max-width:360px;line-height:1.8}.head-actions{padding-top:6px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.right-column{grid-template-columns:1fr 1fr}.welcome-card{min-height:230px}.attention .section-head{padding-top:22px}.attention-row{padding:17px}.dashboard-bottom{grid-template-columns:1fr}.metric-heading{font-size:calc(11px * var(--font-scale))}.metric>small{font-size:calc(10px * var(--font-scale))}.family-detail{flex-wrap:wrap}.detail-actions{width:100%;margin:0}.children-grid{grid-template-columns:1fr}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.three .metric-heading{font-size:calc(9px * var(--font-scale))}.three .metric>strong{font-size:calc(23px * var(--font-scale))}.three .metric-icon{display:none}.settings-grid{grid-template-columns:1fr}.help-notes{grid-column:auto}.toolbar{flex-wrap:wrap}.demo-extra{display:none}.toast{left:calc(50% + 92px)}.date-filters{flex-wrap:wrap}.family-card{padding:18px}.family-card-footer{flex-wrap:wrap}.app-footer{font-size:calc(8px * var(--font-scale))}}@media (max-width:700px){.sidebar{width:232px;transition:transform .2s;transform:translate(-100%)}.sidebar.is-open{transform:translate(0)}.main{width:100%;margin-left:0}.brand{font-size:calc(25px * var(--font-scale))}.workspace-symbol{display:grid}.sidebar-note{display:none}.sidebar nav button{padding:13px}.nav-scrim{background:var(--theme-scrim,#20392e77);z-index:19;display:block;position:fixed;inset:0}.mobile-menu{margin-right:0;display:flex!important}.topbar{height:62px;padding:0 19px}.breadcrumb{gap:8px}.breadcrumb>span,.breadcrumb>svg{display:none}.topbar-right{gap:16px}.timezone{font-size:calc(9px * var(--font-scale))}.content{padding:24px 18px 0}.demo-banner{font-size:calc(9px * var(--font-scale));align-items:flex-start;padding:9px 18px}.demo-banner>span{gap:4px;max-width:200px}.demo-banner>span>svg{display:none}.demo-banner button{font-size:calc(9px * var(--font-scale));gap:4px;padding-top:1px}.page-head{margin-bottom:23px;display:block}.page-head h1{font-size:calc(31px * var(--font-scale))}.eyebrow{font-size:calc(8px * var(--font-scale))}.page-description{font-size:calc(11px * var(--font-scale));margin-top:10px}.head-actions{justify-content:flex-start;gap:9px;margin-top:17px}.btn{font-size:calc(11px * var(--font-scale));padding:10px 14px}.stats-grid{gap:11px;margin-bottom:19px}.metric{padding:14px}.metric-heading{font-size:calc(9px * var(--font-scale))}.metric-icon{width:28px;height:28px}.metric>strong{font-size:calc(25px * var(--font-scale))}.metric>small{font-size:calc(8px * var(--font-scale))}.dashboard-grid{gap:19px}.right-column{gap:15px}.welcome-card{min-height:224px;padding:20px 17px}.tiny-label{font-size:calc(6px * var(--font-scale));letter-spacing:.8px}.welcome-card h2{font-size:calc(24px * var(--font-scale));margin-top:13px}.welcome-card p{font-size:calc(9px * var(--font-scale))}.welcome-link{font-size:calc(9px * var(--font-scale));margin-top:22px}.plant{opacity:.35;right:-33px;transform:scale(.8)}.attention .section-head{padding:20px 14px 10px}.attention h2{font-size:calc(14px * var(--font-scale))}.attention-row{gap:7px;padding:16px 13px}.attention-icon{display:none}.attention-row strong{font-size:calc(10px * var(--font-scale))}.attention-row small{font-size:calc(8px * var(--font-scale))}.attention-row>svg{width:12px}.section-head{padding:20px 18px 16px}h2{font-size:calc(16px * var(--font-scale))}.section-head p{font-size:calc(9px * var(--font-scale))}.week-container{padding-left:18px;padding-right:18px}.week-strip{gap:5px}.week-strip button{padding:9px 2px 6px}.agenda{padding:0 17px}.agenda-row{gap:9px;padding:17px 0}.agenda-time{font-size:calc(10px * var(--font-scale));width:52px}.agenda-detail>strong{font-size:calc(11px * var(--font-scale))}.agenda-detail>span{font-size:calc(8px * var(--font-scale));gap:4px}.agenda-row>.avatar{width:26px;height:26px;font-size:calc(8px * var(--font-scale))}.agenda-row>svg{display:none}.panel-footer{font-size:calc(8px * var(--font-scale));flex-wrap:wrap;gap:8px;padding:13px 17px}.panel-footer .text-btn{font-size:calc(9px * var(--font-scale))}.dashboard-bottom{gap:19px;margin-top:19px}.app-footer{font-size:calc(8px * var(--font-scale));display:block}.app-footer>span+span{margin-top:7px}.family-grid,.tutor-grid{gap:15px}.list-toolbar{flex-wrap:wrap;gap:12px}.search{width:100%;max-width:100%}.family-grid,.tutor-grid{grid-template-columns:1fr}.family-card{padding:21px}.family-card-footer{flex-wrap:nowrap}.family-children{margin:16px 0}.three{grid-template-columns:1fr 1fr}.three>.metric:last-child{grid-column:1/-1}.three .metric-icon{display:grid}.three .metric>strong{font-size:calc(25px * var(--font-scale))}.three>.metric:last-child{grid-template-columns:1fr auto;align-items:center;display:grid}.three>.metric:last-child .metric-heading{grid-column:1}.three>.metric:last-child .metric-icon{display:none}.three>.metric:last-child>strong{grid-area:1/2/3}.three>.metric:last-child>small{grid-column:1}.toolbar{gap:13px;padding:16px}.tabs{max-width:100%;overflow:auto}.tabs button{font-size:calc(9px * var(--font-scale));padding:7px 10px}.lesson-calendar{flex-direction:column;gap:0;padding:12px 0}.lesson-calendar .week-container{width:100%}.lesson-calendar>.text-btn{margin-bottom:15px}.date-filters{gap:12px}.date-filters label{flex:1;min-width:120px}.date-filters input{width:100%;min-width:0}.report-filters{padding:16px}.activity-row{font-size:calc(10px * var(--font-scale));flex-wrap:wrap;gap:7px}.activity-row>span{flex:1;min-width:200px}.activity-row small{width:100%;margin-left:23px}.family-detail{gap:12px;padding:20px}.family-detail>.avatar{width:45px;height:45px}.family-detail>div:not(.detail-actions){overflow-wrap:anywhere;flex:1;min-width:0}.detail-actions{flex-wrap:wrap}.child-card{padding:20px}.child-heading h3{font-size:calc(15px * var(--font-scale))}.child-heading small{font-size:calc(9px * var(--font-scale))}.settings-line{font-size:calc(10px * var(--font-scale));padding:16px 20px}.settings-buttons{padding:18px 20px}.record-dialog{border-radius:12px;width:calc(100% - 20px);max-height:calc(100dvh - 24px)}.dialog-header{padding:21px 20px 17px}.dialog-header h2{font-size:calc(25px * var(--font-scale))}.dialog-body{padding:22px 20px}.form-grid{gap:0 13px}.field{font-size:calc(10px * var(--font-scale))}.field input,.field select,.field textarea{font-size:calc(13px * var(--font-scale));padding:10px 9px}.field input[type=datetime-local]{font-size:calc(11px * var(--font-scale))}.dialog-footer{padding:16px 20px}.toast{font-size:calc(10px * var(--font-scale));min-width:290px;bottom:16px;left:50%}.top-avatar{display:none}}@media (max-width:370px){.content{padding-left:13px;padding-right:13px}.topbar{padding:0 13px}.demo-banner{padding:8px 13px}.page-head h1{font-size:calc(28px * var(--font-scale))}.right-column{grid-template-columns:1fr}.welcome-card{min-height:222px}.plant{opacity:.75;right:8px;transform:scale(.85)}.welcome-card h2{font-size:calc(29px * var(--font-scale))}.attention-icon{display:grid}.attention h2{font-size:calc(16px * var(--font-scale))}.attention-row{padding:15px 17px}.attention-row strong{font-size:calc(11px * var(--font-scale))}.agenda-detail>span i{display:none}.metric>strong{font-size:calc(23px * var(--font-scale))}.metric-heading{font-size:calc(8px * var(--font-scale))}.metric-icon{width:24px;height:24px}.metric-icon svg{width:15px}.form-grid{grid-template-columns:1fr}.settings-line{flex-wrap:wrap}.section-head h2{font-size:calc(15px * var(--font-scale))}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important}}.sidebar nav button{font-size:calc(13px * var(--font-scale))}.workspace-label{font-size:calc(12px * var(--font-scale))}.workspace-label small{font-size:calc(10px * var(--font-scale))}.page-description{font-size:calc(13px * var(--font-scale))}.eyebrow{font-size:calc(10px * var(--font-scale))}.breadcrumb{font-size:calc(12px * var(--font-scale))}.timezone,.demo-banner{font-size:calc(11px * var(--font-scale))}.btn{font-size:calc(12px * var(--font-scale))}.btn.small,.text-btn{font-size:calc(11px * var(--font-scale))}.metric-heading{font-size:calc(12px * var(--font-scale))}.metric>small{font-size:calc(11px * var(--font-scale))}.metric>strong{font-size:calc(29px * var(--font-scale))}.section-head p,.week-month strong{font-size:calc(12px * var(--font-scale))}.week-strip button>span{font-size:calc(11px * var(--font-scale))}.week-strip button strong{font-size:calc(18px * var(--font-scale))}.agenda-time{font-size:calc(12px * var(--font-scale));width:67px}.agenda-time small{font-size:calc(10px * var(--font-scale))}.agenda-detail>strong{font-size:calc(13px * var(--font-scale))}.agenda-detail>span{font-size:calc(11px * var(--font-scale))}.agenda-detail>small,.panel-footer{font-size:calc(10px * var(--font-scale))}.welcome-card p,.welcome-link,.attention-row strong{font-size:calc(12px * var(--font-scale))}.attention-row small{font-size:calc(11px * var(--font-scale))}.review-preview p{font-size:calc(12px * var(--font-scale))}.review-preview>span,.rating-summary small{font-size:calc(10px * var(--font-scale))}.tabs button,.search input{font-size:calc(12px * var(--font-scale))}.badge{font-size:calc(10px * var(--font-scale))}th{font-size:calc(11px * var(--font-scale))}td,.cell-link{font-size:calc(12px * var(--font-scale))}td small{font-size:calc(11px * var(--font-scale))}.family-card>.muted,.family-children>span{font-size:calc(12px * var(--font-scale))}.family-card-footer small{font-size:calc(11px * var(--font-scale))}.tutor-subjects,.tutor-bio{font-size:calc(12px * var(--font-scale))}.tutor-rating>span:last-child,.tutor-details small{font-size:calc(11px * var(--font-scale))}.tutor-review p{font-size:calc(12px * var(--font-scale))}.tutor-review small,.review-details summary,.child-heading small,.level-tag{font-size:calc(11px * var(--font-scale))}.learning-block>span,.focus-block>span{font-size:calc(10px * var(--font-scale))}.learning-block p,.focus-block p{font-size:calc(12px * var(--font-scale))}.learning-notes{font-size:calc(11px * var(--font-scale))}.family-detail p,.add-child-card small,.field{font-size:calc(12px * var(--font-scale))}.field input,.field textarea,.field select{font-size:calc(14px * var(--font-scale))}.field small{font-size:calc(11px * var(--font-scale))}.form-hint,.form-error,.lesson-focus>span,.lesson-focus p,.rating-input>span,.date-filters label,.date-filters input,select,.activity-row{font-size:calc(12px * var(--font-scale))}.activity-row small{font-size:calc(11px * var(--font-scale))}.settings-line,.help-notes>p,.how-it-works p{font-size:calc(12px * var(--font-scale))}.how-it-works h3{font-size:calc(14px * var(--font-scale))}.empty p{font-size:calc(13px * var(--font-scale))}.app-footer{font-size:calc(10px * var(--font-scale))}.toast,.owner{font-size:calc(12px * var(--font-scale))}.owner small{font-size:calc(10px * var(--font-scale))}.sidebar-note>span{font-size:calc(10px * var(--font-scale));line-height:1.8}.sidebar-note{padding-left:12px;padding-right:10px}.settings-link{font-size:calc(12px * var(--font-scale))}@media (max-width:1200px){.metric-heading{font-size:calc(11px * var(--font-scale))}.metric>small{font-size:calc(10px * var(--font-scale))}.metric>strong{font-size:calc(27px * var(--font-scale))}.workspace-label{font-size:calc(11px * var(--font-scale))}.agenda-detail>span{font-size:calc(10px * var(--font-scale))}}@media (max-width:700px){.page-description{font-size:calc(12px * var(--font-scale))}.metric-heading{font-size:calc(10px * var(--font-scale))}.metric>small{font-size:calc(9px * var(--font-scale))}.metric>strong{font-size:calc(25px * var(--font-scale))}.three .metric-heading,.demo-banner,.demo-banner button{font-size:calc(10px * var(--font-scale))}.agenda-time{font-size:calc(11px * var(--font-scale));width:58px}.agenda-detail>span{font-size:calc(10px * var(--font-scale))}.agenda-detail>small{font-size:calc(9px * var(--font-scale))}.agenda-detail>strong{font-size:calc(12px * var(--font-scale))}.section-head p{font-size:calc(11px * var(--font-scale))}.week-strip button>span{font-size:calc(10px * var(--font-scale))}.attention-row strong{font-size:calc(11px * var(--font-scale))}.attention-row small{font-size:calc(10px * var(--font-scale))}.welcome-card p{font-size:calc(11px * var(--font-scale))}.welcome-link{font-size:calc(10px * var(--font-scale))}.welcome-card h2{font-size:calc(24px * var(--font-scale))}.tabs button{font-size:calc(11px * var(--font-scale))}.field input,.field select,.field textarea{font-size:calc(14px * var(--font-scale))}.field input[type=datetime-local]{font-size:calc(12px * var(--font-scale))}.panel-footer .text-btn{font-size:calc(10px * var(--font-scale))}.settings-line{font-size:calc(11px * var(--font-scale))}.app-footer,.eyebrow{font-size:calc(9px * var(--font-scale))}.sidebar{visibility:hidden}.sidebar.is-open{visibility:visible}}.portal-shell,.welcome{max-width:1180px;margin:0 auto;padding:0 40px}.portal-header,.welcome-nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;height:100px;display:flex}.portal-brand{color:var(--green);align-items:center;gap:9px;display:flex}.portal-brand b{font-family:Manrope,var(--sans);font-size:calc(25px * var(--font-scale));letter-spacing:-1px}.portal-brand>span{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#75806b);border-left:1px solid var(--theme-accent-line,#d6ddd0);margin-left:8px;padding-left:15px}.text-link{font-size:calc(12px * var(--font-scale));color:var(--theme-accent-text,#557344);align-items:center;gap:7px;font-weight:600;display:inline-flex}.text-link:hover{text-decoration:underline}.welcome-hero{text-align:center;padding:72px 0 35px}.welcome-hero>.eyebrow{font-size:calc(10px * var(--font-scale));text-transform:uppercase;display:block}.welcome-hero h1{font-size:calc(66px * var(--font-scale));letter-spacing:-2.4px;margin:20px 0 24px;line-height:1.08}.welcome-hero h1 em{color:var(--theme-accent-text,#718953);font-weight:400}.welcome-hero>p{color:var(--theme-muted,#7b8673);line-height:1.9}.welcome-roles{text-align:left;grid-template-columns:1fr 1fr;gap:24px;max-width:840px;margin:48px auto 28px;display:grid}.welcome-roles article{background:var(--theme-surface,white);border:1px solid var(--theme-line,#e0e5d8);border-radius:16px;padding:29px}.welcome-roles article:nth-child(2){background:var(--theme-soft,#edf1e3)}.welcome-icon{background:var(--theme-soft,#eaf0da);width:46px;height:46px;color:var(--theme-text,#567241);border-radius:12px;place-items:center;margin-bottom:19px;display:grid}.welcome-roles article:nth-child(2) .welcome-icon{background:var(--theme-surface,#fff)}.welcome-roles h2{font-size:calc(21px * var(--font-scale));margin-bottom:10px}.welcome-roles p{font-size:calc(13px * var(--font-scale));color:var(--theme-muted,#7b8673);min-height:70px;margin-bottom:23px;line-height:1.8}.welcome-roles .btn{font-size:calc(12px * var(--font-scale));width:100%}.welcome-note{font-size:calc(10px * var(--font-scale));justify-content:center;align-items:center;gap:8px;max-width:760px;margin:auto;display:flex}.welcome-footer{border-top:1px solid var(--line);color:var(--theme-muted,#8c9580);font-size:calc(10px * var(--font-scale));justify-content:space-between;gap:20px;padding:28px 0;display:flex}.welcome-footer>span{align-items:center;gap:8px;display:flex}.portal-heading{justify-content:space-between;align-items:center;gap:20px;padding:45px 0 32px;display:flex}.portal-heading h1{font-size:calc(41px * var(--font-scale));margin-top:10px}.portal-heading p{font-size:calc(13px * var(--font-scale));color:var(--theme-muted,#87907f);margin-top:10px}.portal-tabs{border-bottom:1px solid var(--line);gap:20px;margin-bottom:26px;display:flex;overflow-x:auto}.portal-tabs button{white-space:nowrap;font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#849179);border-bottom:3px solid #0000;align-items:center;gap:8px;padding:14px 6px;display:flex}.portal-tabs button.selected{color:var(--theme-accent-text,#345638);border-color:var(--theme-accent-line,#6e8952);font-weight:650}.portal-shell section>.section-head{padding:4px 0 23px}.portal-shell .section-head p,.access-manager .section-head p{font-size:calc(12px * var(--font-scale))}.portal-actions{align-items:center;gap:9px;display:flex}.portal-actions select{background:var(--theme-input,white);border:1px solid var(--theme-control-line,#dfe3d8);font-size:calc(11px * var(--font-scale));border-radius:7px;min-width:0;max-width:100%;padding:10px}.portal-lesson-list{grid-template-columns:1fr 1fr;gap:20px;display:grid}.portal-lesson{flex-direction:column;padding:24px;display:flex}.portal-lesson-top{justify-content:space-between;gap:15px;display:flex}.portal-lesson h3{font-size:calc(19px * var(--font-scale));margin:13px 0}.portal-lesson h3 span{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#819076);margin-top:4px;font-weight:400;display:block}.portal-lesson-top p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#86917c);overflow-wrap:anywhere;align-items:center;gap:7px;margin:7px 0;display:flex}.portal-lesson-bottom{border-top:1px solid var(--line);font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#7a8770);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-top:19px;padding-top:16px;display:flex}.portal-lesson-bottom b{color:var(--theme-text,#405638);font-weight:550}.icon-button{border-radius:7px;justify-content:center;align-items:center;height:35px;padding:8px;display:inline-flex}.icon-button:hover{background:var(--theme-hover,#edf2e4)}.portal-footer{text-align:center;color:var(--theme-muted,#9aa28f);font-size:calc(10px * var(--font-scale));padding:42px 0}.learner-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.learner-card{padding:24px}.learner-card .section-head{padding:0 0 17px}.learner-card h3{font-size:calc(21px * var(--font-scale))}.learner-card p{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--theme-muted,#7b8771);font-size:calc(12px * var(--font-scale));line-height:1.8}.learner-card h4,.learning-focus h4{font-size:calc(11px * var(--font-scale));align-items:center;gap:6px;margin:18px 0 7px;font-weight:600;display:flex}.learning-focus{background:var(--theme-soft,#f0f4e8);border-radius:9px;margin-top:18px;padding:15px 17px}.learning-focus h4{color:var(--theme-text,#587147);margin:0 0 7px}.learning-focus p{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#7a896d);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.portal-stats{grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:28px;display:grid}.portal-stats article{padding:24px}.portal-stats p{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#7e8872)}.portal-stats strong{font-family:Manrope,var(--sans);font-weight:500;font-size:calc(30px * var(--font-scale));margin-top:9px;display:block}.portal-payment{margin-bottom:17px;padding:22px 25px}.portal-payment .section-head{padding:0 0 18px}.payment-amounts{border-top:1px solid var(--line);font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#86917a);justify-content:space-between;gap:18px;padding:17px 0;display:flex}.payment-amounts b{color:var(--theme-text,#405638);font-size:calc(15px * var(--font-scale));margin-top:4px;font-weight:550;display:block}.receipt-line{font-size:calc(11px * var(--font-scale));border-top:1px solid var(--line);color:var(--theme-muted,#78856d);justify-content:space-between;gap:20px;padding:12px 0;display:flex}.receipt-line span{overflow-wrap:anywhere;min-width:0}.portal-profile{max-width:720px;padding:30px}.portal-profile .section-head{padding:0 0 20px}.portal-profile>p{white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0}.portal-profile>.muted{font-size:calc(11px * var(--font-scale));border-top:1px solid var(--line);margin-top:25px;padding-top:20px}.portal-notice{background:var(--theme-success-surface,#e7efdc);color:var(--theme-success-text,#496b36);font-size:calc(12px * var(--font-scale));border-radius:8px;margin:16px 0;padding:14px 18px}.portal-error{background:var(--theme-danger-surface,#f9eae5);border-radius:9px;margin:24px 0;padding:20px}.portal-error p{margin-bottom:16px}.portal-error .text-link{margin-left:20px}.entry-message{max-width:600px;margin:auto;padding:90px 30px}.entry-message p{margin:20px 0 30px}.registration-content{max-width:720px;margin:45px auto}.registration-content>h1{margin:10px 0 15px}.registration-content>.muted{font-size:calc(12px * var(--font-scale));overflow-wrap:anywhere;margin-bottom:25px}.registration-card{padding:32px}.registration-card>h2{font-size:calc(23px * var(--font-scale));margin:18px 0 12px}.registration-card>p{color:var(--theme-muted,#7f8b75);line-height:1.8}.status-icon{color:var(--theme-success-text,#729252);width:42px;height:42px}.registration-summary{background:var(--theme-soft,#f2f5eb);border-radius:8px;gap:4px;margin:25px 0;padding:18px;display:grid}.registration-summary span{color:var(--theme-accent-text,#87937a);font-size:calc(12px * var(--font-scale))}.role-switch{grid-template-columns:1fr 1fr;gap:15px;margin-bottom:30px;display:grid}.role-switch button{border:1px solid var(--line);font-size:calc(13px * var(--font-scale));text-align:left;border-radius:10px;align-items:center;gap:10px;padding:15px;display:flex}.role-switch button.selected{background:var(--theme-selected,#e9efdc);border-color:var(--theme-accent-line,#acbf91);color:var(--theme-accent-text,#4b693a)}.registration-card .field{margin-bottom:16px}.registration-card>.section-head{padding:20px 0 10px}.child-registration{border:1px solid var(--line);border-radius:10px;min-width:0;margin:0 0 24px;padding:20px}.child-registration legend{color:var(--theme-muted,#718262);font-weight:600;font-size:calc(12px * var(--font-scale));padding:0 8px}.registration-card>.form-hint{margin:25px 0 20px}.access-info{border:1px solid var(--theme-line,#dfe8d2);background:var(--theme-soft,#eef4e4);font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#78896b);border-radius:10px;gap:14px;margin-bottom:23px;padding:20px;display:flex}.access-info a{color:var(--theme-text,#476a34);text-decoration:underline}.access-panel{margin-bottom:24px;padding:24px}.access-panel>.section-head{padding:0 0 20px}.access-panel>.muted{font-size:calc(11px * var(--font-scale));margin:8px 0 20px}.access-grant{grid-template-columns:120px 1fr 1fr auto;align-items:end;gap:15px;display:grid}.access-grant .field{margin:0}.registration-review{border-top:1px solid var(--line);padding:22px 0}.registration-review:last-child{padding-bottom:0}.registration-review>.section-head{padding:0 0 15px}.registration-review details{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#7b8970)}.registration-review summary{cursor:pointer;color:var(--theme-accent-text,#56713f);line-height:1.8}.registration-review details p{overflow-wrap:anywhere;white-space:pre-wrap;margin:10px 0}.review-child{background:var(--theme-soft,#f7f9f2);border-radius:8px;margin:15px 0;padding:16px}.review-child p{font-size:calc(11px * var(--font-scale))}.review-approval{align-items:end;gap:15px;margin:20px 0 12px;display:flex}.review-approval>.field{flex:1;margin:0}.review-approval input{width:100%}.reject-registration{margin-top:15px}.reject-registration form{max-width:500px;padding:12px 0}.table-sub{white-space:normal;overflow-wrap:anywhere}.access-manager .form-error{margin-bottom:20px}.access-panel .table-wrap{margin:15px -24px -24px}.portal-shell .empty>svg{color:var(--theme-muted,#8b9e72);margin:auto}.portal-shell .badge{font-size:calc(10px * var(--font-scale));text-transform:capitalize}.portal-shell .field input,.portal-shell .field textarea{font-size:calc(13px * var(--font-scale))}.portal-header .text-link{white-space:nowrap}@media (max-width:900px){.portal-shell,.welcome{padding:0 25px}.welcome-hero{padding-top:50px}.portal-lesson-list{grid-template-columns:1fr}.access-grant{grid-template-columns:1fr 1fr}.review-approval{flex-wrap:wrap}.review-approval>.field{min-width:160px}.portal-stats article{padding:20px}.portal-stats strong{font-size:calc(25px * var(--font-scale))}.welcome-note{align-items:flex-start}.welcome-footer{flex-wrap:wrap;justify-content:center}.welcome-footer>span:last-child{display:none}}@media (max-width:600px){.portal-shell,.welcome{padding:0 18px}.portal-header,.welcome-nav{height:80px}.portal-brand b{font-size:calc(23px * var(--font-scale))}.portal-brand>span{display:none}.welcome-nav .btn{font-size:calc(9px * var(--font-scale));padding:8px 10px}.welcome-hero{padding-top:40px}.welcome-hero h1{font-size:calc(46px * var(--font-scale));letter-spacing:-1.6px}.welcome-hero>p{font-size:calc(12px * var(--font-scale))}.welcome-roles{grid-template-columns:1fr;gap:16px;margin-top:30px}.welcome-roles article{padding:24px}.welcome-roles p{min-height:0}.welcome-note{text-align:left;font-size:calc(10px * var(--font-scale))!important}.welcome-footer{font-size:calc(9px * var(--font-scale));gap:13px;padding:24px 0}.portal-heading{align-items:flex-start;padding:30px 0 22px}.portal-heading h1{font-size:calc(32px * var(--font-scale));overflow-wrap:anywhere}.portal-heading p{font-size:calc(11px * var(--font-scale))}.portal-heading>.btn{gap:0;padding:8px;font-size:0}.portal-tabs{gap:15px}.portal-tabs button{font-size:calc(11px * var(--font-scale))}.portal-shell section>.section-head{flex-wrap:wrap;align-items:flex-start}.portal-actions{flex-wrap:wrap}.portal-shell .section-head p{font-size:calc(11px * var(--font-scale))}.portal-lesson{padding:20px}.portal-lesson h3{font-size:calc(19px * var(--font-scale))}.learner-grid{grid-template-columns:1fr}.portal-stats{gap:9px}.portal-stats article{padding:15px 10px}.portal-stats p{font-size:calc(9px * var(--font-scale));min-height:28px}.portal-stats strong{font-size:calc(20px * var(--font-scale));letter-spacing:-.5px}.portal-payment{padding:20px}.payment-amounts{grid-template-columns:1fr 1fr;display:grid}.payment-amounts b{font-size:calc(14px * var(--font-scale))}.portal-profile{padding:23px}.portal-profile .section-head{flex-wrap:wrap}.portal-profile .section-head p{overflow-wrap:anywhere}.registration-content{margin-top:30px}.registration-card{padding:22px 18px}.role-switch{gap:9px}.role-switch button{font-size:calc(11px * var(--font-scale));gap:8px;padding:12px 10px}.role-switch svg{width:19px}.child-registration{padding:15px 12px}.registration-card .portal-actions .btn{width:100%}.access-panel{padding:20px}.access-grant{grid-template-columns:1fr}.access-panel .table-wrap{margin:15px -20px -20px}.access-info{font-size:calc(11px * var(--font-scale))}.registration-review .section-head{flex-wrap:wrap;align-items:flex-start}.registration-review .section-head p{overflow-wrap:anywhere}.review-approval{grid-template-columns:1fr;display:grid}.review-approval>.field{min-width:0}.portal-shell .record-dialog{max-width:calc(100vw - 24px)}.portal-shell .dialog-body,.portal-shell .dialog-header{padding:20px}.portal-shell .dialog-footer{padding:16px 20px}}.portal-stats strong{overflow-wrap:anywhere}.tutoring-times-fields{background:var(--theme-soft,#f5f7ef);border:1px solid var(--theme-line,#e1e8d6);border-radius:9px;margin:18px 0 23px;padding:18px}.time-section-title{color:var(--theme-text,#48623b);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.time-section-title h3{font-size:calc(14px * var(--font-scale))}.time-section-title>span{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#859278);margin-left:auto;font-weight:400}.time-help{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#829074);margin:7px 0 15px;line-height:1.7}.time-footnote{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#8a957f);margin:11px 0 0;line-height:1.6}.tutoring-time-row{grid-template-columns:minmax(125px,1.2fr) minmax(100px,1fr) minmax(100px,1fr) 30px;align-items:end;gap:10px;margin-bottom:14px;display:grid}.tutoring-time-row>.field{min-width:0;margin:0!important}.tutoring-time-row .field input,.tutoring-time-row .field select{background:var(--theme-input,white);width:100%;min-width:0;font-size:calc(12px * var(--font-scale))}.tutoring-time-row>.icon-btn{height:39px;padding:5px}.family-children-fields{border-top:1px solid var(--line);margin-top:24px;padding-top:23px}.family-child-form{border:1px solid var(--theme-line,#dfe5d6);border-radius:11px;min-width:0;margin:18px 0 21px;padding:20px;position:relative}.family-child-form legend{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#7c8a70);padding:0 8px;font-weight:600}.family-child-form>.field{max-width:calc(100% - 24px)}.remove-new-child{position:absolute;top:13px;right:11px}.child-extra-fields{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#718460)}.child-extra-fields summary{cursor:pointer;padding:1px 0 13px;font-weight:500}.child-extra-fields[open]{margin-top:18px}.tutoring-times-summary{font-size:calc(11px * var(--font-scale));padding:13px 0}.tutoring-times-summary h4{font-size:calc(10px * var(--font-scale));color:var(--theme-accent-text,#6f835a);flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 9px;font-weight:600;display:flex}.tutoring-times-summary h4 small{font-size:calc(8px * var(--font-scale));color:var(--theme-accent-text,#96a186);font-weight:400}.tutoring-times-summary ul{gap:5px;margin:0;padding:0;list-style:none;display:grid}.tutoring-times-summary li{color:var(--theme-accent-text,#6b7f57);overflow-wrap:anywhere;line-height:1.6}.tutoring-times-summary>p{font-size:calc(10px * var(--font-scale))}.tutoring-times-summary.compact{padding:5px 0 0}.tutoring-times-summary.compact li{font-size:calc(10px * var(--font-scale))}.family-needs-list{gap:14px;margin:18px 0;display:grid}.family-needs-list>div{border-left:2px solid var(--theme-accent-line,#d5e2bd);padding-left:11px}.family-needs-list strong{font-size:calc(11px * var(--font-scale));flex-wrap:wrap;align-items:center;gap:7px;font-weight:500;display:flex}.family-needs-list small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#95a087);font-weight:400}.family-needs-list>p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#8b967e)}.lesson-focus .tutoring-times-summary{border-bottom:1px solid var(--theme-line,#dde5d1);margin-bottom:11px;padding-top:0}.learner-card .tutoring-times-summary h4{margin-top:8px}.learner-card .tutoring-times-summary p{font-size:calc(11px * var(--font-scale))}.registration-review .tutoring-times-summary{padding:10px 0}.registration-card .tutoring-times-fields{padding:15px}.record-dialog .time-help{margin-top:7px}.record-dialog .time-footnote{margin-top:12px}@media (max-width:600px){.family-child-form{padding:16px 12px}.tutoring-times-fields,.registration-card .tutoring-times-fields{padding:14px 11px}.tutoring-time-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 28px;gap:8px}.tutoring-time-row>.field:first-child{grid-column:1/3}.tutoring-time-row>.field:nth-child(2){grid-area:2/1}.tutoring-time-row>.field:nth-child(3){grid-area:2/2}.tutoring-time-row>.icon-btn{grid-area:1/3}.time-section-title>span{width:100%;margin-left:0;padding-left:25px}.time-section-title h3{font-size:calc(13px * var(--font-scale))}.tutoring-time-row .field input{font-size:calc(11px * var(--font-scale));padding-left:7px;padding-right:7px}.family-child-form>.field{max-width:calc(100% - 15px)}}.address-line{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#7a886f);overflow-wrap:anywhere;align-items:flex-start;gap:6px;margin:9px 0;display:flex}.address-line svg{margin-top:2px}.travel-limit{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#6d815c);margin:8px 0 14px}.assignment-summary{background:var(--theme-soft,#f3f6ec);font-size:calc(11px * var(--font-scale));border-radius:8px;gap:6px;margin:1px 0 12px;padding:13px;display:grid}.assignment-summary strong{align-items:flex-start;gap:6px;font-weight:600;display:flex}.assignment-summary small{font-size:calc(10px * var(--font-scale));color:var(--theme-accent-text,#849178)}.travel-within{color:var(--theme-success-text,#3e7049)!important}.travel-attention{color:var(--theme-warning-text,#a76436)!important}.assign-button{white-space:normal;max-width:100%;margin-bottom:20px}.assigned-name{color:var(--theme-muted,#697f54);font-size:calc(11px * var(--font-scale));margin:8px 0;display:block}.weekly-dialog{width:min(760px,100% - 32px)}.route-check{border:1px solid var(--theme-line,#e1e7d7);background:var(--theme-soft,#f6f8f0);border-radius:9px;margin:0 0 16px;padding:18px}.route-check h3{font-size:calc(14px * var(--font-scale));align-items:center;gap:8px;display:flex}.route-check dl{gap:10px;margin:14px 0;display:grid}.route-check dl>div{font-size:calc(11px * var(--font-scale));grid-template-columns:95px 1fr;gap:12px;display:grid}.route-check dt{color:var(--theme-muted,#819172)}.route-check dd{overflow-wrap:anywhere;margin:0}.route-check>p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#829176);margin:12px 0;line-height:1.7}.route-check>.field{max-width:300px;margin-bottom:0}.weekly-toggle{font-size:calc(13px * var(--font-scale));align-items:flex-start;gap:10px;padding:16px 0 22px;display:flex}.weekly-toggle input{accent-color:var(--theme-focus,#294c3b);flex-shrink:0;margin-top:4px}.weekly-toggle small{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#849379);margin-top:4px;display:block}.weekly-review{border-top:1px solid var(--theme-line,#dfe7d6);margin-top:24px;padding-top:18px}.weekly-review>p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#7c8f6b);margin:12px 0}.weekly-review .table-wrap{border:1px solid var(--theme-line,#e3e8dc);border-radius:8px;max-height:310px;overflow:auto}.weekly-review td{font-size:calc(11px * var(--font-scale))}.weekly-review th{background:var(--theme-raised,#f3f6ec);z-index:1;position:sticky;top:0}.weekly-review td:first-child{white-space:normal;min-width:170px}.weekly-review td:last-child{white-space:normal;min-width:160px}.weekly-totals{font-size:calc(12px * var(--font-scale));flex-wrap:wrap;gap:14px;margin:16px 0;display:flex}.weekly-totals>span{background:var(--theme-soft,#eff3e7);border-radius:8px;flex:1;min-width:160px;padding:12px}.weekly-totals b{font-size:calc(22px * var(--font-scale));margin-top:4px;font-weight:500;display:block}.learner-address{background:var(--theme-soft,#f3f6ec);border-radius:8px;margin:12px 0;padding:12px}.learner-address>p{overflow-wrap:anywhere;gap:7px;display:flex}.learner-address .btn{white-space:normal;margin-top:10px}.family-children-fields{margin-bottom:22px}@media (max-width:600px){.weekly-dialog{width:calc(100% - 20px)}.route-check{padding:14px}.route-check dl>div{grid-template-columns:1fr;gap:2px}.route-check .btn{white-space:normal;text-align:left}.weekly-dialog .dialog-footer{padding:14px}.weekly-dialog .dialog-footer .btn{font-size:calc(11px * var(--font-scale));white-space:normal}.weekly-review .table-wrap{max-height:270px}}.between-lessons{border-top:1px solid var(--theme-line,#e0e7d8);margin:22px 0;padding-top:19px}.between-lessons>h3{font-size:calc(14px * var(--font-scale));align-items:center;gap:8px;display:flex}.between-lessons>p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#78866e);margin:10px 0 16px;line-height:1.75}.between-lessons .travel-clear{background:var(--theme-soft,#f1f6e9);color:var(--theme-text,#517342);border-radius:7px;padding:12px}.journey-card{border:1px solid var(--theme-warning-line,#e6dcca);border-left:3px solid var(--theme-warning-line,#bf9463);background:var(--theme-warning-surface,#fcfaf5);border-radius:9px;margin:15px 0;padding:17px}.journey-ready{border-color:var(--theme-success-line,#dbe5cf);border-left-color:var(--theme-success-line,#8eab6d);background:var(--theme-success-surface,#f6f9ef)}.journey-heading{font-size:calc(12px * var(--font-scale));flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.journey-heading>b{overflow-wrap:anywhere;max-width:100%}.journey-heading>span{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#7c886f)}.journey-card dl{font-size:calc(11px * var(--font-scale));gap:8px;margin:13px 0;display:grid}.journey-card dl>div{grid-template-columns:35px 1fr;gap:9px;display:grid}.journey-card dt{color:var(--theme-muted,#829076)}.journey-card dd{overflow-wrap:anywhere;margin:0}.journey-result{font-size:calc(12px * var(--font-scale));font-weight:600;line-height:1.6}.journey-date{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#7e896f);margin:5px 0 13px;display:block}.journey-card>.field{max-width:100%;margin:15px 0 0}.journey-card>.field input{width:130px;display:block}.journey-card>.field small{margin-top:7px;line-height:1.6}.weekly-review>.between-lessons{border-top:0;margin-top:0;margin-bottom:25px;padding-top:0}.journey-card .btn{white-space:normal;text-align:left}@media (max-width:600px){.journey-card{padding:14px 12px}.journey-heading{gap:3px;display:grid}.journey-result{font-size:calc(11px * var(--font-scale))}.journey-card>.field input{width:100%}.journey-card .btn{font-size:calc(10px * var(--font-scale))}.between-lessons>p{font-size:calc(11px * var(--font-scale))}}.lesson-view-switch{background:var(--theme-soft,#e9ede2);border-radius:9px;flex-wrap:wrap;gap:6px;width:fit-content;margin:0 0 20px;padding:5px;display:flex}.lesson-view-switch button{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#75836b);border-radius:6px;align-items:center;gap:7px;padding:9px 13px;display:flex}.lesson-view-switch .selected{background:var(--theme-selected,white);box-shadow:0 1px 4px var(--theme-shadow,#293e3010);color:var(--theme-accent-text,#345335);font-weight:600}.tutor-calendar-button{width:100%;margin-top:18px}.tutor-week{overflow:hidden}.tutor-week-header{justify-content:space-between;align-items:center;gap:20px;padding:24px;display:flex}.tutor-week-header h2{font-family:var(--serif);font-weight:400;font-size:calc(25px * var(--font-scale));overflow-wrap:anywhere}.tutor-week-header>div>p:last-child{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#86927c);margin-top:6px}.calendar-tutor-picker{min-width:170px;max-width:290px;font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#748368);gap:5px;display:grid}.calendar-tutor-picker select{border:1px solid var(--theme-control-line,#dce4d2);background:var(--theme-input,#fcfdf9);width:100%;min-width:0;color:var(--theme-text,#385036);font-size:calc(12px * var(--font-scale));border-radius:7px;padding:9px}.tutor-week-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:0 24px 19px;display:flex}.tutor-week-navigation{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tutor-week-navigation h3{font-size:calc(14px * var(--font-scale));text-align:center;min-width:185px;font-weight:600}.tutor-week-navigation>.btn{margin-left:6px}.tutor-week-actions{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.week-date-picker{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#819074);flex-direction:column;gap:4px;display:flex}.week-date-picker input{color:var(--theme-text,#5c7250);min-width:0;font-size:calc(11px * var(--font-scale));border:1px solid var(--theme-control-line,#dee5d5);background:var(--theme-input,white);border-radius:6px;padding:7px 9px}.tutor-week-summary{background:var(--theme-soft,#f5f8ef);border-top:1px solid var(--theme-line,#e7ecdf);border-bottom:1px solid var(--theme-line,#e3e8dc);font-size:calc(11px * var(--font-scale));color:var(--theme-accent-text,#728464);flex-wrap:wrap;align-items:center;gap:18px;padding:14px 24px;display:flex}.tutor-week-summary>span{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.tutor-week-summary b{color:var(--theme-accent-text,#42613a);font-weight:600}.tutor-week-summary label{font-size:calc(11px * var(--font-scale));align-items:center;gap:6px;margin-left:auto;display:flex}.tutor-week-summary input{accent-color:var(--theme-focus,#3c5d38)}.week-attention{background:var(--theme-warning-surface,#fbf3e9);border-bottom:1px solid var(--theme-warning-line,#eedfcc);color:var(--theme-warning-text,#9a6637);font-size:calc(11px * var(--font-scale));align-items:flex-start;gap:8px;padding:12px 24px;line-height:1.6;display:flex}.week-attention svg{margin-top:2px}.tutor-week-scroll{outline-offset:-3px;overflow:auto}.tutor-week-grid{grid-template-columns:repeat(7,minmax(0,1fr));align-items:stretch;min-width:910px;display:grid}.tutor-week-day{border-right:1px solid var(--theme-line,#e6ebdf);background:var(--theme-surface,#fff);min-width:0;min-height:390px}.tutor-week-day:last-child{border-right:0}.tutor-week-day.is-weekend{background:var(--theme-soft,#fafbf7)}.tutor-week-day>header{border-bottom:1px solid var(--theme-line,#e6ebdf);background:var(--theme-raised,#fcfdf9);align-items:center;gap:6px;min-height:62px;padding:14px 11px;display:flex}.tutor-week-day>header>span{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#829276)}.tutor-week-day>header time{font-size:calc(19px * var(--font-scale));width:31px;height:31px;color:var(--theme-text,#416037);border-radius:50%;place-items:center;font-weight:500;display:grid}.tutor-week-day.is-today>header time{background:var(--theme-accent,#2d5139);color:var(--theme-on-accent,#fff)}.tutor-week-day>header small{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#68814f)}.week-day-entries{gap:10px;padding:11px 7px 20px;display:grid}.week-lesson{border:1px solid var(--theme-line,#dce8cf);border-left:3px solid var(--theme-accent-line,#83a76c);background:var(--theme-soft,#f0f6e9);text-align:left;overflow-wrap:anywhere;width:100%;min-width:0;color:var(--theme-text,#49643e);border-radius:8px;flex-direction:column;align-items:stretch;gap:6px;padding:11px 9px;display:flex}.week-lesson-time{font-size:calc(11px * var(--font-scale));color:var(--theme-text,#51753f);font-weight:600;line-height:1.6}.week-lesson>strong{font-size:calc(14px * var(--font-scale));color:var(--theme-text,#2d4b34);font-weight:600;line-height:1.4}.week-lesson-subject{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#6e805f)}.week-lesson-location{font-size:calc(11px * var(--font-scale));color:var(--theme-text,#647759);align-items:flex-start;gap:4px;line-height:1.6;display:flex}.week-lesson-location svg{margin-top:2px}.week-lesson-status{font-size:calc(11px * var(--font-scale));text-transform:uppercase;letter-spacing:.5px;color:var(--theme-muted,#749261);margin-top:2px;line-height:1.5}.week-lesson.completed{background:var(--theme-blue-surface,#f1f4f6);border-color:var(--theme-blue-line,#dde4e8);border-left-color:var(--theme-blue-line,#9aafba)}.week-lesson.cancelled{background:var(--theme-soft,#f6f4f1);border-color:var(--theme-line,#e6e1da);border-left-color:var(--theme-accent-line,#c0b9af);color:var(--theme-muted,#9d978e)}.week-lesson.cancelled>strong,.week-lesson.cancelled>.week-lesson-time{color:var(--theme-muted,#9d978e);text-decoration:line-through}.week-continuation{font-size:calc(11px * var(--font-scale));font-style:italic}.week-lesson:is(button):hover{border-color:var(--theme-accent-line,#94b37a);box-shadow:0 3px 9px var(--theme-shadow,#294c3b0a);transform:translateY(-1px)}.week-journey{border:1px dashed var(--theme-line,#d7decc);background:var(--theme-soft,#fdfdf9);color:var(--theme-muted,#788469);overflow-wrap:anywhere;font-size:calc(11px * var(--font-scale));border-radius:8px;min-width:0;padding:10px 8px}.week-journey-title{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#5a7850);align-items:flex-start;gap:5px;line-height:1.5;display:flex}.week-journey-title svg{margin-top:1px}.week-journey-title strong{font-weight:600}.week-journey>p{font-size:calc(11px * var(--font-scale));color:var(--theme-text,#647454);margin:6px 0;line-height:1.6}.week-journey>small{font-size:calc(11px * var(--font-scale));margin:5px 0;line-height:1.7;display:block}.week-gap{font-size:calc(11px * var(--font-scale));font-weight:500;line-height:1.6;display:block}.week-route-link{font-size:calc(11px * var(--font-scale));text-underline-offset:3px;color:var(--theme-accent-text,#6d8059);text-align:left;align-items:center;gap:4px;margin-top:7px;padding:0;font-weight:600;text-decoration:underline;display:flex}.week-journey.needs-attention{border-color:var(--theme-warning-line,#d6ad7d);background:var(--theme-warning-surface,#fff7eb);color:var(--theme-warning-text,#a1723e)}.week-journey.needs-attention .week-journey-title,.week-journey.needs-attention .week-gap{color:var(--theme-warning-text,#a16b31)}.week-day-empty{text-align:center;font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#a3ad99);padding:22px 0}.tutor-week-note,.week-empty-note{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#718264);border-top:1px solid var(--theme-line,#e6ebde);background:var(--theme-soft,#fcfdf9);padding:15px 24px;line-height:1.7}.week-empty-note{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#73866b)}.portal-shell .tutor-week{margin-top:24px}.portal-tabs{flex-wrap:wrap}@media (min-width:1500px){.tutor-week-grid{min-width:0}.week-day-entries{padding:13px 10px}.week-lesson{padding:14px 11px}.week-lesson-time{font-size:calc(11px * var(--font-scale))}.week-lesson>strong{font-size:calc(14px * var(--font-scale))}.week-journey-title,.week-lesson-location,.week-journey>p,.week-journey>small,.week-gap,.week-route-link{font-size:calc(11px * var(--font-scale))}}@media (max-width:800px){.tutor-week-header{flex-wrap:wrap;align-items:flex-start;padding:20px}.calendar-tutor-picker{width:100%;min-width:0;max-width:none}.tutor-week-header h2{font-size:calc(24px * var(--font-scale))}.tutor-week-toolbar{gap:14px;padding:0 20px 17px}.tutor-week-navigation{justify-content:flex-start;gap:3px}.tutor-week-navigation h3{font-size:calc(12px * var(--font-scale));min-width:165px}.tutor-week-navigation>.btn{margin-left:3px}.tutor-week-summary{gap:12px;padding:13px 20px}.tutor-week-summary label{width:100%;margin-left:0}.week-attention{padding:13px 20px}.tutor-week-grid{grid-template-columns:1fr;min-width:0}.tutor-week-day{border-right:0;border-bottom:1px solid var(--theme-line,#e5eadc);min-height:0}.tutor-week-day>header{gap:10px;min-height:0;padding:10px 18px}.tutor-week-day>header>span{font-size:calc(12px * var(--font-scale))}.tutor-week-day>header time{font-size:calc(20px * var(--font-scale))}.tutor-week-day>header small{font-size:calc(11px * var(--font-scale))}.week-day-entries{gap:11px;padding:14px 18px 20px}.week-lesson{padding:14px}.week-lesson>strong{font-size:calc(16px * var(--font-scale))}.week-lesson-time,.week-lesson-subject{font-size:calc(12px * var(--font-scale))}.week-lesson-location,.week-lesson-status,.week-continuation{font-size:calc(11px * var(--font-scale))}.week-journey{padding:13px 14px}.week-journey-title{font-size:calc(12px * var(--font-scale))}.week-journey>p,.week-journey>small,.week-gap,.week-route-link{font-size:calc(11px * var(--font-scale))}.week-day-empty{text-align:left;padding:0}.tutor-week-note,.week-empty-note{padding:16px 20px}.lesson-view-switch button{font-size:calc(11px * var(--font-scale));padding:9px 10px}.tutor-week-actions{justify-content:space-between;width:100%}.tutor-week-navigation .icon-btn{padding:5px}.portal-tabs{gap:8px 16px}.portal-tabs button{white-space:nowrap}}.week-lesson-wrap{min-width:0}.week-lesson-wrap.movable{cursor:grab}.week-lesson-wrap.is-dragging{opacity:.42}.week-lesson-wrap.movable .week-lesson{border-radius:8px 8px 0 0}.week-move-button{background:var(--theme-soft,#e7efdd);border:1px solid var(--theme-line,#d6e3c8);width:100%;color:var(--theme-text,#536e42);font-size:calc(10px * var(--font-scale));cursor:grab;touch-action:manipulation;border-top:0;border-radius:0 0 7px 7px;justify-content:space-between;align-items:center;gap:4px;padding:8px 6px;display:flex}.week-move-button:active{cursor:grabbing}.week-move-button:hover{background:var(--theme-hover,#dae8cb)}.week-move-button>span{text-align:left;flex:1}.week-drag-hint{color:var(--theme-muted,#667957);background:var(--theme-soft,#fcfdf8);font-size:calc(11px * var(--font-scale));border-bottom:1px solid var(--theme-line,#e5eadc);align-items:flex-start;gap:8px;padding:12px 24px;line-height:1.7;display:flex}.week-drag-hint svg{margin-top:2px}.tutor-week-day.accepts-drop{background:var(--theme-soft,#fafcf5)}.tutor-week-day.drop-target{background:var(--theme-selected,#edf5df);box-shadow:inset 0 0 0 2px var(--theme-focus,#82a868)}.week-drop-label{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#59783f);text-align:center;border-bottom:1px dashed var(--theme-line,#bbcea8);padding:10px 6px}.reschedule-dialog{width:min(800px,100vw - 32px)}.move-original{background:var(--theme-soft,#f4f7ed);border:1px solid var(--theme-line,#e2e9d9);font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#617852);border-radius:8px;gap:10px;margin-bottom:23px;padding:15px 17px;line-height:1.8;display:flex}.move-original svg{margin-top:4px}.move-original b{color:var(--theme-text,#3e5b36);font-weight:500}.move-scope{border:0;margin:22px 0;padding:0}.move-scope legend{font-weight:600;font-size:calc(13px * var(--font-scale));margin-bottom:11px}.move-scope label{border:1px solid var(--theme-line,#dde5d4);cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;margin:9px 0;padding:14px;display:flex}.move-scope label:has(input:checked){border-color:var(--theme-accent-line,#89a66b);background:var(--theme-selected,#f1f6e9)}.move-scope label.unavailable{opacity:.6;cursor:default}.move-scope input{accent-color:var(--theme-focus,#426333);flex-shrink:0;width:15px;height:15px;margin:5px 0 0}.move-scope b{font-size:calc(13px * var(--font-scale));font-weight:600;display:block}.move-scope small{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#7d8b70);margin-top:4px;line-height:1.6;display:block}.move-explanation{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#7e8b72);margin:16px 0;line-height:1.8}.move-review{margin:25px 0}.move-review h3{font-size:calc(15px * var(--font-scale));margin-bottom:12px}.move-rows{border:1px solid var(--theme-line,#e3e8dd);border-radius:8px;max-height:300px;overflow:auto}.move-row{border-bottom:1px solid var(--theme-line,#e5eadf);font-size:calc(12px * var(--font-scale));padding:14px 16px}.move-row:last-child{border-bottom:0}.move-row>div{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.move-row>div>span{color:var(--theme-muted,#7b8772)}.move-row strong{color:var(--theme-text,#456337);font-weight:600}.move-row>small{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#70865f);margin-top:6px;display:block}.move-row ul{color:var(--theme-warning-text,#a06132);margin:8px 0 0;padding-left:18px;line-height:1.7}.move-row-conflict{background:var(--theme-warning-surface,#fff8ee)}.move-row-conflict strong{color:var(--theme-warning-text,#9d6032)}.move-ready{background:var(--theme-success-surface,#edf5e4);border:1px solid var(--theme-success-line,#dce8ce);color:var(--theme-success-text,#527044);font-size:calc(12px * var(--font-scale));border-radius:8px;align-items:flex-start;gap:8px;padding:13px;line-height:1.7;display:flex}.move-ready svg{margin-top:2px}.reschedule-dialog .between-lessons h3{margin-bottom:6px}.reschedule-dialog .form-error{line-height:1.7}@media (max-width:800px){.week-move-button{font-size:calc(12px * var(--font-scale));padding:10px 13px}.week-drag-hint{padding:13px 20px}.move-row>div{grid-template-columns:1fr auto;display:grid}.move-row strong{grid-column:1/-1}.move-scope label{padding:12px}.reschedule-dialog .dialog-body{padding:20px}.reschedule-dialog .dialog-footer{padding:17px 20px}}.move-travel-fields{border:0;min-width:0;margin:0;padding:0}.subject-select{align-self:start;gap:7px;position:relative}.subject-select>label{cursor:pointer}.subject-trigger{text-align:left;border:1px solid var(--theme-control-line,#dfe6d5);width:100%;min-height:43px;font-size:calc(14px * var(--font-scale));color:var(--theme-text,#4e6840);background:var(--theme-input,#fff);border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:11px;display:flex}.subject-trigger:hover,.subject-trigger.is-open{border-color:var(--theme-accent-line,#8da777);background:var(--theme-input,#fcfdf9)}.subject-trigger.is-open>svg{transform:rotate(180deg)}.subject-trigger>svg{flex-shrink:0}.subject-placeholder{color:var(--theme-placeholder,#87997a)}.subject-select .subject-validation{opacity:0;pointer-events:none;border:0;width:1px;height:1px;min-height:0;padding:0;position:absolute;top:30px;left:0}.subject-chips{flex-wrap:wrap;gap:6px;margin:1px 0 0;padding:0;list-style:none;display:flex}.subject-chips li{background:var(--theme-soft,#edf3e4);border:1px solid var(--theme-line,#dce6d1);max-width:100%;font-size:calc(12px * var(--font-scale));color:var(--theme-text,#49643b);border-radius:6px;align-items:center;gap:4px;padding:3px 4px 3px 9px;display:flex}.subject-chips li>span{overflow-wrap:anywhere;min-width:0}.subject-chips button{border-radius:4px;flex-shrink:0;place-items:center;min-width:26px;min-height:26px;display:grid}.subject-chips button:hover{background:var(--theme-hover,#d9e7cb);color:var(--theme-text,#2c492b)}.subject-menu{border:1px solid var(--theme-control-line,#cbd9bd);box-shadow:0 5px 18px var(--theme-shadow,#2a493214);background:var(--theme-surface,#fff);border-radius:9px;margin-top:2px;overflow:hidden}.subject-search{border-bottom:1px solid var(--theme-line,#e3e9dc);color:var(--theme-muted,#7b916b);align-items:center;gap:8px;padding:10px 12px;display:flex}.subject-search>svg{flex-shrink:0}.subject-search input{min-height:28px;font-size:calc(13px * var(--font-scale));box-shadow:none;outline-offset:4px;border:0;border-radius:0;padding:0}.subject-options{overscroll-behavior:contain;max-height:240px;padding:5px 7px;overflow-y:auto}.subject-options fieldset{border:0;min-width:0;margin:0;padding:0}.subject-options legend{float:left;width:100%;font-size:calc(10px * var(--font-scale));text-transform:uppercase;letter-spacing:.6px;color:var(--theme-text,#8a967c);overflow-wrap:anywhere;padding:12px 7px 6px;font-weight:650}.subject-option{clear:both;cursor:pointer;min-height:38px;font-size:calc(13px * var(--font-scale));color:var(--theme-text,#506946);border-radius:5px;align-items:center;gap:9px;padding:7px;line-height:1.5;display:flex}.subject-option:hover{background:var(--theme-hover,#f4f7ef)}.subject-option:has(input:checked){background:var(--theme-selected,#edf4e3);color:var(--theme-accent-text,#345c2f)}.subject-option input[type=checkbox]{width:16px;height:16px;min-height:0;accent-color:var(--theme-focus,#426337);flex-shrink:0;margin:0;padding:0}.subject-option>span{overflow-wrap:anywhere;min-width:0}.subject-menu-footer{border-top:1px solid var(--theme-line,#e4eadb);background:var(--theme-raised,#f8faf4);font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#819171);justify-content:space-between;align-items:center;padding:9px 12px;display:flex}.subject-menu-footer button{color:var(--theme-text,#365c35);align-items:center;gap:5px;min-height:30px;padding:4px 7px;font-weight:600;display:flex}.subject-add{text-align:left;border-top:1px solid var(--theme-line,#e4eadb);width:100%;font-size:calc(12px * var(--font-scale));color:var(--theme-text,#4d6d3d);background:var(--theme-soft,#fcfdf9);align-items:center;gap:6px;padding:12px 14px;display:flex}.subject-add>span{overflow-wrap:anywhere;min-width:0}.subject-add>svg{flex-shrink:0}.subject-add:hover{background:var(--theme-hover,#eff5e7)}.subject-no-results{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#7c8d6c);padding:18px 10px;line-height:1.6}.subject-error{font-size:calc(12px * var(--font-scale));color:var(--theme-danger-text,#a94e35);line-height:1.6}.subject-select>small{font-size:calc(11px * var(--font-scale));color:var(--theme-text,#829370)}@media (max-width:600px){.subject-option{min-height:44px;font-size:calc(14px * var(--font-scale))}.subject-chips button{min-width:32px;min-height:32px}.subject-menu-footer button{min-height:38px}.subject-options{max-height:215px}.subject-search input{font-size:calc(14px * var(--font-scale))}}.lesson-recurrence{border:1px solid var(--theme-line,#e0e7d6);background:var(--theme-soft,#f8faf4);border-radius:9px;margin:4px 0 22px;padding:19px}.lesson-recurrence h3{font-size:calc(14px * var(--font-scale));align-items:center;gap:8px;margin-bottom:17px;display:flex}.lesson-recurrence>.field{max-width:280px}.repeat-interval{align-items:center;gap:10px;display:flex}.repeat-interval input{max-width:95px}.repeat-interval>span{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#6d805e)}.recurrence-hint{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#728564);align-items:flex-start;gap:8px;margin:0 0 12px;line-height:1.7;display:flex}.recurrence-hint>svg,.recurrence-existing>svg{flex-shrink:0;margin-top:3px}.recurrence-base-check{border-top:1px solid var(--theme-line,#e0e6d7);margin-top:18px;padding-top:17px}.recurrence-base-check .field{margin-bottom:12px}.recurrence-base-check input{max-width:140px}.recurrence-existing{background:var(--theme-soft,#f3f7ec);font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#637a54);border-radius:8px;align-items:flex-start;gap:9px;margin:0 0 23px;padding:14px;line-height:1.7;display:flex}.recurring-lesson-review{border-top:1px solid var(--theme-line,#dfe7d6);margin-top:24px;padding-top:22px}.recurring-lesson-review>h3{font-size:calc(17px * var(--font-scale));margin-bottom:9px}.recurring-lesson-review>p{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#6d815e);margin:10px 0 18px;line-height:1.7}.recurrence-rows{border:1px solid var(--theme-line,#e2e8d9);border-radius:8px;max-height:300px;margin-top:16px;overflow:auto}.recurrence-rows table{width:100%}.recurrence-rows td,.recurrence-rows th{font-size:calc(11px * var(--font-scale));white-space:normal;vertical-align:top;min-width:100px;padding:12px}.recurrence-rows th{background:var(--theme-raised,#f5f8ef);position:sticky;top:0}.recurring-lesson-review>.form-error{color:var(--theme-danger-text,#a45136)}.recurrence-base-check .btn{white-space:normal}@media (max-width:600px){.lesson-recurrence{padding:15px}.lesson-recurrence .form-grid{grid-template-columns:1fr}.lesson-recurrence>.field{max-width:none}.recurrence-hint{font-size:calc(12px * var(--font-scale))}.recurrence-rows td,.recurrence-rows th{font-size:calc(11px * var(--font-scale));padding:10px}}.series-editor{width:min(850px,100vw - 32px)}.series-operation{background:var(--theme-soft,#f4f6ee);border-radius:9px;gap:8px;padding:5px;display:flex}.series-operation button{color:var(--theme-text,#617352);font-size:calc(13px * var(--font-scale));cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px;display:flex}.series-operation button[aria-pressed=true]{background:var(--theme-selected,#fff);border-color:var(--theme-line,#d6e1cb);color:var(--theme-text,#294e3e);box-shadow:0 2px 5px var(--theme-shadow,#294e3e09)}.series-operation button:focus-visible{outline:2px solid var(--theme-focus,#54753c);outline-offset:2px}.series-edit-fields{border:0;min-width:0;margin:24px 0 0;padding:0}.series-edit-hint{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#6c7f5c);margin:0 0 20px;line-height:1.8}.series-cancel-note{background:var(--theme-warning-surface,#fcf4ed);border:1px solid var(--theme-warning-line,#ecd9c9);color:var(--theme-warning-text,#865839);font-size:calc(13px * var(--font-scale));border-radius:8px;padding:16px;line-height:1.8}.series-cancel-label{color:var(--theme-warning-text,#98633f);font-size:calc(11px * var(--font-scale));margin-left:auto;font-weight:500}.btn.series-danger{background:var(--theme-danger-action,#944f3e);color:var(--theme-on-danger,white);border-color:var(--theme-danger-action,#944f3e)}.btn.series-danger:hover{background:var(--theme-danger-action-hover,#7d4032)}.series-changes{font-size:calc(12px * var(--font-scale));margin:9px 0 0}.series-changes>div{grid-template-columns:95px minmax(0,1fr);gap:10px;padding:5px 0;display:grid}.series-changes dt{color:var(--theme-muted,#738365)}.series-changes dd{overflow-wrap:anywhere;margin:0;line-height:1.7}.series-changes dd>span{color:var(--theme-muted,#8b947f)}.series-changes dd>b{color:var(--theme-muted,#80956f);font-weight:400}.series-editor .form-error{line-height:1.8}.series-editor .dialog-footer .btn{white-space:normal}.series-editor input[type=datetime-local],.series-editor input[type=date]{min-width:0;max-width:100%}@media (max-width:600px){.series-editor .dialog-body{padding:20px}.series-editor .dialog-header h2{font-size:calc(26px * var(--font-scale))}.series-editor .dialog-header{padding:22px 20px}.series-editor .dialog-footer{padding:15px}.series-editor .move-row>div{display:flex}.series-cancel-label{margin-left:0}.series-changes>div{grid-template-columns:1fr;gap:2px}.series-operation button{padding:12px 5px}}.backup-panel{grid-column:1/-1;padding:24px}.backup-panel>.section-head{padding:0 0 8px}.backup-panel h2{align-items:center;gap:10px;display:flex}.backup-actions,.backup-row-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.backup-note,.backup-scope,.backup-empty{color:var(--theme-text,#626e67);margin:14px 0;line-height:1.65}.backup-scope{font-size:calc(13px * var(--font-scale))}.backup-list{margin:20px 0 12px}.backup-point{border-top:1px solid var(--theme-line,#e7ebe5);justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.backup-point strong,.backup-point span{display:block}.backup-point>div>span{font-size:calc(13px * var(--font-scale));color:var(--theme-text,#69756c);margin-top:5px}.backup-success,.backup-error,.backup-warning{border-radius:10px;padding:12px 15px;line-height:1.6}.backup-success{background:var(--theme-success-surface,#edf5eb);color:var(--theme-success-text,#35613d)}.backup-error{background:var(--theme-danger-surface,#fff0ed);color:var(--theme-danger-text,#943c2b)}.backup-warning{background:var(--theme-warning-surface,#fff6df);color:var(--theme-warning-text,#775c23)}.backup-dialog{width:min(640px,100vw - 24px);max-height:90dvh;overflow:auto}.backup-review{padding:20px 28px}.backup-review p{line-height:1.65}.backup-confirm{border:1px solid var(--theme-line,#d4dfd1);border-radius:10px;align-items:flex-start;gap:12px;padding:15px;line-height:1.6;display:flex}.backup-confirm input{min-width:18px;min-height:18px;margin-top:5px}.backup-row-actions a{white-space:nowrap}@media (max-width:650px){.backup-panel{padding:20px}.backup-point{flex-direction:column;align-items:flex-start}.backup-review{padding:16px}.backup-row-actions{width:100%}.backup-row-actions .btn{flex:1;justify-content:center}}.communication-card{align-self:start;min-width:0;padding:26px}.communication-card h3{align-items:center;gap:9px;display:flex}.communication-card>p{font-size:calc(14px * var(--font-scale));color:var(--theme-text,#5b6c62);margin:14px 0;line-height:1.6}.communication-card .settings-line strong{overflow-wrap:anywhere;text-align:right}.communication-card .btn{white-space:normal}.connection-status{font-size:calc(14px * var(--font-scale));align-items:center;gap:9px;margin:18px 0;font-weight:600;display:flex}.connection-dot{background:var(--theme-warning-text,#c4a56c);border-radius:50%;flex-shrink:0;width:9px;height:9px}.connection-dot.ready{background:var(--theme-success-text,#3e8160)}.connection-message{background:var(--theme-success-surface,#eff7f0);border-radius:8px;padding:10px 12px;color:var(--theme-success-text,#286144)!important}.connection-help{font-size:calc(13px * var(--font-scale));color:var(--theme-text,#53665a);margin-top:18px;line-height:1.7}.connection-help summary{cursor:pointer;color:var(--theme-accent-text,#2b5843);font-weight:600}.connection-help ul{margin:12px 0;padding-left:20px}.connection-help a,.communication-card a:not(.btn){text-underline-offset:3px;text-decoration:underline}.connection-confirm{background:var(--theme-warning-surface,#f8f4eb);font-size:calc(14px * var(--font-scale));border-radius:10px;padding:14px}.connection-confirm .settings-buttons{margin:12px 0 0}.calendar-link{background:var(--theme-soft,#f4f8f3);border-radius:10px;flex-wrap:wrap;gap:8px;padding:14px;display:flex}.calendar-link .field,.calendar-link>small{width:100%}.calendar-link input{font-size:calc(12px * var(--font-scale))}.delivery-history small{overflow-wrap:anywhere;display:block}.delivery-history li{margin:12px 0}.address-field{position:relative}.address-field>label{font-size:calc(13px * var(--font-scale));color:var(--theme-text,#405448);margin-bottom:7px;font-weight:600;display:block}.address-combobox{min-width:0;position:relative}.address-combobox>input{width:100%;min-width:0}.address-results{z-index:30;background:var(--theme-surface,#fff);border:1px solid var(--theme-control-line,#d6e2d8);box-shadow:0 9px 24px var(--theme-shadow,#203a2b20);border-radius:10px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden}.address-results ul{max-height:235px;margin:0;padding:4px;list-style:none;overflow-y:auto}.address-results li{font-size:calc(13px * var(--font-scale));cursor:pointer;color:var(--theme-text,#254334);border-radius:6px;align-items:flex-start;gap:9px;padding:11px 9px;line-height:1.5;display:flex}.address-results li svg{flex-shrink:0;margin-top:2px}.address-results li[aria-selected=true]{background:var(--theme-selected,#eaf3e8)}.address-results>small{font-size:calc(10px * var(--font-scale));background:var(--theme-soft,#f7f9f6);border-top:1px solid var(--theme-line,#e4ebe2);padding:7px 12px;display:block}.address-results a{text-decoration:underline}.address-field>small{line-height:1.5}.address-field>small[role=status]:empty{display:none}.address-field>small[role=status]{color:var(--theme-warning-text,#75603d)}.portal-tabs{overflow-x:auto}.portal-tabs button{white-space:nowrap}.address-results .address-correction{font-size:calc(11px * var(--font-scale));color:var(--theme-warning-text,#75603d);margin-top:3px;line-height:1.5;display:block}.form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.field{gap:7px}.field>label{margin-bottom:0}.field input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not(.subject-validation),.field select,.field .subject-trigger{box-sizing:border-box;height:44px;min-height:44px;padding:10px 12px;line-height:1.4}.field select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235b6f4e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:36px}.field .subject-trigger{align-items:center;display:flex}.form-grid>.field>span,.form-grid>.field>label,.form-grid>.lesson-due-date>.field>span{min-height:20px;font-size:calc(12px * var(--font-scale));align-items:center;gap:3px;font-weight:500;line-height:1.5;display:flex}.field .subject-search input{height:28px;min-height:28px;padding:0}.field textarea{min-height:100px}.lesson-addresses{border:1px solid var(--theme-line,#e0e8d9);background:var(--theme-soft,#fafcf7);border-radius:12px;margin-bottom:24px;padding:20px}.lesson-addresses h3{font-size:calc(15px * var(--font-scale));color:var(--theme-text,#34533f);align-items:center;gap:8px;display:flex}.lesson-addresses>p{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#6d7f62);margin:10px 0 18px;line-height:1.65}.lesson-addresses>.field:last-child{margin-bottom:0}.record-save-footer{z-index:40;display:block}.record-save-footer .form-error{max-height:130px;margin:0 0 12px;overflow:auto}.record-save-footer .form-error svg{flex-shrink:0;margin-top:2px}.dialog-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}@media (max-width:600px){.form-grid{grid-template-columns:1fr}.lesson-addresses{padding:16px}.form-grid>.field>span,.form-grid>.field>label{font-size:calc(12px * var(--font-scale))}.communication-card{padding:20px}.communication-card .section-head{gap:10px}.communication-card .settings-line{align-items:flex-start;gap:12px}.communication-card .settings-line strong{max-width:65%}.calendar-link .btn{flex:1}.connection-confirm .settings-buttons{flex-wrap:wrap}.address-results li{padding:12px 8px}}.automatic-drive{border:1px solid var(--theme-line,#dbe4d1);background:var(--theme-soft,#f7f9f2);border-radius:12px;margin-top:20px;padding:18px}.automatic-drive-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.automatic-drive-heading h3{align-items:center;gap:8px;margin:0;display:flex}.automatic-drive-heading>span{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#6b7b5c);white-space:nowrap}.base-drive-route{font-size:calc(13px * var(--font-scale));gap:12px;margin:0 0 18px;line-height:1.65;display:grid}.base-drive-route dt{color:var(--theme-muted);font-size:calc(12px * var(--font-scale))}.base-drive-route dd{overflow-wrap:anywhere;margin:2px 0 0}.journey-card dd small{color:var(--theme-muted);margin-top:4px;line-height:1.6;display:block}.lesson-conflicts{border:1px solid var(--theme-warning-line,#bf9463);background:var(--theme-warning-surface,#fcfaf5);font-size:calc(13px * var(--font-scale));border-radius:10px;margin:22px 0;padding:18px;line-height:1.65}.lesson-conflicts h3{font-size:calc(15px * var(--font-scale));align-items:center;gap:8px;margin:0;display:flex}.lesson-conflicts p{margin:12px 0}.lesson-conflicts div{overflow-wrap:anywhere;gap:4px;margin:14px 0;display:grid}.lesson-conflicts article{border-top:1px solid var(--theme-warning-line,#bf9463)}.lesson-conflicts strong{color:var(--theme-text)}.lesson-conflicts span{display:block}.automatic-drive .automatic-drive-grid{align-items:start;margin-bottom:0}.automatic-drive-result{min-height:44px;color:var(--theme-text,#36583f);align-items:center;gap:10px;margin-top:28px;display:flex}.automatic-drive-result strong,.automatic-drive-result small{display:block}.automatic-drive-result strong{font-size:calc(15px * var(--font-scale));line-height:1.5}.automatic-drive-result small{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#6b7b5c);margin-top:3px}.automatic-drive .drive-explanation,.automatic-drive .drive-error{font-size:calc(13px * var(--font-scale));margin:12px 0;line-height:1.6}.automatic-drive .drive-error{color:var(--theme-danger-text,#8b4d2b)}.drive-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.drive-actions .btn{min-height:36px}.drive-attribution{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#6b7b5c);margin-top:12px;display:block}.drive-attribution a{text-decoration:underline}@media (max-width:600px){.automatic-drive{padding:14px}.automatic-drive-result{margin-top:0}.automatic-drive-heading{align-items:flex-start}.automatic-drive-heading h3{font-size:calc(15px * var(--font-scale))}}.journey-result{align-items:flex-start;gap:8px;display:flex}.journey-result>svg{flex-shrink:0;margin-top:2px}.journey-result small{margin-top:5px;font-weight:400;display:block}.journey-estimate-status{font-size:calc(12px * var(--font-scale));color:var(--theme-text,#526d45);align-items:flex-start;gap:7px;margin:12px 0;line-height:1.65;display:flex}.journey-estimate-status svg{flex-shrink:0;margin-top:3px}.journey-card .drive-actions{margin-top:15px}.journey-card .drive-error{font-size:calc(12px * var(--font-scale));color:var(--theme-danger-text,#8b4d2b);line-height:1.65}.next-lesson-time{border:1px solid var(--theme-line,#ccdcb9);background:var(--theme-soft,#f4f8ec);color:var(--theme-text,#47623b);overflow-wrap:anywhere;border-radius:9px;margin:20px 0;padding:18px}.next-lesson-time h3{font-size:calc(14px * var(--font-scale));align-items:center;gap:8px;margin:0 0 14px;display:flex}.next-lesson-time h3 svg{flex-shrink:0}.next-lesson-time .suggested-time{font-size:calc(19px * var(--font-scale));color:var(--theme-text,#294f3e);font-weight:600;line-height:1.5;display:block}.next-lesson-time p{font-size:calc(12px * var(--font-scale));margin:8px 0;line-height:1.7}.next-lesson-time small{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#6d7f60);margin:10px 0 14px;line-height:1.7;display:block}.next-lesson-time .btn{white-space:normal;justify-content:center;min-height:44px}@media (max-width:600px){.next-lesson-time{padding:15px 13px}.next-lesson-time .suggested-time{font-size:calc(18px * var(--font-scale))}.next-lesson-time .btn{width:100%}}.lesson-search-hours{border:0;margin:0 0 17px;padding:0}.lesson-search-hours legend{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#667c57);margin-bottom:10px}.lesson-search-hours .form-grid{gap:12px}.lesson-search-hours .field{margin:0}.lesson-search-hours .field>span{font-size:calc(11px * var(--font-scale))}.lesson-search-hours input[type=time]{box-sizing:border-box;width:100%;min-width:0;height:44px;min-height:44px}.search-weekends{font-size:calc(11px * var(--font-scale));align-items:center;gap:8px;min-height:32px;margin-top:8px;display:flex}.search-weekends input{width:15px;height:15px;accent-color:var(--theme-focus,#426333)}.next-lesson-time .suggestion-next-day{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#657b55);margin-bottom:5px}@media (max-width:600px){.lesson-search-hours .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.recurrence-summary{font-size:calc(13px * var(--font-scale));border:1px solid var(--theme-line,#e0e7d6);background:var(--theme-raised,#fff);color:var(--theme-text,#293f35);border-radius:8px;margin:0 0 16px;padding:12px 14px;line-height:1.6}.lesson-conflicts .conflict-actions{flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0 18px;display:flex}.conflict-actions .btn{white-space:normal;flex:1;min-height:42px}.draft-preserved-note{border:1px solid var(--theme-accent-line,#d5e2bd);background:var(--theme-soft,#f5f7ef);color:var(--theme-text,#48623b);font-size:calc(13px * var(--font-scale));border-radius:8px;margin:0 0 22px;padding:14px 16px;line-height:1.7}.conflict-booking-summary{font-size:calc(14px * var(--font-scale));overflow-wrap:anywhere;gap:7px;margin-bottom:22px;display:grid}.conflict-cancel-dialog .series-cancel-note{margin-bottom:22px}.conflict-cancel-dialog .dialog-footer{flex-wrap:wrap}.conflict-cancel-dialog .dialog-footer .btn{white-space:normal;min-height:44px}@media (max-width:480px){.conflict-actions .btn{flex-basis:100%}.conflict-cancel-dialog .dialog-footer .btn{flex:1}.draft-preserved-note{font-size:calc(12px * var(--font-scale))}}.lesson-due-date{min-width:0}.lesson-due-date .field{margin-bottom:0}.lesson-due-date>.text-btn{margin-top:10px}.payment-history-tools{border-bottom:1px solid var(--theme-line);font-size:calc(12px * var(--font-scale));color:var(--theme-muted);justify-content:space-between;align-items:center;gap:18px;padding:16px 22px;display:flex}.payment-history-tools p{margin:0;line-height:1.65}.payment-history-tools label{white-space:nowrap;align-items:center;gap:8px;min-height:32px;display:flex}.payment-history-tools input{width:16px;height:16px;accent-color:var(--theme-focus)}.payment-actions{align-items:center;gap:8px;display:flex}.payment-actions .btn{min-height:38px}.payment-delete{color:var(--theme-danger-text,#914e38)}.payment-record-summary{background:var(--theme-soft);border:1px solid var(--theme-line);line-height:1.6;font-size:calc(13px * var(--font-scale));overflow-wrap:anywhere;border-radius:10px;gap:7px;margin-bottom:24px;padding:18px;display:grid}.family-receipt-action{border-bottom:1px solid var(--theme-line);font-size:calc(12px * var(--font-scale));color:var(--theme-muted);justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.family-receipt-action p{margin:0;line-height:1.7}.family-receipt-action .btn{flex-shrink:0}.family-receipt-editor .receipt-intro{color:var(--theme-muted);margin:0 0 24px;line-height:1.8}.receipt-preview{border:1px solid var(--theme-accent-line);background:var(--theme-soft);border-radius:10px;margin-top:24px;overflow:hidden}.receipt-preview-heading{justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex}.receipt-preview-heading h3{font-size:calc(16px * var(--font-scale));margin:0 0 7px}.receipt-preview-heading p{font-size:calc(12px * var(--font-scale));color:var(--theme-muted);margin:0}.receipt-preview-heading>strong{font-size:calc(23px * var(--font-scale));white-space:nowrap}.receipt-preview table{width:100%;min-width:530px}.receipt-preview th,.receipt-preview td{font-size:calc(12px * var(--font-scale));padding:14px}.receipt-preview th:first-child{width:43%}.receipt-preview td small{line-height:1.7}.receipt-preview-total{border-top:1px solid var(--theme-line);font-size:calc(13px * var(--font-scale));justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.receipt-history-details{white-space:normal;margin-top:8px}.receipt-history-details summary{cursor:pointer;color:var(--theme-accent-text);font-size:calc(12px * var(--font-scale));padding:5px 0}.receipt-allocation-list{font-size:calc(12px * var(--font-scale));gap:0;margin:12px 0 22px;line-height:1.6;display:grid}.receipt-allocation-list>div{border-bottom:1px solid var(--theme-line);justify-content:space-between;gap:20px;padding:12px 0;display:flex}.receipt-allocation-list b{white-space:nowrap}.receipt-history-details .receipt-allocation-list{min-width:235px;margin-bottom:4px}.receipt-history-details small{white-space:normal}@media (max-width:600px){.family-receipt-action{flex-direction:column;align-items:flex-start}.family-receipt-editor .dialog-body{padding:20px}.receipt-preview-heading{align-items:flex-start;padding:16px}.receipt-preview-heading>strong{font-size:calc(19px * var(--font-scale))}.receipt-preview-total{align-items:flex-start}.receipt-preview-total>strong{white-space:nowrap}}.payment-edit-fields{border:0;min-width:0;margin:0;padding:0}.payment-editor .dialog-body>p{font-size:calc(13px * var(--font-scale));margin:18px 0;line-height:1.7}.payment-editor .dialog-footer .btn{min-height:44px}.payment-editor[open]{flex-direction:column;display:flex;overflow:hidden}.payment-editor>form{flex-direction:column;min-height:0;display:flex}.payment-editor .dialog-header,.payment-editor .dialog-footer{flex-shrink:0}.payment-editor .dialog-body{min-height:0;overflow-y:auto}.payment-editor .dialog-footer{position:static}.receipt-reference{grid-column:1/-1}@media (max-width:600px){.payment-history-tools{flex-direction:column;align-items:flex-start;gap:8px}.payment-actions{flex-direction:column;align-items:stretch}.payment-editor .dialog-footer{flex-wrap:wrap}.payment-editor .dialog-footer .btn{flex:1}}.administrator-access{margin:24px 0}.admin-eyebrow{color:var(--theme-accent-text);font-size:calc(11px * var(--font-scale));text-transform:uppercase;letter-spacing:1.2px;align-items:center;gap:7px;margin-bottom:9px;display:flex}.admin-owner{border:1px solid var(--line);background:var(--theme-soft);border-radius:10px;align-items:center;gap:14px;margin:4px 0 25px;padding:17px 20px;display:flex}.admin-owner>div{flex:1;min-width:0}.admin-owner strong,.admin-owner span:not(.badge){display:block}.admin-owner div>span{font-size:calc(12px * var(--font-scale));color:var(--theme-muted);overflow-wrap:anywhere;margin-top:4px}.admin-scope h3{font-size:calc(17px * var(--font-scale));margin-bottom:9px}.admin-scope p,.admin-share p{font-size:calc(12px * var(--font-scale));color:var(--theme-muted);max-width:850px;line-height:1.8}.admin-invite-form{grid-template-columns:1fr 1fr;align-items:end;gap:16px 20px;margin:20px 0 10px;display:grid}.admin-invite-form>.btn{grid-column:1/-1;justify-self:start}.admin-invite-form .field{margin:0}.admin-share{background:var(--theme-soft);border:1px solid var(--line);border-radius:10px;grid-template-columns:1fr auto;align-items:end;gap:12px 15px;margin:24px 0;padding:20px;display:grid}.admin-share .field{margin:0}.admin-share p{grid-column:1/-1}.admin-share>.btn{min-height:44px}.admin-account{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:21px 0;display:flex}.admin-account>div{min-width:0}.admin-account strong{font-size:calc(14px * var(--font-scale))}.admin-account .table-sub{overflow-wrap:anywhere;margin-top:4px;line-height:1.7;display:block}.admin-account .badge{margin-top:9px}.admin-account-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.admin-account-actions>p{font-size:calc(12px * var(--font-scale));flex-basis:100%}.administrator-access>.form-error,.administrator-access>.portal-notice{margin:16px 0}@media (max-width:700px){.admin-invite-form,.admin-share{grid-template-columns:1fr}.admin-account{flex-direction:column;align-items:flex-start}.admin-account-actions{justify-content:flex-start}.administrator-access .section-head{flex-wrap:wrap;align-items:flex-start}.admin-share>.btn{justify-self:start}.admin-owner{gap:9px;padding:15px 12px}}.backup-health{border:1px solid var(--theme-line,#d4dfd1);background:var(--theme-soft,#f4f6ef);border-radius:12px;justify-content:space-between;align-items:center;gap:24px;margin:18px 0;padding:20px;display:flex}.backup-health strong{color:var(--theme-text,#233c31)}.backup-health p{font-size:calc(13px * var(--font-scale));color:var(--theme-text,#626e67);max-width:730px;margin:6px 0 0;line-height:1.7}.backup-health>.btn{flex-shrink:0}@media (max-width:700px){.backup-health{flex-direction:column;align-items:flex-start;gap:14px;padding:16px}}.payee-select{position:relative}.payee-select>label{color:var(--theme-muted,#687b58)}.payee-control{position:relative}.payee-toggle{width:42px;height:44px;color:var(--theme-text,#4e6840);border-radius:6px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0 0 auto auto}.payee-toggle:hover{background:var(--theme-hover,#f1f5eb)}.payee-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.payee-menu{z-index:12;background:var(--theme-surface,#fff);border:1px solid var(--theme-control-line,#dfe6d5);border-radius:8px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden;box-shadow:0 12px 28px #0002}.payee-options{overscroll-behavior:contain;max-height:220px;padding:5px;overflow:auto}.payee-options:empty{padding:0}.payee-option{text-align:left;width:100%;min-height:40px;font-size:calc(13px * var(--font-scale));color:var(--theme-text,#25382f);border-radius:5px;justify-content:space-between;align-items:center;gap:10px;padding:10px;line-height:1.5;display:flex}.payee-option>span{overflow-wrap:anywhere;min-width:0}.payee-option:hover,.payee-option.is-active{background:var(--theme-selected,#edf4e3);color:var(--theme-accent-text,#345c2f)}.payee-option.is-new{font-weight:500}.payee-empty,.payee-menu-hint{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#687b58);padding:12px 14px;line-height:1.6}.payee-menu-hint{border-top:1px solid var(--theme-line,#e8eae3);background:var(--theme-soft,#f7f8f4)}.tutor-status-badges{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.tutor-status-badges .badge{font-size:calc(10px * var(--font-scale));padding:5px 8px}.tutor-top{min-height:56px}.tutor-top .row-actions{align-items:flex-start}.badge.tutor-unavailable{background:var(--theme-warning-surface,#f9f1df);color:var(--theme-warning-text,#986b39)}.tutor-status-badges svg{flex-shrink:0}.tutor-list-toolbar{flex-wrap:wrap;padding-bottom:10px}.tutor-status-date{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#728267);align-items:center;gap:8px;display:flex}.tutor-status-date input{border:1px solid var(--theme-control-line,#dce4d2);background:var(--theme-input,#fff);color:var(--theme-text,#253a30);font:inherit;border-radius:6px;min-height:36px;padding:8px 10px}.tutor-status-help{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#728267);margin:0 0 20px;line-height:1.6}.archived-tutor-note{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#728267);margin:6px 0}.tutor-review-button{margin:10px 0 14px}.feedback-empty,.archive-checklist{border:1px solid var(--theme-line,#dce4d2);background:var(--theme-soft,#f4f5ef);font-size:calc(12px * var(--font-scale));border-radius:10px;padding:16px;line-height:1.7}.tutor-archive-dialog .dialog-body>p{font-size:calc(13px * var(--font-scale));margin:0 0 16px;line-height:1.7}.archive-checklist h3{font-size:calc(14px * var(--font-scale));margin-bottom:8px}.archive-checklist ul{margin:12px 0;padding-left:20px}.archive-checklist li{padding:6px 0}.archive-checklist li .text-btn{margin-left:12px}.rating-input button:disabled{opacity:.35;cursor:not-allowed}.rating-input i{color:var(--theme-muted,#728267);font-style:normal}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=night]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--theme-canvas:#101c17;--theme-surface:#192b21;--theme-raised:#1d3025;--theme-soft:#223729;--theme-input:#14251c;--theme-hover:#2a4431;--theme-selected:#334f39;--theme-text:#e7eedf;--theme-muted:#b4c1a9;--theme-placeholder:#9bab91;--theme-line:#3a5140;--theme-control-line:#647e61;--theme-accent-line:#83a469;--theme-accent:#bed69a;--theme-accent-hover:#d0e4b1;--theme-accent-text:#c1dfa0;--theme-on-accent:#1b2b1e;--theme-focus:#bbd99a;--theme-sidebar:#13231a;--theme-sidebar-raised:#1e3426;--theme-nav-count:#ffffff15;--theme-welcome:#343d27;--theme-toast:#304b35;--theme-shadow:#00000050;--theme-scrim:#030a07b3;--theme-chart-primary:#b5d28e;--theme-chart-secondary:#819a78;--theme-success-surface:#263f2d;--theme-success-text:#c0dfa5;--theme-success-line:#5c8053;--theme-warning-surface:#3b3021;--theme-warning-text:#f0cc94;--theme-warning-line:#947349;--theme-danger-surface:#442b26;--theme-danger-text:#ffc3af;--theme-danger-action:#f2b19b;--theme-danger-action-hover:#ffc6b4;--theme-on-danger:#421c13;--theme-warm-surface:#433529;--theme-warm-text:#f1c99c;--theme-purple-surface:#393248;--theme-purple-text:#d6c4ed;--theme-blue-surface:#283d48;--theme-blue-text:#b9daec;--theme-blue-line:#587b8b;--theme-rose-surface:#462f38;--theme-rose-text:#efbeca}input,select,textarea,button{color-scheme:inherit}::selection{background:var(--theme-accent,#ddebba);color:var(--theme-on-accent,#25382f)}.record-dialog{color:var(--ink)}.appearance-control{color:var(--theme-muted,#627455);flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.appearance-control select{width:83px;min-height:40px;font-size:calc(11px * var(--font-scale));color:var(--theme-text,#405638);background:var(--theme-input,#fff);border:1px solid var(--theme-control-line,#dfe5d6);cursor:pointer;border-radius:7px;padding:7px 8px}.portal-header-actions{align-items:center;gap:18px;display:flex}@media (max-width:650px){.topbar-right{gap:12px}.appearance-control{gap:4px}.appearance-control select{width:77px;min-height:44px}.portal-header,.welcome-nav{flex-wrap:wrap;gap:16px}.portal-header-actions{flex-wrap:wrap;gap:12px}}.tutor-palette{--tutor-surface:var(--tutor-day-surface);--tutor-hover:var(--tutor-day-hover);--tutor-ink:var(--tutor-day-ink);--tutor-muted:var(--tutor-day-muted);--tutor-line:var(--tutor-day-line);--tutor-accent:var(--tutor-day-accent);--travel-surface:#eef1f3;--travel-hover:#e3e9ed;--travel-ink:#3e5260;--travel-line:#a5b4bd;--available-surface:#e4f3ef;--available-ink:#245d52;--available-line:#5e9d8f;--unavailable-surface:#f7e9e8;--unavailable-ink:#80413f;--unavailable-line:#bc8581}:root[data-theme=night] .tutor-palette{--tutor-surface:var(--tutor-night-surface);--tutor-hover:var(--tutor-night-hover);--tutor-ink:var(--tutor-night-ink);--tutor-muted:var(--tutor-night-muted);--tutor-line:var(--tutor-night-line);--tutor-accent:var(--tutor-night-accent);--travel-surface:#243038;--travel-hover:#2d3b44;--travel-ink:#c5d3d9;--travel-line:#607781;--available-surface:#193c36;--available-ink:#b9e3d7;--available-line:#65a493;--unavailable-surface:#432b2d;--unavailable-ink:#f0c0ba;--unavailable-line:#b67e7a}.avatar.tutor-palette{background:var(--tutor-surface);color:var(--tutor-ink);box-shadow:inset 0 0 0 1px var(--tutor-line)}.tutor-card.tutor-palette,.family-card.tutor-palette{border-top:3px solid var(--tutor-accent)}.tutor-week .week-lesson,.tutor-week .week-lesson.completed{background:var(--tutor-surface);color:var(--tutor-ink);border-color:var(--tutor-line);border-left-color:var(--tutor-accent)}.tutor-week .week-lesson strong,.tutor-week .week-lesson-time,.tutor-week .week-lesson-location{color:var(--tutor-ink)}.tutor-week .week-lesson-subject,.tutor-week .week-lesson-status,.tutor-week .week-continuation{color:var(--tutor-muted)}.tutor-week button.week-lesson:hover{background:var(--tutor-hover);border-color:var(--tutor-accent)}.tutor-week .week-move-button{background:var(--tutor-surface);color:var(--tutor-ink);border-color:var(--tutor-line)}.tutor-week .week-move-button:hover{background:var(--tutor-hover);color:var(--tutor-ink)}.tutor-week .week-lesson.cancelled{opacity:.65;border-style:dashed}.week-colour-key{color:var(--muted);font-size:calc(12px * var(--font-scale));border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 20px;padding:10px 20px;display:flex}.week-colour-key>span{align-items:center;gap:7px;display:inline-flex}.week-colour-key i{border-radius:50%;width:10px;height:10px;display:inline-block}.tutor-colour-dot{background:var(--tutor-accent)}.travel-colour-dot{background:var(--travel-line);border-radius:3px!important}.available-colour-dot{background:var(--available-line)}.unavailable-colour-dot{background:var(--unavailable-line)}.tutor-calendar-controls{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.week-availability{border:1px solid var(--available-line);background:var(--available-surface);color:var(--available-ink);font-size:calc(12px * var(--font-scale));border-left-width:3px;border-radius:9px;flex-direction:column;gap:6px;padding:12px 10px;line-height:1.5;display:flex}.week-availability.unavailable{border-color:var(--unavailable-line);background:var(--unavailable-surface);color:var(--unavailable-ink)}.week-availability>strong{font-size:calc(12px * var(--font-scale));align-items:center;gap:5px;display:flex}.week-availability svg{flex-shrink:0}.week-availability small{font-size:calc(11px * var(--font-scale));color:inherit}.week-availability.bookable{text-align:left;cursor:pointer;width:100%;min-width:0;min-height:44px}.week-availability.bookable:hover{box-shadow:inset 0 0 0 1px var(--available-line)}.week-availability.bookable:focus-visible{outline:3px solid var(--available-line);outline-offset:2px}.week-availability .week-availability-action{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:3px 8px;display:flex}.week-availability-action>span:last-child{text-underline-offset:3px;align-items:center;gap:4px;font-weight:600;text-decoration:underline;display:inline-flex}.calendar-booking-note{border:1px solid var(--line);background:var(--theme-soft,#f4f6ef);font-size:calc(12px * var(--font-scale));border-radius:8px;align-items:flex-start;gap:8px;margin:0 0 16px;padding:10px 12px;line-height:1.5;display:flex}.calendar-booking-note>svg{flex-shrink:0;margin-top:2px}.calendar-booking-note>span{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.calendar-booking-note strong{font-weight:600}.week-availability button{text-align:left;color:inherit;font-size:calc(11px * var(--font-scale));text-underline-offset:3px;padding:0;line-height:1.6;text-decoration:underline}.week-time-off-conflict,.week-lesson-unavailable{font-size:calc(11px * var(--font-scale));align-items:flex-start;gap:5px;line-height:1.5;display:flex}.week-lesson-unavailable{background:var(--unavailable-surface);color:var(--unavailable-ink);border-radius:5px;padding:6px}.week-availability-note{font-size:calc(12px * var(--font-scale));color:var(--muted);border-bottom:1px solid var(--line);padding:12px 24px}.tutor-time-off-fields{border:1px solid var(--line);background:var(--theme-soft,#f8faf5);border-radius:12px;margin:22px 0;padding:20px}.time-off-row{border:1px solid var(--line);border-radius:10px;min-width:0;margin:16px 0;padding:14px}.time-off-row legend{font-size:calc(13px * var(--font-scale));color:var(--muted);padding:0 6px;font-weight:600}.time-off-row-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.time-off-all-day{font-size:calc(13px * var(--font-scale));align-items:center;gap:9px;display:flex}.time-off-all-day input{width:17px;height:17px;accent-color:var(--theme-accent-text,#39614c)}.time-off-row .form-grid{margin-bottom:14px}.time-off-conflict{border:1px solid var(--theme-warning-line,#be955c);background:var(--theme-warning-surface,#fff5e5);color:var(--theme-warning-text,#82521b);font-size:calc(13px * var(--font-scale));border-radius:8px;margin-top:16px;padding:14px}.time-off-conflict strong{align-items:center;gap:7px;display:flex}.time-off-conflict p{margin:8px 0;line-height:1.6}.time-off-conflict ul{max-height:150px;padding-left:20px;line-height:1.7;overflow:auto}.time-off-summary{color:var(--theme-muted,#657665);font-size:calc(12px * var(--font-scale));margin:16px 0}.time-off-summary summary{cursor:pointer;text-underline-offset:3px;align-items:center;gap:7px;text-decoration:underline;display:flex}.time-off-summary ul{padding:0;list-style:none}.time-off-summary li{gap:4px;margin-top:10px;line-height:1.6;display:grid}@media (max-width:800px){.tutor-calendar-controls{width:100%}.tutor-calendar-controls .calendar-tutor-picker{flex:1;min-width:180px}.week-availability{padding:12px 14px}.tutor-time-off-fields{padding:14px}.time-off-row{padding:10px}.week-availability-note{padding:12px 20px}}.tutor-week .week-journey{background:var(--travel-surface);color:var(--travel-ink);border:1px solid var(--travel-line);font-size:calc(11px * var(--font-scale));padding:0}.week-journey>summary{cursor:pointer;border-radius:inherit;padding:9px 8px;list-style:none}.week-journey>summary::-webkit-details-marker{display:none}.week-journey>summary:hover{background:var(--travel-hover)}.week-journey>summary:focus-visible{outline:3px solid var(--theme-focus,#9cb77b);outline-offset:2px}.week-journey-title{align-items:center;gap:5px;line-height:1.4;display:flex}.week-journey-title strong{min-width:0;font-size:calc(12px * var(--font-scale));flex:1}.week-journey-chevron{transition:transform .15s}.week-journey[open] .week-journey-chevron{transform:rotate(180deg)}.week-journey-caption{font-size:calc(11px * var(--font-scale));justify-content:space-between;align-items:center;gap:6px;margin-top:4px;line-height:1.4;display:flex}.week-journey-body{border-top:1px solid var(--travel-line);padding:0 9px 10px}.week-journey-body p{font-size:calc(11px * var(--font-scale));margin:7px 0;line-height:1.6}.week-journey-body small{font-size:calc(11px * var(--font-scale));margin:5px 0;line-height:1.7;display:block}.tutor-week .week-journey p,.tutor-week .week-journey small,.tutor-week .week-journey .week-gap,.tutor-week .week-journey .week-route-link,.tutor-week .week-journey .week-journey-title{color:inherit}.tutor-week .week-journey.needs-attention{--travel-surface:var(--theme-warning-surface,#fff5e5);--travel-hover:var(--theme-warning-surface,#fff0da);--travel-ink:var(--theme-warning-text,#82521b);--travel-line:var(--theme-warning-line,#be955c);border-left:3px solid var(--travel-line)}@media (max-width:800px){.tutor-week .week-journey{padding:0}.week-journey>summary{padding:10px 12px}.week-colour-key{padding:10px 14px}}.payment-overview{margin-bottom:25px}.payment-overview-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.payment-overview-heading h2{font-size:calc(17px * var(--font-scale))}.payment-overview-heading>span{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#626f61)}.payment-metrics{align-items:stretch;margin-bottom:12px}.payment-metric{flex-direction:column;display:flex}.payment-metric .metric-heading{min-height:36px;color:var(--theme-muted,#52634f);align-items:flex-start}.payment-metric .metric-heading h3{font-size:calc(12px * var(--font-scale));letter-spacing:0;font-weight:500;line-height:1.5}.payment-metric .metric-icon{flex-shrink:0}.payment-metric>strong{overflow-wrap:anywhere;font-size:calc(26px * var(--font-scale));margin:12px 0 6px}.payment-metric>small{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#626f61);margin-bottom:10px;line-height:1.6;display:block}.payment-metric-link{font-size:calc(11px * var(--font-scale));border-top:1px solid var(--line);text-align:left;color:var(--theme-accent-text,#3c674e);justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding:8px 0 0;font-weight:600;display:flex}.payment-metric-link:hover{text-underline-offset:3px;text-decoration:underline}.payment-overview-note{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#626f61);line-height:1.7}.payment-metric .negative-total,.balance-overdue{color:var(--theme-danger-text,#a24435)}#payment-records{scroll-margin-top:20px}.payment-filters{margin-bottom:24px;padding:20px}.payment-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.payment-filter-grid .field{min-width:0;margin:0}.payment-filter-grid input,.payment-filter-grid select{width:100%;min-width:0;height:44px}.payment-filter-footer{font-size:calc(12px * var(--font-scale));color:var(--theme-muted);flex-wrap:wrap;align-items:center;gap:16px;margin-top:14px;display:flex}.payment-week-actions{gap:6px;display:flex}.payment-filter-note{font-size:calc(11px * var(--font-scale));color:var(--theme-muted);margin:14px 0 0;line-height:1.7}.payment-records-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.payment-records-toolbar select{border:1px solid var(--theme-line);background:var(--theme-input);min-width:130px;min-height:36px;color:var(--theme-text);border-radius:5px;padding:6px 10px}.balance-group-hint{font-size:calc(12px * var(--font-scale));color:var(--theme-muted);padding:16px 22px}.balance-group{border-top:1px solid var(--theme-line)}.balance-group>summary{cursor:pointer;background:var(--theme-surface);font-size:calc(13px * var(--font-scale));color:var(--theme-text);grid-template-columns:minmax(180px,2fr) repeat(4,minmax(90px,1fr));align-items:center;gap:18px;padding:20px 22px;list-style:none;display:grid}.tutor-balances .balance-group>summary{grid-template-columns:minmax(180px,2fr) repeat(4,minmax(90px,1fr))}.balance-group>summary::-webkit-details-marker{display:none}.balance-group>summary:hover{background:var(--theme-hover)}.balance-group>summary:focus-visible{outline:2px solid var(--theme-focus);outline-offset:-3px}.balance-group>summary small{font-size:calc(11px * var(--font-scale));color:var(--theme-muted);margin-bottom:4px;line-height:1.7;display:block}.balance-group>summary b{overflow-wrap:anywhere;font-weight:600}.balance-group-name{align-items:center;gap:12px;display:flex}.balance-group-name svg{flex-shrink:0;transition:transform .15s}.balance-group[open]>.balance-group-name svg,.balance-group[open]>summary .balance-group-name svg{transform:rotate(180deg)}.balance-group-details{background:var(--theme-soft);padding:0 18px 18px}.balance-group-details td{vertical-align:top}.balance-group-details td .btn{white-space:normal;text-align:center}.balance-group-details table{min-width:720px}.group-payment-history{border:1px solid var(--theme-line);background:var(--theme-surface);border-radius:8px;margin-top:16px}.group-payment-history>summary{font-size:calc(12px * var(--font-scale));cursor:pointer;color:var(--theme-accent-text);padding:13px 16px}.profile-birthday{font-size:calc(12px * var(--font-scale));color:var(--theme-muted);align-items:center;gap:7px;margin:10px 0;line-height:1.7;display:flex}.tutor-preferences{background:var(--theme-soft);border:1px solid var(--theme-line);font-size:calc(13px * var(--font-scale));border-radius:9px;margin:0 0 20px;padding:16px 18px}.tutor-preferences .tutoring-times-summary{margin:10px 0}.preference-warning{background:var(--theme-warning-surface);color:var(--theme-warning-text);font-size:calc(12px * var(--font-scale));border-radius:7px;margin:12px 0;padding:11px 13px;line-height:1.7}.birthday-panel{border-top:1px solid var(--theme-line);padding:18px 23px}.birthday-panel h3{font-size:calc(14px * var(--font-scale));align-items:center;gap:8px;margin-bottom:8px;display:flex}.birthday-panel p{font-size:calc(12px * var(--font-scale));margin:8px 0;line-height:1.7}.birthday-panel ul{grid-template-columns:minmax(0,1fr);margin:12px 0;padding:0;list-style:none;display:grid}.birthday-panel li{border-bottom:1px solid var(--theme-line);font-size:calc(13px * var(--font-scale));justify-content:space-between;align-items:center;gap:16px;padding:13px 0;display:flex}.birthday-panel li>span:first-child{overflow-wrap:anywhere;min-width:0}.birthday-panel li>span:last-child{text-align:right;flex-shrink:0}.birthday-panel small{font-size:calc(11px * var(--font-scale));color:var(--theme-muted);line-height:1.7;display:block}.expense-workspace{padding:22px}.expense-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.expense-heading h3{font-size:calc(17px * var(--font-scale));margin-bottom:6px}.expense-heading p,.expense-summary,.expense-assignment p{font-size:calc(12px * var(--font-scale));color:var(--theme-muted);line-height:1.7}.expense-heading>.btn{flex-shrink:0}.expense-filters{flex-wrap:wrap;align-items:end;gap:18px;margin-bottom:18px;display:flex}.expense-filters .field{flex:1;min-width:160px;margin:0}.expense-filters .field select{height:44px}.expense-deleted{font-size:calc(12px * var(--font-scale));align-items:center;gap:8px;padding:12px 0;display:flex}.expense-summary{padding:12px 0}.expense-workspace table{min-width:740px}.expense-assignment{border:1px solid var(--theme-line);border-radius:8px;margin-top:18px;padding:14px}.expense-assignment summary{cursor:pointer;font-size:calc(13px * var(--font-scale));color:var(--theme-accent-text)}.expense-assignment p{margin:12px 0}.badge.forecast{background:var(--theme-soft);color:var(--theme-muted)}@media (max-width:650px){.expense-heading{flex-direction:column;align-items:flex-start}.expense-workspace{padding:16px}.payment-records-toolbar .tabs{flex-wrap:wrap}}@media (max-width:1000px){.payment-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.balance-group>summary,.tutor-balances .balance-group>summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.balance-group-name{grid-column:1/-1}.balance-group-details{padding:0 8px 12px}}@media (max-width:520px){.payment-filters{padding:16px}.payment-filter-grid{grid-template-columns:1fr}.balance-group>summary,.tutor-balances .balance-group>summary{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px}.birthday-panel ul{grid-template-columns:1fr}}@media (max-width:1200px){.payment-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.payment-overview-heading{flex-direction:column;align-items:flex-start;gap:4px}.payment-metric{padding:14px 12px}.payment-metric .metric-heading{min-height:54px}.payment-metric .metric-icon{display:none}.payment-metric>strong{font-size:calc(24px * var(--font-scale))}.payment-metrics{gap:10px}}.app-shell .stats-grid.payment-metrics{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr}.app-shell .payment-filter-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}@media (max-width:760px){.app-shell .stats-grid.payment-metrics{grid-template-columns:1fr;grid-auto-rows:auto}.app-shell .payment-metric .metric-heading{min-height:0}.app-shell .payment-metric>strong{margin:8px 0 4px}.app-shell .payment-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.app-shell .payment-filters .payment-filter-grid{grid-template-columns:1fr}}.balance-totals-header{background:var(--theme-soft);border-block:1px solid var(--theme-line);font-size:calc(13px * var(--font-scale));grid-template-columns:minmax(180px,2fr) repeat(4,minmax(90px,1fr));align-items:center;gap:18px;padding:16px 22px;display:grid}.balance-totals-header small{color:var(--theme-muted);font-size:calc(11px * var(--font-scale));margin-bottom:4px;line-height:1.7;display:block}.balance-totals-header .balance-group-name{padding-left:30px}.balance-totals-header b{overflow-wrap:anywhere}.report-column-totals{background:var(--theme-soft);font-weight:600}.cash-receipts-summary{margin:24px 0}.cash-receipt-details{border:1px solid var(--theme-line);background:var(--theme-surface);font-size:calc(12px * var(--font-scale));border-radius:10px;padding:12px 16px}.cash-receipt-details summary{cursor:pointer;font-weight:600}.cash-receipt-details ul{margin:12px 0 0;padding:0;list-style:none}.cash-receipt-details li{border-top:1px solid var(--theme-line);justify-content:space-between;align-items:center;gap:14px;padding:10px 0;display:flex}.cash-receipt-details li>span{overflow-wrap:anywhere;min-width:0}.cash-receipt-details li>strong{white-space:nowrap}.cash-receipt-details small{color:var(--theme-muted);line-height:1.6;display:block}@media (max-width:1000px){.balance-totals-header{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.balance-totals-header .balance-group-name{grid-column:1/-1;padding-left:0}}@media (max-width:520px){.balance-totals-header{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px 18px}}.report-summary-metrics .metric-heading{min-height:calc(46px * var(--font-scale));align-items:flex-start}.report-payment-table{table-layout:fixed;width:100%;min-width:0}.report-payment-table th,.report-payment-table td{overflow-wrap:anywhere;padding:14px 9px}.report-payment-table td:not(:first-child){white-space:nowrap;font-variant-numeric:tabular-nums}.report-payment-table .person{min-width:0}.report-payment-table .person strong{overflow-wrap:anywhere;min-width:0}@media (max-width:1000px){.report-payment-table{min-width:850px}}.report-payment-table th{white-space:normal;line-height:1.5}.report-payment-table th:first-child{width:20%}.report-payment-table th:nth-child(2){width:8%}@media (max-width:520px){.report-summary-metrics{grid-template-columns:1fr}.report-summary-metrics .metric-heading{min-height:0}}.report-payment-table .table-sub{white-space:normal}.report-plan-note{color:var(--theme-muted);font-size:calc(12px * var(--font-scale));margin:0;padding:0 24px 16px;line-height:1.6}.wwcc-tutor-button{border:1px solid var(--theme-line,#dce4d4);background:var(--theme-soft,#f4f6ec);width:100%;color:var(--theme-text,#263b30);text-align:left;font-size:calc(13px * var(--font-scale));cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:12px 0;padding:14px;display:flex}.wwcc-tutor-button>span:first-child{align-items:center;gap:10px;display:flex}.wwcc-tutor-button svg{flex-shrink:0}.wwcc-tutor-button small{color:var(--theme-muted,#637657);font-size:calc(11px * var(--font-scale));margin-top:4px;display:block}.wwcc-tutor-button:hover{border-color:var(--theme-control-line,#78926c)}.wwcc-status{font-size:calc(11px * var(--font-scale));background:var(--theme-raised,#ebf0e4);color:var(--theme-muted,#526a47);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:5px 8px;font-weight:600;line-height:1.4;display:inline-flex}.wwcc-status.uploaded{color:var(--theme-accent-text,#3f6233)}.wwcc-status.warning{background:var(--theme-warning-surface,#fbf0dc);color:var(--theme-warning-text,#795b29)}.wwcc-status.expired{background:var(--theme-danger-surface,#fae6df);color:var(--theme-danger-text,#9d4230)}.wwcc-dialog{max-width:680px}.wwcc-dialog .dialog-header h2{font-size:calc(28px * var(--font-scale));line-height:1.25}.wwcc-dialog .dialog-body{padding-top:20px}.wwcc-dialog .dialog-footer{justify-content:flex-end;gap:12px}.wwcc-private{font-size:calc(13px * var(--font-scale));color:var(--theme-muted,#637657);align-items:flex-start;gap:9px;margin:0 0 24px;line-height:1.6;display:flex}.wwcc-private svg{flex-shrink:0;margin-top:3px}.wwcc-current{justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px;display:flex}.wwcc-current h3{font-size:calc(17px * var(--font-scale));margin:0}.wwcc-files{margin:0 0 22px;padding:0;list-style:none}.wwcc-files li{border-bottom:1px solid var(--theme-line,#dce4d4);align-items:center;gap:12px;padding:12px 0;display:flex}.wwcc-files li>svg{color:var(--theme-muted,#637657);flex-shrink:0}.wwcc-files li>div{flex:1;min-width:0}.wwcc-files strong{font-size:calc(13px * var(--font-scale));overflow-wrap:anywhere;display:block}.wwcc-files small{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#637657);margin-top:4px;display:block}.wwcc-fields{border:0;min-width:0;margin:0;padding:0}.wwcc-fields .field input{min-width:0;height:48px}.wwcc-fields .field>span{min-height:24px}.wwcc-fields .field>span>small{font-weight:400;font-size:calc(11px * var(--font-scale))}.wwcc-upload{border:1px dashed var(--theme-control-line,#9bad89);background:var(--theme-soft,#f4f6ec);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:24px 18px;display:flex}.wwcc-upload>svg{color:var(--theme-muted,#637657)}.wwcc-upload p{font-size:calc(13px * var(--font-scale));color:var(--theme-muted,#637657);margin:0;line-height:1.7}.wwcc-upload>small{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#637657)}.wwcc-file-input{width:100%;max-width:100%;font-size:calc(12px * var(--font-scale));border:1px solid var(--theme-line,#dce4d4);background:var(--theme-input,#fff);color:var(--theme-text,#263b30);border-radius:8px;padding:8px}.wwcc-file-input::file-selector-button{background:var(--theme-accent,#294e3b);color:var(--theme-on-accent,#fff);font:inherit;cursor:pointer;border:0;border-radius:5px;margin-right:12px;padding:8px 12px}.wwcc-selected{max-width:100%;font-size:calc(13px * var(--font-scale));overflow-wrap:anywhere;flex-direction:column;gap:6px;display:flex}.wwcc-selected .text-btn{justify-content:center}.wwcc-note{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#637657);margin:20px 0 0;line-height:1.7}.wwcc-remove-button{color:var(--theme-danger-text,#9d4230);margin-top:18px}.wwcc-remove p{line-height:1.7}.wwcc-own{margin-top:24px;padding:24px}.wwcc-own .wwcc-tutor-button{max-width:680px}.wwcc-dialog .form-error{margin-top:16px}@media (max-width:540px){.wwcc-dialog .dialog-header h2{font-size:calc(23px * var(--font-scale))}.wwcc-dialog .form-grid{grid-template-columns:1fr}.wwcc-tutor-button{flex-wrap:wrap}.wwcc-files .btn span{display:none}.wwcc-dialog .dialog-footer .btn{flex:1}}@media (max-width:700px){.app-shell .main .topbar{gap:6px;height:52px;padding-inline:12px}.app-shell .topbar .topbar-right{gap:6px}.app-shell .main .content{padding:12px 14px 0}.app-shell .content .page-head{gap:10px;margin-bottom:14px}.app-shell .content .page-head h1{font-size:calc(24px * var(--font-scale));letter-spacing:-.6px;line-height:1.2}.app-shell .content .page-head .eyebrow{font-size:calc(9px * var(--font-scale));letter-spacing:1.2px;margin-bottom:3px}.app-shell .content .page-description{font-size:calc(12px * var(--font-scale));margin-top:5px;line-height:1.45}.app-shell .content .head-actions{gap:8px;margin-top:10px}.app-shell .content .head-actions .btn{padding:8px 12px}.app-shell .btn,.portal-shell .btn,.welcome .btn,.record-dialog .btn{min-height:44px;font-size:calc(12px * var(--font-scale));white-space:normal;padding:8px 12px}.app-shell .tabs button,.portal-shell .portal-tabs button,.app-shell .lesson-view-switch button{min-height:44px}.app-shell .list-toolbar{gap:10px;padding-bottom:12px}.app-shell .toolbar{gap:10px;padding:12px}.app-shell .table-wrap,.portal-shell .table-wrap{position:relative}.app-shell .search{min-height:44px}.app-shell .app-footer{font-size:calc(10px * var(--font-scale));padding-block:18px}.app-shell .overview-dashboard{--overview-gap:12px}.app-shell .overview-dashboard .stats-grid{gap:10px}.app-shell .overview-dashboard .metric{padding:10px}.app-shell .overview-dashboard .metric-heading{min-height:36px;font-size:calc(12px * var(--font-scale));gap:6px}.app-shell .overview-dashboard .metric-icon{display:none}.app-shell .overview-dashboard .metric-context{margin-top:1px}.app-shell .overview-dashboard .metric>strong{font-size:calc(24px * var(--font-scale));margin:4px 0;line-height:1.15}.app-shell .overview-dashboard .metric>small{font-size:calc(11px * var(--font-scale));line-height:1.4}.app-shell .overview-dashboard .metric-balance-breakdown{gap:1px}.app-shell .overview-dashboard .section-head{padding:12px 14px}.app-shell .overview-dashboard .section-head h2{font-size:calc(16px * var(--font-scale));line-height:1.35}.app-shell .overview-dashboard .section-head p{font-size:calc(12px * var(--font-scale));line-height:1.45}.app-shell .overview-dashboard .schedule-panel .section-head{padding:10px 12px 4px}.app-shell .overview-dashboard .schedule-panel .week-container{padding:0 12px 6px}.app-shell .overview-dashboard .schedule-panel .week-strip{gap:2px}.app-shell .overview-dashboard .schedule-panel .week-strip button{min-height:44px}.app-shell .overview-dashboard .agenda{padding:0 12px}.app-shell .overview-dashboard .agenda-row{gap:8px;padding:8px 0}.app-shell .overview-dashboard .schedule-panel .panel-footer{gap:4px 10px;padding:8px 12px;line-height:1.4}.app-shell .overview-dashboard .panel-footer .text-btn{min-height:44px;font-size:calc(11px * var(--font-scale))}.app-shell .empty,.portal-shell .empty{padding:20px 14px}.app-shell .overview-dashboard .schedule-panel .empty{padding:16px 12px}.app-shell .empty-icon{width:32px;height:32px;margin-bottom:8px}.app-shell .empty-icon svg{width:20px;height:20px}.app-shell .empty h3,.portal-shell .empty h3{font-size:calc(18px * var(--font-scale));line-height:1.3}.app-shell .empty p,.portal-shell .empty p{font-size:calc(12px * var(--font-scale));margin:6px auto 10px;line-height:1.5}.app-shell .empty .text-btn{min-height:44px}.app-shell .overview-dashboard .attention-row{gap:10px;padding:12px 14px}.app-shell .overview-dashboard .attention-icon{width:28px;height:28px}.app-shell .overview-dashboard .attention-icon svg{width:17px;height:17px}.app-shell .overview-dashboard .attention-row small{line-height:1.45}.app-shell .overview-dashboard .birthday-panel{padding:12px 14px}.app-shell .overview-dashboard .birthday-panel h3{font-size:calc(14px * var(--font-scale));margin-bottom:6px}.app-shell .overview-dashboard .birthday-panel p{font-size:calc(12px * var(--font-scale));margin-block:6px;line-height:1.45}.app-shell .overview-dashboard .birthday-panel>small{font-size:calc(11px * var(--font-scale));margin-top:8px;line-height:1.45}.app-shell .overview-dashboard .birthday-panel li{gap:12px;padding-block:9px}.app-shell .overview-dashboard .feedback-panel{padding-bottom:14px}.app-shell .overview-dashboard .feedback-panel .section-head{padding:12px 14px 8px}.app-shell .overview-dashboard .rating-summary{gap:12px;margin:0 14px 10px;padding:8px 0 10px}.app-shell .overview-dashboard .rating-summary>span:first-child{font-size:calc(28px * var(--font-scale))}.app-shell .overview-dashboard .review-empty{padding-inline:14px;line-height:1.5}.app-shell .overview-dashboard .review-preview{margin:0 14px 10px;padding-bottom:10px}.app-shell .overview-dashboard .feedback-actions{gap:8px 12px;padding:12px 14px 0}.app-shell .overview-dashboard .welcome-card{padding:16px 94px 14px 14px}.app-shell .overview-dashboard .welcome-card h2{font-size:calc(21px * var(--font-scale));margin:8px 0 6px}.app-shell .overview-dashboard .welcome-card p{font-size:calc(12px * var(--font-scale));line-height:1.5}.app-shell .overview-dashboard .welcome-link{min-height:44px;font-size:calc(12px * var(--font-scale));margin-top:8px}.app-shell .overview-dashboard .plant{bottom:14px;right:8px;transform:scale(.5)}.app-shell .family-grid,.app-shell .tutor-grid{gap:12px}.app-shell .family-card,.app-shell .tutor-card,.app-shell .child-card{padding:14px}.app-shell .tutor-card h3{font-size:calc(17px * var(--font-scale));line-height:1.35}.app-shell .tutor-top{min-height:44px;margin-bottom:12px}.app-shell .tutor-top>.avatar{width:42px;height:42px;font-size:calc(17px * var(--font-scale))}.app-shell .tutor-subjects{margin-top:4px}.app-shell .tutor-review-button{margin:8px 0}.app-shell .tutor-card .address-line{margin-block:6px}.app-shell .tutor-card .travel-limit{margin:6px 0 8px}.app-shell .tutor-card .tutoring-times-summary{padding-block:8px}.app-shell .tutor-card .tutoring-times-summary h4{margin-bottom:6px}.app-shell .tutor-card .time-off-summary{margin-block:8px}.app-shell .tutor-card .time-off-summary summary{min-height:44px}.app-shell .tutor-card .wwcc-tutor-button{gap:8px;margin-block:8px;padding:10px}.app-shell .tutor-card .wwcc-tutor-button>span:first-child{font-size:calc(12px * var(--font-scale));gap:8px}.app-shell .tutor-bio{min-height:0;margin:10px 0;line-height:1.5}.app-shell .tutor-details{margin-top:12px;padding:10px 0}.app-shell .tutor-calendar-button{margin-top:10px}.app-shell .tutor-footer{padding-top:10px}.app-shell .family-children{margin-block:12px}.app-shell .family-card-footer{padding-top:10px}.app-shell .family-detail{padding:14px}.app-shell .payment-metric,.app-shell .three .metric{padding:12px}.app-shell .payment-metrics{gap:10px}.app-shell .payment-metric .metric-heading{min-height:36px}.app-shell .payment-metric>strong{font-size:calc(20px * var(--font-scale));margin:6px 0}.app-shell .payment-metric>small{margin-bottom:8px;line-height:1.45}.app-shell .payment-overview{margin-bottom:16px}.app-shell .payment-filters,.app-shell .report-filters{margin-bottom:14px;padding:12px}.app-shell .payment-filter-grid{gap:12px}.app-shell .balance-group>summary{gap:10px 12px;padding:12px 14px}.app-shell .balance-group>summary small{margin-bottom:2px;line-height:1.45}.app-shell .balance-group-hint,.app-shell .payment-history-tools{padding:12px 14px}.app-shell .expense-workspace{padding:12px}.app-shell .expense-heading{gap:10px;margin-bottom:14px}.app-shell .tutor-week-header,.portal-shell .tutor-week-header{gap:12px;padding:14px}.app-shell .tutor-week-header h2,.portal-shell .tutor-week-header h2{font-size:calc(21px * var(--font-scale))}.app-shell .tutor-week-toolbar,.portal-shell .tutor-week-toolbar{gap:10px;padding:0 14px 12px}.app-shell .tutor-week-summary,.portal-shell .tutor-week-summary{gap:10px;padding:10px 14px}.app-shell .week-day-entries,.portal-shell .week-day-entries{gap:8px;padding:10px 12px 12px}.app-shell .week-lesson,.portal-shell .week-lesson{gap:4px;padding:10px 12px}.app-shell .week-lesson>strong,.portal-shell .week-lesson>strong{font-size:calc(14px * var(--font-scale))}.app-shell .week-availability,.portal-shell .week-availability{gap:4px;padding:10px 12px}.record-dialog .dialog-header,.portal-shell .record-dialog .dialog-header{padding:14px 16px 12px}.record-dialog .dialog-header h2{font-size:calc(22px * var(--font-scale));line-height:1.25}.record-dialog .dialog-body,.portal-shell .record-dialog .dialog-body{padding:16px}.record-dialog .dialog-footer,.portal-shell .record-dialog .dialog-footer{gap:8px;padding:10px 16px}.record-dialog .field{gap:6px;margin-bottom:14px}.record-dialog .field textarea{min-height:80px}.record-dialog .lesson-addresses,.record-dialog .lesson-recurrence,.record-dialog .tutor-time-off-fields{margin-block:14px;padding:12px}.record-dialog .lesson-addresses>p{margin:8px 0 12px}.record-dialog .form-grid{gap:0 12px}.record-dialog .field input:not([type=checkbox]):not([type=radio]),.record-dialog .field select,.record-dialog .field textarea,.record-dialog .field .subject-trigger,.portal-shell .field input,.portal-shell .field select,.portal-shell .field textarea,.app-shell .search input,.app-shell .payment-filter-grid input,.app-shell .payment-filter-grid select{font-size:calc(16px * var(--font-scale));min-width:0}.record-dialog .field .subject-search input{height:36px;min-height:36px}.record-dialog .dialog-header .icon-btn{width:44px;height:44px}.app-shell .settings-grid{gap:14px}.app-shell .communication-card,.app-shell .backup-panel,.app-shell .access-panel{padding:16px}.portal-shell.portal-shell,.welcome.welcome{padding-inline:14px}.portal-shell .portal-header,.welcome .welcome-nav{gap:8px 12px;height:auto;min-height:64px;padding-block:10px}.portal-shell .portal-brand b,.welcome .portal-brand b{font-size:calc(21px * var(--font-scale))}.portal-shell .portal-heading{gap:12px;padding:20px 0 16px}.portal-shell .portal-heading h1{font-size:calc(26px * var(--font-scale));margin-top:6px;line-height:1.2}.portal-shell .portal-heading p{font-size:calc(12px * var(--font-scale));margin-top:6px;line-height:1.45}.portal-shell .portal-tabs{gap:6px 12px;margin-bottom:16px}.portal-shell .portal-lesson-list,.portal-shell .learner-grid{gap:12px}.portal-shell .portal-lesson,.portal-shell .learner-card,.portal-shell .portal-payment,.portal-shell .portal-profile{padding:14px}.portal-shell .portal-lesson h3{font-size:calc(17px * var(--font-scale));margin-block:10px}.portal-shell .portal-lesson-bottom{gap:10px;margin-top:12px;padding-top:10px}.portal-shell .learner-card h3{font-size:calc(18px * var(--font-scale))}.portal-shell .portal-footer{padding-block:24px}.welcome .welcome-hero{padding:24px 0 20px}.welcome .welcome-hero h1{font-size:calc(34px * var(--font-scale));letter-spacing:-1px;margin:14px 0;line-height:1.1}.welcome .welcome-hero>p{font-size:calc(13px * var(--font-scale));line-height:1.6}.welcome .welcome-roles{gap:12px;margin:24px auto 20px}.welcome .welcome-roles article{padding:16px}.welcome .welcome-icon{width:36px;height:36px;margin-bottom:12px}.welcome .welcome-roles h2{font-size:calc(18px * var(--font-scale));margin-bottom:8px}.welcome .welcome-roles p{min-height:0;margin-bottom:14px;line-height:1.6}.portal-shell .registration-content{margin-block:24px}.portal-shell .registration-card{padding:16px}}@media (min-width:360px) and (max-width:700px){.app-shell .payment-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:400px){.tutoring-times-fields .tutoring-time-row{grid-template-columns:minmax(0,1fr) 32px}.tutoring-time-row>.field:first-child{grid-area:1/1}.tutoring-time-row>.field:nth-child(2){grid-area:2/1/auto/-1}.tutoring-time-row>.field:nth-child(3){grid-area:3/1/auto/-1}.tutoring-time-row>.icon-btn{grid-area:1/2;align-self:end;min-height:44px}.record-dialog .lesson-search-hours .form-grid{grid-template-columns:minmax(0,1fr);gap:10px}}@media (max-width:360px){.app-shell .main .content{padding-inline:12px}.app-shell .content .page-head h1{font-size:calc(23px * var(--font-scale))}.app-shell .overview-dashboard .metric-heading{min-height:48px}.app-shell .overview-dashboard .metric>strong{font-size:calc(22px * var(--font-scale))}.app-shell .overview-dashboard .agenda-row{grid-template-columns:56px 3px minmax(0,1fr);gap:7px}.app-shell .overview-dashboard .welcome-card{padding-right:82px}.app-shell .overview-dashboard .welcome-card h2{font-size:calc(20px * var(--font-scale))}.app-shell .overview-dashboard .plant{transform:scale(.44)}}.week-mobile-text{display:none}@media (max-width:700px){.tutor-week.tutor-palette{min-width:0}.tutor-week.tutor-palette .tutor-week-header{gap:10px;padding:12px}.tutor-week .tutor-week-header>div{min-width:0}.tutor-week .tutor-week-header .eyebrow{display:none}.tutor-week.tutor-palette .tutor-week-header h2{font-size:calc(20px * var(--font-scale));overflow-wrap:anywhere;margin:0 0 4px;line-height:1.25}.tutor-week .tutor-week-header p{font-size:calc(12px * var(--font-scale));margin:0;line-height:1.45}.tutor-week .tutor-calendar-controls{grid-template-columns:minmax(0,1fr) 112px;align-items:end;gap:8px;display:grid}.tutor-week .tutor-calendar-controls:empty{display:none}.tutor-week .calendar-tutor-picker{width:100%;min-width:0;font-size:calc(12px * var(--font-scale));gap:3px}.tutor-week .calendar-tutor-picker select{width:100%;min-width:0;max-width:100%;height:44px;font-size:calc(16px * var(--font-scale));padding:8px}.tutor-week .tutor-calendar-controls>.btn{min-height:44px;font-size:calc(12px * var(--font-scale));white-space:normal;gap:5px;padding:6px 8px;line-height:1.25}.tutor-week .tutor-calendar-controls>.btn:only-child{grid-column:1/-1;justify-self:start}.tutor-week .tutor-calendar-controls>.btn svg{flex-shrink:0}.tutor-week.tutor-palette .tutor-week-toolbar{grid-template-columns:44px minmax(0,1fr) 76px 44px;grid-template-areas:"previous range range next""date date current download";align-items:end;gap:8px;padding:0 12px 12px;display:grid}.tutor-week .tutor-week-navigation,.tutor-week .tutor-week-actions{display:contents}.tutor-week .tutor-week-navigation>.icon-btn:first-child{grid-area:previous}.tutor-week .tutor-week-navigation>.icon-btn:nth-of-type(2){grid-area:next}.tutor-week .tutor-week-navigation>.icon-btn{width:44px;height:44px;padding:10px}.tutor-week .tutor-week-navigation h3{min-width:0;font-size:calc(13px * var(--font-scale));text-align:center;font-variant-numeric:tabular-nums;grid-area:range;align-self:center;margin:0;line-height:1.4}.tutor-week .tutor-week-navigation>.btn{min-height:44px;font-size:calc(12px * var(--font-scale));white-space:normal;grid-area:current;margin:0;padding:7px 4px}.tutor-week .week-date-picker{min-width:0;font-size:calc(12px * var(--font-scale));grid-area:date;gap:3px}.tutor-week .week-date-picker input{width:100%;min-width:0;max-width:100%;height:44px;font-size:calc(16px * var(--font-scale));padding:7px 5px;line-height:1.25;display:block}.tutor-week .tutor-week-actions>.btn{grid-area:download;gap:0;width:44px;min-width:44px;height:44px;padding:11px}.tutor-week .tutor-week-actions>.btn svg{flex-shrink:0;width:18px;height:18px}.tutor-week .week-download-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tutor-week.tutor-palette .tutor-week-summary{font-size:calc(12px * var(--font-scale));grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;padding:10px 12px 0;line-height:1.4;display:grid}.tutor-week .tutor-week-summary>span{overflow-wrap:anywhere;align-content:start;gap:4px;min-width:0}.tutor-week .tutor-week-summary svg{flex-shrink:0;width:14px;height:14px}.tutor-week .tutor-week-summary b{font-variant-numeric:tabular-nums}.tutor-week .tutor-week-summary>label{min-height:44px;font-size:calc(12px * var(--font-scale));grid-column:1/-1;margin:0}.tutor-week .week-colour-key{font-size:calc(11px * var(--font-scale));grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;padding:8px 12px;line-height:1.4;display:grid}.tutor-week .week-colour-key>span{overflow-wrap:anywhere;align-items:flex-start;gap:6px;min-width:0}.tutor-week .week-colour-key i{flex-shrink:0;margin-top:3px}.tutor-week .week-drag-hint,.tutor-week .week-attention,.tutor-week .week-availability-note{font-size:calc(12px * var(--font-scale));gap:6px;margin:0;padding:9px 12px;line-height:1.45}.tutor-week .week-desktop-text{display:none}.tutor-week .week-mobile-text{display:inline}.tutor-week .week-drag-hint svg,.tutor-week .week-attention svg{flex-shrink:0}.tutor-week .tutor-week-scroll{min-width:0;overflow:auto}.tutor-week .tutor-week-grid{grid-template-columns:minmax(0,1fr);min-width:0}.tutor-week .tutor-week-day{min-width:0;min-height:0}.tutor-week .tutor-week-day>header{gap:8px;min-height:44px;padding:6px 12px}.tutor-week .tutor-week-day>header time{width:28px;height:28px;font-size:calc(18px * var(--font-scale))}.tutor-week .tutor-week-day>header>span,.tutor-week .tutor-week-day>header>small{font-size:calc(12px * var(--font-scale))}.tutor-week.tutor-palette .week-day-entries{gap:7px;min-width:0;padding:8px 10px 10px}.tutor-week .tutor-week-day.is-empty{grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.tutor-week .tutor-week-day.is-empty>header{border-bottom:0}.tutor-week .tutor-week-day.is-empty .week-day-entries{padding:8px 10px}.tutor-week .tutor-week-day.is-empty .week-drop-label{grid-column:1/-1}.tutor-week .week-day-empty{font-size:calc(12px * var(--font-scale));margin:0;padding:0;line-height:1.45}.tutor-week.tutor-palette .week-lesson{text-align:left;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:4px 8px;padding:9px 10px;display:grid}.tutor-week .week-lesson-time{font-size:calc(12px * var(--font-scale));font-variant-numeric:tabular-nums;grid-area:1/1;line-height:1.5}.tutor-week .week-lesson-status{max-width:82px;font-size:calc(11px * var(--font-scale));text-transform:none;letter-spacing:0;text-align:right;grid-area:1/2;margin:0;line-height:1.6}.tutor-week.tutor-palette .week-lesson>strong{font-size:calc(15px * var(--font-scale));grid-column:1/-1;line-height:1.35}.tutor-week .week-lesson-subject{font-size:calc(12px * var(--font-scale));grid-column:1/-1;line-height:1.4}.tutor-week .week-lesson-location{min-width:0;font-size:calc(12px * var(--font-scale));overflow-wrap:anywhere;grid-column:1/-1;line-height:1.45}.tutor-week .week-lesson-location svg{flex-shrink:0;width:12px;height:12px}.tutor-week .week-lesson-unavailable,.tutor-week .week-continuation{font-size:calc(12px * var(--font-scale));grid-column:1/-1;line-height:1.45}.tutor-week .week-move-button{min-height:44px;font-size:calc(12px * var(--font-scale));padding:8px 10px;line-height:1.4}.tutor-week .week-availability{font-size:calc(12px * var(--font-scale));grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;padding:9px 10px;line-height:1.4;display:grid}.tutor-week .week-availability>strong{font-size:calc(12px * var(--font-scale));min-width:0}.tutor-week .week-availability>span{text-align:right;font-variant-numeric:tabular-nums}.tutor-week .week-availability>small,.tutor-week .week-time-off-conflict{font-size:calc(12px * var(--font-scale));grid-column:1/-1}.tutor-week .week-availability>button{min-height:44px;font-size:calc(12px * var(--font-scale));grid-column:1/-1;justify-self:start;line-height:1.4}.tutor-week .week-journey>summary{justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:8px 10px;display:flex}.tutor-week .week-journey-title{flex:1;min-width:0}.tutor-week .week-journey-title strong{font-size:calc(12px * var(--font-scale));line-height:1.4}.tutor-week .week-journey-title svg,.tutor-week .week-journey-chevron{flex-shrink:0}.tutor-week .week-journey-caption{max-width:45%;font-size:calc(11px * var(--font-scale));text-align:right;gap:5px;margin:0}.tutor-week .week-journey-body{padding:0 10px 8px}.tutor-week .week-journey-body p,.tutor-week .week-journey-body small,.tutor-week .week-journey-body .week-gap{font-size:calc(12px * var(--font-scale));line-height:1.45}.tutor-week .week-journey-body .week-route-link{min-height:44px;font-size:calc(12px * var(--font-scale));margin:0;padding:8px 0;line-height:1.4}.tutor-week .tutor-week-note,.tutor-week .week-empty-note{font-size:calc(12px * var(--font-scale));padding:10px 12px;line-height:1.5}}:root{--font-scale:1}:root[data-text-size=medium]{--font-scale:1.125}:root[data-text-size=large]{--font-scale:1.25}.text-size-control{min-width:0;color:var(--theme-muted,#627455);align-items:center;gap:8px;display:inline-flex}.text-size-options{box-shadow:none;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.text-size-option{width:32px;height:38px;box-shadow:none;color:var(--theme-text,#405638);cursor:pointer;background:0 0;border:0;outline:none;flex-shrink:0;place-items:center;padding:0;font-family:inherit;font-weight:650;line-height:1;display:grid}.text-size-option--small{font-size:12px}.text-size-option--medium{font-size:17px}.text-size-option--large{font-size:22px}.text-size-option[aria-pressed=true]{color:var(--theme-accent-text,#557344);background:0 0;font-weight:800}.text-size-option:focus-visible{text-underline-offset:5px;outline:none;text-decoration:underline}.text-size-control--settings,.text-size-control--sidebar{justify-content:space-between;width:100%}.text-size-control--sidebar{padding:0 9px 12px}@media (max-width:700px){.app-shell .topbar .text-size-control--header{display:inline-flex}.text-size-option{width:36px;height:44px}.text-size-options{gap:0;padding:0}}.tn-logo{--tn-logo-size:25px;--tn-logo-mark-size:35px;max-width:100%;color:inherit;font-family:"Manrope", var(--sans);font-size:calc(var(--tn-logo-size) * var(--font-scale,1));letter-spacing:-.052em;white-space:nowrap;align-items:center;gap:9px;line-height:1;display:inline-flex}.tn-logo-mark{width:var(--tn-logo-mark-size);height:var(--tn-logo-mark-size);color:#1b3328;background:#c7dba7;border-radius:10px;flex:none;place-items:center;display:grid;position:relative;transform:rotate(-6deg)}.tn-logo-mark svg{stroke-width:2.3px;width:63%;height:63%}.tn-logo-dot{background:#c7dba7;border-radius:50%;width:6px;height:6px;position:absolute;top:-6px;right:-5px}.tn-logo-word{align-items:baseline;display:inline-flex}.tn-logo-word strong{font-weight:750}.tn-logo-word>span{font-weight:400}.portal-brand>.tn-logo{font-size:calc(var(--tn-logo-size) * var(--font-scale,1));color:inherit;border:0;margin:0;padding:0;display:inline-flex}.portal-brand>.portal-role-label{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#75806b);border-left:1px solid var(--theme-accent-line,#d6ddd0);margin-left:8px;padding-left:15px}.public-brand-link{color:var(--theme-text,#254637);align-items:center;text-decoration:none;display:inline-flex}.public-brand-link .tn-logo{--tn-logo-size:25px;--tn-logo-mark-size:39px}.public-footer .tn-logo{--tn-logo-size:23px;--tn-logo-mark-size:35px}.public-dialog-head .tn-logo{--tn-logo-size:18px;--tn-logo-mark-size:27px}.public-dialog-head .tn-logo-mark{border-radius:8px}.public-dialog-head .tn-logo-dot{width:5px;height:5px;top:-5px;right:-4px}@media (max-width:600px){.public-brand-link .tn-logo{--tn-logo-size:21px;--tn-logo-mark-size:35px}.public-dialog-head .tn-logo{--tn-logo-size:17px;--tn-logo-mark-size:26px}}@media (max-width:370px){.public-brand-link .tn-logo{--tn-logo-size:18px;--tn-logo-mark-size:31px}.portal-brand .tn-logo{--tn-logo-size:20px;--tn-logo-mark-size:31px}}.account-trigger{border:1px solid var(--theme-control-line,#dce4d6);background:var(--theme-selected,#eaf0e2);width:40px;min-width:40px;height:40px;color:var(--theme-text,#294135);font-size:calc(13px * var(--font-scale));cursor:pointer;border-radius:50%;place-items:center;font-weight:650;display:inline-grid}:is(.account-trigger:focus-visible,.account-row:focus-visible){outline:2px solid var(--theme-focus,#64854c);outline-offset:3px}.account-dialog{border:1px solid var(--theme-line,#e2e7dd);background:var(--theme-surface,#fff);width:min(440px,100vw - 24px);max-height:calc(100dvh - 88px);color:var(--theme-text,#294135);box-sizing:border-box;font-size:calc(13px * var(--font-scale));border-radius:16px;margin:0;padding:24px;line-height:1.55;position:fixed;inset:68px 20px auto auto;overflow-y:auto;box-shadow:0 16px 60px #0003}.account-dialog::backdrop{background:#101c173d}.account-dialog-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.account-dialog h2{font-family:inherit;font-size:calc(19px * var(--font-scale));margin:0;line-height:1.3}.account-dialog h3{font-size:calc(14px * var(--font-scale));margin:0 0 9px}.account-dialog .icon-button{min-width:40px;min-height:40px;color:var(--theme-muted,#6b7c62);place-items:center;display:grid}.account-person{overflow-wrap:anywhere;align-items:center;gap:14px;margin:0 0 18px;display:flex}.account-person>div{min-width:0}.account-person strong{font-size:calc(17px * var(--font-scale));line-height:1.4;display:block}.account-person span:not(.account-avatar),.account-person small{color:var(--theme-muted,#73816a);margin-top:3px;display:block}.account-avatar{background:var(--theme-selected,#eaf0e2);border:1px solid var(--theme-control-line,#dce4d6);width:52px;height:52px;font-weight:600;font-size:calc(20px * var(--font-scale));border-radius:50%;flex-shrink:0;place-items:center;display:grid}.account-row{text-align:left;width:100%;min-height:46px;color:var(--theme-text,#294135);font-size:inherit;box-sizing:border-box;background:0 0;border:0;border-radius:8px;align-items:center;gap:11px;padding:10px 8px;font-weight:600;line-height:1.5;text-decoration:none;display:flex}.account-row>svg:last-child:not(:first-child){flex-shrink:0;margin-left:auto}.account-row:hover:not(:disabled){background:var(--theme-soft,#f5f7f1)}.account-row:disabled{opacity:.55;cursor:not-allowed}.account-appearance{border-block:1px solid var(--theme-line,#e2e7dd);justify-content:space-between;align-items:center;gap:12px;margin:12px 0;padding:15px 8px;display:flex}.account-appearance .appearance-control select{min-height:42px;font-size:inherit}.account-help{color:var(--theme-muted,#73816a);font-size:calc(12px * var(--font-scale));margin:10px 0 16px;line-height:1.65}.saved-accounts{padding-top:8px}.saved-account{align-items:center;gap:8px;display:flex}.saved-account>.account-row{flex:1;min-width:0}.saved-account .account-row>span{min-width:0}.saved-account b{overflow-wrap:anywhere;font-weight:500}.saved-account small{color:var(--theme-muted,#73816a);font-weight:400;display:block}.account-signout{border-top:1px solid var(--theme-line,#e2e7dd);margin-top:12px;padding-top:14px}.account-signout>a:first-child{color:var(--theme-muted,#73816a);text-underline-offset:3px;padding:10px 8px;text-decoration:underline;display:inline-block}.account-back{align-items:center;gap:5px;margin:-4px 0 18px;display:flex}.account-details{overflow-wrap:anywhere}.account-details p,.account-add-form>p{margin:0 0 16px;line-height:1.7}.account-details dl{margin:0}.account-details dl>div{margin:12px 0}.account-details dt{color:var(--theme-muted,#73816a);font-size:calc(12px * var(--font-scale))}.account-details dd{margin:3px 0}.account-details .btn{margin-top:8px}.account-add-form .field{margin:18px 0}.account-add-form input,.account-add-form select{width:100%;min-width:0}.account-form-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.account-error{color:var(--theme-danger-text,#a04e3a);margin-top:16px;line-height:1.6}.account-workspace{min-width:0}.account-page-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.portal-shell .account-page-heading{padding-top:24px}.account-page-heading .eyebrow{font-size:calc(10px * var(--font-scale));margin:0 0 7px}.account-page-heading h1{font-size:calc(32px * var(--font-scale));margin:0;line-height:1.2}.account-return{flex-shrink:0;align-items:center;gap:8px;min-height:44px;display:inline-flex}.account-workspace-grid{grid-template-columns:minmax(210px,26%) minmax(0,1fr);align-items:start;gap:24px;display:grid}.account-navigation{min-width:0;padding:20px}.account-navigation .account-person{border-bottom:1px solid var(--theme-line,#e2e7dd);gap:11px;margin-bottom:18px;padding-bottom:18px}.account-navigation .account-person strong{font-size:calc(15px * var(--font-scale))}.account-navigation .account-person small{font-size:calc(11px * var(--font-scale))}.account-navigation .account-avatar{width:44px;height:44px;font-size:calc(16px * var(--font-scale))}.account-navigation h2{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#73816a);margin:0 10px 12px;font-weight:500}.account-workspace .account-section-nav{flex-direction:column;gap:5px;margin:0;display:flex}.account-section-nav button,.account-navigation-signout{min-height:48px;color:var(--theme-text,#294135);font-size:calc(13px * var(--font-scale));text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:11px;padding:13px 12px;font-weight:550;line-height:1.45;text-decoration:none;display:flex}.account-section-nav svg,.account-navigation-signout svg{flex-shrink:0}.account-section-nav button:hover,.account-navigation-signout:hover{background:var(--theme-hover,#edf2e4)}.account-section-nav button[aria-current=page]{background:var(--theme-selected,#eaf0e2);border-color:var(--theme-accent-line,#a8bd8c);color:var(--theme-accent-text,#557344);box-shadow:inset 3px 0 0 var(--theme-accent-text,#557344);font-weight:700}.account-section-nav button:focus-visible{outline:2px solid var(--theme-focus,#64854c);outline-offset:2px}.account-navigation-signout:focus-visible{outline:2px solid var(--theme-focus,#64854c);outline-offset:2px}.account-navigation-signout{border-top-color:var(--theme-line,#e2e7dd);border-radius:0;margin-top:20px;padding-top:20px}.account-section-content{gap:20px;min-width:0;display:grid}.account-section-content>.panel{width:100%;max-width:none}.account-section-content h2{font-size:calc(21px * var(--font-scale));margin:0 0 10px;line-height:1.35}.account-section-content .portal-profile .section-head{flex-wrap:wrap;align-items:flex-start;gap:16px}.account-section-content .section-head p{overflow-wrap:anywhere}.account-profile-details{padding:28px}.account-profile-details dl{gap:20px;margin:26px 0;display:grid}.account-profile-details dt{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#73816a);margin-bottom:5px}.account-profile-details dd{font-size:calc(15px * var(--font-scale));overflow-wrap:anywhere;margin:0}.account-profile-details>p{margin:16px 0;line-height:1.65}.account-section-content .account-connections{grid-template-columns:1fr}.account-section-content .account-payment-stats{gap:12px}.account-section-content .account-payment-stats>article{padding:16px}.account-section-content .account-payment-stats strong{font-size:calc(24px * var(--font-scale))}.account-display{max-width:650px;padding:22px}.account-display>.account-appearance{margin-top:0}.account-display p{margin-bottom:0}.account-connections{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.account-connection{overflow-wrap:anywhere;min-width:0;padding:22px}.account-connection h3{font-size:calc(17px * var(--font-scale));margin-bottom:8px}.account-connection p{font-size:calc(13px * var(--font-scale));margin:8px 0}.account-connection .badge{margin-top:8px}.account-payments .account-payment-stats{margin:20px 0 12px}.account-payment-stats>article{flex-direction:column;min-width:0;padding:20px;display:flex}.account-payment-stats h3{font-size:calc(13px * var(--font-scale));color:var(--theme-muted,#73816a);margin:0;font-weight:500}.account-payment-stats strong{font-size:calc(26px * var(--font-scale));font-variant-numeric:tabular-nums;margin:10px 0;line-height:1.35}.account-payment-stats p{font-size:calc(12px * var(--font-scale));margin:0}.account-payments-heading{font-size:calc(17px * var(--font-scale));margin:24px 0 14px}.account-payments .portal-payment{margin-bottom:12px}@media (max-width:700px){.account-dialog{max-height:calc(100dvh - 76px);padding:18px;inset:64px 12px auto auto}.account-trigger{width:40px;height:40px}.account-connections{grid-template-columns:1fr}.account-section-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.account-section-nav button{padding:9px 7px}.account-payment-stats>article{padding:16px}.account-payments .portal-payment .section-head{align-items:flex-start;gap:10px}.account-payments .receipt-line{align-items:flex-start;gap:12px}.account-payments .receipt-line>span{overflow-wrap:anywhere;min-width:0}.account-payments .receipt-line>b{flex-shrink:0}.account-dialog .field input,.account-dialog .field select{font-size:max(16px,calc(13px * var(--font-scale)))}.portal-header-actions{flex-wrap:wrap}.account-display{padding:16px}}@media (max-width:400px){.app-shell .topbar .breadcrumb>strong{text-overflow:ellipsis;white-space:nowrap;max-width:88px;overflow:hidden}.app-shell .topbar-right{gap:5px}}@media (max-width:600px){.account-payments .portal-stats.account-payment-stats{grid-template-columns:1fr;gap:10px}.account-payment-stats>article{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:7px 12px;display:grid}.account-payment-stats strong{white-space:nowrap;font-size:calc(24px * var(--font-scale));margin:0}.account-payment-stats p{grid-column:1/-1}}.account-trigger,.account-avatar{overflow:hidden}.account-trigger img,.account-avatar img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.account-trigger:has(img){padding:0}@media (max-width:800px){.account-workspace-grid{grid-template-columns:1fr;gap:18px}.account-navigation{padding:16px}.account-navigation .account-person{margin-bottom:12px;padding-bottom:12px}.account-navigation h2{margin-left:0}.account-workspace .account-section-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.account-section-nav button{gap:8px;min-height:46px;padding:10px}.account-navigation-signout{min-height:44px;margin-top:12px;padding:12px 10px 0}.account-page-heading{flex-wrap:wrap;align-items:flex-start;gap:8px;margin-bottom:18px}.account-page-heading h1{font-size:calc(27px * var(--font-scale))}.account-profile-details{padding:18px}.account-section-content h2{font-size:calc(19px * var(--font-scale))}}@media (min-width:801px) and (max-width:1100px){.app-shell .account-workspace-grid{grid-template-columns:200px minmax(0,1fr);gap:16px}.app-shell .account-navigation{padding:14px}.app-shell .account-section-content .account-payment-stats{grid-template-columns:1fr}}.profile-photo-editor{border-bottom:1px solid var(--theme-line,#e2e7dd);align-items:flex-start;gap:20px;margin-bottom:18px;padding:20px 0;display:flex}.profile-photo-preview{background:var(--theme-selected,#eaf0e2);border:1px solid var(--theme-control-line,#dce4d6);width:88px;height:88px;color:var(--theme-muted,#73816a);border-radius:50%;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.profile-photo-preview img{object-fit:cover;width:100%;height:100%}.profile-photo-content{min-width:0}.profile-photo-content h3{font-size:calc(16px * var(--font-scale));margin:0}.profile-photo-content p{margin:8px 0}.profile-photo-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.profile-photo-actions .text-btn{align-items:center;gap:6px;min-height:44px;display:inline-flex}@media (max-width:500px){.profile-photo-editor{flex-wrap:wrap;gap:14px}.profile-photo-preview{width:72px;height:72px}.profile-photo-content{flex:1;min-width:180px}.profile-photo-actions .btn{padding:9px 12px}}.account-dialog{border-radius:13px;width:min(360px,100vw - 24px);padding:16px;line-height:1.45}.account-dialog .account-dialog-head{gap:10px;margin-bottom:12px}.account-dialog h2{font-size:calc(17px * var(--font-scale))}.account-dialog .account-person{gap:10px;margin-bottom:10px}.account-dialog .account-person strong{font-size:calc(15px * var(--font-scale))}.account-dialog .account-person small{font-size:calc(11px * var(--font-scale))}.account-dialog .account-avatar{width:40px;height:40px;font-size:calc(17px * var(--font-scale))}.account-dialog .account-row{gap:9px;min-height:42px;padding:7px 6px}.account-dialog .account-appearance{gap:8px;margin:8px 0;padding:9px 6px}.account-dialog .account-signout{margin-top:8px;padding-top:7px}.account-dialog .account-signout>a:first-child{padding:7px 6px}@media (max-width:700px){.account-dialog{padding:14px}.account-dialog .account-row,.account-dialog .icon-button{min-height:44px}.account-dialog .account-signout>a:first-child{box-sizing:border-box;align-items:center;min-height:44px;display:flex}}[data-profile-card]{cursor:pointer;position:relative}@media (hover:hover) and (pointer:fine){:where(button,a[href],summary,select,[role=button]):not(:disabled):not([aria-disabled=true]){transition:translate .18s,scale .18s,box-shadow .18s}:where(button,a[href],summary,select,[role=button]):not(:disabled):not([aria-disabled=true]):hover{translate:0 -1px;scale:1.03}:is([data-profile-card],.metric,.panel:not(:has(table,.panel,article,.toolbar)),article:not(:has(article)),.card,[class$=-card],[class*=-card\ ],.public-studio-tile){transform-origin:50%;transition:translate .2s,scale .2s,box-shadow .2s}:is([data-profile-card],.metric,.panel:not(:has(table,.panel,article,.toolbar)),article:not(:has(article)),.card,[class$=-card],[class*=-card\ ],.public-studio-tile):hover{box-shadow:0 14px 32px #0003,0 0 0 1px var(--theme-accent-line,#a8bd8c);translate:0 -6px;scale:1.015}[data-profile-card]:focus-within{box-shadow:0 0 0 2px var(--theme-focus,#64854c)}[data-profile-card] :where(.family-student-summary,.address-line,.availability-summary){transform-origin:0;transition:scale .18s}[data-profile-card] :where(.family-student-summary,.address-line,.availability-summary):hover{scale:1.025}body .amount-breakdown-trigger:not(:disabled):hover{z-index:1;position:relative;translate:0 -2px;scale:1.1}tr:has(button:not(:disabled),a[href]){transition:translate .18s,box-shadow .18s}tr:has(button:not(:disabled),a[href]):hover{translate:0 -1px;box-shadow:0 3px 8px #152a2012}:where([draggable=true],.dialog-scrim,.modal-backdrop):hover{translate:none;scale:none}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:reduce){body :is(button,a[href],summary,select,[role=button],tr:has(button:not(:disabled),a[href])),body :is([data-profile-card],.metric,.panel:not(:has(table,.panel,article,.toolbar)),article:not(:has(article)),.card,[class$=-card],[class*=-card\ ],.public-studio-tile){transition:translate .16s,scale .16s,box-shadow .16s!important}:is([data-profile-card],.metric,.panel:not(:has(table,.panel,article,.toolbar)),article:not(:has(article)),.card,[class$=-card],[class*=-card\ ],.public-studio-tile):hover{translate:0 -4px;scale:1.01}:where(button,a[href],summary,select,[role=button]):not(:disabled):not([aria-disabled=true]):hover{scale:1.025}body .amount-breakdown-trigger:not(:disabled):hover{translate:0 -2px;scale:1.08}}.app-shell .balance-groups .balance-totals-header,.app-shell .balance-groups .balance-group>summary{grid-template-columns:minmax(125px,1.4fr) repeat(6,minmax(82px,1fr));gap:10px}.app-shell .family-balances .balance-totals-header,.app-shell .family-balances .balance-group>summary{grid-template-columns:minmax(125px,1.4fr) repeat(7,minmax(82px,1fr))}.payment-terms{font-size:calc(12px * var(--font-scale));color:var(--theme-muted);padding:12px 22px}.payment-terms summary{cursor:pointer;color:var(--theme-accent-text);font-weight:600}.payment-terms dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;margin:15px 0 6px;display:grid}.payment-terms dt{color:var(--theme-text);font-weight:650}.payment-terms dd{margin:4px 0 0;line-height:1.6}.app-shell .balance-group[open]{border:1px solid var(--theme-accent-line,#a8bd8c);border-radius:10px;margin:10px;overflow:hidden}.app-shell .balance-group[open]>summary{background:var(--theme-surface);border-bottom:1px solid var(--theme-line)}.app-shell .balance-group-details{background:var(--theme-canvas,#f7f8f3);border-top:0;padding:18px}.payment-detail-toolbar{justify-content:space-between;align-items:center;gap:18px;margin:0 0 16px;display:flex}.payment-detail-toolbar h3{font-size:calc(16px * var(--font-scale));color:var(--theme-text);margin:0 0 5px;line-height:1.4}.payment-detail-toolbar p{font-size:calc(12px * var(--font-scale));color:var(--theme-muted);margin:0;line-height:1.6}.payment-detail-toolbar .btn{flex-shrink:0}.payment-lesson-detail,.payment-advance-detail{border:1px solid var(--theme-line);background:var(--theme-surface);border-radius:8px;min-width:0;margin-top:16px;overflow:hidden}.payment-lesson-detail h4,.payment-advance-detail h4{font-size:calc(16px * var(--font-scale));color:var(--theme-text);background:0 0;margin:0;padding:16px 16px 4px;font-weight:700;line-height:1.5}.payment-detail-caption,.payment-outside-advance,.payment-detail-credit,.payment-detail-empty{font-size:calc(12px * var(--font-scale));color:var(--theme-text);margin:0;padding:6px 16px 12px;line-height:1.65}.payment-outside-advance{padding-top:0;font-weight:600}.payment-calculation-note{font-size:calc(11px * var(--font-scale));color:var(--theme-muted);padding:0 16px 14px;line-height:1.6}.payment-calculation-note summary{cursor:pointer;color:var(--theme-accent-text)}.payment-calculation-note p{margin:10px 0 0}.payment-detail-empty{padding:10px 16px 18px}.payment-detail-credit{margin-top:12px}.payment-lesson-detail table{table-layout:fixed;width:100%}.payment-lesson-detail th,.payment-lesson-detail td,.payment-advance-detail th,.payment-advance-detail td{overflow-wrap:anywhere;vertical-align:middle;padding:14px 10px}.payment-lesson-detail td small{color:var(--theme-muted);font-size:.86em;line-height:1.6;display:block}.app-shell .balance-group-details table thead th{background:var(--theme-soft,#edf1e6)!important;color:var(--theme-text,#294135)!important;border-block:1px solid var(--theme-line,#dce4d6)!important}.app-shell .balance-group-details table tbody td,.app-shell .balance-group-details table tbody th{background:var(--theme-surface,#fff);color:var(--theme-text,#294135)}.app-shell .balance-group-details :is(.table-column-totals,.report-column-totals)>*,.app-shell .balance-group-details .table-mobile-totals{font-weight:700;background:var(--theme-soft,#edf1e6)!important;color:var(--theme-text,#294135)!important;border-color:var(--theme-line,#dce4d6)!important}.app-shell .balance-group-details :is(.payment-mobile-card,.group-payment-history){background:var(--theme-surface)}.app-shell .balance-group-details .balance-overdue{color:var(--theme-danger-text,#a54736)}.app-shell .balance-group-details .group-payment-history{border-color:var(--theme-line);margin-top:16px}@media (max-width:1200px){.app-shell .balance-groups .balance-totals-header,.app-shell .balance-groups .balance-group>summary{grid-template-columns:repeat(4,minmax(0,1fr))}.app-shell .balance-groups .balance-group-name{grid-column:1/-1}}@media (max-width:650px){.app-shell .balance-groups .balance-totals-header,.app-shell .balance-groups .balance-group>summary{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px 12px}.app-shell .balance-group-details{padding:12px 6px}.app-shell .balance-group[open]{margin:8px 4px}.payment-terms{padding:12px 16px}.payment-terms dl{grid-template-columns:1fr}.payment-lesson-detail h4,.payment-detail-caption{padding:12px}.payment-lesson-detail .payment-card-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell .balance-groups :is(.balance-totals-header>span,.balance-group>summary>span:not(.balance-group-name)){grid-template-rows:minmax(2.4em,auto) auto}.app-shell .balance-groups :is(.balance-totals-header small,.balance-group>summary>span:not(.balance-group-name)>small){min-height:2.4em;margin-bottom:4px;line-height:1.3}.app-shell .balance-groups :is(.balance-totals-header,.balance-group>summary){row-gap:12px}.app-shell .balance-group-details .balance-advance-note{padding:0 10px}}.app-shell .payment-lesson-detail th{white-space:normal;line-height:1.4}.app-shell .payment-lesson-detail th .table-sort-label{white-space:normal;gap:4px;min-width:0;line-height:1.4}.app-shell .payment-lesson-detail th .table-sort-label>span{align-self:center}.app-shell .payment-lesson-detail table{min-width:1120px}.app-shell .payment-lesson-detail th:first-child{width:22%}.app-shell .payment-lesson-detail th:last-child{width:12%}.app-shell .payment-lesson-detail th,.app-shell .payment-lesson-detail th .table-sort-label{overflow-wrap:normal;word-break:normal}@media (max-width:650px){.payment-detail-toolbar{flex-direction:column;align-items:flex-start;gap:10px}.payment-detail-toolbar h3{font-size:calc(15px * var(--font-scale))}.payment-lesson-detail h4,.payment-advance-detail h4{padding:14px 12px 4px}.payment-calculation-note{padding-inline:12px}}.app-shell .balance-group-details table{font-size:calc(12px * var(--font-scale))}
