: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{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:calc(14px * var(--font-scale));line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.5;cursor:not-allowed}button{background:none;border:0}a{color:inherit;text-decoration:none}a:focus-visible,button: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{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted{color:var(--muted)}.padded{padding:24px}.green-text{color:var(--theme-success-text,#3c674e)}.strike{text-decoration:line-through}.app-shell{display:flex;min-height:100vh}.sidebar{width:232px;flex-shrink:0;position:fixed;inset:0 auto 0 0;background:var(--theme-sidebar,#233c30);color:var(--theme-text,#d6dfd8);display:flex;flex-direction:column;padding:30px 18px 0;z-index:20}.brand{display:flex;align-items:center;font-family:"Manrope",var(--sans);font-size:calc(25px * var(--font-scale));font-weight:750;letter-spacing:-1.3px;margin:0 12px 31px;color:var(--theme-text,#fafbf6)}.brand-light{font-weight:400}.brand-mark{display:flex;position:relative;align-items:center;justify-content:center;width:35px;height:35px;margin-right:9px;background:var(--lime);color:var(--theme-on-accent,#284b37);border-radius:10px;transform:rotate(-6deg)}.brand-mark span{position:absolute;width:5px;height:5px;background:var(--lime);border-radius:50%;right:-4px;top:-5px}.workspace-label{display:flex;gap:9px;align-items:center;font-size:calc(11px * var(--font-scale));font-weight:500;background:var(--theme-sidebar-raised,#2e493b);border:1px solid var(--theme-line,#3c5545);border-radius:9px;padding:12px 10px;margin-bottom:31px}.workspace-symbol{width:29px;height:30px;display:grid;place-items:center;border:1px solid var(--theme-line,#5a705c);border-radius:7px}.workspace-label>svg{margin-left:auto;color:var(--theme-muted,#97b198)}.workspace-label small{display:block;color:var(--theme-muted,#a1b2a4);font-weight:400}.nav-label{font-size:calc(9px * var(--font-scale));font-weight:700;letter-spacing:1.4px;color:var(--theme-muted,#8ea293);padding-left:14px;margin-bottom:12px}.sidebar nav{display:grid;gap:6px}.sidebar nav :is(button,a){display:flex;gap:13px;align-items:center;padding:12px 15px;border-radius:7px;text-align:left;transition:background .15s}.sidebar nav :is(button,a):hover{background:var(--theme-hover,#365140)}.sidebar nav :is(button,a).active{background:var(--theme-accent,#e0edbf);color:var(--theme-on-accent,#284531);font-weight:650}.nav-count{margin-left:auto;font-size:calc(10px * var(--font-scale));background:var(--theme-nav-count,#ffffff1a);padding:1px 7px;border-radius:5px}.active .nav-count{background:var(--theme-accent-hover,#c7da9e)}.sidebar-bottom{margin-top:auto;padding-top:40px}.sidebar-note{padding:24px 14px 20px;border:1px solid var(--theme-line,#45604b);border-radius:10px;margin:0 3px 24px;background:linear-gradient(135deg,var(--theme-sidebar-raised,#304c3b),var(--theme-sidebar-raised,#294334))}.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));line-height:1.5;color:var(--theme-text,#e7eddb)}.sidebar-note strong{font-weight:400;color:var(--theme-muted,#d9e7b4)}.sidebar-note>span{display:block;font-size:calc(9px * var(--font-scale));margin-top:10px;color:var(--theme-muted,#98ae9b)}.settings-link{display:flex;gap:12px;align-items:center;padding:12px 14px;width:100%;border-radius:7px;margin-bottom:14px}.settings-link.active,.settings-link:hover{background:var(--theme-hover,#365140)}.owner{border-top:1px solid var(--theme-line,#3d5546);display:flex;align-items:center;gap:10px;padding:21px 8px;font-size:calc(11px * var(--font-scale))}.owner-avatar{background:var(--theme-selected,#e4e9db);color:var(--theme-text,#304c3b);width:32px;height:32px;display:grid;place-items:center;border-radius:50%;font-weight:700}.owner small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#91a895);display:block}.online-dot{width:5px;height:5px;border-radius:50%;background:var(--theme-soft,#b2cb84);margin-left:auto}.main{margin-left:232px;min-width:0;flex:1 1}.topbar{height:76px;padding:0 38px;border-bottom:1px solid var(--line);justify-content:space-between;background:var(--theme-raised,#fcfcfa)}.breadcrumb,.topbar{display:flex;align-items:center}.breadcrumb{gap:12px;font-size:calc(11px * var(--font-scale))}.breadcrumb>span{color:var(--theme-muted,#899087)}.breadcrumb strong{font-weight:500}.breadcrumb svg{color:var(--theme-muted,#9ca596)}.topbar-right{gap:21px}.timezone,.topbar-right{display:flex;align-items:center}.timezone{gap:6px;font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#838b80)}.help-btn,.top-avatar{display:grid;place-items:center}.top-avatar{width:31px;height:31px;background:var(--theme-selected,#ede7db);color:var(--theme-text,#6d614d);border:3px solid var(--theme-line,white);border-radius:50%;font-size:calc(11px * var(--font-scale));font-weight:650;box-shadow:0 0 0 1px var(--theme-line,#e5e5dc)}.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));padding:8px 38px;justify-content:space-between;gap:15px;color:var(--theme-text,#647554)}.demo-banner,.demo-banner>span{display:flex;align-items:center}.demo-banner>span{gap:5px;flex-wrap:wrap}.demo-banner strong{font-weight:500}.demo-banner button{gap:7px;font-weight:650;white-space:nowrap}.demo-banner button,.page-head{display:flex;align-items:center}.page-head{gap:20px;justify-content:space-between;margin-bottom:27px}.eyebrow{font-size:calc(9px * var(--font-scale));font-weight:650;letter-spacing:1.6px;color:var(--theme-muted,#848d7d);margin-bottom:9px}h1{font-family:var(--serif);font-size:calc(34px * var(--font-scale));line-height:1.2;letter-spacing:-1.15px;font-weight:400}.page-description{color:var(--theme-muted,#899082);font-size:calc(11px * var(--font-scale));margin-top:9px}.head-actions{display:flex;align-items:center;gap:12px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:11px 16px;border-radius:7px;font-size:calc(11px * var(--font-scale));line-height:1.5;font-weight:600;border:1px solid transparent;white-space:nowrap;transition:background .15s,transform .15s}.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{padding:7px 11px}.btn.small,.date-chip{font-size:calc(10px * var(--font-scale))}.date-chip{border:1px solid var(--theme-line,#e0e3da);background:var(--theme-surface,#fff);display:flex;gap:7px;align-items:center;padding:10px 12px;border-radius:6px;white-space:nowrap;color:var(--theme-muted,#71806b)}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:25px}.metric{padding:17px 19px 16px;background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:10px}.metric-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#737e70)}.metric-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px}.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));font-weight:600;line-height:1.35;letter-spacing:-1.1px;display:block;margin:8px 0}.metric>small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#959b8f)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(270px,1fr);gap:23px;align-items:start}.panel{background:var(--theme-surface,#fff);border:1px solid var(--line);border-radius:11px;min-width:0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:22px 24px 17px}.section-head p{color:var(--theme-muted,#92988c);margin-top:4px}.section-head p,.text-btn{font-size:calc(10px * var(--font-scale))}.text-btn{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--theme-accent-text,#647b53);white-space:nowrap;padding:3px 0}.text-btn:hover{text-decoration:underline}.week-container{padding:1px 24px 16px}.week-month{display:flex;justify-content:space-between;align-items:center;margin:4px 0 12px}.week-month strong{font-size:calc(11px * var(--font-scale));font-weight:500}.week-month>div{display:flex;gap:6px;align-items:center}.icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px;border-radius:5px;color:var(--theme-muted,#87927f)}.icon-btn:hover{background:var(--theme-hover,#f0f3eb);color:var(--theme-text,#37543c)}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.week-strip button{border-radius:8px;padding:10px 3px 7px;display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--theme-muted,#8b9386)}.week-strip button>span{font-size:calc(9px * var(--font-scale))}.week-strip button strong{font-size:calc(16px * var(--font-scale));font-weight:500;color:var(--theme-text,#43583e)}.week-strip button i{width:4px;height:4px;border-radius:50%;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{display:flex;align-items:center;width:100%;text-align:left;gap:13px;padding:17px 0;border-top:1px solid var(--theme-line,#f0f1eb)}.agenda-row:hover .agenda-detail>strong{color:var(--theme-muted,#70904f)}.agenda-time{font-size:calc(11px * var(--font-scale));font-weight:500;width:61px;flex-shrink:0}.agenda-time small{display:block;font-size:calc(9px * var(--font-scale));font-weight:400;color:var(--theme-muted,#a0a596);margin-top:4px}.agenda-line{width:3px;height:41px;border-radius:2px;flex-shrink:0;background:currentColor!important;opacity:.5}.agenda-detail{flex:1 1;min-width:0}.agenda-detail>strong{display:block;font-size:calc(12px * var(--font-scale));font-weight:650}.agenda-detail>span{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#838f7c);margin-top:3px}.agenda-detail>span i{background:var(--theme-soft,#b5bcae);width:3px;height:3px;border-radius:50%}.agenda-detail>small{display:flex;align-items:center;gap:3px;font-size:calc(8px * var(--font-scale));color:var(--theme-muted,#a0a595);margin-top:5px}.agenda-row>.avatar{width:29px;height:29px;font-size:calc(9px * var(--font-scale))}.agenda-row>svg{color:var(--theme-muted,#a7b09e)}.avatar{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;border-radius:50%;font-size:calc(10px * var(--font-scale));font-weight:500;border:2px solid var(--theme-line,#fff)}.avatar.large{width:51px;height:51px;font-size:calc(16px * var(--font-scale));border:0}.panel-footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:14px 24px;font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#9ba292);gap:15px}.panel-footer>span{display:flex;align-items:center;gap:5px}.dot{width:4px;height:4px;border-radius:50%;background:var(--theme-soft,#a3b57b);display:inline-block}.right-column{display:grid;gap:20px}.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{display:block;font-size:calc(7px * var(--font-scale));letter-spacing:1.3px;color:var(--theme-muted,#879373);font-weight:650}.welcome-card h2{font-family:var(--serif);font-size:calc(29px * var(--font-scale));font-weight:400;line-height:1.12;margin:17px 0 11px;letter-spacing:-1px;position:relative;z-index:1}.welcome-card p{color:var(--theme-muted,#8b937d);line-height:1.8}.welcome-card p,.welcome-link{font-size:calc(10px * var(--font-scale));position:relative;z-index:1}.welcome-link{display:flex;align-items:center;gap:8px;font-weight:550;margin-top:24px}.plant{position:absolute;right:13px;bottom:24px;width:115px;height:174px;opacity:.8;transform:rotate(3deg)}.plant-stem{position:absolute;width:3px;height:120px;background:#819a58;left:58px;top:20px;transform:rotate(1deg);border-radius:4px}.plant-leaf{position:absolute;background:#a3b575;width:49px;height:25px;border-radius:80% 0 80% 0}.leaf-one{top:38px;left:12px;transform:rotate(43deg)}.leaf-two{top:18px;left:57px;transform:rotate(-27deg);background:#90a867}.leaf-three{top:78px;left:60px;transform:rotate(-24deg);background:#bcc990}.plant-pot{position:absolute;bottom:0;left:33px;width:58px;height:49px;background:#c99471;clip-path:polygon(0 0,100% 0,85% 100%,17% 100%);border-top:8px solid #d5aa8b;border-radius:4px}.plant-spark{position:absolute;top:1px;left:15px;color:#c59f67;font-size:calc(28px * var(--font-scale))}.attention .section-head{padding-bottom:9px}.attention-row{display:flex;align-items:center;gap:11px;text-align:left;padding:14px 23px;width:100%;border-top:1px solid var(--theme-line,#f3f3ed)}.attention-row:hover{background:var(--theme-hover,#fafbf7)}.attention-icon{width:32px;height:32px;border-radius:8px;display:grid;place-items:center}.attention-row>div{flex:1 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{display:grid;grid-template-columns:minmax(0,1fr);gap:23px;margin-top:23px}.rating-summary{display:flex;align-items:center;gap:13px;margin:0 23px 14px;padding-bottom:16px;border-bottom:1px solid var(--theme-line,#eff0e8)}.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);display:inline-flex;gap:3px}.rating-summary small{font-size:calc(8px * var(--font-scale));color:var(--theme-accent-text,#a3a993);display:block;margin-top:4px}.rating-bloom{margin-left:auto;color:var(--theme-muted,#bdc797)}.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{display:flex;gap:6px;font-size:calc(8px * var(--font-scale));margin-top:7px;color:var(--theme-muted,#68795a)}.review-preview>span>span{color:var(--theme-muted,#a7ae9c)}.app-footer{display:flex;justify-content:space-between;gap:16px;padding:27px 0;font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#a2ab97)}.app-footer>span{display:flex;gap:5px;align-items:center}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-weight:500;color:var(--theme-muted,#929b87);font-size:calc(9px * var(--font-scale));background:var(--theme-raised,#fafbf7);padding:12px 20px;border-top:1px solid var(--theme-line,#edf0e5);border-bottom:1px solid var(--theme-line,#edf0e5)}td{padding:17px 20px;font-size:calc(11px * var(--font-scale));border-bottom:1px solid var(--theme-line,#f0f1eb);vertical-align:middle}td small{display:block;font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#909b85);margin-top:4px;max-width:260px;white-space:normal}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));font-weight:600;padding:0}.cell-link:hover{text-decoration:underline}.person{gap:8px}.person,.row-actions{display:flex;align-items:center}.row-actions{gap:3px}.badge{display:inline-flex;align-items:center;gap:5px;font-size:calc(8px * var(--font-scale));padding:4px 7px;border-radius:5px;background:var(--theme-soft,#f0f2eb);color:var(--theme-muted,#7b896a);white-space:nowrap}.badge>span{width:4px;height:4px;border-radius:50%;background:currentColor}.badge.active,.badge.completed,.badge.paid,.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.archived,.badge.cancelled,.badge.reversed{background:var(--theme-soft,#f2f1ed);color:var(--theme-muted,#929082)}.list-toolbar,.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 23px}.list-toolbar{padding:0 0 22px}.tabs{display:flex;gap:3px;border-radius:7px;padding:4px;background:var(--theme-soft,#eef1e9);width:fit-content}.tabs button{padding:7px 12px;white-space:nowrap;font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#879578);border-radius:5px}.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{display:flex;align-items:center;gap:7px;max-width:260px;min-width:0;padding:7px 10px;border:1px solid var(--theme-control-line,#e0e6d8);border-radius:6px;background:var(--theme-input,#fff);color:var(--theme-muted,#9ca88f)}.search input{border:0;outline:0;width:100%;min-width:0;font-size:calc(11px * var(--font-scale));color:var(--theme-text,#5d704e);background:transparent}.search input::placeholder{color:var(--theme-placeholder,#a0aa93)}.search button{display:grid;place-items:center}select{background:var(--theme-input,#fff);padding:9px 12px;border:1px solid var(--theme-control-line,#dfe5d6);border-radius:6px;font-size:calc(11px * var(--font-scale));color:var(--theme-text,#5b6f4e);max-width:100%}.lesson-calendar{display:flex;align-items:center;gap:20px;border-top:1px solid var(--line);padding:18px 0}.lesson-calendar .week-container{max-width:650px;flex:1 1;width:100%}.family-grid,.tutor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}.family-card{padding:22px}.family-top,.tutor-top{margin-bottom:20px}.card-title,.family-top,.tutor-top{display:flex;justify-content:space-between;align-items:center}.card-title{font-size:calc(18px * var(--font-scale));font-weight:600;width:100%;padding:0;text-align:left;letter-spacing:-.5px}.card-title svg{color:var(--theme-muted,#8b9c7c)}.family-card>.muted{font-size:calc(11px * var(--font-scale));margin-top:4px}.family-children{display:flex;gap:6px;flex-wrap:wrap;margin:19px 0 22px;min-height:27px}.family-children>span{display:flex;gap:4px;align-items:center;font-size:calc(10px * var(--font-scale));border-radius:5px;background:var(--theme-soft,#f4f5ef);padding:5px 7px;color:var(--theme-muted,#879278)}.family-card-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px;gap:8px}.family-card-footer small{display:block;font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#94a087)}.family-card-footer strong{font-size:calc(16px * var(--font-scale));display:block;margin-top:3px;font-weight:500}.back-btn{margin-bottom:18px}.family-detail{display:flex;align-items:center;gap:19px;padding:23px;margin-bottom:20px}.family-detail p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#8b997d);margin-top:4px;white-space:pre-wrap}.detail-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.children-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px}.child-card{padding:23px}.child-heading{display:flex;align-items:center;gap:11px}.child-heading>div{flex:1 1}.child-heading small{display:block;color:var(--theme-muted,#8f9c81);font-size:calc(10px * var(--font-scale));margin-top:3px}.child-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:12px;background:var(--theme-soft,#edeedb);color:var(--theme-muted,#85905d)}.child-tags{display:flex;gap:7px;margin-top:18px}.level-tag{padding:4px 10px;font-size:calc(9px * var(--font-scale));border-radius:5px;background:var(--theme-soft,#e8efe2);color:var(--theme-muted,#79905f)}.learning-block{margin-top:19px}.focus-block>span,.learning-block>span{font-size:calc(8px * var(--font-scale));letter-spacing:.8px;font-weight:600;display:flex;align-items:center;gap:6px;color:var(--theme-muted,#859771)}.focus-block p,.learning-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{margin-top:16px;padding:14px 16px;background:var(--theme-soft,#f5f6ec);border-radius:7px}.learning-notes{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#9aa58d);margin-top:15px;white-space:pre-wrap}.child-footer{justify-content:space-between;border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.add-child-card,.child-footer{display:flex;align-items:center}.add-child-card{justify-content:center;flex-direction:column;border:1px dashed var(--theme-line,#cfd8c0);border-radius:11px;gap:12px;min-height:250px;color:var(--theme-muted,#8b9f76)}.add-child-card:hover{background:var(--theme-hover,#eff2e5)}.add-child-card>span{width:48px;height:48px;border-radius:50%;background:var(--theme-soft,#e9eedf);display:grid;place-items:center}.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{color:var(--theme-muted,#98a28b);line-height:1.7;margin:15px 0;min-height:39px}.tutor-bio,.tutor-rating{font-size:calc(11px * var(--font-scale))}.tutor-rating{display:flex;align-items:center;gap:7px}.tutor-rating>span:last-child{color:var(--theme-muted,#a0aa93);font-size:calc(9px * var(--font-scale))}.tutor-details{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;margin-top:18px}.tutor-details>div+div{padding-left:16px;border-left:1px solid var(--line)}.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));font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.tutor-footer{padding-top:15px}.review-details summary,.tutor-footer{display:flex;align-items:center;justify-content:space-between}.review-details summary{font-size:calc(10px * var(--font-scale));color:var(--theme-accent-text,#82946e);padding-top:14px;cursor:pointer}.tutor-review{padding:15px 0;border-bottom:1px solid var(--line)}.tutor-review p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#87977a);margin:8px 0}.tutor-review small{display:block;font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#a5af99)}.tutor-review .text-btn{margin-top:7px}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.report-filters{padding:20px 23px;margin-bottom:22px}.date-filters{display:flex;gap:15px;align-items:flex-end;margin-top:20px}.date-filters label{font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#8a9978);display:flex;flex-direction:column;gap:6px}.date-filters input{border:1px solid var(--theme-control-line,#dfe6d4);border-radius:6px;padding:8px 10px;background:var(--theme-input,#fff);font-size:calc(11px * var(--font-scale));color:var(--theme-text,#667d53)}.date-filters .text-btn{margin-bottom:8px}.activity-panel{margin-top:24px}.activity-row{display:flex;align-items:center;gap:11px;padding:13px 23px;border-top:1px solid var(--line);font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#7c8f6b)}.activity-row svg{color:var(--theme-muted,#a3b490)}.activity-row small{font-size:calc(9px * var(--font-scale));color:var(--theme-muted,#a3af98);margin-left:auto;white-space:nowrap}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px}.settings-line{display:flex;justify-content:space-between;align-items:center;padding:16px 23px;border-top:1px solid var(--line);font-size:calc(11px * var(--font-scale));gap:15px}.settings-line>span{color:var(--theme-muted,#91a180)}.settings-line strong{font-weight:500;display:flex;align-items:center;gap:5px;text-align:right}.settings-buttons{display:flex;flex-wrap:wrap;gap:12px;padding:20px 23px}.how-it-works>div:not(.section-head){display:flex;gap:17px;padding:15px 24px}.how-it-works>div>span{width:27px;height:27px;display:grid;place-items:center;background:var(--theme-soft,#edf1e5);border-radius:50%;font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#8ba174);flex-shrink:0}.how-it-works h3{font-size:calc(12px * var(--font-scale))}.how-it-works p{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#97a588);line-height:1.8;margin-top:4px}.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{font-weight:600;color:var(--theme-muted,#637b50)}.empty{text-align:center;padding:48px 25px;color:var(--theme-muted,#8f9f81);white-space:normal}.empty-icon{display:grid;place-items:center;width:57px;height:57px;background:var(--theme-soft,#f1f5e8);border-radius:50%;margin:0 auto 15px;color:var(--theme-muted,#96ae7e)}.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));margin:8px auto 18px;max-width:350px;line-height:1.8}.loading{min-height:500px;display:flex;align-items:center;justify-content:center;gap:15px}.spinner{display:inline-block;width:25px;height:25px;border:2px solid var(--theme-line,#b8c7aa);border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}.small-spinner{width:15px;height:15px;border-color:var(--theme-on-accent,#fff);border-top-color:transparent}@keyframes spin{to{transform:rotate(1turn)}}.record-dialog{position:fixed;inset:0;margin:auto;width:min(650px,calc(100% - 32px));padding:0;max-height:calc(100dvh - 48px);border:1px solid var(--theme-line,#dee7d2);border-radius:15px;color:var(--ink);box-shadow:0 20px 90px var(--theme-shadow,#203b3140);overflow:auto;background:var(--theme-surface,#fff)}.record-dialog::backdrop{background:var(--theme-scrim,#1d302b66);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:25px 28px 20px;border-bottom:1px solid var(--line);background:var(--theme-raised,#fbfcf8)}.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{display:flex;justify-content:flex-end;gap:10px;padding:18px 28px;border-top:1px solid var(--line);background:var(--theme-raised,#fbfcf8);position:sticky;bottom:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.field{display:flex;flex-direction:column;gap:6px;font-size:calc(11px * var(--font-scale));margin-bottom:18px;min-width:0}.field>span{font-weight:500;color:var(--theme-muted,#687b58)}.field i{color:var(--theme-muted,#b3bd99);font-style:normal}.field input,.field select,.field textarea{border:1px solid var(--theme-control-line,#dfe6d5);border-radius:6px;width:100%;background:var(--theme-input,#fff);font-size:calc(12px * var(--font-scale));padding:10px 11px;color:var(--theme-text,#4e6840);min-height:40px}.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{display:flex;align-items:flex-start;gap:8px;background:var(--theme-soft,#f2f5eb);padding:12px 14px;border-radius:6px;color:var(--theme-muted,#849a6c);font-size:calc(11px * var(--font-scale));line-height:1.8;margin-bottom:18px}.form-hint svg{margin-top:2px}.form-error{display:flex;align-items:flex-start;gap:8px;color:var(--theme-danger-text,#a66047);background:var(--theme-danger-surface,#fcf0eb);padding:13px;font-size:calc(11px * var(--font-scale));border-radius:6px}.form-subheading{display:flex;align-items:center;gap:8px;font-size:calc(13px * var(--font-scale));border-top:1px solid var(--line);padding-top:20px;margin-bottom:18px}.lesson-focus{padding:13px 16px;background:var(--theme-soft,#f3f5e9);margin-bottom:18px;border-radius:7px}.lesson-focus>span{display:flex;align-items:center;gap:6px;color:var(--theme-muted,#8ba170);font-size:calc(10px * var(--font-scale))}.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{display:flex;gap:8px;justify-content:center;margin:14px 0 8px}.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{display:flex;align-items:center;gap:10px;position:fixed;z-index:100;bottom:25px;left:calc(50% + 116px);transform:translateX(-50%);background:var(--theme-toast,#294b38);border:1px solid var(--theme-line,#42654c);color:var(--theme-text,#eef5e2);padding:13px 18px;border-radius:9px;box-shadow:0 8px 25px var(--theme-shadow,#203b3125);font-size:calc(11px * var(--font-scale));max-width:min(600px,calc(100vw - 30px))}.toast>svg{color:var(--theme-muted,#c4d7a4)}.toast button{display:grid;place-items:center;color:var(--theme-muted,#ccd7c3);margin-left:10px}.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}.demo-banner,.topbar{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{right:-10px;opacity:.55}.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{padding:10px 7px;font-size:calc(10px * var(--font-scale))}.workspace-symbol{display:none}.sidebar nav :is(button,a){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}.demo-banner,.topbar{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{transform:translateX(-100%);transition:transform .2s;width:232px}.sidebar.is-open{transform:translateX(0)}.main{margin-left:0;width:100%}.brand{font-size:calc(25px * var(--font-scale))}.workspace-symbol{display:grid}.sidebar-note{display:none}.sidebar nav :is(button,a){padding:13px}.nav-scrim{display:block;position:fixed;inset:0;background:var(--theme-scrim,#20392e77);z-index:19}.mobile-menu{display:flex!important;margin-right:0}.topbar{padding:0 19px;height:62px}.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{padding:9px 18px;font-size:calc(9px * var(--font-scale));align-items:flex-start}.demo-banner>span{max-width:200px;gap:4px}.demo-banner>span>svg{display:none}.demo-banner button{font-size:calc(9px * var(--font-scale));gap:4px;padding-top:1px}.page-head{display:block;margin-bottom:23px}.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;margin-top:17px;gap:9px}.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,.welcome-link{font-size:calc(9px * var(--font-scale))}.welcome-link{margin-top:22px}.plant{right:-33px;opacity:.35;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{padding:13px 17px;font-size:calc(8px * var(--font-scale));flex-wrap:wrap;gap:8px}.panel-footer .text-btn{font-size:calc(9px * var(--font-scale))}.dashboard-bottom{gap:19px;margin-top:19px}.app-footer{display:block;font-size:calc(8px * var(--font-scale))}.app-footer>span+span{margin-top:7px}.family-grid,.tutor-grid{gap:15px}.list-toolbar{gap:12px;flex-wrap:wrap}.search{max-width:100%;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{display:grid;grid-template-columns:1fr auto;align-items:center}.three>.metric:last-child .metric-heading{grid-column:1}.three>.metric:last-child .metric-icon{display:none}.three>.metric:last-child>strong{grid-column:2;grid-row:1/3}.three>.metric:last-child>small{grid-column:1}.toolbar{padding:16px;gap:13px}.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 1;min-width:120px}.date-filters input{min-width:0;width:100%}.report-filters{padding:16px}.activity-row{flex-wrap:wrap;gap:7px;font-size:calc(10px * var(--font-scale))}.activity-row>span{flex:1 1;min-width:200px}.activity-row small{margin-left:23px;width:100%}.family-detail{padding:20px;gap:12px}.family-detail>.avatar{width:45px;height:45px}.family-detail>div:not(.detail-actions){flex:1 1;min-width:0;overflow-wrap:anywhere}.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{width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:12px}.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{left:50%;bottom:16px;font-size:calc(10px * var(--font-scale));min-width:290px}.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{right:8px;opacity:.75;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){*{animation-duration:.01ms!important;transition:none!important;scroll-behavior:auto!important}}.sidebar nav :is(button,a){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))}.demo-banner,.timezone{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))}.attention-row strong,.welcome-card p,.welcome-link{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))}.rating-summary small,.review-preview>span{font-size:calc(10px * var(--font-scale))}.search input,.tabs button{font-size:calc(12px * var(--font-scale))}.badge{font-size:calc(10px * var(--font-scale))}th{font-size:calc(11px * var(--font-scale))}.cell-link,td{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-bio,.tutor-subjects{font-size:calc(12px * var(--font-scale))}.tutor-details small,.tutor-rating>span:last-child{font-size:calc(11px * var(--font-scale))}.tutor-review p{font-size:calc(12px * var(--font-scale))}.child-heading small,.level-tag,.review-details summary,.tutor-review small{font-size:calc(11px * var(--font-scale))}.focus-block>span,.learning-block>span{font-size:calc(10px * var(--font-scale))}.focus-block p,.learning-block p{font-size:calc(12px * var(--font-scale))}.learning-notes{font-size:calc(11px * var(--font-scale))}.add-child-card small,.family-detail p,.field{font-size:calc(12px * var(--font-scale))}.field input,.field select,.field textarea{font-size:calc(14px * var(--font-scale))}.field small{font-size:calc(11px * var(--font-scale))}.activity-row,.date-filters input,.date-filters label,.form-error,.form-hint,.lesson-focus p,.lesson-focus>span,.rating-input>span,select{font-size:calc(12px * var(--font-scale))}.activity-row small{font-size:calc(11px * var(--font-scale))}.help-notes>p,.how-it-works p,.settings-line{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))}.owner,.toast{font-size:calc(12px * var(--font-scale))}.owner small,.sidebar-note>span{font-size:calc(10px * var(--font-scale))}.sidebar-note>span{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))}.demo-banner,.demo-banner button,.three .metric-heading{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{height:100px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.portal-brand{display:flex;align-items:center;gap:9px;color:var(--green)}.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);padding-left:15px;margin-left:8px}.text-link{display:inline-flex;align-items:center;gap:7px;font-size:calc(12px * var(--font-scale));font-weight:600;color:var(--theme-accent-text,#557344)}.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));line-height:1.08;margin:20px 0 24px;letter-spacing:-2.4px}.welcome-hero h1 em{font-weight:400;color:var(--theme-accent-text,#718953)}.welcome-hero>p{color:var(--theme-muted,#7b8673);line-height:1.9}.welcome-roles{display:grid;grid-template-columns:1fr 1fr;gap:24px;text-align:left;max-width:840px;margin:48px auto 28px}.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{display:grid;place-items:center;width:46px;height:46px;background:var(--theme-soft,#eaf0da);border-radius:12px;margin-bottom:19px;color:var(--theme-text,#567241)}.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);line-height:1.8;min-height:70px;margin-bottom:23px}.welcome-roles .btn{font-size:calc(12px * var(--font-scale));width:100%}.welcome-note{align-items:center;justify-content:center;gap:8px;max-width:760px;margin:auto}.welcome-footer,.welcome-note{display:flex;font-size:calc(10px * var(--font-scale))}.welcome-footer{border-top:1px solid var(--line);padding:28px 0;justify-content:space-between;gap:20px;color:var(--theme-muted,#8c9580)}.welcome-footer>span{display:flex;align-items:center;gap:8px}.portal-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:45px 0 32px}.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{display:flex;gap:20px;border-bottom:1px solid var(--line);margin-bottom:26px}.portal-tabs button{display:flex;align-items:center;gap:8px;font-size:calc(12px * var(--font-scale));padding:14px 6px;color:var(--theme-muted,#849179);border-bottom:3px solid transparent}.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}.access-manager .section-head p,.portal-shell .section-head p{font-size:calc(12px * var(--font-scale))}.portal-actions{display:flex;align-items:center;gap:9px}.portal-actions select{background:var(--theme-input,white);border:1px solid var(--theme-control-line,#dfe3d8);border-radius:7px;padding:10px;font-size:calc(11px * var(--font-scale));min-width:0;max-width:100%}.portal-lesson-list{display:grid;grid-template-columns:1fr 1fr;gap:20px}.portal-lesson{padding:24px;display:flex;flex-direction:column}.portal-lesson-top{display:flex;justify-content:space-between;gap:15px}.portal-lesson h3{font-size:calc(19px * var(--font-scale));margin:13px 0}.portal-lesson h3 span{display:block;font-size:calc(12px * var(--font-scale));font-weight:400;margin-top:4px;color:var(--theme-muted,#819076)}.portal-lesson-top p{display:flex;align-items:center;gap:7px;font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#86917c);margin:7px 0;overflow-wrap:anywhere}.portal-lesson-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px;border-top:1px solid var(--line);margin-top:19px;padding-top:16px;font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#7a8770)}.portal-lesson-bottom b{color:var(--theme-text,#405638);font-weight:550}.icon-button{padding:8px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;height:35px}.icon-button:hover{background:var(--theme-hover,#edf2e4)}.portal-footer{text-align:center;padding:42px 0;color:var(--theme-muted,#9aa28f);font-size:calc(10px * var(--font-scale))}.learner-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.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));font-weight:600;margin:18px 0 7px;display:flex;align-items:center;gap:6px}.learning-focus{border-radius:9px;background:var(--theme-soft,#f0f4e8);padding:15px 17px;margin-top:18px}.learning-focus h4{margin:0 0 7px;color:var(--theme-text,#587147)}.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{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:28px}.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));display:block;margin-top:9px}.portal-payment{padding:22px 25px;margin-bottom:17px}.portal-payment .section-head{padding:0 0 18px}.payment-amounts{display:flex;justify-content:space-between;gap:18px;padding:17px 0;border-top:1px solid var(--line);font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#86917a)}.payment-amounts b{display:block;color:var(--theme-text,#405638);font-size:calc(15px * var(--font-scale));font-weight:550;margin-top:4px}.receipt-line{display:flex;justify-content:space-between;gap:20px;font-size:calc(11px * var(--font-scale));padding:12px 0;border-top:1px solid var(--line);color:var(--theme-muted,#78856d)}.receipt-line span{overflow-wrap:anywhere;min-width:0}.portal-profile{padding:30px;max-width:720px}.portal-profile .section-head{padding:0 0 20px}.portal-profile>p{margin:12px 0;white-space:pre-wrap;overflow-wrap:anywhere}.portal-profile>.muted{font-size:calc(11px * var(--font-scale));border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.portal-notice{background:var(--theme-success-surface,#e7efdc);color:var(--theme-success-text,#496b36);border-radius:8px;padding:14px 18px;margin:16px 0;font-size:calc(12px * var(--font-scale))}.portal-error{background:var(--theme-danger-surface,#f9eae5);border-radius:9px;padding:20px;margin:24px 0}.portal-error p{margin-bottom:16px}.portal-error .text-link{margin-left:20px}.entry-message{max-width:600px;padding:90px 30px;margin:auto}.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));margin-bottom:25px;overflow-wrap:anywhere}.registration-card{padding:32px}.registration-card>h2{margin:18px 0 12px;font-size:calc(23px * var(--font-scale))}.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;padding:18px;margin:25px 0;display:grid;gap:4px}.registration-summary span{color:var(--theme-accent-text,#87937a);font-size:calc(12px * var(--font-scale))}.role-switch{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:30px}.role-switch button{display:flex;align-items:center;gap:10px;border:1px solid var(--line);padding:15px;border-radius:10px;font-size:calc(13px * var(--font-scale));text-align:left}.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);padding:20px;border-radius:10px;margin:0 0 24px;min-width:0}.child-registration legend{font-weight:600;color:var(--theme-muted,#718262);font-size:calc(12px * var(--font-scale));padding:0 8px}.registration-card>.form-hint{margin:25px 0 20px}.access-info{display:flex;gap:14px;padding:20px;border:1px solid var(--theme-line,#dfe8d2);border-radius:10px;background:var(--theme-soft,#eef4e4);margin-bottom:23px;font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#78896b)}.access-info a{text-decoration:underline;color:var(--theme-text,#476a34)}.access-panel{padding:24px;margin-bottom: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{display:grid;grid-template-columns:120px 1fr 1fr auto;align-items:end;gap:15px}.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{margin:10px 0;overflow-wrap:anywhere;white-space:pre-wrap}.review-child{background:var(--theme-soft,#f7f9f2);border-radius:8px;padding:16px;margin:15px 0}.review-child p{font-size:calc(11px * var(--font-scale))}.review-approval{display:flex;gap:15px;align-items:end;margin:20px 0 12px}.review-approval>.field{flex:1 1;margin:0}.review-approval input{width:100%}.reject-registration{margin-top:15px}.reject-registration form{padding:12px 0;max-width:500px}.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{margin:auto;color:var(--theme-muted,#8b9e72)}.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{padding:8px 10px;font-size:calc(9px * var(--font-scale))}.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{font-size:calc(10px * var(--font-scale))!important;text-align:left}.welcome-footer{font-size:calc(9px * var(--font-scale));gap:13px;padding:24px 0}.portal-heading{padding:30px 0 22px;align-items:flex-start}.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{padding:8px;font-size:0;gap:0}.portal-tabs{gap:15px}.portal-tabs button{font-size:calc(11px * var(--font-scale))}.portal-shell section>.section-head{align-items:flex-start;flex-wrap:wrap}.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{display:grid;grid-template-columns:1fr 1fr}.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));padding:12px 10px;gap:8px}.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{align-items:flex-start;flex-wrap:wrap}.registration-review .section-head p{overflow-wrap:anywhere}.review-approval{display:grid;grid-template-columns:1fr}.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{padding:18px;background:var(--theme-soft,#f5f7ef);border:1px solid var(--theme-line,#e1e8d6);border-radius:9px;margin:18px 0 23px}.time-section-title{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--theme-text,#48623b)}.time-section-title h3{font-size:calc(14px * var(--font-scale))}.time-section-title>span{font-size:calc(9px * var(--font-scale));font-weight:400;color:var(--theme-muted,#859278);margin-left:auto}.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{display:grid;grid-template-columns:minmax(125px,1.2fr) minmax(100px,1fr) minmax(100px,1fr) 30px;gap:10px;align-items:end;margin-bottom:14px}.tutoring-time-row>.field{margin:0!important;min-width:0}.tutoring-time-row .field input,.tutoring-time-row .field select{width:100%;min-width:0;background:var(--theme-input,white);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;padding:20px;margin:18px 0 21px;min-width:0;position:relative}.family-child-form legend{padding:0 8px;font-size:calc(11px * var(--font-scale));font-weight:600;color:var(--theme-muted,#7c8a70)}.family-child-form>.field{max-width:calc(100% - 24px)}.remove-new-child{position:absolute;right:11px;top:13px}.child-extra-fields{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#718460)}.child-extra-fields summary{cursor:pointer;font-weight:500;padding:1px 0 13px}.child-extra-fields[open]{margin-top:18px}.tutoring-times-summary{padding:13px 0;font-size:calc(11px * var(--font-scale))}.tutoring-times-summary h4{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:calc(10px * var(--font-scale));font-weight:600;color:var(--theme-accent-text,#6f835a);margin:0 0 9px}.tutoring-times-summary h4 small{font-size:calc(8px * var(--font-scale));font-weight:400;color:var(--theme-accent-text,#96a186)}.tutoring-times-summary ul{list-style:none;padding:0;margin:0;display:grid;gap:5px}.tutoring-times-summary li{color:var(--theme-accent-text,#6b7f57);line-height:1.6;overflow-wrap:anywhere}.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{margin:18px 0;display:grid;gap:14px}.family-needs-list>div{border-left:2px solid var(--theme-accent-line,#d5e2bd);padding-left:11px}.family-needs-list strong{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:calc(11px * var(--font-scale));font-weight:500}.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{padding-top:0;border-bottom:1px solid var(--theme-line,#dde5d1);margin-bottom:11px}.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}.registration-card .tutoring-times-fields,.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-row:2;grid-column:1}.tutoring-time-row>.field:nth-child(3){grid-row:2;grid-column:2}.tutoring-time-row>.icon-btn{grid-column:3;grid-row:1}.time-section-title>span{margin-left:0;width:100%;padding-left:25px}.time-section-title h3{font-size:calc(13px * var(--font-scale))}.tutoring-time-row .field input{padding-left:7px;padding-right:7px;font-size:calc(11px * var(--font-scale))}.family-child-form>.field{max-width:calc(100% - 15px)}}.address-line{display:flex;gap:6px;align-items:flex-start;font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#7a886f);margin:9px 0;overflow-wrap:anywhere}.address-line svg{margin-top:2px}.travel-limit{color:var(--theme-muted,#6d815c);margin:8px 0 14px}.assignment-summary,.travel-limit{font-size:calc(11px * var(--font-scale))}.assignment-summary{display:grid;gap:6px;padding:13px;background:var(--theme-soft,#f3f6ec);border-radius:8px;margin:1px 0 12px}.assignment-summary strong{display:flex;align-items:flex-start;gap:6px;font-weight:600}.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{margin-bottom:20px;max-width:100%;white-space:normal}.assigned-name{display:block;color:var(--theme-muted,#697f54);font-size:calc(11px * var(--font-scale));margin:8px 0}.weekly-dialog{width:min(760px,calc(100% - 32px))}.route-check{padding:18px;border:1px solid var(--theme-line,#e1e7d7);background:var(--theme-soft,#f6f8f0);border-radius:9px;margin:0 0 16px}.route-check h3{display:flex;align-items:center;gap:8px;font-size:calc(14px * var(--font-scale))}.route-check dl{margin:14px 0;display:grid;gap:10px}.route-check dl>div{display:grid;grid-template-columns:95px 1fr;gap:12px;font-size:calc(11px * var(--font-scale))}.route-check dt{color:var(--theme-muted,#819172)}.route-check dd{margin:0;overflow-wrap:anywhere}.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{display:flex;align-items:flex-start;gap:10px;padding:16px 0 22px;font-size:calc(13px * var(--font-scale))}.weekly-toggle input{accent-color:var(--theme-focus,#294c3b);margin-top:4px;flex-shrink:0}.weekly-toggle small{display:block;font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#849379);margin-top:4px}.weekly-review{margin-top:24px;border-top:1px solid var(--theme-line,#dfe7d6);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{max-height:310px;overflow:auto;border:1px solid var(--theme-line,#e3e8dc);border-radius:8px}.weekly-review td{font-size:calc(11px * var(--font-scale))}.weekly-review th{position:sticky;top:0;background:var(--theme-raised,#f3f6ec);z-index:1}.weekly-review td:first-child{white-space:normal;min-width:170px}.weekly-review td:last-child{white-space:normal;min-width:160px}.weekly-totals{display:flex;flex-wrap:wrap;gap:14px;margin:16px 0;font-size:calc(12px * var(--font-scale))}.weekly-totals>span{flex:1 1;min-width:160px;background:var(--theme-soft,#eff3e7);border-radius:8px;padding:12px}.weekly-totals b{display:block;font-size:calc(22px * var(--font-scale));font-weight:500;margin-top:4px}.learner-address{margin:12px 0;padding:12px;background:var(--theme-soft,#f3f6ec);border-radius:8px}.learner-address>p{display:flex;gap:7px;overflow-wrap:anywhere}.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{margin:22px 0;border-top:1px solid var(--theme-line,#e0e7d8);padding-top:19px}.between-lessons>h3{display:flex;align-items:center;gap:8px;font-size:calc(14px * var(--font-scale))}.between-lessons>p{font-size:calc(11px * var(--font-scale));line-height:1.75;color:var(--theme-muted,#78866e);margin:10px 0 16px}.between-lessons .travel-clear{padding:12px;background:var(--theme-soft,#f1f6e9);border-radius:7px;color:var(--theme-text,#517342)}.journey-card{border:1px solid var(--theme-warning-line,#e6dcca);border-left:3px solid var(--theme-warning-line,#bf9463);border-radius:9px;background:var(--theme-warning-surface,#fcfaf5);padding:17px;margin:15px 0}.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{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:calc(12px * var(--font-scale))}.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{display:grid;gap:8px;font-size:calc(11px * var(--font-scale));margin:13px 0}.journey-card dl>div{display:grid;grid-template-columns:35px 1fr;gap:9px}.journey-card dt{color:var(--theme-muted,#829076)}.journey-card dd{margin:0;overflow-wrap:anywhere}.journey-result{font-size:calc(12px * var(--font-scale));font-weight:600;line-height:1.6}.journey-date{display:block;font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#7e896f);margin:5px 0 13px}.journey-card>.field{margin:15px 0 0;max-width:100%}.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;padding-top:0;margin-top:0;margin-bottom:25px}.journey-card .btn{white-space:normal;text-align:left}@media(max-width:600px){.journey-card{padding:14px 12px}.journey-heading{display:grid;gap:3px}.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{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 20px;padding:5px;background:var(--theme-soft,#e9ede2);border-radius:9px;width:fit-content}.lesson-view-switch button{display:flex;align-items:center;gap:7px;padding:9px 13px;border-radius:6px;font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#75836b)}.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{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px}.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{display:grid;gap:5px;min-width:170px;max-width:290px;font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#748368)}.calendar-tutor-picker select{width:100%;min-width:0;padding:9px;border:1px solid var(--theme-control-line,#dce4d2);border-radius:7px;background:var(--theme-input,#fcfdf9);color:var(--theme-text,#385036);font-size:calc(12px * var(--font-scale))}.tutor-week-toolbar{justify-content:space-between;gap:14px;padding:0 24px 19px}.tutor-week-navigation,.tutor-week-toolbar{display:flex;align-items:center;flex-wrap:wrap}.tutor-week-navigation{gap:6px}.tutor-week-navigation h3{font-size:calc(14px * var(--font-scale));font-weight:600;min-width:185px;text-align:center}.tutor-week-navigation>.btn{margin-left:6px}.tutor-week-actions{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.week-date-picker{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#819074);display:flex;flex-direction:column;gap:4px}.week-date-picker input{color:var(--theme-text,#5c7250);min-width:0;padding:7px 9px;font-size:calc(11px * var(--font-scale));border:1px solid var(--theme-control-line,#dee5d5);border-radius:6px;background:var(--theme-input,white)}.tutor-week-summary{gap:18px;background:var(--theme-soft,#f5f8ef);border-top:1px solid var(--theme-line,#e7ecdf);border-bottom:1px solid var(--theme-line,#e3e8dc);padding:14px 24px;font-size:calc(11px * var(--font-scale));color:var(--theme-accent-text,#728464)}.tutor-week-summary,.tutor-week-summary>span{display:flex;align-items:center;flex-wrap:wrap}.tutor-week-summary>span{gap:5px}.tutor-week-summary b{font-weight:600;color:var(--theme-accent-text,#42613a)}.tutor-week-summary label{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:calc(11px * var(--font-scale))}.tutor-week-summary input{accent-color:var(--theme-focus,#3c5d38)}.week-attention{display:flex;gap:8px;align-items:flex-start;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));padding:12px 24px;line-height:1.6}.week-attention svg{margin-top:2px}.tutor-week-scroll{overflow:auto;outline-offset:-3px}.tutor-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:910px;align-items:stretch}.tutor-week-day{min-width:0;border-right:1px solid var(--theme-line,#e6ebdf);min-height:390px;background:var(--theme-surface,#fff)}.tutor-week-day:last-child{border-right:0}.tutor-week-day.is-weekend{background:var(--theme-soft,#fafbf7)}.tutor-week-day>header{display:flex;gap:6px;align-items:center;padding:14px 11px;border-bottom:1px solid var(--theme-line,#e6ebdf);background:var(--theme-raised,#fcfdf9);min-height:62px}.tutor-week-day>header>span{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#829276)}.tutor-week-day>header time{display:grid;place-items:center;font-size:calc(19px * var(--font-scale));font-weight:500;width:31px;height:31px;border-radius:50%;color:var(--theme-text,#416037)}.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{display:grid;gap:10px;padding:11px 7px 20px}.week-lesson{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:11px 9px;border:1px solid var(--theme-line,#dce8cf);border-left:3px solid var(--theme-accent-line,#83a76c);border-radius:8px;background:var(--theme-soft,#f0f6e9);text-align:left;min-width:0;width:100%;overflow-wrap:anywhere;color:var(--theme-text,#49643e)}.week-lesson-time{font-size:calc(11px * var(--font-scale));font-weight:600;line-height:1.6;color:var(--theme-text,#51753f)}.week-lesson>strong{font-size:calc(14px * var(--font-scale));color:var(--theme-text,#2d4b34);line-height:1.4;font-weight:600}.week-lesson-subject{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#6e805f)}.week-lesson-location{display:flex;gap:4px;align-items:flex-start;font-size:calc(11px * var(--font-scale));color:var(--theme-text,#647759);line-height:1.6}.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);line-height:1.5;margin-top:2px}.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>.week-lesson-time,.week-lesson.cancelled>strong{text-decoration:line-through;color:var(--theme-muted,#9d978e)}.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);border-radius:8px;padding:10px 8px;background:var(--theme-soft,#fdfdf9);color:var(--theme-muted,#788469);overflow-wrap:anywhere;min-width:0}.week-journey,.week-journey-title{font-size:calc(11px * var(--font-scale))}.week-journey-title{display:flex;align-items:flex-start;gap:5px;color:var(--theme-muted,#5a7850);line-height:1.5}.week-journey-title svg{margin-top:1px}.week-journey-title strong{font-weight:600}.week-journey>p{font-size:calc(11px * var(--font-scale));line-height:1.6;margin:6px 0;color:var(--theme-text,#647454)}.week-journey>small{line-height:1.7;margin:5px 0}.week-gap,.week-journey>small{display:block;font-size:calc(11px * var(--font-scale))}.week-gap{font-weight:500;line-height:1.6}.week-route-link{display:flex;align-items:center;gap:4px;margin-top:7px;font-size:calc(11px * var(--font-scale));font-weight:600;text-decoration:underline;text-underline-offset:3px;color:var(--theme-accent-text,#6d8059);text-align:left;padding:0}.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-gap,.week-journey.needs-attention .week-journey-title{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{padding:15px 24px;font-size:calc(11px * var(--font-scale));line-height:1.7;color:var(--theme-muted,#718264);border-top:1px solid var(--theme-line,#e6ebde);background:var(--theme-soft,#fcfdf9)}.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-gap,.week-journey-title,.week-journey>p,.week-journey>small,.week-lesson-location,.week-route-link{font-size:calc(11px * var(--font-scale))}}@media(max-width:800px){.tutor-week-header{align-items:flex-start;flex-wrap:wrap;padding:20px}.calendar-tutor-picker{min-width:0;width:100%;max-width:none}.tutor-week-header h2{font-size:calc(24px * var(--font-scale))}.tutor-week-toolbar{padding:0 20px 17px;gap:14px}.tutor-week-navigation{gap:3px;justify-content:flex-start}.tutor-week-navigation h3{font-size:calc(12px * var(--font-scale));min-width:165px}.tutor-week-navigation>.btn{margin-left:3px}.tutor-week-summary{padding:13px 20px;gap:12px}.tutor-week-summary label{margin-left:0;width:100%}.week-attention{padding:13px 20px}.tutor-week-grid{grid-template-columns:1fr;min-width:0}.tutor-week-day{min-height:0;border-right:0;border-bottom:1px solid var(--theme-line,#e5eadc)}.tutor-week-day>header{min-height:0;padding:10px 18px;gap:10px}.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{padding:14px 18px 20px;gap:11px}.week-lesson{padding:14px}.week-lesson>strong{font-size:calc(16px * var(--font-scale))}.week-lesson-subject,.week-lesson-time{font-size:calc(12px * var(--font-scale))}.week-continuation,.week-lesson-location,.week-lesson-status{font-size:calc(11px * var(--font-scale))}.week-journey{padding:13px 14px}.week-journey-title{font-size:calc(12px * var(--font-scale))}.week-gap,.week-journey>p,.week-journey>small,.week-route-link{font-size:calc(11px * var(--font-scale))}.week-day-empty{padding:0;text-align:left}.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{width:100%;justify-content:space-between}.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{width:100%;display:flex;justify-content:space-between;align-items:center;gap:4px;padding:8px 6px;background:var(--theme-soft,#e7efdd);border:1px solid var(--theme-line,#d6e3c8);border-top:0;border-radius:0 0 7px 7px;color:var(--theme-text,#536e42);font-size:calc(10px * var(--font-scale));cursor:grab;touch-action:manipulation}.week-move-button:active{cursor:grabbing}.week-move-button:hover{background:var(--theme-hover,#dae8cb)}.week-move-button>span{flex:1 1;text-align:left}.week-drag-hint{display:flex;align-items:flex-start;gap:8px;padding:12px 24px;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);line-height:1.7}.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;padding:10px 6px;border-bottom:1px dashed var(--theme-line,#bbcea8)}.reschedule-dialog{width:min(800px,calc(100vw - 32px))}.move-original{display:flex;gap:10px;padding:15px 17px;background:var(--theme-soft,#f4f7ed);border:1px solid var(--theme-line,#e2e9d9);border-radius:8px;font-size:calc(12px * var(--font-scale));line-height:1.8;margin-bottom:23px;color:var(--theme-muted,#617852)}.move-original svg{margin-top:4px}.move-original b{font-weight:500;color:var(--theme-text,#3e5b36)}.move-scope{border:0;padding:0;margin:22px 0}.move-scope legend{font-weight:600;font-size:calc(13px * var(--font-scale));margin-bottom:11px}.move-scope label{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--theme-line,#dde5d4);border-radius:8px;padding:14px;margin:9px 0;cursor:pointer}.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);margin:5px 0 0;width:15px;height:15px;flex-shrink:0}.move-scope b{display:block;font-size:calc(13px * var(--font-scale));font-weight:600}.move-scope small{display:block;font-size:calc(12px * var(--font-scale));line-height:1.6;margin-top:4px;color:var(--theme-muted,#7d8b70)}.move-explanation{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#7e8b72);line-height:1.8;margin:16px 0}.move-review{margin:25px 0}.move-review h3{font-size:calc(15px * var(--font-scale));margin-bottom:12px}.move-rows{max-height:300px;overflow:auto;border:1px solid var(--theme-line,#e3e8dd);border-radius:8px}.move-row{padding:14px 16px;border-bottom:1px solid var(--theme-line,#e5eadf);font-size:calc(12px * var(--font-scale))}.move-row:last-child{border-bottom:0}.move-row>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.move-row>div>span{color:var(--theme-muted,#7b8772)}.move-row strong{font-weight:600;color:var(--theme-text,#456337)}.move-row>small{display:block;font-size:calc(11px * var(--font-scale));margin-top:6px;color:var(--theme-muted,#70865f)}.move-row ul{padding-left:18px;margin:8px 0 0;line-height:1.7;color:var(--theme-warning-text,#a06132)}.move-row-conflict{background:var(--theme-warning-surface,#fff8ee)}.move-row-conflict strong{color:var(--theme-warning-text,#9d6032)}.move-ready{display:flex;align-items:flex-start;gap:8px;padding:13px;background:var(--theme-success-surface,#edf5e4);border:1px solid var(--theme-success-line,#dce8ce);border-radius:8px;color:var(--theme-success-text,#527044);font-size:calc(12px * var(--font-scale));line-height:1.7}.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{display:grid;grid-template-columns:1fr auto}.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;padding:0;margin:0;min-width:0}.subject-select{position:relative;align-self:start;gap:7px}.subject-select>label{cursor:pointer}.subject-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;border:1px solid var(--theme-control-line,#dfe6d5);border-radius:6px;padding:11px;min-height:43px;width:100%;font-size:calc(14px * var(--font-scale));color:var(--theme-text,#4e6840);background:var(--theme-input,#fff)}.subject-trigger.is-open,.subject-trigger:hover{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{position:absolute;width:1px;height:1px;min-height:0;padding:0;border:0;opacity:0;pointer-events:none;top:30px;left:0}.subject-chips{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:1px 0 0;padding:0}.subject-chips li{display:flex;align-items:center;gap:4px;max-width:100%;background:var(--theme-soft,#edf3e4);border:1px solid var(--theme-line,#dce6d1);border-radius:6px;padding:3px 4px 3px 9px;font-size:calc(12px * var(--font-scale));color:var(--theme-text,#49643b)}.subject-chips li>span{overflow-wrap:anywhere;min-width:0}.subject-chips button{display:grid;place-items:center;min-width:26px;min-height:26px;border-radius:4px;flex-shrink:0}.subject-chips button:hover{background:var(--theme-hover,#d9e7cb);color:var(--theme-text,#2c492b)}.subject-menu{border:1px solid var(--theme-control-line,#cbd9bd);border-radius:9px;box-shadow:0 5px 18px var(--theme-shadow,#2a493214);background:var(--theme-surface,#fff);overflow:hidden;margin-top:2px}.subject-search{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--theme-line,#e3e9dc);color:var(--theme-muted,#7b916b)}.subject-search>svg{flex-shrink:0}.subject-search input{border:0;padding:0;min-height:28px;border-radius:0;font-size:calc(13px * var(--font-scale));box-shadow:none;outline-offset:4px}.subject-options{max-height:240px;overflow-y:auto;overscroll-behavior:contain;padding:5px 7px}.subject-options fieldset{border:0;margin:0;padding:0;min-width:0}.subject-options legend{float:left;width:100%;padding:12px 7px 6px;font-size:calc(10px * var(--font-scale));font-weight:650;text-transform:uppercase;letter-spacing:.6px;color:var(--theme-text,#8a967c);overflow-wrap:anywhere}.subject-option{clear:both;display:flex;align-items:center;gap:9px;min-height:38px;padding:7px;border-radius:5px;cursor:pointer;font-size:calc(13px * var(--font-scale));color:var(--theme-text,#506946);line-height:1.5}.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;margin:0;padding:0;flex-shrink:0;accent-color:var(--theme-focus,#426337)}.subject-option>span{overflow-wrap:anywhere;min-width:0}.subject-menu-footer{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;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)}.subject-menu-footer button{display:flex;align-items:center;gap:5px;color:var(--theme-text,#365c35);font-weight:600;min-height:30px;padding:4px 7px}.subject-add{display:flex;align-items:center;gap:6px;text-align:left;padding:12px 14px;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)}.subject-add>span{min-width:0;overflow-wrap:anywhere}.subject-add>svg{flex-shrink:0}.subject-add:hover{background:var(--theme-hover,#eff5e7)}.subject-no-results{padding:18px 10px;color:var(--theme-muted,#7c8d6c)}.subject-error,.subject-no-results{font-size:calc(12px * var(--font-scale));line-height:1.6}.subject-error{color:var(--theme-danger-text,#a94e35)}.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{margin:4px 0 22px;padding:19px;border:1px solid var(--theme-line,#e0e7d6);border-radius:9px;background:var(--theme-soft,#f8faf4)}.lesson-recurrence h3{display:flex;align-items:center;gap:8px;font-size:calc(14px * var(--font-scale));margin-bottom:17px}.lesson-recurrence>.field{max-width:280px}.repeat-interval{display:flex;align-items:center;gap:10px}.repeat-interval input{max-width:95px}.repeat-interval>span{color:var(--theme-muted,#6d805e)}.recurrence-hint,.repeat-interval>span{font-size:calc(12px * var(--font-scale))}.recurrence-hint{display:flex;align-items:flex-start;gap:8px;line-height:1.7;color:var(--theme-muted,#728564);margin:0 0 12px}.recurrence-existing>svg,.recurrence-hint>svg{flex-shrink:0;margin-top:3px}.recurrence-base-check{border-top:1px solid var(--theme-line,#e0e6d7);padding-top:17px;margin-top:18px}.recurrence-base-check .field{margin-bottom:12px}.recurrence-base-check input{max-width:140px}.recurrence-existing{display:flex;align-items:flex-start;gap:9px;padding:14px;background:var(--theme-soft,#f3f7ec);border-radius:8px;margin:0 0 23px;font-size:calc(12px * var(--font-scale));line-height:1.7;color:var(--theme-muted,#637a54)}.recurring-lesson-review{border-top:1px solid var(--theme-line,#dfe7d6);padding-top:22px;margin-top:24px}.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));line-height:1.7;color:var(--theme-muted,#6d815e);margin:10px 0 18px}.recurrence-rows{max-height:300px;overflow:auto;border:1px solid var(--theme-line,#e2e8d9);border-radius:8px;margin-top:16px}.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{position:sticky;top:0;background:var(--theme-raised,#f5f8ef)}.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{padding:10px;font-size:calc(11px * var(--font-scale))}}.series-editor{width:min(850px,calc(100vw - 32px))}.series-operation{display:flex;gap:8px;background:var(--theme-soft,#f4f6ee);padding:5px;border-radius:9px}.series-operation button{flex:1 1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--theme-text,#617352);font-size:calc(13px * var(--font-scale));cursor:pointer}.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{padding:0;border:0;margin:24px 0 0;min-width:0}.series-edit-hint{font-size:calc(12px * var(--font-scale));line-height:1.8;color:var(--theme-muted,#6c7f5c);margin:0 0 20px}.series-cancel-note{background:var(--theme-warning-surface,#fcf4ed);border:1px solid var(--theme-warning-line,#ecd9c9);border-radius:8px;color:var(--theme-warning-text,#865839);font-size:calc(13px * var(--font-scale));line-height:1.8;padding:16px}.series-cancel-label{margin-left:auto;color:var(--theme-warning-text,#98633f);font-size:calc(11px * var(--font-scale));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{margin:9px 0 0;font-size:calc(12px * var(--font-scale))}.series-changes>div{display:grid;grid-template-columns:95px minmax(0,1fr);gap:10px;padding:5px 0}.series-changes dt{color:var(--theme-muted,#738365)}.series-changes dd{margin:0;overflow-wrap:anywhere;line-height:1.7}.series-changes dd>span{color:var(--theme-muted,#8b947f)}.series-changes dd>b{font-weight:400;color:var(--theme-muted,#80956f)}.series-editor .form-error{line-height:1.8}.series-editor .dialog-footer .btn{white-space:normal}.series-editor input[type=date],.series-editor input[type=datetime-local]{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-actions,.backup-panel h2,.backup-row-actions{display:flex;align-items:center;gap:10px}.backup-actions,.backup-row-actions{flex-wrap:wrap}.backup-empty,.backup-note,.backup-scope{line-height:1.65;color:var(--theme-text,#626e67);margin:14px 0}.backup-scope{font-size:calc(13px * var(--font-scale))}.backup-list{margin:20px 0 12px}.backup-point{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--theme-line,#e7ebe5);padding:16px 0}.backup-point span,.backup-point strong{display:block}.backup-point>div>span{font-size:calc(13px * var(--font-scale));color:var(--theme-text,#69756c);margin-top:5px}.backup-error,.backup-success,.backup-warning{padding:12px 15px;border-radius:10px;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,calc(100vw - 24px));max-height:90dvh;overflow:auto}.backup-review{padding:20px 28px}.backup-review p{line-height:1.65}.backup-confirm{display:flex;gap:12px;align-items:flex-start;padding:15px;border:1px solid var(--theme-line,#d4dfd1);border-radius:10px;line-height:1.6}.backup-confirm input{margin-top:5px;min-width:18px;min-height:18px}.backup-row-actions a{white-space:nowrap}@media(max-width:650px){.backup-panel{padding:20px}.backup-point{align-items:flex-start;flex-direction:column}.backup-review{padding:16px}.backup-row-actions{width:100%}.backup-row-actions .btn{flex:1 1;justify-content:center}}.communication-card{padding:26px;min-width:0;align-self:start}.communication-card h3{display:flex;align-items:center;gap:9px}.communication-card>p{font-size:calc(14px * var(--font-scale));line-height:1.6;color:var(--theme-text,#5b6c62);margin:14px 0}.communication-card .settings-line strong{overflow-wrap:anywhere;text-align:right}.communication-card .btn{white-space:normal}.connection-status{display:flex;align-items:center;gap:9px;font-size:calc(14px * var(--font-scale));font-weight:600;margin:18px 0}.connection-dot{width:9px;height:9px;border-radius:50%;background:var(--theme-warning-text,#c4a56c);flex-shrink:0}.connection-dot.ready{background:var(--theme-success-text,#3e8160)}.connection-message{color:var(--theme-success-text,#286144)!important;background:var(--theme-success-surface,#eff7f0);border-radius:8px;padding:10px 12px}.connection-help{margin-top:18px;font-size:calc(13px * var(--font-scale));color:var(--theme-text,#53665a);line-height:1.7}.connection-help summary{cursor:pointer;color:var(--theme-accent-text,#2b5843);font-weight:600}.connection-help ul{padding-left:20px;margin:12px 0}.communication-card a:not(.btn),.connection-help a{text-decoration:underline;text-underline-offset:3px}.connection-confirm{background:var(--theme-warning-surface,#f8f4eb);padding:14px;border-radius:10px;font-size:calc(14px * var(--font-scale))}.connection-confirm .settings-buttons{margin:12px 0 0}.calendar-link{background:var(--theme-soft,#f4f8f3);padding:14px;border-radius:10px;display:flex;gap:8px;flex-wrap:wrap}.calendar-link .field,.calendar-link>small{width:100%}.calendar-link input{font-size:calc(12px * var(--font-scale))}.delivery-history small{display:block;overflow-wrap:anywhere}.delivery-history li{margin:12px 0}.address-field{position:relative}.address-field>label{font-size:calc(13px * var(--font-scale));font-weight:600;color:var(--theme-text,#405448);display:block;margin-bottom:7px}.address-combobox{position:relative;min-width:0}.address-combobox>input{width:100%;min-width:0}.address-results{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;background:var(--theme-surface,#fff);border:1px solid var(--theme-control-line,#d6e2d8);border-radius:10px;box-shadow:0 9px 24px var(--theme-shadow,#203a2b20);overflow:hidden}.address-results ul{list-style:none;margin:0;padding:4px;max-height:235px;overflow-y:auto}.address-results li{display:flex;align-items:flex-start;gap:9px;border-radius:6px;padding:11px 9px;font-size:calc(13px * var(--font-scale));line-height:1.5;cursor:pointer;color:var(--theme-text,#254334)}.address-results li svg{flex-shrink:0;margin-top:2px}.address-results li[aria-selected=true]{background:var(--theme-selected,#eaf3e8)}.address-results>small{display:block;font-size:calc(10px * var(--font-scale));padding:7px 12px;background:var(--theme-soft,#f7f9f6);border-top:1px solid var(--theme-line,#e4ebe2)}.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{display:block;margin-top:3px;font-size:calc(11px * var(--font-scale));line-height:1.5;color:var(--theme-warning-text,#75603d)}.form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.field{gap:7px}.field>label{margin-bottom:0}.field .subject-trigger,.field input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not(.subject-validation),.field select{box-sizing:border-box;height:44px;min-height:44px;line-height:1.4;padding:10px 12px}.field select{appearance:none;-webkit-appearance:none;padding-right:36px;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-repeat:no-repeat;background-position:right 12px center;background-size:16px}.field .subject-trigger{display:flex;align-items:center}.form-grid>.field>label,.form-grid>.field>span,.form-grid>.lesson-due-date>.field>span{min-height:20px;display:flex;align-items:center;gap:3px;font-size:calc(12px * var(--font-scale));font-weight:500;line-height:1.5}.field .subject-search input{height:28px;min-height:28px;padding:0}.field textarea{min-height:100px}.lesson-addresses{padding:20px;margin-bottom:24px;border:1px solid var(--theme-line,#e0e8d9);border-radius:12px;background:var(--theme-soft,#fafcf7)}.lesson-addresses h3{display:flex;align-items:center;gap:8px;font-size:calc(15px * var(--font-scale));color:var(--theme-text,#34533f)}.lesson-addresses>p{font-size:calc(12px * var(--font-scale));line-height:1.65;color:var(--theme-muted,#6d7f62);margin:10px 0 18px}.lesson-addresses>.field:last-child{margin-bottom:0}.record-save-footer{display:block;z-index:40}.record-save-footer .form-error{margin:0 0 12px;max-height:130px;overflow:auto}.record-save-footer .form-error svg{flex-shrink:0;margin-top:2px}.dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}@media(max-width:600px){.form-grid{grid-template-columns:1fr}.lesson-addresses{padding:16px}.form-grid>.field>label,.form-grid>.field>span{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 1}.connection-confirm .settings-buttons{flex-wrap:wrap}.address-results li{padding:12px 8px}}.automatic-drive{padding:18px;border:1px solid var(--theme-line,#dbe4d1);border-radius:12px;background:var(--theme-soft,#f7f9f2);margin-top:20px}.automatic-drive-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.automatic-drive-heading h3{display:flex;align-items:center;gap:8px;margin:0}.automatic-drive-heading>span{font-size:calc(12px * var(--font-scale));color:var(--theme-muted,#6b7b5c);white-space:nowrap}.base-drive-route{display:grid;gap:12px;margin:0 0 18px;font-size:calc(13px * var(--font-scale));line-height:1.65}.base-drive-route dt{color:var(--theme-muted);font-size:calc(12px * var(--font-scale))}.base-drive-route dd{margin:2px 0 0;overflow-wrap:anywhere}.journey-card dd small{display:block;color:var(--theme-muted);margin-top:4px;line-height:1.6}.lesson-conflicts{margin:22px 0;padding:18px;border:1px solid var(--theme-warning-line,#bf9463);border-radius:10px;background:var(--theme-warning-surface,#fcfaf5);font-size:calc(13px * var(--font-scale));line-height:1.65}.lesson-conflicts h3{display:flex;align-items:center;gap:8px;margin:0;font-size:calc(15px * var(--font-scale))}.lesson-conflicts p{margin:12px 0}.lesson-conflicts div{display:grid;gap:4px;margin:14px 0;overflow-wrap:anywhere}.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{margin-bottom:0;align-items:start}.automatic-drive-result{display:flex;align-items:center;gap:10px;min-height:44px;margin-top:28px;color:var(--theme-text,#36583f)}.automatic-drive-result small,.automatic-drive-result strong{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));margin-top:3px;color:var(--theme-muted,#6b7b5c)}.automatic-drive .drive-error,.automatic-drive .drive-explanation{font-size:calc(13px * var(--font-scale));line-height:1.6;margin:12px 0}.automatic-drive .drive-error{color:var(--theme-danger-text,#8b4d2b)}.drive-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.drive-actions .btn{min-height:36px}.drive-attribution{display:block;margin-top:12px;font-size:calc(10px * var(--font-scale));color:var(--theme-muted,#6b7b5c)}.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{display:flex;align-items:flex-start;gap:8px}.journey-result>svg{flex-shrink:0;margin-top:2px}.journey-result small{display:block;font-weight:400;margin-top:5px}.journey-estimate-status{display:flex;gap:7px;align-items:flex-start;font-size:calc(12px * var(--font-scale));line-height:1.65;color:var(--theme-text,#526d45);margin:12px 0}.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));line-height:1.65;color:var(--theme-danger-text,#8b4d2b)}.next-lesson-time{margin:20px 0;padding:18px;border:1px solid var(--theme-line,#ccdcb9);border-radius:9px;background:var(--theme-soft,#f4f8ec);color:var(--theme-text,#47623b);overflow-wrap:anywhere}.next-lesson-time h3{display:flex;align-items:center;gap:8px;font-size:calc(14px * var(--font-scale));margin:0 0 14px}.next-lesson-time h3 svg{flex-shrink:0}.next-lesson-time .suggested-time{display:block;font-size:calc(19px * var(--font-scale));font-weight:600;line-height:1.5;color:var(--theme-text,#294f3e)}.next-lesson-time p{font-size:calc(12px * var(--font-scale));line-height:1.7;margin:8px 0}.next-lesson-time small{display:block;font-size:calc(11px * var(--font-scale));line-height:1.7;color:var(--theme-muted,#6d7f60);margin:10px 0 14px}.next-lesson-time .btn{min-height:44px;justify-content:center;white-space:normal}@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;padding:0;margin:0 0 17px}.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]{height:44px;min-height:44px;width:100%;min-width:0;box-sizing:border-box}.search-weekends{display:flex;align-items:center;gap:8px;font-size:calc(11px * var(--font-scale));min-height:32px;margin-top:8px}.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));line-height:1.6;padding:12px 14px;border:1px solid var(--theme-line,#e0e7d6);border-radius:8px;background:var(--theme-raised,#fff);color:var(--theme-text,#293f35);margin:0 0 16px}.lesson-conflicts .conflict-actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 18px;align-items:center}.conflict-actions .btn{min-height:42px;flex:1 1;white-space:normal}.draft-preserved-note{margin:0 0 22px;padding:14px 16px;border:1px solid var(--theme-accent-line,#d5e2bd);border-radius:8px;background:var(--theme-soft,#f5f7ef);color:var(--theme-text,#48623b);font-size:calc(13px * var(--font-scale));line-height:1.7}.conflict-booking-summary{display:grid;gap:7px;margin-bottom:22px;font-size:calc(14px * var(--font-scale));overflow-wrap:anywhere}.conflict-cancel-dialog .series-cancel-note{margin-bottom:22px}.conflict-cancel-dialog .dialog-footer{flex-wrap:wrap}.conflict-cancel-dialog .dialog-footer .btn{min-height:44px;white-space:normal}@media(max-width:480px){.conflict-actions .btn{flex-basis:100%}.conflict-cancel-dialog .dialog-footer .btn{flex:1 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{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 22px;border-bottom:1px solid var(--theme-line);font-size:calc(12px * var(--font-scale));color:var(--theme-muted)}.payment-history-tools p{margin:0;line-height:1.65}.payment-history-tools label{display:flex;align-items:center;gap:8px;white-space:nowrap;min-height:32px}.payment-history-tools input{width:16px;height:16px;accent-color:var(--theme-focus)}.payment-actions{display:flex;align-items:center;gap:8px}.payment-actions .btn{min-height:38px}.payment-delete{color:var(--theme-danger-text,#914e38)}.payment-record-summary{display:grid;gap:7px;padding:18px;margin-bottom:24px;background:var(--theme-soft);border:1px solid var(--theme-line);border-radius:10px;line-height:1.6;font-size:calc(13px * var(--font-scale));overflow-wrap:anywhere}.family-receipt-action{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--theme-line);font-size:calc(12px * var(--font-scale));color:var(--theme-muted)}.family-receipt-action p{margin:0;line-height:1.7}.family-receipt-action .btn{flex-shrink:0}.family-receipt-editor .receipt-intro{margin:0 0 24px;line-height:1.8;color:var(--theme-muted)}.receipt-preview{margin-top:24px;border:1px solid var(--theme-accent-line);border-radius:10px;overflow:hidden;background:var(--theme-soft)}.receipt-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px}.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{min-width:530px;width:100%}.receipt-preview td,.receipt-preview th{padding:14px;font-size:calc(12px * var(--font-scale))}.receipt-preview th:first-child{width:43%}.receipt-preview td small{line-height:1.7}.receipt-preview-total{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;border-top:1px solid var(--theme-line);font-size:calc(13px * var(--font-scale))}.receipt-history-details{margin-top:8px;white-space:normal}.receipt-history-details summary{cursor:pointer;color:var(--theme-accent-text);padding:5px 0;font-size:calc(12px * var(--font-scale))}.receipt-allocation-list{display:grid;gap:0;margin:12px 0 22px;font-size:calc(12px * var(--font-scale));line-height:1.6}.receipt-allocation-list>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--theme-line)}.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{align-items:flex-start;flex-direction:column}.family-receipt-editor .dialog-body{padding:20px}.receipt-preview-heading{padding:16px;align-items:flex-start}.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;padding:0;margin:0;min-width:0}.payment-editor .dialog-body>p{font-size:calc(13px * var(--font-scale));line-height:1.7;margin:18px 0}.payment-editor .dialog-footer .btn{min-height:44px}.payment-editor[open]{display:flex;flex-direction:column;overflow:hidden}.payment-editor>form{display:flex;flex-direction:column;min-height:0}.payment-editor .dialog-footer,.payment-editor .dialog-header{flex-shrink:0}.payment-editor .dialog-body{overflow-y:auto;min-height:0}.payment-editor .dialog-footer{position:static}.receipt-reference{grid-column:1/-1}@media(max-width:600px){.payment-history-tools{align-items:flex-start;flex-direction:column;gap:8px}.payment-actions{flex-direction:column;align-items:stretch}.payment-editor .dialog-footer{flex-wrap:wrap}.payment-editor .dialog-footer .btn{flex:1 1}}.administrator-access{margin:24px 0}.admin-eyebrow{gap:7px;color:var(--theme-accent-text);font-size:calc(11px * var(--font-scale));text-transform:uppercase;letter-spacing:1.2px;margin-bottom:9px}.admin-eyebrow,.admin-owner{display:flex;align-items:center}.admin-owner{gap:14px;padding:17px 20px;border:1px solid var(--line);border-radius:10px;background:var(--theme-soft);margin:4px 0 25px}.admin-owner>div{flex:1 1;min-width:0}.admin-owner span:not(.badge),.admin-owner strong{display:block}.admin-owner div>span{font-size:calc(12px * var(--font-scale));color:var(--theme-muted);margin-top:4px;overflow-wrap:anywhere}.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);line-height:1.8;max-width:850px}.admin-invite-form{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;margin:20px 0 10px;align-items:end}.admin-invite-form>.btn{grid-column:1/-1;justify-self:start}.admin-invite-form .field{margin:0}.admin-share{display:grid;grid-template-columns:1fr auto;gap:12px 15px;align-items:end;background:var(--theme-soft);padding:20px;border:1px solid var(--line);border-radius:10px;margin:24px 0}.admin-share .field{margin:0}.admin-share p{grid-column:1/-1}.admin-share>.btn{min-height:44px}.admin-account{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 0;border-top:1px solid var(--line)}.admin-account>div{min-width:0}.admin-account strong{font-size:calc(14px * var(--font-scale))}.admin-account .table-sub{display:block;overflow-wrap:anywhere;line-height:1.7;margin-top:4px}.admin-account .badge{margin-top:9px}.admin-account-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.admin-account-actions>p{flex-basis:100%;font-size:calc(12px * var(--font-scale))}.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{align-items:flex-start;flex-direction:column}.admin-account-actions{justify-content:flex-start}.administrator-access .section-head{align-items:flex-start;flex-wrap:wrap}.admin-share>.btn{justify-self:start}.admin-owner{padding:15px 12px;gap:9px}}.backup-health{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px;margin:18px 0;border:1px solid var(--theme-line,#d4dfd1);border-radius:12px;background:var(--theme-soft,#f4f6ef)}.backup-health strong{color:var(--theme-text,#233c31)}.backup-health p{font-size:calc(13px * var(--font-scale));line-height:1.7;color:var(--theme-text,#626e67);margin:6px 0 0;max-width:730px}.backup-health>.btn{flex-shrink:0}@media(max-width:700px){.backup-health{align-items:flex-start;flex-direction:column;gap:14px;padding:16px}}.payee-select{position:relative}.payee-select>label{color:var(--theme-muted,#687b58)}.payee-control{position:relative}.payee-toggle{position:absolute;inset:0 0 auto auto;width:42px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:var(--theme-text,#4e6840)}.payee-toggle:hover{background:var(--theme-hover,#f1f5eb)}.payee-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.payee-menu{position:absolute;z-index:12;top:calc(100% + 6px);left:0;right:0;background:var(--theme-surface,#fff);border:1px solid var(--theme-control-line,#dfe6d5);border-radius:8px;box-shadow:0 12px 28px #0002;overflow:hidden}.payee-options{max-height:220px;overflow:auto;overscroll-behavior:contain;padding:5px}.payee-options:empty{padding:0}.payee-option{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:40px;padding:10px;text-align:left;border-radius:5px;font-size:calc(13px * var(--font-scale));line-height:1.5;color:var(--theme-text,#25382f)}.payee-option>span{min-width:0;overflow-wrap:anywhere}.payee-option.is-active,.payee-option:hover{background:var(--theme-selected,#edf4e3);color:var(--theme-accent-text,#345c2f)}.payee-option.is-new{font-weight:500}.payee-empty,.payee-menu-hint{padding:12px 14px;font-size:calc(11px * var(--font-scale));line-height:1.6;color:var(--theme-muted,#687b58)}.payee-menu-hint{border-top:1px solid var(--theme-line,#e8eae3);background:var(--theme-soft,#f7f8f4)}.tutor-status-badges{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.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{display:flex;align-items:center;gap:8px;font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#728267)}.tutor-status-date input{padding:8px 10px;border:1px solid var(--theme-control-line,#dce4d2);border-radius:6px;background:var(--theme-input,#fff);color:var(--theme-text,#253a30);font:inherit;min-height:36px}.tutor-status-help{line-height:1.6;margin:0 0 20px}.archived-tutor-note,.tutor-status-help{font-size:calc(11px * var(--font-scale));color:var(--theme-muted,#728267)}.archived-tutor-note{margin:6px 0}.tutor-review-button{margin:10px 0 14px}.archive-checklist,.feedback-empty{padding:16px;border:1px solid var(--theme-line,#dce4d2);border-radius:10px;background:var(--theme-soft,#f4f5ef);font-size:calc(12px * var(--font-scale));line-height:1.7}.tutor-archive-dialog .dialog-body>p{font-size:calc(13px * var(--font-scale));line-height:1.7;margin:0 0 16px}.archive-checklist h3{font-size:calc(14px * var(--font-scale));margin-bottom:8px}.archive-checklist ul{padding-left:20px;margin:12px 0}.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{font-style:normal;color:var(--theme-muted,#728267)}.app-shell .page-title-with-count{display:flex;align-items:baseline;flex-wrap:wrap;gap:.18em .35em}.app-shell .page-title-count-group{display:inline-flex;align-items:baseline;gap:.35em;max-width:100%;min-width:0}.app-shell .page-active-count{font:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;padding:0;border:0;background:none;white-space:normal}.app-shell .page-title-separator{font:inherit;line-height:inherit;align-self:center}