:root{--bg:#f5f6f9;--surface:#fff;--ink:#1b2635;--muted:#758094;--line:#e8ebf1;--wine:#982741;--wine-dark:#7b1e34;--wine-soft:#faedf1;--nav:#202c3b;--green:#2b835d;--radius:18px;--shadow:0 6px 24px #202c3b05}.recovery-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px;display:grid}.recovery-grid code{word-break:break-all;font-size:12px}.mfa-secret{word-break:break-all}.file-list{margin-bottom:24px}.file-item{border-bottom:1px solid var(--line);color:var(--wine);align-items:center;gap:12px;padding:15px 0;display:flex}.file-item>span{flex:1;min-width:0}.file-item strong{overflow-wrap:anywhere;font-size:14px;display:block}.file-item small{color:var(--muted);font-size:12px}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;font-size:16px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em;line-height:1.22}button,input,select,textarea{border-radius:10px}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #dfe3eb;outline:none;min-height:46px;padding:12px 14px}textarea{resize:vertical;min-height:100px}input:focus,select:focus,textarea:focus{border-color:var(--wine);box-shadow:0 0 0 3px #98274116}:focus-visible{outline-offset:3px;outline:3px solid #487fb7}label{flex-direction:column;gap:8px;font-size:14px;font-weight:600;display:flex}form{gap:20px;display:grid}.muted{color:var(--muted)}.eyebrow{letter-spacing:.15em;font-size:12px;font-weight:700}.button{border:1px solid var(--line);color:var(--ink);background:#fff;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:11px 18px;font-size:14px;font-weight:600;transition:background .16s,transform .16s;display:inline-flex}.button:hover{background:#f0f2f6}.button.primary{background:var(--wine);color:#fff;border-color:var(--wine);box-shadow:0 4px 8px #98274116}.button.primary:hover{background:var(--wine-dark)}.button:active{transform:translateY(1px)}.button.full{width:100%}.icon-button{min-width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.error{color:#ae3528;background:#fff0ee;border:1px solid #f6d1cc;border-radius:10px;padding:12px 14px;font-size:14px}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading{color:var(--muted);justify-content:center;align-items:center;gap:12px;padding:40px;display:flex}.login-layout{grid-template-columns:1fr 1fr;min-height:100dvh;display:grid}.login-brand{color:#fff;background:radial-gradient(at 0 100%,#573648 0,#0000 55%),linear-gradient(135deg,#202c3b,#172333);flex-direction:column;padding:52px 64px;display:flex;position:relative;overflow:hidden}.brand-line{letter-spacing:.06em;align-items:center;gap:18px;font-size:23px;font-weight:700;display:flex}.brand-line img{border-radius:50%;width:72px;height:72px}.brand-sub{color:#a7b3c4;letter-spacing:.04em;margin-top:4px;font-size:12px;font-weight:400;display:block}.login-statement{margin:auto 0;padding:70px 0}.login-statement .eyebrow{color:#ceb5bf}.login-statement h1{margin:25px 0;font-size:clamp(42px,4.5vw,68px);line-height:1.12}.login-statement h1 span{color:#deb7c4}.login-statement>p{color:#b6c0cf;max-width:360px;font-size:18px;line-height:1.7}.brand-features{flex-wrap:wrap;gap:24px;margin-top:44px;display:flex}.brand-features span{color:#d6dde7;align-items:center;gap:10px;font-size:14px;display:flex}.brand-footer{color:#99a6b8;justify-content:space-between;font-size:12px;display:flex}.login-side{background:#fcfcfd;justify-content:center;align-items:center;padding:56px;display:flex;position:relative}.login-card{width:100%;max-width:390px}.login-card>.eyebrow{color:var(--wine);margin-bottom:18px}.login-card h2{margin-bottom:14px;font-size:34px}.login-card>.muted{margin-bottom:32px;font-size:15px}.password-input{position:relative}.password-input input{padding-right:50px}.password-input button{position:absolute;top:2px;right:2px}.login-help{color:var(--muted);border-top:1px solid var(--line);gap:10px;margin-top:26px;padding-top:25px;font-size:13px;display:flex}.login-help svg{flex-shrink:0}.login-copyright{color:#939dab;font-size:12px;position:absolute;bottom:24px}.local-note{color:#949cad;margin-top:20px;font-size:12px}.welcome-panel{text-align:center;max-width:700px;margin:15vh auto;padding:30px}.welcome-panel img{border-radius:50%;margin-bottom:24px}@media (max-width:800px){.login-layout{grid-template-columns:1fr}.login-brand{min-height:210px;padding:24px}.brand-line{font-size:19px}.brand-line img{width:52px;height:52px}.login-statement{padding:22px 0 0}.login-statement h1{margin:0;font-size:32px}.login-statement h1 br{display:none}.login-statement h1 span{margin-left:8px}.login-statement>.eyebrow,.login-statement>p,.brand-features,.brand-footer{display:none}.login-side{padding:36px 24px 65px}.login-card{max-width:450px}.login-card h2{font-size:28px}.login-copyright{bottom:14px}}.report-period-picker{border:1px solid var(--border,#dfe8e3);background:var(--surface,#ffffffb5);border-radius:18px;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 24px;padding:16px 20px;display:flex}.report-period-picker input,.report-period-picker select{border:1px solid var(--border,#dfe8e3);background:var(--surface,#fff);width:auto;min-width:120px;max-width:100%;color:inherit;font:inherit;border-radius:10px;padding:9px 12px}.report-period-picker small{opacity:.65;margin-left:auto}@media (max-width:600px){.report-period-picker{gap:8px;padding:12px}.report-period-picker small{width:100%;margin:0}.report-period-picker input{flex:1;min-width:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.billing-roster-pause{color:#476681;background:#edf4fb;border-radius:9px;flex-basis:100%;justify-content:space-between;align-items:center;gap:12px;padding:12px;font-size:12px;display:flex}.billing-roster-pause .text-button{flex-shrink:0;min-height:44px}.parent-tuition-heading{justify-content:space-between;align-items:center;gap:12px;margin:30px 0 17px;display:flex}.parent-tuition-heading h2{margin:0;font-size:21px}.parent-tuition-heading>span{color:#637185;font-size:12px}.parent-tuition-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.parent-tuition-card{padding:24px}.parent-tuition-top{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.parent-tuition-top>div{flex:1;min-width:100px}.parent-tuition-top h3{overflow-wrap:anywhere;margin:0 0 5px;font-size:19px}.parent-tuition-top small{color:#637185;font-size:12px}.parent-tuition-top .course-icon{flex-shrink:0;width:47px;height:47px}.parent-tuition-days{background:#f7f0f3;border-radius:15px;align-items:center;gap:15px;margin:23px 0;padding:18px;display:flex}.parent-tuition-days strong{letter-spacing:-.06em;color:var(--wine);font-size:42px;line-height:1}.parent-tuition-days>span{color:#795362;font-size:13px}.parent-tuition-dates{margin:0 0 18px}.parent-tuition-dates>div{justify-content:space-between;gap:12px;padding:7px 0;display:flex}.parent-tuition-dates dt{color:#637185;font-size:12px}.parent-tuition-dates dd{text-align:right;margin:0;font-size:12px;font-weight:600}.parent-tuition-money{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:14px;padding-top:18px;display:grid}.parent-tuition-money>div{flex-direction:column;gap:8px;min-width:0;display:flex}.parent-tuition-money span{color:#637185;font-size:11px}.parent-tuition-money strong{overflow-wrap:anywhere;font-size:21px}.parent-tuition-pause{color:#426784;background:#edf4fb;border-radius:12px;gap:10px;margin-top:20px;padding:15px;display:flex}.parent-tuition-pause>svg{flex-shrink:0}.parent-tuition-pause strong,.parent-tuition-pause span,.parent-tuition-pause small{display:block}.parent-tuition-pause strong{font-size:13px}.parent-tuition-pause span{margin:5px 0;font-size:12px}.parent-tuition-pause small{font-size:11px;line-height:1.6}.parent-tuition-refunds{border-top:1px solid var(--line);flex-direction:column;gap:6px;margin-top:15px;padding:15px 0;display:flex}.parent-tuition-refunds strong{color:var(--green);font-size:13px}.parent-tuition-refunds span,.parent-tuition-refunds small{color:#637185;font-size:11px}.parent-tuition-history{border-top:1px solid var(--line);margin-top:17px}.parent-tuition-history summary{cursor:pointer;min-height:44px;color:var(--wine);padding:13px 0;font-size:12px}.parent-tuition-history>div{color:#637185;flex-direction:column;gap:5px;padding:8px 0;font-size:11px;display:flex}.parent-tuition-history strong{color:#48566b;font-weight:500}.parent-tuition-card>.footnote{margin:18px 0 0;padding:0;font-size:10px;line-height:1.7}.parent-tuition-help{color:#637185;margin:0 0 26px;font-size:12px;line-height:1.7}@media (max-width:760px){.billing-roster-pause{flex-direction:column;align-items:stretch}.parent-tuition-heading{flex-direction:column;align-items:flex-start;gap:5px}.parent-tuition-grid{grid-template-columns:1fr;gap:12px}.parent-tuition-card{padding:20px}.parent-tuition-top h3{font-size:18px}.parent-tuition-money strong{font-size:20px}}.billing-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px;display:grid}.billing-summary-grid>.panel,.billing-contract-grid>.panel{margin-bottom:0}.billing-stat{flex-direction:column;gap:7px;min-width:0;padding:23px;display:flex;position:relative}.billing-stat>svg{color:var(--wine);margin-bottom:5px}.billing-stat>span,.billing-stat>small{color:#626e81;font-size:13px}.billing-stat>strong{letter-spacing:-.045em;overflow-wrap:anywhere;font-size:clamp(22px,2.1vw,32px)}.billing-rule{color:#48556a;background:#edf3f8;border:1px solid #dce7f0;border-radius:14px;align-items:flex-start;gap:12px;margin-bottom:22px;padding:17px 20px;display:flex}.billing-rule>svg{color:#42647f;flex:none}.billing-rule>p{margin:0;font-size:13px;line-height:1.7}.billing-toolbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px;display:flex}.billing-toolbar>.tabs{flex-wrap:wrap;margin:0}.billing-toolbar>input{max-width:330px}.billing-contract-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.billing-contract-card{min-width:0;padding:24px}.billing-contract-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.billing-contract-head>div{flex:1;min-width:130px}.billing-contract-head h3{overflow-wrap:anywhere;margin:0 0 5px;font-size:17px}.billing-contract-head p{color:#637185;margin:0;font-size:13px}.billing-contract-head>.badge{font-size:10px}.billing-contract-group{color:#637185;border-bottom:1px solid var(--line);padding:18px 0;font-size:12px}.billing-contract-numbers{grid-template-columns:1fr 1fr;gap:12px;padding:20px 0;display:grid}.billing-contract-numbers>div{flex-direction:column;gap:5px;min-width:0;display:flex}.billing-contract-numbers span,.billing-contract-numbers small{color:#637185;font-size:11px}.billing-contract-numbers strong{letter-spacing:-.04em;overflow-wrap:anywhere;font-size:23px}.billing-contract-numbers strong small{font-size:14px;font-weight:500}.billing-balance-warning{color:#855414;background:#fff2df;border-radius:9px;margin-bottom:14px;padding:10px 12px;font-size:12px}.billing-contract-card>.button{justify-content:space-between;font-size:12px}.billing-detail{padding:24px}.billing-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.billing-detail-metrics>div{background:var(--bg);border-radius:13px;min-width:0;padding:17px}.billing-detail-metrics span,.billing-detail-metrics strong{display:block}.billing-detail-metrics span{color:#637185;margin-bottom:6px;font-size:12px}.billing-detail-metrics strong{overflow-wrap:anywhere;font-size:21px}.billing-price-setting{justify-content:space-between;align-items:center;gap:12px;padding:23px 0;display:flex}.billing-price-setting strong,.billing-price-setting small{display:block}.billing-price-setting strong{font-size:14px}.billing-price-setting small{color:#637185;margin-top:5px;font-size:12px}.billing-action-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:28px;display:grid}.billing-action-grid>.button{font-size:12px}.billing-detail>h3{margin-top:25px;font-size:16px}.billing-history>div,.billing-demo-batches>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:16px 0;display:flex}.billing-history>div>span,.billing-demo-batches>div>span{min-width:0}.billing-history strong,.billing-demo-batches strong{overflow-wrap:anywhere;font-size:13px;display:block}.billing-history small,.billing-demo-batches small{color:#637185;overflow-wrap:anywhere;margin-top:5px;font-size:11px;display:block}.billing-history .button{flex-shrink:0;font-size:12px}.billing-table-person{flex-direction:column;gap:5px;display:flex}.billing-table-person small{color:#637185;white-space:normal;max-width:240px;font-size:11px}.billing-live-payroll{margin-bottom:24px}.panel.billing-live-header{border-top:3px solid var(--wine);justify-content:space-between;align-items:center;gap:28px;padding:26px;display:flex}.billing-live-header .eyebrow{letter-spacing:.12em;color:var(--wine);font-size:10px}.billing-live-header h3{margin:10px 0 7px;font-size:20px}.billing-live-header p{color:#637185;margin:0;font-size:12px}.billing-live-totals{flex-shrink:0;gap:26px;display:flex}.billing-live-totals>div{flex-direction:column;gap:7px;display:flex}.billing-live-totals span{color:#637185;font-size:11px}.billing-live-totals strong{color:var(--wine);white-space:nowrap;font-size:24px}.billing-live-totals>div:last-child strong{color:#5b697b}.billing-live-payroll>.footnote{margin:0;padding:12px 4px}.billing-roster-row{flex-wrap:wrap}.billing-roster-pay{color:#526277;background:#f6f8fb;border-radius:9px;flex-basis:100%;justify-content:space-between;gap:10px;padding:10px 12px;font-size:12px;display:flex}.billing-roster-pay small{font-size:11px}.billing-save-status{color:#426f57;min-height:35px;padding:0 24px 12px;font-size:12px}.billing-journal-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;padding:16px 24px;display:flex}.billing-journal-actions>p{color:#637185;margin:0;font-size:12px}.billing-journal-actions>.button{flex-shrink:0}.modal:has(.billing-payroll-details){width:min(1180px,100vw - 40px);max-width:1180px}.billing-payroll-details{padding:18px}.billing-payroll-details td{vertical-align:top}.billing-payroll-override{white-space:normal;flex-direction:column;gap:9px;min-width:245px;display:flex}.billing-payroll-override>label>span{margin-bottom:4px;font-size:11px;display:block}.billing-payroll-override input{min-height:44px;padding:9px 11px;font-size:14px}.billing-payroll-override .button,.billing-payroll-override .text-button{min-height:44px;font-size:11px}.billing-payroll-override>small{overflow-wrap:anywhere;max-width:260px;font-size:11px}.billing-demo-panel{margin-bottom:24px}.billing-demo-intro{align-items:center;gap:18px;padding:24px;display:flex}.billing-demo-icon{background:var(--wine-soft);width:56px;height:56px;color:var(--wine);border-radius:16px;flex-shrink:0;place-items:center;display:grid}.billing-demo-intro>div{flex:1;min-width:0}.billing-demo-intro h3{margin-bottom:7px;font-size:17px}.billing-demo-intro p{color:#637185;max-width:640px;margin:0;font-size:12px}.billing-demo-intro>.button{flex-shrink:0}.billing-demo-batches{padding:0 24px}.billing-demo-panel>.footnote{align-items:flex-start;gap:6px;display:flex}.billing-demo-panel>.footnote>svg{flex-shrink:0;margin-top:2px}.billing-demo-panel .button.danger{color:#a32c40;background:#fff6f8;border-color:#ebccd3}@media (max-width:1250px){.billing-contract-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel.billing-live-header{flex-direction:column;align-items:flex-start;gap:18px}.billing-live-totals{justify-content:space-between;width:100%}}@media (max-width:760px){.billing-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.billing-stat{padding:17px}.billing-stat>strong{font-size:24px}.billing-stat>span,.billing-stat>small{font-size:11px}.billing-contract-grid{grid-template-columns:1fr;gap:14px}.billing-contract-card{padding:20px}.billing-toolbar{flex-direction:column;align-items:stretch;gap:14px}.billing-toolbar>input{max-width:none}.billing-toolbar .tabs button{flex:1;min-height:44px}.billing-toolbar .tabs{gap:5px}.billing-contract-card .button,.billing-detail .button,.billing-demo-panel .button,.billing-journal-actions .button{min-height:44px}.panel.billing-live-header{padding:20px}.billing-live-header h3{font-size:18px}.billing-live-totals{gap:14px}.billing-live-totals>div{min-width:0}.billing-live-totals strong{white-space:normal;overflow-wrap:anywhere;font-size:21px}.billing-live-totals span{font-size:10px}.billing-roster-pay{flex-direction:column;gap:3px}.billing-roster-row .attendance-options{flex-wrap:wrap;width:100%;display:flex}.billing-roster-row .attendance-options>button{min-height:44px;font-size:12px}.billing-journal-actions{flex-direction:column;align-items:stretch;padding:18px}.billing-demo-intro{flex-wrap:wrap;padding:20px}.billing-demo-intro>div{flex-basis:calc(100% - 78px)}.billing-demo-intro>.button{width:100%}.billing-demo-batches{padding:0 20px}.billing-demo-batches>div{flex-direction:column;align-items:stretch}.billing-demo-panel .panel-heading{flex-wrap:wrap;gap:10px}.billing-detail{padding:18px}.billing-detail-metrics{gap:10px}.billing-detail-metrics>div{padding:14px}.billing-detail-metrics strong{font-size:20px}.billing-action-grid{grid-template-columns:1fr}.billing-price-setting{flex-direction:column;align-items:stretch}.billing-history>div{flex-wrap:wrap}.billing-history>div>.button{width:100%}.modal:has(.billing-payroll-details){width:calc(100vw - 20px)}.billing-payroll-details{padding:12px}.billing-payroll-override input,.billing-toolbar>input{font-size:16px}}body,.nav-item,.button,.text-button,td,.lesson-info strong,.person-cell strong{font-size:14px}small,.stat-card>small,.stat-title,.badge,.lesson-row .badge,.parent-homework-top .badge,.footnote,.sidebar-caption{font-size:12px}.stat-card{min-height:148px}.stat-title{max-width:calc(100% - 38px)}.row-actions{flex-wrap:wrap}@media (max-width:720px){body{font-size:15px}input,select,textarea{font-size:16px!important}.button,.nav-item,.text-button{min-height:44px}.icon-button{min-width:44px;min-height:44px}.stat-card{min-height:158px}.lesson-row .badge{max-width:none}.simple-list>div{flex-wrap:wrap}}.small{font-size:13px}.small-heading{font-size:21px!important}.wine-text,.required{color:var(--wine)}.text-button{color:var(--wine);white-space:nowrap;background:0 0;border:0;align-items:center;gap:8px;padding:8px 0;font-size:14px;font-weight:600;display:inline-flex}.text-button:hover{text-decoration:underline}.text-button.danger{color:#b4443b}.editor .button.danger{color:#fff;background:#b42336;border-color:#b42336}.editor .button.danger:hover:not(:disabled){background:#921b2b;border-color:#921b2b}.row-actions{align-items:center;gap:12px;display:flex}.skip-link{z-index:100;background:#fff;padding:12px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:12px}.sidebar{color:#b5c0cf;z-index:30;background:linear-gradient(175deg,#243140,#1b2735);flex-direction:column;width:242px;padding:28px 16px 12px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-brand{color:#fff;letter-spacing:-.03em;align-items:center;gap:13px;padding:0 8px 28px;font-size:23px;font-weight:700;display:flex}.sidebar-brand img{object-fit:contain;border-radius:50%;width:62px;height:62px}.sidebar-brand small{color:#a3adbc;letter-spacing:0;margin-top:3px;font-size:11px;font-weight:400;display:block}.sidebar-caption{letter-spacing:.13em;color:#7e8ea2;padding:0 12px 13px;font-size:9px;font-weight:700}.sidebar nav{scrollbar-width:thin;scrollbar-color:#425063 transparent;flex:1;min-height:0;padding-right:2px;overflow-y:auto}.nav-item{width:100%;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:12px;min-height:44px;margin:3px 0;padding:11px 13px;font-size:13px;transition:background .16s,color .16s;display:flex}.nav-item:hover{color:#fff;background:#ffffff08}.nav-item.selected{color:#fff;background:linear-gradient(105deg,#a22e4b,#8e233d);box-shadow:0 5px 14px #0c111a20}.nav-item svg{flex-shrink:0}.nav-item>span:nth-child(2){flex:1}.nav-count{color:#fff;background:#bc5a71;border-radius:6px;padding:1px 6px;font-size:11px}.sidebar-bottom{border-top:1px solid #ffffff13;margin-top:13px;padding-top:12px}.soon-tag{color:#c4c9d5;background:#ffffff13;border-radius:6px;padding:2px 7px;font-size:10px}.sidebar-user{color:#fff;text-align:left;background:#ffffff04;border:0;align-items:center;gap:9px;width:100%;margin-top:10px;padding:13px 7px 4px;display:flex}.sidebar-user>span:nth-child(2){flex:1;min-width:0}.sidebar-user strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.sidebar-user small{color:#91a0b2;font-size:10px}.sidebar-user .avatar{color:#e5d2d8;background:#3b4758;width:32px;height:32px;font-size:11px}.workspace{min-height:100vh;margin-left:242px}.topbar{border-bottom:1px solid var(--line);z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffe;align-items:center;gap:28px;height:83px;padding:0 32px;display:flex;position:sticky;top:0}.branch-picker{flex-shrink:0;align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex}.branch-picker>svg{color:var(--wine)}.branch-picker select{background:0 0;border:0;width:auto;max-width:190px;padding-left:0;font-size:13px;font-weight:600}.global-search{color:#8590a1;flex:1;align-items:center;gap:12px;min-width:100px;max-width:475px;display:flex;position:relative}.global-search input{min-height:38px;box-shadow:none;background:0 0;border:0;padding:8px 0;font-size:13px}.key-hint{border:1px solid var(--line);color:#a7aebc;border-radius:4px;padding:2px 5px;font-size:10px}.topbar-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.topbar-divider{border-left:1px solid var(--line);height:30px;margin:0 8px}.profile-button{text-align:left;color:var(--ink);background:0 0;border:0;align-items:center;gap:12px;padding:0;display:flex}.profile-button strong{font-size:13px;display:block}.profile-button small{color:var(--muted);font-size:11px;display:block}.avatar{color:#953e54;background:#f3e6eb;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:12px;font-weight:700;display:inline-flex}.avatar.blue{color:#567da9;background:#e9effa}.avatar.green{color:#4e8f68;background:#e8f2e9}.notification-button{position:relative}.notification-button i{background:var(--wine);border:2px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:8px;right:10px}.search-results{border:1px solid var(--line);z-index:40;background:#fff;border-radius:12px;padding:8px;position:absolute;top:45px;left:0;right:0;box-shadow:0 10px 30px #1b263520}.search-results button{text-align:left;background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:9px;display:flex}.search-results button span:nth-child(2){flex:1}.search-results button:hover{background:var(--bg)}.search-results p{margin:0;padding:10px;font-size:13px}.main-content{max-width:1740px;margin:auto;padding:32px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin:4px 0 28px;display:flex}.page-heading h1{letter-spacing:-.035em;margin:0 0 8px;font-size:30px;font-weight:700}.page-heading p{color:var(--muted);text-transform:none;margin:0;font-size:14px}.page-heading>.button{flex-shrink:0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;margin-bottom:22px;overflow:hidden}.panel-heading{justify-content:space-between;align-items:center;gap:16px;padding:22px 24px 16px;display:flex}.panel-heading h3{letter-spacing:-.025em;margin:0;font-size:17px;font-weight:650}.panel-heading .button{min-height:37px;padding:8px 12px;font-size:12px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:24px;display:grid}.stats-grid .panel{margin:0}.stat-card{flex-direction:column;align-items:flex-start;padding:22px 20px;display:flex;position:relative}.stat-icon{background:var(--wine-soft);width:43px;height:43px;color:var(--wine);border-radius:13px;justify-content:center;align-items:center;margin-bottom:17px;display:flex}.stat-icon.green,.course-icon.green,.attention-icon.green{color:#438556;background:#eaf4ed}.stat-icon.blue,.course-icon.blue,.attention-icon.blue{color:#527fb6;background:#ebf2fc}.stat-icon.wine,.course-icon.wine,.attention-icon.wine{color:#a03953;background:#f7e9ee}.stat-icon.amber,.course-icon.amber,.attention-icon.amber{color:#b58736;background:#f9f1e1}.stat-title{color:#667489;margin-bottom:6px;font-size:13px}.stat-card>strong{letter-spacing:-.04em;white-space:nowrap;margin-bottom:13px;font-size:29px;font-weight:700;line-height:1.1}.stat-card>small{color:#8993a3;font-size:11px}.dashboard-grid{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:22px;display:grid}.dashboard-grid>.panel{margin:0 0 2px}.dashboard-grid{margin-bottom:24px}.lesson-list{padding:0 23px}.lesson-row{text-align:left;background:0 0;border:0;border-top:1px solid #f0f2f5;border-radius:0;align-items:center;gap:16px;width:100%;min-height:85px;padding:18px 0;display:flex}.lesson-time{flex-direction:column;gap:4px;min-width:45px;display:flex}.lesson-time strong{color:var(--ink);font-size:15px}.lesson-time small{color:#96a0b0;font-size:11px}.lesson-rule{background:#a4435c;border-radius:3px;flex-shrink:0;width:3px;height:38px}.lesson-info{flex:1;min-width:0}.lesson-info strong{font-size:13px;font-weight:600;display:block}.lesson-info small{color:#8b95a5;margin-top:6px;font-size:11px;display:block}.room-chip{color:#7d889a;white-space:nowrap;font-size:11px}.lesson-row>.badge{font-size:10px}.lesson-row>svg{color:#aab3bf}.badge{white-space:nowrap;color:#768193;background:#f1f3f7;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:5px 9px;font-size:11px;font-weight:500;line-height:1.3;display:inline-flex}.badge.active,.badge.present,.badge.paid,.badge.verified,.badge.done,.badge.completed,.badge.accepted{color:#34794c;background:#eaf5ec}.badge.draft,.badge.late,.badge.new,.badge.issued{color:#9a6b1c;background:#fcf2df}.badge.scheduled,.badge.doing,.badge.contacted{color:#487cb3;background:#eaf2fd}.badge.absent,.badge.void,.badge.cancelled,.badge.declined{color:#b45348;background:#fcecea}.badge.archived,.badge.excused{color:#7f8594;background:#f1f1f5}.attention-list{padding:0 21px 10px}.attention-list button{text-align:left;background:0 0;border:0;border-top:1px solid #f0f2f5;border-radius:0;align-items:center;gap:12px;width:100%;padding:15px 0;display:flex}.attention-icon{border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:41px;height:41px;display:flex}.attention-list button>span:nth-child(2){flex:1}.attention-list strong{font-size:13px;font-weight:600;line-height:1.5;display:block}.attention-list small{color:#8b95a5;margin-top:4px;font-size:11px;display:block}.attention-list svg:last-child{color:#8d99ac}.count-pill{background:var(--wine-soft);color:var(--wine);border-radius:7px;padding:4px 8px;font-size:11px}.subtle-chip{color:#7c8799;white-space:nowrap;background:#f7f8fa;border:1px solid #edf0f4;border-radius:6px;align-items:center;padding:5px 8px;font-size:11px;display:inline-flex}.chart-summary{align-items:baseline;gap:13px;padding:0 24px;display:flex}.chart-summary strong{letter-spacing:-.03em;font-size:26px}.bar-chart{gap:26px;height:195px;padding:20px 25px 18px;display:flex}.bar-column{color:#909aab;flex-direction:column;flex:1;align-items:center;gap:8px;min-width:0;font-size:11px;display:flex}.bar-value{white-space:nowrap;color:#7b5360;font-size:9px}.bar-track{border-bottom:1px solid var(--line);background:repeating-linear-gradient(0deg,#0000 0 32px,#f3f4f7 33px 34px);flex:1;align-items:flex-end;width:100%;max-width:60px;display:flex}.bar{background:#deb9c4;border-radius:6px 6px 0 0;width:100%;min-height:3px}.bar.current{background:linear-gradient(#af3d5a,#92273f)}.ai-teaser{background:radial-gradient(at 100% 0,#f1eafa 0,#0000 65%),#fff;flex-direction:column;align-items:flex-start;padding:24px;display:flex}.ai-teaser-top{justify-content:space-between;align-items:center;width:100%;margin-bottom:18px;display:flex}.sparkle-mark{color:#8770c8;background:#eee9fc;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:45px;height:45px;display:inline-flex}.ai-teaser h3{margin:0 0 13px;font-size:21px}.ai-teaser p{letter-spacing:-.02em;margin:0 0 12px;font-size:20px;font-weight:600;line-height:1.45}.ai-teaser>.small{font-size:12px;line-height:1.6}.ai-teaser>.button{width:100%;min-height:40px;margin-top:23px;font-size:12px}.quick-actions{grid-template-columns:repeat(4,1fr);gap:12px;padding:0 23px 22px;display:grid}.quick-actions button{text-align:left;color:#5c6c80;background:#fafbfc;border:1px solid #edf0f4;align-items:center;gap:9px;min-width:0;padding:17px 13px;font-size:12px;display:flex}.quick-actions button>span{flex:1}.quick-actions button:hover{color:var(--wine);background:#f6edf1;border-color:#ebd3dc}.workspace-footer{color:#9aa3b2;justify-content:space-between;gap:16px;margin-top:32px;font-size:10px;display:flex}.demo-banner{color:#a28453;background:#fffaf0;border:1px solid #e4d6c3;border-radius:8px;justify-content:space-between;align-items:center;margin:-12px 0 23px;padding:9px 13px;font-size:11px;display:flex}.demo-banner>span{align-items:center;gap:7px;display:flex}.demo-banner small{font-size:10px}.warning-banner,.info-banner{color:#936a28;background:#fff8e9;border:1px solid #f0e2c5;border-radius:10px;margin-bottom:20px;padding:14px 17px;font-size:13px}.info-banner{color:#5b7396;background:#f0f5fd;border-color:#dce6f5}.onboarding-card{background:linear-gradient(110deg,#fff,#fbf4f6);justify-content:space-between;align-items:center;gap:25px;padding:24px;display:flex}.onboarding-card .eyebrow{color:var(--wine);font-size:10px}.onboarding-card h3{margin:10px 0;font-size:22px}.onboarding-card p{color:var(--muted);max-width:600px;margin:0;font-size:13px}.onboarding-card .button{flex-shrink:0}.mobile-menu,.bottom-nav,.nav-scrim{display:none}.tabs{scrollbar-width:none;gap:8px;margin:-4px 0 22px;display:flex;overflow-x:auto}.tabs button{white-space:nowrap;color:#7d889a;background:0 0;border:1px solid #0000;align-items:center;gap:9px;min-height:42px;padding:10px 16px;font-size:13px;display:flex}.tabs button.active{color:var(--wine);background:#fff;border-color:#ead5dd;box-shadow:0 3px 8px #96284005}.tabs button>span{color:#8a94a5;background:#ebedf2;border-radius:5px;padding:1px 6px;font-size:10px}.tabs button.active>span{color:#ac536c;background:#f8eaf0}.table-toolbar{border-bottom:1px solid var(--line);align-items:center;gap:20px;padding:18px 23px;display:flex}.search-field{color:#909aaa;flex:1;align-items:center;gap:10px;max-width:330px;display:flex}.search-field input{box-shadow:none;background:0 0;border:0;min-height:36px;padding:7px 0;font-size:13px}.table-toolbar>.muted{white-space:nowrap;margin-left:auto}.table-scroll{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}th{color:#8a94a5;border-bottom:1px solid var(--line);white-space:nowrap;background:#fafbfc;padding:13px 20px;font-size:11px;font-weight:500}td{vertical-align:middle;border-bottom:1px solid #f0f2f5;padding:17px 20px}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fdfcfd}td .badge{font-size:10px}td code{color:#8b95a7;font-size:11px}.person-cell{text-align:left;min-width:180px;color:var(--ink);background:0 0;border:0;align-items:center;gap:11px;padding:0;display:flex}.person-cell strong{white-space:nowrap;font-size:13px;font-weight:600;display:block}.person-cell small{color:#8d96a6;margin-top:5px;font-size:11px;display:block}.person-cell .avatar{width:37px;height:37px;font-size:11px}.tag-stack{flex-wrap:wrap;gap:5px;display:flex}.pagination{border-top:1px solid var(--line);color:#919bac;justify-content:space-between;align-items:center;padding:9px 20px;font-size:11px;display:flex}.pagination>div{align-items:center;gap:7px;display:flex}.pagination .icon-button{min-width:34px;min-height:34px}.empty{text-align:center;max-width:500px;margin:auto;padding:45px 23px}.empty-icon{color:#a2adbd;background:#f4f6f9;border:1px solid #eef0f5;border-radius:16px;justify-content:center;align-items:center;width:57px;height:57px;margin:0 auto 19px;display:flex}.empty h3{margin-bottom:9px;font-size:16px;font-weight:600}.empty p{color:#939dad;max-width:330px;margin:0 auto 16px;font-size:13px;line-height:1.7}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:21px;display:grid}.card-grid>.panel{margin-bottom:0}.card-grid{margin-bottom:24px}.card-topline{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.course-icon{width:48px;height:48px;color:var(--wine);background:#f5e8ed;border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.group-card{padding:23px}.group-card h3{margin-bottom:7px;font-size:19px}.group-card>.muted{margin-bottom:23px;font-size:13px}.group-teacher{align-items:center;gap:9px;margin-bottom:20px;font-size:12px;display:flex}.group-teacher .avatar{width:29px;height:29px;font-size:10px}.group-meta{color:#8a94a5;flex-direction:column;gap:10px;margin-bottom:21px;font-size:11px;display:flex}.group-meta>span{align-items:center;gap:8px;display:flex}.capacity-label{color:#8994a4;justify-content:space-between;margin-bottom:8px;font-size:11px;display:flex}.capacity-label>strong{color:#6f7c8f;font-weight:600}.progress-track{background:#eef0f4;border-radius:5px;height:5px;overflow:hidden}.progress-track>div{background:var(--wine);border-radius:5px;height:100%}.group-card>.button{min-height:38px;margin-top:23px;font-size:12px}.course-cover{color:#9f425e;background:linear-gradient(135deg,#eed5df,#faf0f4);justify-content:space-between;align-items:flex-start;min-height:170px;padding:22px;display:flex;position:relative}.course-card.blue .course-cover{color:#547eaf;background:linear-gradient(135deg,#d4e2f5,#edf4fd)}.course-card.green .course-cover{color:#568367;background:linear-gradient(135deg,#d3e7dc,#edf7f0)}.course-card.amber .course-cover{color:#a0813e;background:linear-gradient(135deg,#eee0c7,#fcf4e4)}.course-cover>span:first-child{background:#fff8;border-radius:17px;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.course-cover>.badge{color:inherit;background:#fff8;font-size:10px}.course-cover-label{letter-spacing:.14em;opacity:.65;font-size:9px;font-weight:600;position:absolute;bottom:19px}.course-content{padding:24px}.course-content h3{margin-bottom:13px;font-size:21px}.course-content>p{color:#8a93a3;min-height:66px;font-size:13px;line-height:1.7}.course-price{align-items:baseline;gap:7px;margin:20px 0;display:flex}.course-price strong{letter-spacing:-.04em;font-size:24px}.course-price span{color:#8b95a5;font-size:12px}.course-content>.button{font-size:12px}.calendar-toolbar{justify-content:space-between;align-items:center;gap:18px;padding:18px 22px;display:flex}.calendar-toolbar>div{align-items:center;gap:10px;display:flex}.calendar-toolbar strong{font-size:16px}.calendar-toolbar input{width:160px;min-height:38px;font-size:13px}.calendar-toolbar>.button{min-height:38px;font-size:12px}.week-strip{border-bottom:1px solid var(--line);grid-template-columns:repeat(7,1fr);gap:10px;padding:3px 24px 22px;display:grid}.week-strip>button{border:1px solid var(--line);color:#91a0b0;background:#fff;border-radius:12px;flex-direction:column;align-items:center;gap:7px;min-width:0;padding:13px;display:flex}.week-strip strong{color:#657289;font-size:21px;font-weight:600}.week-strip span{text-transform:capitalize;font-size:11px}.week-strip small{font-size:10px}.week-strip button.selected{background:var(--wine);border-color:var(--wine);color:#e7beca;box-shadow:0 5px 10px #8a17331a}.week-strip button.selected strong{color:#fff}.schedule-day{padding:4px 24px 15px}.schedule-lesson{text-align:left;width:100%;color:var(--muted);background:0 0;border:0;border-bottom:1px solid #edf0f5;border-radius:0;align-items:center;gap:23px;padding:24px 0;display:flex}.schedule-lesson:last-child{border:0}.schedule-lesson.cancelled{opacity:.55}.schedule-lesson-body{border-left:3px solid #b46e82;flex:1;min-width:0;padding:5px 15px}.schedule-lesson-body>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.schedule-lesson h3{color:var(--ink);margin:0;font-size:17px}.schedule-lesson p{margin:8px 0;font-size:12px}.schedule-lesson-body>span{color:#939dac;font-size:12px}.schedule-lesson .lesson-time strong{font-size:17px}.journal-toolbar{border-bottom:1px solid var(--line);align-items:flex-end;gap:20px;padding:24px;display:flex}.journal-toolbar>label:first-child{flex:1}.check-label{align-items:center;gap:9px;font-size:13px;font-weight:400;line-height:1.5;display:flex;flex-direction:row!important}.check-label input{width:18px;height:18px;min-height:18px;accent-color:var(--wine);flex-shrink:0}.journal-toolbar .check-label{padding-bottom:12px}.roster-row{border-bottom:1px solid #f0f2f6;justify-content:space-between;align-items:center;gap:20px;padding:19px 24px;display:flex}.attendance-options{gap:6px;display:flex}.attendance-options button{border:1px solid var(--line);color:#9ba4b0;background:#fff;padding:8px 10px;font-size:10px}.attendance-options button.selected{color:#547092;background:#e8edf5;border-color:#bdc9db}.attendance-options button.selected.present{color:#42845b;background:#eaf6ee;border-color:#8dc6a0}.attendance-options button.selected.absent{color:#b66456;background:#faeeeb;border-color:#e1aba1}.attendance-options button.selected.late{color:#a17d37;background:#fcf3e1;border-color:#dfc184}.footnote{color:#96a0af;margin:0;padding:17px 24px;font-size:11px;line-height:1.65}.assignment-card{flex-direction:column;padding:24px;display:flex}.assignment-card h3{margin:9px 0 13px;font-size:20px}.assignment-card>p{color:#7e899b;white-space:pre-wrap;flex:1;font-size:13px}.assignment-meta{color:#909aa9;justify-content:space-between;gap:12px;margin:15px 0;font-size:11px;display:flex}.assignment-meta span{align-items:center;gap:7px;display:flex}.assignment-card .button{font-size:12px}.finance-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.finance-stats>.panel{flex-direction:column;gap:12px;padding:25px;display:flex}.finance-stats span{color:#8893a2;font-size:13px}.finance-stats strong{letter-spacing:-.04em;font-size:29px}.finance-stats small{color:#939cad;font-size:11px}.simple-list{padding:0 24px}.simple-list>div,.simple-list>button{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;border-bottom:1px solid #f0f2f6;border-radius:0;align-items:center;gap:15px;padding:19px 0;font-size:13px;display:flex}.simple-list>:last-child{border-bottom:0}.simple-list>*>span:first-child{flex:1}.simple-list small{color:#939bad;margin-top:5px;font-size:11px;display:block}.simple-list strong{font-size:13px;font-weight:600}.permission-tags{gap:5px;display:flex}.settings-row{border-bottom:1px solid #f0f2f6;justify-content:space-between;align-items:center;gap:25px;padding:22px 24px;display:flex}.settings-row:last-child{border:0}.settings-row strong{font-size:14px;font-weight:600;display:block}.settings-row small{color:#8d97a7;margin-top:6px;font-size:12px;display:block}.settings-values{padding:0 24px 24px}dl{grid-template-columns:minmax(100px,.8fr) 2fr;gap:15px;font-size:13px;display:grid}dt{color:#8b95a5}dd{color:#526075;word-break:break-word;margin:0}.room-grid{grid-template-columns:repeat(4,1fr);gap:13px;padding:0 24px 24px;display:grid}.room-card{border:1px solid var(--line);color:#8390a3;text-align:left;background:#fafbfc;flex-direction:column;align-items:flex-start;gap:13px;padding:20px;display:flex}.room-card strong{color:var(--ink);font-size:20px}.room-card small{font-size:11px}.profile-layout{grid-template-columns:1fr 2fr;gap:23px;display:grid}.profile-card{padding:32px}.profile-card>.avatar{width:74px;height:74px;font-size:22px}.profile-card h2{margin:20px 0 12px;font-size:24px}.profile-card dl{grid-template-columns:1fr;margin-top:30px}.profile-card dd{margin-top:-11px}.profile-card-actions{gap:12px;min-width:0;margin-top:20px;display:grid}.profile-card .profile-card-actions>.button{white-space:normal;justify-content:center;width:100%;min-height:48px;margin:0}.ai-workspace{grid-template-columns:240px 1fr;min-height:640px;display:grid}.ai-history{border-right:1px solid var(--line);padding:25px 18px}.ai-history .button{width:100%;font-size:12px}.ai-history .empty{padding:75px 0}.ai-history .empty h3{font-size:14px}.ai-history .empty p{font-size:11px}.ai-main{text-align:center;width:100%;max-width:850px;margin:auto;padding:55px 35px 30px}.ai-orb{color:#8b73d0;background:radial-gradient(#eee4fe,#0000 72%);border-radius:26px;justify-content:center;align-items:center;width:90px;height:90px;margin:0 auto 24px;display:flex}.ai-main h2{margin-bottom:14px;font-size:27px}.ai-main>.muted{font-size:14px}.ai-prompts{grid-template-columns:1fr 1fr;gap:13px;margin:35px 0 40px;display:grid}.ai-prompts button{text-align:left;border:1px solid var(--line);color:#738297;opacity:.75;background:#fff;align-items:center;gap:13px;min-height:90px;padding:18px;font-size:12px;display:flex}.ai-prompts button>span{color:var(--wine);background:var(--wine-soft);border-radius:10px;padding:9px;display:flex}.ai-prompts button>span svg{width:21px;height:21px}.ai-prompts button>svg{flex-shrink:0;width:14px;margin-left:auto}.ai-composer{border:1px solid var(--line);background:#f8f9fb;border-radius:14px;gap:10px;padding:8px 12px;display:flex}.ai-composer input{box-shadow:none;background:0 0;border:0;font-size:13px}.ai-disclaimer{color:#9690a4;justify-content:center;align-items:center;gap:8px;margin:20px 0 0;font-size:11px;display:flex}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:80;background:#0c172b66;animation:.16s ease-out fade;position:fixed;inset:0}.modal{z-index:90;background:#fff;border:1px solid #ffffff80;border-radius:21px;width:min(620px,100vw - 32px);max-height:90dvh;animation:.16s ease-out fade;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 30px 100px #0003}.modal-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:15px;padding:25px 27px 20px;display:flex}.modal-heading h2{margin:0 0 9px;font-size:22px}.modal-heading p{color:#8b95a5;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.6}.editor{padding:25px 27px;display:block}.form-grid{grid-template-columns:1fr 1fr;gap:19px;display:grid}.form-grid label{font-size:12px;font-weight:500}.form-grid input,.form-grid textarea,.form-grid select{font-size:14px}.form-grid label.wide{grid-column:1/-1}.form-grid small{color:var(--muted);font-size:11px}.modal-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:12px;margin-top:26px;padding-top:22px;display:flex}.modal .error{margin-top:22px}.invite-result,.detail-content{padding:25px 27px}.invite-result code{border:1px solid var(--line);-webkit-user-select:all;user-select:all;background:#f7f8fa;border-radius:8px;padding:12px 15px;font-size:17px}.invite-result label{margin-bottom:22px}.detail-identity{align-items:center;gap:15px;margin-bottom:28px;display:flex}.detail-identity .avatar{width:64px;height:64px;font-size:18px}.detail-identity h3{margin:0 0 9px;font-size:22px}.detail-content>h3{margin-top:24px;font-size:16px}.detail-content>p{font-size:13px}.toast{color:#f3fff9;z-index:100;background:#233b31;border-radius:13px;align-items:center;gap:12px;padding:10px 12px 10px 20px;font-size:13px;animation:.16s ease-out fade;display:flex;position:fixed;bottom:25px;right:30px;box-shadow:0 7px 25px #1b2c2930}.toast .icon-button{color:#adc7b9;min-width:30px;min-height:30px}@keyframes fade{0%{opacity:0}to{opacity:1}}.parent-content{max-width:1160px;margin:auto}.child-switch{gap:12px;margin-bottom:26px;padding:2px;display:flex;overflow-x:auto}.child-switch>button{color:#7f899b;white-space:nowrap;background:#fff;border:1px solid #e0e4ed;border-radius:30px;align-items:center;gap:11px;min-height:52px;padding:8px 15px 8px 8px;font-size:14px;display:flex}.child-switch .avatar{width:35px;height:35px;font-size:11px}.child-switch .selected{background:var(--wine);color:#fff;border-color:var(--wine);box-shadow:0 4px 14px #98274114}.child-switch .selected .avatar{color:#fff;background:#be647d}.parent-overview{grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:24px;display:grid}.next-lesson-card{color:#fff;background:radial-gradient(at 100% 0,#b65573,#0000 75%),linear-gradient(130deg,#a32b4a,#81213a);border-radius:20px;margin-bottom:24px;padding:28px 30px;box-shadow:0 7px 18px #98274117}.next-lesson-top{color:#f0cdd8;justify-content:space-between;gap:15px;font-size:12px;display:flex}.next-lesson-top>span:first-child{letter-spacing:.07em;align-items:center;gap:8px;font-size:10px;display:flex}.next-lesson-card h2{margin:28px 0 17px;font-size:27px;font-weight:600}.next-lesson-time{letter-spacing:-.03em;font-size:31px}.next-lesson-time span{color:#e8bccb;font-size:21px;font-weight:400}.next-lesson-card>p{color:#e4b9c8;align-items:center;gap:7px;margin-top:13px;font-size:12px;display:flex}.next-lesson-card>button{color:#fff;background:0 0;border:0;border-top:1px solid #ffffff20;border-radius:0;justify-content:space-between;align-items:center;width:100%;margin-top:23px;padding:18px 0 0;font-size:12px;display:flex}.homework-summary{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;align-items:center;gap:15px;padding:0 24px 24px;display:flex}.homework-summary>span:nth-child(2){flex:1}.homework-summary strong{font-size:14px;display:block}.homework-summary small{color:#949daf;margin-top:6px;font-size:12px;display:block}.parent-stats{grid-template-columns:1fr 1fr;gap:17px;display:grid}.parent-stats>.panel{flex-direction:column;align-items:flex-start;gap:8px;padding:22px;display:flex;position:relative}.parent-stats .stat-icon{margin:0;position:absolute;top:20px;right:20px}.parent-stats>.panel>span:not(.stat-icon){color:#8f98a8;font-size:12px}.parent-stats>.panel>strong{letter-spacing:-.04em;font-size:30px;line-height:1.2}.parent-stats>.panel>small{color:#969fae;font-size:10px}.parent-balance{padding:26px}.parent-balance>h3{margin:20px 0 13px;font-size:19px}.parent-balance>strong{letter-spacing:-.04em;font-size:33px}.parent-balance>p{color:#8d98a8;margin-top:8px;margin-bottom:24px;font-size:12px}.parent-balance>.button{font-size:13px}.parent-ai-link{text-align:left;width:100%;color:var(--ink);background:linear-gradient(110deg,#fff,#f6f1ff);border:1px solid #eae3f6;border-radius:16px;align-items:center;gap:13px;padding:18px;display:flex}.parent-ai-link>span:nth-child(2){flex:1;min-width:0}.parent-ai-link strong{font-size:14px;font-weight:600;display:block}.parent-ai-link strong small{color:#a098b2;margin-left:5px;font-size:10px;font-weight:400}.parent-ai-link>span:nth-child(2)>span{color:#9d92ad;margin-top:5px;font-size:11px;display:block}.parent-ai-link>svg{color:#a69cb8}.parent-homework-list{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.parent-homework-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:24px}.parent-homework-top{align-items:center;gap:12px;margin-bottom:18px;display:flex}.parent-homework-top>span:nth-child(2){flex:1;min-width:0}.parent-homework-top strong{font-size:15px;display:block}.parent-homework-top small{color:#9ba3b2;margin-top:5px;font-size:11px;display:block}.parent-homework-card>p{color:#7c889b;white-space:pre-wrap;font-size:13px;line-height:1.7}.feedback{color:#4d8860;background:#f0f7f1;border-radius:9px;gap:8px;padding:13px;display:flex}.feedback>svg{flex-shrink:0}.feedback p{white-space:pre-wrap;margin:0;font-size:12px}.parent-schedule{padding:0 25px}.parent-schedule>div{border-bottom:1px solid var(--line);align-items:center;gap:18px;padding:21px 0;display:flex}.parent-schedule>div:last-child{border:0}.parent-schedule>div>div{flex:1}.parent-schedule strong{font-size:15px}.parent-schedule p{color:#7f8ca0;margin:7px 0;font-size:12px}.parent-schedule small{color:#8e99ab;font-size:11px}.date-tile{background:var(--wine-soft);width:54px;height:62px;color:var(--wine);border-radius:13px;flex-direction:column;justify-content:center;align-items:center;display:flex}.date-tile strong{font-size:22px}.date-tile small{color:#b07587;font-size:10px}.parent-billing-summary{border:1px solid var(--line);background:#fff;border-radius:18px;justify-content:space-between;align-items:center;margin-bottom:24px;padding:27px;display:flex}.parent-billing-summary>div{flex-direction:column;gap:10px;display:flex}.parent-billing-summary span{color:#8b95a4;font-size:13px}.parent-billing-summary strong{letter-spacing:-.04em;font-size:34px}.invoice-cards{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.invoice-cards>.panel{margin-bottom:0;padding:24px}.invoice-cards{margin-bottom:24px}.invoice-card-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.invoice-card-heading strong{font-size:17px;display:block}.invoice-card-heading small{color:#94a0af;margin-top:8px;font-size:11px;display:block}.invoice-card-totals{grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0;display:grid}.invoice-card-totals>span{color:#8d98a7;font-size:11px}.invoice-card-totals strong{color:var(--ink);margin-top:7px;font-size:17px;font-weight:600;display:block}.invoice-cards .button{font-size:12px}.payment-methods-note{color:#9584a6;background:#f3f0f7;border:1px solid #e9e2f0;border-radius:13px;align-items:center;gap:15px;margin:0 0 24px;padding:20px 24px;display:flex}.payment-methods-note strong{color:#776584;font-size:13px;display:block}.payment-methods-note small{margin-top:5px;font-size:11px;display:block}.payment-methods-note>svg{flex-shrink:0}@media (min-width:1650px){.sidebar{width:262px;padding-top:32px}.workspace{margin-left:262px}.topbar{padding:0 44px}.main-content{padding:40px 44px}.page-heading h1{font-size:34px}.stats-grid{gap:22px}.stat-card{padding:25px}.stat-card>strong{font-size:33px}.nav-item{font-size:14px}}@media (max-width:1250px){.sidebar{width:216px;padding-left:12px;padding-right:12px}.workspace{margin-left:216px}.sidebar-brand img{width:53px;height:53px}.sidebar-brand{gap:10px;padding-left:6px;font-size:22px}.nav-item{gap:10px;padding-left:11px;font-size:12px}.main-content{padding:25px}.topbar{gap:17px;padding:0 25px}.profile-button>span:nth-child(2){display:none}.topbar-divider{margin:0}.stats-grid{gap:13px}.stat-card{padding:18px}.stat-card>strong{font-size:25px}.stat-title{font-size:12px}.stat-card>small{font-size:10px}.dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:18px}.lesson-list{padding:0 18px}.lesson-row{gap:11px}.room-chip{display:none}.lesson-row>.badge{padding:4px 7px;font-size:9px}.lesson-info small{font-size:10px}.lesson-info strong{font-size:12px}.quick-actions{gap:8px}.quick-actions button{gap:7px;padding:14px 10px;font-size:11px}.quick-actions svg{width:17px}.quick-actions svg:last-child{display:none}.panel-heading{padding:20px 19px 15px}.panel-heading h3{font-size:15px}.panel-heading .text-button{font-size:12px}.attention-list{padding:0 17px 10px}.attention-list strong{font-size:12px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-overview{grid-template-columns:minmax(0,1.2fr) minmax(260px,1fr)}.attendance-options{flex-wrap:wrap;justify-content:flex-end}.roster-row .person-cell{min-width:170px}.ai-workspace{grid-template-columns:180px 1fr}.ai-main{padding:35px 25px}.ai-prompts{gap:10px}.ai-prompts button{gap:10px;padding:13px;font-size:11px}.parent-stats .stat-icon{width:35px;height:35px;margin-bottom:5px;position:static}.finance-stats strong{font-size:24px}.small-heading{font-size:17px!important}}@media (max-width:1000px){.sidebar{width:200px}.workspace{margin-left:200px}.sidebar-brand small{font-size:10px}.sidebar-brand img{width:47px;height:47px}.sidebar-brand{font-size:20px}.sidebar-caption{letter-spacing:.1em;font-size:8px}.nav-item{font-size:11px}.main-content{padding:24px 20px}.topbar{gap:12px;height:74px;padding:0 20px}.global-search{display:none}.branch-picker{flex:1}.topbar-actions{gap:3px}.page-heading h1{font-size:27px}.page-heading>.button{padding:10px 13px;font-size:12px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{padding:20px}.stat-icon{margin:0;position:absolute;top:22px;right:19px}.stat-title{max-width:calc(100% - 45px);margin-bottom:13px}.stat-card>strong{font-size:30px}.dashboard-grid{grid-template-columns:1fr}.ai-teaser p br{display:none}.ai-teaser-top{margin-bottom:8px}.ai-teaser>.button{width:auto}.lesson-info strong{font-size:14px}.lesson-info small{font-size:12px}.room-chip{display:block}.lesson-row>.badge{font-size:11px}.parent-overview{grid-template-columns:1fr}.parent-overview>div:nth-child(2){grid-template-columns:1fr 1fr;gap:18px;display:grid}.parent-overview>div:nth-child(2)>.panel{margin:0}.parent-ai-link{grid-column:1/-1}.parent-homework-list,.invoice-cards{grid-template-columns:1fr}.journal-toolbar{flex-wrap:wrap}.journal-toolbar>label:first-child{flex-basis:100%}.journal-toolbar .check-label{flex:1}.roster-row{flex-direction:column;align-items:stretch;gap:14px}.attendance-options{justify-content:flex-start}.room-grid{grid-template-columns:1fr 1fr}.ai-history{display:none}.ai-workspace,.profile-layout{grid-template-columns:1fr}.finance-stats{gap:12px}.finance-stats>.panel{padding:18px}.finance-stats strong{font-size:21px}.page-heading .row-actions{flex-wrap:wrap;justify-content:flex-end}.onboarding-card{flex-direction:column;align-items:flex-start}.course-content{padding:21px}}@media (max-width:760px){.sidebar{width:250px;padding:26px 17px 14px;transition:transform .2s;transform:translate(-100%);box-shadow:10px 0 30px #0002}.sidebar.open{transform:translate(0)}.sidebar-brand{gap:13px;font-size:24px}.sidebar-brand img{width:59px;height:59px}.sidebar-brand small{font-size:11px}.sidebar-caption{font-size:9px}.nav-item{min-height:45px;font-size:14px}.nav-scrim{z-index:25;background:#101e3166;border:0;border-radius:0;display:block;position:fixed;inset:0}.workspace{margin-left:0}.topbar{gap:10px;height:68px;padding:0 16px}.mobile-menu{min-width:32px;display:flex}.topbar .branch-picker{gap:7px;font-size:12px}.branch-picker select{max-width:155px;font-size:12px}.branch-picker>svg{width:16px}.topbar-divider,.profile-button>svg{display:none}.profile-button .avatar{width:34px;height:34px}.topbar-actions>.icon-button{min-width:33px;min-height:38px}.main-content{padding:22px 17px}.page-heading{flex-wrap:wrap;align-items:flex-start;gap:14px;margin-bottom:22px}.page-heading h1{margin-bottom:9px;font-size:27px;line-height:1.2}.page-heading p{font-size:12px;line-height:1.7}.page-heading>.button{min-height:41px;font-size:12px}.stats-grid{gap:12px;margin-bottom:20px}.stat-card{min-height:161px;padding:18px 16px}.stat-title{max-width:calc(100% - 30px);margin-top:0;margin-bottom:10px;font-size:11px;line-height:1.5}.stat-card .stat-icon{border-radius:10px;width:33px;height:33px;top:17px;right:13px}.stat-card .stat-icon svg{width:18px;height:18px}.stat-card>strong{letter-spacing:-.05em;margin-top:auto;margin-bottom:13px;font-size:26px}.stat-card>small{font-size:9px}.panel{border-radius:16px;margin-bottom:18px}.panel-heading{padding:20px 18px 15px}.panel-heading h3{font-size:16px}.panel-heading .text-button{font-size:11px}.dashboard-grid{gap:18px;margin-bottom:20px}.lesson-row{flex-wrap:wrap;gap:12px;padding:17px 0}.lesson-info strong{font-size:13px}.lesson-info small{font-size:10px;line-height:1.6}.lesson-time strong{font-size:14px}.room-chip,.lesson-row>svg{display:none}.lesson-row .badge{white-space:normal;max-width:90px;font-size:9px}.lesson-rule{height:34px}.attention-list strong{font-size:13px}.attention-list small{font-size:11px}.attention-icon{width:42px;height:42px}.bar-chart{gap:14px;height:190px;padding:15px 20px}.bar-value{font-size:8px}.chart-summary strong{font-size:24px}.chart-summary .small{font-size:11px}.quick-actions{grid-template-columns:1fr 1fr;gap:10px;padding:0 18px 19px}.quick-actions button{gap:11px;padding:17px 13px;font-size:12px}.quick-actions svg{width:20px}.ai-teaser{padding:22px}.ai-teaser p{font-size:21px}.workspace-footer{flex-wrap:wrap;margin:27px 0 8px;font-size:9px}.demo-banner{margin:-7px 0 20px;padding:8px 10px;font-size:10px}.demo-banner small{display:none}.tabs{gap:5px;margin-bottom:19px}.tabs button{padding:9px 13px;font-size:12px}.table-toolbar{gap:10px;padding:13px 17px}.table-toolbar>.small{font-size:11px}.search-field input{font-size:13px}.search-field{gap:8px}th{padding:12px 16px}td{padding:16px;font-size:12px}.person-cell strong{font-size:13px}.person-cell small{font-size:10px}.card-grid{grid-template-columns:1fr;gap:18px}.group-card{padding:23px}.group-card h3{font-size:21px}.group-meta{font-size:12px}.group-card>.muted{font-size:14px}.group-teacher{font-size:13px}.group-card>.button{min-height:44px;font-size:13px}.course-content h3{font-size:23px}.course-content>p{min-height:0;font-size:14px}.course-cover{min-height:165px}.course-content>.button{font-size:14px}.course-price{margin:22px 0}.course-price strong{font-size:28px}.calendar-toolbar{flex-wrap:wrap;gap:6px;padding:14px 12px}.calendar-toolbar strong{font-size:14px}.calendar-toolbar>div{gap:3px}.calendar-toolbar .icon-button{min-width:32px}.calendar-toolbar input{width:143px;font-size:12px}.calendar-toolbar>.button{min-height:36px;padding:8px 11px;font-size:11px}.week-strip{gap:5px;padding:3px 13px 17px}.week-strip>button{border-radius:10px;gap:5px;padding:11px 4px}.week-strip strong{font-size:20px}.week-strip span{font-size:10px}.schedule-day{padding:0 16px 10px}.schedule-lesson{gap:9px;padding:21px 0}.schedule-lesson h3{font-size:15px}.schedule-lesson .lesson-time{min-width:41px}.schedule-lesson .lesson-time strong{font-size:14px}.schedule-lesson-body{padding-left:11px}.schedule-lesson-body>div{flex-direction:column;align-items:flex-start;gap:7px}.schedule-lesson p,.schedule-lesson-body>span{font-size:11px}.schedule-lesson>svg{width:16px}.journal-toolbar{gap:15px;padding:19px}.journal-toolbar .check-label,.journal-toolbar>.button{font-size:12px}.roster-row{padding:20px}.attendance-options{gap:7px}.attendance-options button{min-height:40px;padding:11px;font-size:11px}.finance-stats{grid-template-columns:1fr 1fr;gap:12px}.finance-stats>.panel{gap:10px;margin-bottom:15px;padding:19px 16px}.finance-stats>.panel:last-child{flex-flow:wrap;grid-column:1/-1;align-items:center;margin-top:-12px}.finance-stats span{font-size:11px}.finance-stats strong{font-size:25px}.finance-stats small{font-size:10px;line-height:1.5}.small-heading{font-size:15px!important}.finance-stats>.panel:last-child small{flex-basis:100%}.simple-list{padding:0 20px}.simple-list>div,.simple-list>button{gap:12px;font-size:13px}.permission-tags{flex-wrap:wrap;justify-content:flex-end;max-width:140px}.settings-row{flex-wrap:wrap;gap:15px;padding:21px 19px}.settings-row strong{font-size:14px}.settings-row .button{min-height:38px;font-size:12px}.profile-card{padding:28px}.ai-main{padding:32px 22px 26px}.ai-main h2{font-size:25px}.ai-main>.muted{font-size:13px}.ai-prompts{grid-template-columns:1fr;gap:10px;margin:25px 0}.ai-prompts button{gap:15px;min-height:75px;padding:15px;font-size:13px}.ai-main .ai-orb{width:70px;height:70px;margin-bottom:19px}.ai-disclaimer{align-items:flex-start;font-size:11px;line-height:1.7}.ai-disclaimer>svg{flex-shrink:0;margin-top:3px}.ai-workspace{min-height:0}.modal{border-radius:19px;width:calc(100vw - 20px);max-height:92dvh}.modal-heading{gap:10px;padding:22px 20px 18px}.modal-heading h2{font-size:21px}.modal-heading p{font-size:13px}.editor,.invite-result,.detail-content{padding:22px 20px}.form-grid{grid-template-columns:1fr;gap:18px}.form-grid label{font-size:14px}.form-grid input,.form-grid textarea,.form-grid select{min-height:48px;font-size:16px}.form-grid .check-label input{min-height:18px}.modal-actions{margin-top:23px}.modal-actions .button{flex:1}.toast{justify-content:center;bottom:20px;left:17px;right:17px}.parent-shell .toast{bottom:91px}.parent-shell .main-content{padding-bottom:96px}.parent-shell .topbar .branch-picker>svg{display:none}.parent-shell .topbar .branch-picker{font-size:14px;font-weight:600}.parent-shell .topbar .profile-button{display:none}.bottom-nav{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-top:1px solid var(--line);padding:9px 4px max(10px, env(safe-area-inset-bottom));z-index:23;background:#ffffffef;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 18px #1b263503}.bottom-nav>button{color:#8593a6;background:0 0;border:0;flex-direction:column;align-items:center;gap:5px;min-height:47px;font-size:10px;display:flex}.bottom-nav>button.selected{color:var(--wine)}.bottom-nav>button.selected svg{stroke-width:2.5px}.parent-content .page-heading h1{font-size:27px}.parent-content .page-heading p{font-size:13px}.child-switch{gap:10px;margin-bottom:22px}.child-switch>button{min-height:52px;padding-right:15px;font-size:14px}.parent-overview{gap:1px}.next-lesson-card{border-radius:18px;margin-bottom:20px;padding:24px}.next-lesson-top{font-size:12px}.next-lesson-top>span:first-child{font-size:9px}.next-lesson-card h2{margin:24px 0 15px;font-size:26px}.next-lesson-time{font-size:34px}.next-lesson-card>p{margin:10px 0;font-size:13px}.next-lesson-card>button{margin-top:22px;padding-top:17px;font-size:13px}.homework-summary{gap:12px;padding:0 20px 22px}.homework-summary strong{font-size:14px}.homework-summary small{font-size:12px}.parent-stats{gap:13px}.parent-stats>.panel{gap:9px;padding:21px 17px}.parent-stats .stat-icon{width:37px;height:37px}.parent-stats>.panel>span:not(.stat-icon){font-size:12px}.parent-stats>.panel>strong{font-size:31px}.parent-overview>div:nth-child(2){display:block}.parent-overview>div:nth-child(2)>.panel{margin-bottom:20px}.parent-balance{padding:25px}.parent-balance>strong{font-size:34px}.parent-balance>h3{font-size:22px}.parent-balance>p{font-size:13px}.parent-balance>.button{font-size:14px}.parent-ai-link{padding:18px}.parent-ai-link strong{font-size:16px}.parent-ai-link>span:nth-child(2)>span{font-size:12px}.parent-schedule{padding:0 20px}.parent-schedule>div{align-items:flex-start;gap:12px}.parent-schedule strong{font-size:14px}.parent-schedule>div>.badge{display:none}.parent-schedule p{font-size:12px;line-height:1.7}.date-tile{flex-shrink:0;width:48px;height:58px}.parent-homework-list{grid-template-columns:1fr;gap:17px}.parent-homework-card{padding:20px}.parent-homework-top{gap:10px}.parent-homework-top strong{font-size:14px}.parent-homework-top .badge{font-size:9px}.parent-homework-card>p{font-size:14px}.parent-homework-card .assignment-meta{font-size:12px}.parent-homework-card>.button{font-size:14px}.feedback p{font-size:13px}.parent-billing-summary{padding:24px}.invoice-cards>.panel{padding:23px 20px}.invoice-card-heading strong{font-size:17px}.invoice-card-totals{gap:10px;margin:23px 0}.invoice-card-totals strong{font-size:17px}.invoice-cards .button{font-size:14px}.payment-methods-note{align-items:flex-start;padding:20px}.payment-methods-note small{font-size:12px;line-height:1.7}.payment-methods-note strong{font-size:14px}.footnote{padding:17px 20px;font-size:11px}}@media (max-width:380px){.main-content{padding-left:13px;padding-right:13px}.topbar{padding:0 12px}.stats-grid{gap:9px}.stat-card{padding:17px 13px}.stat-card>strong{font-size:23px}.stat-card>small{font-size:9px}.stat-title{font-size:10px}.stat-card .stat-icon{width:29px;height:29px;right:11px}.lesson-row{gap:8px}.lesson-info strong{font-size:12px}.lesson-row .badge{max-width:72px;font-size:8px}.lesson-time{min-width:40px}.parent-homework-top .course-icon{width:37px;height:37px}.parent-homework-top .badge{font-size:8px}.invoice-card-totals strong{font-size:15px}.topbar-actions .icon-button:first-child{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
:root{--bg:#edf4f2;--surface:#ffffffc7;--ink:#203a3c;--muted:#6b8387;--line:#4777771f;--wine:#147e78;--wine-dark:#09655f;--wine-soft:#e0f2ed;--nav:#f1f7f5;--green:#167b63;--purple:#7b66d4;--radius:23px;--shadow:0 6px 24px #3055530a, inset 0 1px 0 #fff}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-padding-top:100px}body{background-color:#edf4f2;background-image:radial-gradient(at 95% 3%,#ddd5f299 0,#0000 38%),radial-gradient(at 15% 55%,#cfede699 0,#0000 43%),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}button,input,select,textarea{border-radius:13px}button{-webkit-user-select:none;user-select:none}button,a{transition:color .2s,background .2s,border-color .2s,box-shadow .2s,transform .2s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #7370c9}input,select,textarea{color:#294849;background:#ffffffc9;border-color:#d6e3e0;font-size:14px}input:focus,select:focus,textarea:focus{border-color:#309991;box-shadow:0 0 0 4px #2b9b8d13}input[type=checkbox]{accent-color:var(--wine)}.button{background:#ffffffa8;border-color:#dce8e4;border-radius:13px;min-height:44px;padding:10px 16px;font-size:13px;box-shadow:inset 0 1px #ffffffb8}.button.primary{color:#fff;background:linear-gradient(130deg,#228e85,#11776f);border-color:#117f771f;box-shadow:0 5px 12px #166e6920,inset 0 1px #ffffff24}.button.primary:hover{background:linear-gradient(130deg,#319c91,#0d6c65);box-shadow:0 7px 18px #166e692b}.button:hover{background:#f1faf7;border-color:#b6d7ce}.button:active,.icon-button:active{transform:scale(.975)}.icon-button{color:#657f80;border-radius:13px}.icon-button:hover{color:#176b64;background:#d9eee573}.text-button{color:#157870;font-weight:600}.text-button:hover{color:#075c58}.avatar,.avatar.wine{color:#6855a6;background:linear-gradient(140deg,#e6e0fa,#eceafb);border:2px solid #ffffffc7;font-weight:650}.avatar.green{color:#1f7b68;background:#dff1e9}.avatar.blue{color:#507ba6;background:#e2edf8}.badge{border-radius:8px;padding:4px 8px;font-size:11px;font-weight:500;line-height:1.4}.badge.active,.badge.present,.badge.paid,.badge.verified,.badge.done,.badge.completed,.badge.accepted{color:#237e69;background:#e0f2e9}.badge.scheduled,.badge.doing,.badge.contacted{color:#7160ad;background:#eee9fa}.badge.absent,.badge.cancelled,.badge.void,.badge.declined{color:#b35461;background:#f9e7eb}.badge.excused,.badge.archived{color:#687c84;background:#eaf0f2}.badge.new,.badge.issued,.badge.late,.badge.draft{color:#9a7638;background:#faf0dc}.glass-shell{max-width:2200px;margin:auto}.sidebar{color:#668082;-webkit-backdrop-filter:blur(25px);background:linear-gradient(165deg,#ffffffc9,#eff8f1d9 65%,#e7f3efd9);border-right:1px solid #ffffffba;width:246px;padding:25px 16px 14px;box-shadow:7px 0 30px #315b4e03}.sidebar-brand{color:#203e3e;letter-spacing:-.055em;gap:10px;padding:0 8px 26px;font-size:25px}.sidebar-brand img{border:1px solid #fff;width:44px;height:44px;box-shadow:0 3px 8px #3567540c}.sidebar-brand small{color:#8a9c9a;letter-spacing:.01em;margin-top:3px;font-size:10px}.sidebar-collapse{width:28px;min-width:28px;height:28px;min-height:28px;position:absolute;top:83px;right:13px}.sidebar-caption{color:#91a5a4;letter-spacing:.14em;padding:3px 13px 15px;font-size:9px}.sidebar nav{scrollbar-color:#c9dfd7 transparent;padding:2px 0}.nav-item{border-radius:12px;gap:12px;min-height:42px;margin:2px 0;padding:10px 13px;font-size:12px;font-weight:500}.nav-item svg{stroke-width:1.65px;width:18px;height:18px}.nav-item:hover{color:#22796e;background:#dff0e784}.nav-item.selected{color:#116b63;background:linear-gradient(115deg,#c4e8dce8,#d3eaeac7);font-weight:650;box-shadow:inset 0 1px #ffffffb0,0 2px 5px #267b6204}.nav-item.selected svg{stroke-width:2px}.nav-count{background:#75b6a3}.sidebar-bottom{border-color:#d9e8df;margin-top:12px;padding-top:9px}.soon-tag{color:#8a74b9;background:#e9e4f7;border:1px solid #fff8;font-size:9px}.sidebar-user{color:#304f4b;background:0 0;border-top:1px solid #dce9e3;border-radius:0;margin-top:12px;padding:15px 8px 3px}.sidebar-user .avatar{color:#766393;background:#e3dbf2;width:34px;height:34px}.sidebar-user small{color:#82958f;font-size:9px;display:block}.workspace{margin-left:246px;transition:margin-left .24s}.topbar{-webkit-backdrop-filter:blur(25px);background:#ffffff6b;border-bottom:1px solid #ffffffac;gap:26px;height:79px;padding:0 32px}.global-search{color:#8b9da0;flex:1;order:-1;max-width:410px}.global-search input{font-size:12px}.key-hint{background:#ffffff56;border:1px solid #d5e4df;border-radius:5px;padding:1px 5px;font-size:9px}.branch-picker{gap:7px;margin-left:auto}.branch-picker select{background:0 0;max-width:170px;font-size:11px;font-weight:500}.branch-picker>svg{color:#7a918b;width:16px}.topbar-actions{gap:8px}.profile-button{gap:9px}.profile-button strong{font-size:11px}.profile-button small{color:#8a9d98;max-width:150px;font-size:9px}.profile-button .avatar{width:36px;height:36px;font-size:12px}.profile-button>svg{color:#99aaa5}.topbar-divider{background:#dce7e2;margin:0 5px}.ai-topbar{color:#7660b1;white-space:nowrap;background:linear-gradient(125deg,#faf8ffab,#e8f5f199);border:1px solid #d6cee983;min-height:35px;padding:6px 10px;font-size:11px}.notification-button i{background:#c38aa2;border-color:#f6faf8}.main-content{max-width:1780px;margin:0 auto;padding:29px 32px 22px}.main-content:focus{outline:none}.page-heading{gap:15px;margin-bottom:24px}.page-heading h1{letter-spacing:-.045em;margin-bottom:8px;font-size:clamp(25px,2.05vw,34px);font-weight:650}.page-heading p{color:#7c9290;font-size:12px;line-height:1.65}.panel{border-radius:var(--radius);box-shadow:var(--shadow);background:linear-gradient(145deg,#ffffffcf,#ffffff98);border:1px solid #ffffffed;margin-bottom:21px;overflow:hidden}.panel-heading{gap:14px;padding:22px 23px 17px}.panel-heading h3{letter-spacing:-.025em;font-size:15px;font-weight:620}.panel-heading .text-button{font-size:11px}.stat-icon{border-radius:13px;width:36px;height:36px}.stat-icon.green,.course-icon.green,.attention-icon.green{color:#4caa8d;background:#e0f3e9}.stat-icon.blue,.course-icon.blue,.attention-icon.blue{color:#719bbd;background:#e4f0f9}.stat-icon.wine,.course-icon.wine,.attention-icon.wine{color:#9c81cf;background:#eee8fa}.stat-icon.amber,.course-icon.amber,.attention-icon.amber{color:#c6a06b;background:#fbefd7}.stats-grid{gap:17px}.stat-card{padding:21px}.stat-card>strong{font-size:28px}.finance-stats{gap:16px}.finance-stats>.panel{padding:22px}.finance-stats strong{font-size:27px}.finance-stats span{font-size:12px}.finance-stats small{font-size:11px}.demo-banner{color:#969779;background:#f5f5e4b3;border:1px solid #e3e5c77a;border-radius:10px;margin-bottom:20px;padding:7px 12px;font-size:10px}.demo-banner small{color:#a0a185;font-size:9px}.demo-banner svg{width:12px}.workspace-footer{color:#91a7a1;padding-top:22px;font-size:10px}.info-banner,.warning-banner{border-radius:13px;font-size:12px}.search-results{background:#fafdfa;border:1px solid #dbece4;border-radius:16px;box-shadow:0 15px 45px #3357481a}.table-toolbar{border-bottom:1px solid var(--line);padding:18px 22px}.table-toolbar .search-field{max-width:340px}.table-toolbar>.muted{font-size:11px}th{color:#829a92;background:#f0f6f3a3;padding:13px 19px;font-size:10px}td{border-color:#e6eeeb99;padding:17px 19px;font-size:12px}tbody tr:hover{background:#eaf5ef66}.cell-content{min-width:0}.cell-content>strong{font-size:12px}.person-cell{min-width:150px}.person-cell strong{white-space:normal;font-size:12px}.person-cell small{color:#91a29b;font-size:10px}.person-cell .avatar{width:35px;height:35px}.pagination{color:#859a93;padding:15px 22px;font-size:11px}.tabs{background:#dfeae455;border:1px solid #ffffffb3;border-radius:13px;gap:3px;width:fit-content;max-width:100%;margin-bottom:22px;padding:4px;overflow-x:auto}.tabs button{white-space:nowrap;border-radius:9px;min-height:39px;padding:9px 16px;font-size:12px}.tabs button.active{color:#257b6c;background:#fff;box-shadow:0 2px 7px #3659460a}.tabs button.active>span{color:#318875;background:#dbefe5}.group-card{padding:22px}.group-card h3{font-size:18px}.group-card>.muted{font-size:11px}.group-meta{border-color:#e2eee6;padding:16px 0}.capacity-label{font-size:11px}.progress-track{background:#e4eee8;border-radius:20px}.progress-track>div{background:linear-gradient(90deg,#88c7b0,#4ca997)}.course-cover{color:#32796a;background:linear-gradient(135deg,#c8e7db,#c9e0e8)}.course-card.blue .course-cover{background:linear-gradient(135deg,#d2e6ee,#d6d5f1)}.course-card.green .course-cover{background:linear-gradient(135deg,#d5eedb,#b8ded6)}.course-card.amber .course-cover{background:linear-gradient(135deg,#f4e7c7,#e4deef)}.course-content h3{font-size:19px}.calendar-toolbar{padding:22px}.calendar-toolbar input{border-radius:12px;font-size:13px}.week-strip{gap:10px;padding:0 22px 22px}.week-strip>button{background:#ffffff69;border-color:#dfebe4;border-radius:14px}.week-strip button.selected{color:#fff;background:linear-gradient(130deg,#258e81,#167e73);border-color:#0000;box-shadow:0 5px 15px #167e7320}.week-strip button.selected strong{color:#fff}.schedule-lesson-body{border-left-color:#b9d9cc}.schedule-lesson h3{font-size:16px}.schedule-lesson:hover{background:#e7f2eb55}.journal-toolbar{background:#ffffff40;padding:20px}.attendance-options button{color:#637e73;border:1px solid #d7e5dc;border-radius:10px;min-height:42px}.attendance-options button.selected.present{color:#237a5c;background:#d9f0df;border-color:#aacfb9}.attendance-options button.selected.absent{color:#ad5d66;background:#f6e2e5;border-color:#e8bfc7}.attendance-options button.selected.late{color:#a2803a;background:#f8edcf;border-color:#e6d3a6}.attendance-options button.selected.excused{color:#7d679c;background:#eee7f7;border-color:#d7c8e8}.billing-contract-card{padding:22px}.billing-contract-numbers,.billing-detail-metrics>div{background:#edf5ef9e;border-color:#dceae1;border-radius:15px}.billing-contract-head h3{font-size:17px}.panel.billing-live-header{background:linear-gradient(120deg,#e5f2e9c9,#eeebf7cf);border-color:#ffffffd9}.billing-live-header .eyebrow{color:#749c8d}.billing-live-header h3{color:#3b5d52}.billing-live-totals>div{border-color:#cedfd5}.billing-live-totals>div:last-child strong{color:#7f6eac}.billing-roster-pay{background:#e9f3ec;border-color:#dae8df}.billing-demo-panel{background:#f6f8efb3;border-color:#e5eadd}.billing-demo-icon{color:#8a9c74;background:#e5ede1}.settings-row{border-color:#e1ebe3}.settings-row strong{font-size:13px}.settings-row small{font-size:11px}.profile-card{background:linear-gradient(155deg,#ffffffc7,#e5f1e9a6);padding:35px 25px}.profile-card>.avatar{width:82px;height:82px;font-size:26px;box-shadow:0 8px 30px #83709414}.profile-card h2{margin:17px 0 10px;font-size:24px}.ai-workspace{background:linear-gradient(130deg,#ffffffbc,#e9e6f4a8,#e1f0e79c)}.ai-history{background:#ffffff45;border-right:1px solid #fff9}.ai-main{background:0 0;min-height:610px}.ai-orb{color:#8d75b8;background:radial-gradient(circle at 28% 20%,#fff,#cdece388 42%,#c8b8ebad 75%,#bba8eccc);border:1px solid #fff;border-radius:32%;box-shadow:inset 0 4px 12px #fff9,0 17px 50px #9b83c91f}.ai-prompts button{color:#60766f;background:#ffffff96;border:1px solid #ffffffd9;border-radius:19px}.ai-composer{background:#ffffffb0;border-color:#fff;border-radius:20px;box-shadow:0 5px 25px #687d7607}.ai-disclaimer{color:#8a939a}.modal-backdrop{-webkit-backdrop-filter:blur(7px);background:#18372e38}.modal{background:#f8fcf9f5;border:1px solid #fff;border-radius:26px;box-shadow:0 35px 100px #25483730,inset 0 1px #fff}.modal-heading{border-color:#e4eee6;padding:25px}.modal-heading h2{font-size:23px}.modal-heading p{font-size:12px}.editor,.detail-content,.invite-result{padding:25px}.modal-actions{border-color:#e0eae2}.form-grid{gap:18px}.form-grid label{font-size:12px}.form-grid small{color:#85988d;font-size:11px}.toast{color:#f4faf6;background:#224b40;border:1px solid #729d85;border-radius:17px;box-shadow:0 12px 30px #284c4021}.toast .icon-button{color:#c5ddce}.mobile-brand,.mobile-context-bar{display:none}.profile-security-only{margin-top:28px;grid-template-columns:minmax(0,1fr);max-width:1120px;margin-inline:auto}.mobile-menu-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:10px 22px 26px;display:grid}.mobile-menu-grid button{color:#466e60;text-align:center;background:#ffffff9e;border:1px solid #e3ece5;flex-direction:column;justify-content:flex-start;align-items:center;gap:9px;min-height:98px;padding:13px 8px;font-size:11px;display:flex}.mobile-menu-grid button>span{color:#429480;background:#e9f2e9;border-radius:12px;place-items:center;width:39px;height:39px;display:grid}.mobile-menu-grid button:nth-child(3n+2)>span{color:#9380b7;background:#eee9f7}.mobile-menu-grid button[aria-current=page]{background:#d9eee2;border-color:#aaceb8}.compact-nav .sidebar{width:82px;padding:23px 13px 13px}.compact-nav .workspace{margin-left:82px}.compact-nav .sidebar-brand{padding:0 4px 18px}.compact-nav .sidebar-brand>span,.compact-nav .sidebar-caption,.compact-nav .nav-item>span,.compact-nav .sidebar-user>span:not(.avatar),.compact-nav .sidebar-user>svg{display:none}.compact-nav .sidebar-collapse{width:100%;margin:0 0 12px;position:static}.compact-nav .nav-item{justify-content:center;padding:12px}.compact-nav .sidebar-user{justify-content:center;padding:13px 0 0}.pd-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:26px;display:flex}.pd-heading h1{letter-spacing:-.045em;margin:4px 0 7px;font-size:clamp(25px,2.2vw,34px);font-weight:630}.pd-heading p{color:#7c918a;margin:0;font-size:12px}.pd-eyebrow{color:#88a193;letter-spacing:.1em;font-size:10px}.pd-heading-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.pd-period-picker{color:#789288;background:#ffffffac;border:1px solid #fff;border-radius:12px;align-items:center;gap:8px;padding:0 12px;display:flex}.pd-period-picker select,.pd-period-picker input{background:0 0;border:none;width:auto;min-height:39px;padding:8px 0;font-size:12px}.pd-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:22px;display:grid}.panel.pd-kpi{min-height:160px;margin:0;padding:21px;position:relative}.pd-kpi-top{color:#668077;align-items:center;gap:10px;font-size:11px;display:flex}.pd-icon{color:#64aa91;background:#dff0e6;border-radius:10px;flex-shrink:0;place-items:center;width:31px;height:31px;display:inline-grid}.pd-icon svg{width:17px;height:17px}.pd-lavender .pd-icon{color:#a18acb;background:#eae4f8}.pd-blue .pd-icon{color:#79a4b6;background:#e0eff4}.pd-amber .pd-icon{color:#c8aa67;background:#fbefd6}.pd-kpi-value{letter-spacing:-.045em;color:#294940;margin:16px 0 12px;font-size:clamp(23px,2vw,32px);font-weight:650;line-height:1.15;display:block}.pd-kpi-foot{color:#91a296;justify-content:space-between;align-items:center;gap:6px;font-size:10px;display:flex}.pd-sparkline{flex-shrink:0;width:86px;height:30px}.pd-analytics-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);align-items:stretch;gap:21px;margin-bottom:21px;display:grid}.pd-analytics-grid>.panel{margin:0}.pd-lower-grid{grid-template-columns:1.25fr 1fr 1fr;align-items:start;gap:21px;display:grid}.pd-lower-grid>.panel{min-width:0;margin:0}.pd-dashboard .panel-heading{padding:21px 22px 10px}.pd-dashboard .panel-heading h3{font-size:14px}.pd-dashboard .empty{min-height:150px;padding:30px 18px}.pd-dashboard .empty h3{font-size:15px}.pd-dashboard .empty p{font-size:11px}.pd-dashboard .footnote{margin:15px 0;font-size:10px}.pd-kpi{text-align:left;color:inherit;font:inherit}.pd-kpi-top>span:nth-child(2){flex:1}.pd-kpi-top>svg{color:#a3b9aa;width:13px}.pd-greeting-spark{color:#b5ae7a;margin-left:10px;font-size:.8em;font-weight:400}.pd-period-picker{gap:0;padding:0 3px}.pd-period-picker label{flex-direction:row;align-items:center;gap:7px;font-weight:500}.pd-period-picker .icon-button{min-width:30px;min-height:37px}.pd-period-picker input{max-width:140px}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pd-period-label{color:#8e9f92;text-transform:capitalize;white-space:nowrap;font-size:10px}.pd-chart-head{justify-content:space-between;align-items:center;gap:16px;padding:7px 22px 10px;display:flex}.pd-chart-total{align-items:baseline;gap:10px;display:flex}.pd-chart-total strong{letter-spacing:-.04em;font-size:24px;font-weight:620}.pd-chart-total small,.pd-chart-head>span{color:#8ea394;font-size:10px}.pd-chart-head .tabs{border-radius:9px;margin:0;padding:3px}.pd-chart-head .tabs button{border-radius:6px;min-height:29px;padding:5px 10px;font-size:10px}.pd-chart-head>div{flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0;display:flex}.pd-chart-head>div>.pd-eyebrow{text-transform:capitalize;width:100%;font-size:9px}.pd-chart-head>div>strong{letter-spacing:-.04em;color:#365d48;font-size:26px;font-weight:630}.pd-chart-head>div>span:last-child{color:#97a58f;font-size:9px}.pd-chart-tag{color:#7c9a76;background:#e5f2e679;border:1px solid #dbeaddaa;border-radius:8px;flex-shrink:0;align-items:center;gap:5px;padding:5px 8px;font-size:9px;display:inline-flex}.pd-segmented{background:#e8f0e9a1;border:1px solid #fff;border-radius:10px;gap:2px;padding:3px;display:flex}.pd-segmented button{color:#8b9d8f;background:0 0;border:0;border-radius:7px;padding:6px 9px;font-size:10px}.pd-segmented button[aria-pressed=true]{color:#3c866d;background:#fff;box-shadow:0 2px 4px #466b4d08}.pd-cash-tabs{background:#e8f0e9a1;border:1px solid #fff;border-radius:10px;gap:2px;padding:3px;display:flex}.pd-cash-tabs button{color:#8b9d8f;background:0 0;border:0;border-radius:7px;padding:6px 10px;font-size:10px}.pd-cash-tabs button.active,.pd-cash-tabs button[aria-pressed=true]{color:#3c866d;background:#fff;box-shadow:0 2px 4px #466b4d08}.pd-revenue-visual{color:#789486;padding:0 18px}.pd-chart-selection{color:#8d9f91;justify-content:center;align-items:baseline;gap:10px;min-height:32px;font-size:10px;display:flex}.pd-chart-selection strong{color:#4e7a64;font-size:13px}.pd-chart-date{color:#819685}.pd-revenue-svg{touch-action:pan-y;width:100%;height:auto;max-height:245px;display:block;overflow:visible}.pd-chart-control{align-items:center;gap:13px;padding:0 8px 8px;display:flex}.pd-chart-control>span{white-space:nowrap;color:#92a18f;font-size:9px}.pd-chart-slider{accent-color:#67ad93;height:20px;min-height:20px;box-shadow:none;cursor:pointer;background:0 0;border:none;padding:0}.pd-chart-note{color:#97a496;text-align:center;margin:2px 0 10px;font-size:10px}.pd-money-summary{border-top:1px solid #e5eee590;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:13px 22px 18px;display:grid}.pd-money-summary>div{flex-direction:column;gap:5px;display:flex}.pd-money-summary span,.pd-money-summary small{color:#91a18e;font-size:9px}.pd-money-summary strong{color:#526d56;font-size:12px;font-weight:620}.pd-attendance-body{grid-template-columns:minmax(0,1fr);justify-items:center;gap:10px;padding:4px 22px 16px;display:grid}.pd-donut{width:164px;height:164px;position:relative}.pd-donut>svg{width:100%;height:100%}.pd-donut-label{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:absolute;inset:0}.pd-donut-label strong{color:#365d48;letter-spacing:-.045em;font-size:31px;font-weight:620}.pd-donut-label span{color:#8b9d89;font-size:10px}.pd-donut-label small{color:#a2ad98;font-size:9px}.pd-chart-legend{grid-template-columns:1fr 1fr;gap:11px 15px;width:100%;display:grid}.pd-chart-legend>div{color:#889984;grid-template-columns:6px 1fr auto;align-items:center;gap:6px;font-size:9px;display:grid}.pd-chart-legend strong{color:#5d795b;font-size:11px;font-weight:550}.pd-chart-legend small{display:none}.pd-legend-dot{border-radius:50%;width:6px;height:6px}.pd-panel-foot{color:#97a48f;border-top:1px solid #e2ebe287;justify-content:space-between;align-items:center;gap:13px;padding:13px 22px;font-size:9px;line-height:1.55;display:flex}.pd-panel-foot>.text-button{flex-shrink:0;font-size:10px}.pd-schedule-list,.pd-group-list,.pd-task-list{padding:0 22px 10px}.pd-schedule-row,.pd-group-row,.pd-task-row{width:100%;color:inherit;text-align:left;background:0 0;border:0;border-bottom:1px solid #e9efe680;border-radius:0;align-items:center;gap:12px;padding:16px 0;display:flex}.pd-schedule-row:last-child,.pd-group-row:last-child,.pd-task-row:last-child{border:0}.pd-schedule-row:hover,.pd-group-row:hover,.pd-task-row:hover{background:#e6f1e94d}.pd-lesson-time{flex-direction:column;align-items:flex-start;gap:4px;min-width:37px;display:flex}.pd-lesson-time strong{color:#526e53;font-size:12px}.pd-lesson-time small{color:#a1ad97;font-size:9px}.pd-lesson-line{background:#94c6a5;border-radius:4px;flex-shrink:0;width:3px;min-height:38px}.pd-lesson-line.pd-lavender{background:#c2b0da}.pd-lesson-line.pd-blue{background:#a1c1d4}.pd-lesson-title,.pd-group-content,.pd-task-row>span:nth-child(2){flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.pd-lesson-title strong,.pd-group-content strong,.pd-task-row strong{color:#526d55;font-size:12px;font-weight:600;line-height:1.45}.pd-lesson-title small,.pd-group-content small,.pd-task-row small{color:#99a78f;font-size:9px;line-height:1.6}.pd-lesson-status .badge{width:fit-content;padding:2px 6px;font-size:9px}.pd-schedule-row>svg,.pd-group-row>svg,.pd-task-row>svg{color:#a7b49b;flex-shrink:0;width:13px}.pd-course-icon,.pd-task-icon{color:#87ad80;background:#e5f1e3;border-radius:11px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.pd-course-icon.pd-lavender,.pd-task-icon.pd-lavender{color:#a18bba;background:#ece7f5}.pd-course-icon.pd-blue,.pd-task-icon.pd-blue{color:#8fabc0;background:#e7eef5}.pd-task-icon.pd-amber{color:#c3a96d;background:#f6efd9}.pd-progress-track{background:#e8eee9;border-radius:5px;width:100%;height:4px;margin-top:3px;display:block;overflow:hidden}.pd-progress-track>span{border-radius:inherit;height:100%;display:block}.pd-group-course{color:#6b8387;font-size:11px;line-height:1.5;display:block}.pd-group-heading{justify-content:space-between;align-items:baseline;gap:9px;display:flex}.pd-group-heading>small{flex-shrink:0}.pd-bottom-grid{grid-template-columns:1.4fr 1fr;gap:21px;margin-top:21px;display:grid}.pd-quick-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:4px 22px 20px;display:grid}.pd-quick-actions button{color:#92a985;background:#fff5;border:1px solid #e4ece0;border-radius:12px;flex-direction:column;align-items:flex-start;gap:9px;padding:13px 12px;font-size:10px;display:flex;position:relative}.pd-quick-actions button>svg:last-child{color:#b0bda4;width:12px;position:absolute;top:9px;right:8px}.pd-quick-actions button:hover{background:#edf6e6}.panel.pd-ai-card{text-align:left;color:#657a63;background:radial-gradient(at 100% 0,#d9cfeb8a,#0000 65%),linear-gradient(125deg,#e0f0e4ab,#e7eaf2b0);align-items:center;gap:17px;padding:24px;display:flex}.pd-ai-orb{color:#9381b1;background:linear-gradient(145deg,#ffffffdb,#d4c8e699);border:1px solid #fff;border-radius:19px;flex-shrink:0;place-items:center;width:55px;height:55px;display:grid;transform:rotate(-8deg);box-shadow:inset 0 3px 9px #fffc,0 8px 25px #8068930b}.pd-ai-card>span:nth-child(2){flex-direction:column;flex:1;gap:6px;display:flex}.pd-ai-title{color:#8c7da1;font-size:12px;font-weight:650}.pd-ai-title>span{background:#fff8;border:1px solid #fff;border-radius:6px;margin-left:6px;padding:2px 5px;font-size:8px;font-weight:400}.pd-ai-card strong{letter-spacing:-.025em;font-size:14px;font-weight:600}.pd-ai-card small{color:#95a38c;font-size:9px}.pd-ai-card>svg{color:#a59eb6;flex-shrink:0}.pd-onboarding>p{color:#82967a;padding-inline:22px;font-size:12px}.pd-onboarding-steps{grid-template-columns:repeat(3,1fr);gap:12px;padding:0 22px 22px;display:grid}.pd-onboarding-steps button{color:#67845c;background:#fff8;border:1px solid #e2eada;border-radius:13px;align-items:center;gap:10px;padding:15px;display:flex}.pd-onboarding-steps strong{text-align:left;flex:1;font-size:12px}.pd-onboarding-steps button>span{background:#e7efdf;border-radius:9px;padding:3px 9px}.login-layout{background:radial-gradient(at 70% 5%,#dad3ed7d,#0000 60%);gap:0;min-height:100dvh;padding:22px}.login-brand{color:#345c4e;background:radial-gradient(at 10% 85%,#c7e4dba6,#0000 65%),linear-gradient(140deg,#edf6edd9,#cee9dfbf 50%,#dbd4efc7);border:1px solid #ffffffc9;border-radius:28px 0 0 28px;padding:45px}.brand-line{color:#264f40;font-size:25px}.brand-line img{width:58px;height:58px}.brand-sub{color:#486557}.login-statement h1{color:#2b5748;font-size:clamp(40px,4.4vw,65px);font-weight:600;line-height:1.13}.login-statement h1 span{color:#28715c}.login-statement p,.brand-features{color:#415f52}.login-statement .eyebrow{color:#486557;font-size:10px}.brand-features span{color:#234c43;background:#ffffffc7;border:1px solid #9dbdb1;border-radius:13px;padding:10px 13px;font-size:14px;font-weight:600;box-shadow:0 3px 10px #305a4b0a,inset 0 1px #fff}.brand-features span svg{color:#126c60;stroke-width:2px;flex-shrink:0}.brand-footer{color:#486557;font-size:10px}.login-side{background:#ffffffb0;border:1px solid #ffffffd9;border-radius:0 28px 28px 0}.login-card h2{color:#2b4b40;font-size:32px;font-weight:620}.login-card .eyebrow{color:#486557;font-size:10px}.login-help{color:#486557;background:#eaf3ec8c;border:1px solid #e0eadf;border-radius:13px;align-items:center;padding:16px 18px;line-height:1.55}.local-note,.login-copyright{color:#486557}.login-card input::placeholder{color:#5d7068;opacity:1}@media (hover:hover) and (prefers-reduced-motion:no-preference){.pd-kpi:hover{transform:translateY(-3px);box-shadow:0 12px 28px #3659440a,inset 0 1px #fff}.group-card,.course-card,.pd-kpi{transition:transform .24s,box-shadow .24s}.group-card:hover,.course-card:hover{box-shadow:0 12px 28px #3659440a,inset 0 1px #fff}}@media (min-width:1001px){.main-content>.pd-dashboard,.main-content>.profile-layout,.main-content>.card-grid{animation:.35s both glass-enter}}@keyframes glass-enter{0%{opacity:.5;transform:translateY(6px)}to{opacity:1;transform:none}}@media (max-width:1400px){.topbar{gap:15px;padding-inline:24px}.main-content{padding:25px 24px}.profile-button>span:not(.avatar),.profile-button>svg{display:none}.pd-lower-grid{grid-template-columns:1.25fr 1fr}.pd-tasks{grid-column:1/-1}.pd-kpi-foot{flex-wrap:wrap}}@media (max-width:1150px){.sidebar{width:218px}.workspace{margin-left:218px}.sidebar-brand{font-size:22px}.sidebar-brand small{font-size:9px}.global-search{max-width:250px}.ai-topbar{display:none}.pd-heading{align-items:flex-start}.pd-heading-actions{flex-wrap:wrap;justify-content:flex-end}.pd-kpi-grid{gap:12px}.panel.pd-kpi{padding:17px}.pd-analytics-grid{grid-template-columns:minmax(0,1.45fr) minmax(240px,1fr)}}@media (max-width:1000px){.sidebar,.compact-nav .sidebar{display:none}.workspace,.compact-nav .workspace{margin-left:0}.topbar{padding:calc(env(safe-area-inset-top) + 8px) 24px 8px;height:auto;min-height:78px}.mobile-brand{text-align:left;color:#355344;letter-spacing:-.055em;background:0 0;border:0;align-items:center;gap:9px;padding:0;font-size:23px;font-weight:650;display:flex}.mobile-brand img{border-radius:50%;width:37px;height:37px}.mobile-brand small{letter-spacing:.02em;color:#91a092;margin-top:0;font-size:8px;font-weight:400;display:block}.mobile-menu{display:none}.global-search{order:0;margin-left:10px}.topbar-actions{margin-left:auto}.bottom-nav{left:50%;bottom:calc(12px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(24px);z-index:23;background:#f6faf3d9;border:1px solid #ffffffed;border-radius:23px;gap:2px;width:min(520px,100% - 30px);height:66px;padding:5px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 35px #2b51401c,inset 0 1px #fff}.bottom-nav button{color:#8a9f90;background:0 0;border:0;border-radius:17px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;min-width:0;padding:4px 2px;font-size:9px;display:flex}.bottom-nav button svg{stroke-width:1.75px;width:21px;height:21px}.bottom-nav button.selected{color:#388469;background:linear-gradient(130deg,#dceee0,#d8eade)}.bottom-nav button.selected svg{stroke-width:2.1px}.main-content,.parent-shell .main-content{padding-bottom:calc(104px + env(safe-area-inset-bottom))}.workspace-footer{margin-bottom:0}}@media (max-width:760px){.mobile-context-bar{color:#88a188;align-items:center;gap:7px;margin:-4px 0 17px;display:flex}.mobile-context-bar select{color:#729479;background:0 0;border:0;width:auto;max-width:64%;min-height:30px;padding:0;font-size:11px}.mobile-context-bar>span{color:#a3b197;white-space:nowrap;margin-left:auto;font-size:8px}.pd-chart-head{flex-wrap:wrap;gap:8px;padding-inline:18px}.pd-chart-selection{flex-wrap:wrap;justify-content:flex-start;gap:5px 9px;padding-inline:9px}.pd-chart-selection>span:last-child{font-size:9px}.pd-revenue-visual{padding-inline:9px}.pd-chart-control{padding-inline:16px}.pd-money-summary{gap:9px;padding:13px 18px 18px}.pd-money-summary strong{font-size:11px}.pd-money-summary small,.pd-money-summary span{font-size:9px}.pd-attendance-body{align-items:center;gap:11px;padding:5px 16px 16px;display:flex}.pd-donut{flex-shrink:0;width:147px;height:147px}.pd-chart-legend{flex-direction:column;gap:13px;display:flex}.pd-chart-legend>div{font-size:9px}.pd-panel-foot{padding:13px 18px;font-size:9px}.pd-schedule-list,.pd-group-list,.pd-task-list{padding-inline:18px}.pd-bottom-grid{grid-template-columns:minmax(0,1fr);gap:0;margin-top:17px}.pd-quick-actions{gap:7px;padding:4px 18px 19px}.pd-quick-actions button{padding:12px 9px;font-size:9px}.pd-onboarding-steps{grid-template-columns:1fr}body{background:radial-gradient(at 100% 0,#e8dff380,#0000 47%),radial-gradient(at 0 65%,#d6eaddb3,#0000 65%),#f0f5ef}.topbar{background:#f5f8f2bd;gap:10px;min-height:76px;padding-inline:19px}.topbar .branch-picker,.global-search,.topbar-divider,.topbar-actions>.icon-button:first-of-type{display:none}.topbar .profile-button{padding:0}.topbar .profile-button .avatar{width:34px;height:34px}.topbar-actions>.icon-button{min-width:37px;min-height:40px}.main-content{padding:19px 17px calc(105px + env(safe-area-inset-bottom))}.panel{background:linear-gradient(145deg,#ffffffd9,#ffffffad);border-radius:21px;margin-bottom:17px}.panel-heading{padding:20px 18px 13px}.page-heading{gap:12px;margin-bottom:20px}.page-heading h1{margin-bottom:7px;font-size:28px}.page-heading p{margin-bottom:0;font-size:11px;line-height:1.6}.page-heading>.button{min-height:44px;font-size:12px}.demo-banner{margin-bottom:17px;padding:6px 9px;font-size:9px}.demo-banner small{display:none}.button{min-height:45px;font-size:12px}.icon-button{min-width:44px;min-height:44px}input,select,textarea,.form-grid input,.form-grid select,.form-grid textarea{min-height:48px;font-size:16px}.pd-heading{margin-bottom:20px;display:block}.pd-heading h1{font-size:28px}.pd-heading p{font-size:11px}.pd-heading-actions{justify-content:flex-start;gap:8px;margin-top:15px}.pd-period-picker{flex:0;width:fit-content}.pd-period-picker input,.pd-period-picker select{min-height:39px;font-size:12px}.pd-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-bottom:17px}.panel.pd-kpi{border-radius:19px;min-height:150px;padding:16px}.pd-kpi-top{align-items:flex-start;gap:7px;font-size:10px}.pd-icon{border-radius:9px;width:26px;height:26px}.pd-icon svg{width:15px;height:15px}.pd-kpi-value{overflow-wrap:anywhere;margin:13px 0 11px;font-size:25px}.pd-kpi-foot{gap:5px;font-size:9px}.pd-sparkline{width:60px;height:22px}.pd-analytics-grid,.pd-lower-grid{grid-template-columns:minmax(0,1fr);gap:16px;margin-bottom:17px;display:grid}.pd-tasks{grid-column:auto}.pd-dashboard .panel-heading{padding:20px 18px 10px}.pd-dashboard .panel-heading h3{font-size:14px}.pd-dashboard .panel-heading .text-button{font-size:10px}.responsive-table{padding:0 12px 4px;overflow:visible}.responsive-table table,.responsive-table tbody,.responsive-table tr,.responsive-table td{width:100%;min-width:0;display:block}.responsive-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.responsive-table tbody{gap:12px;display:grid}.responsive-table tr{background:#ffffff8f;border:1px solid #e0eae1;border-radius:16px;padding:8px 14px}.responsive-table td{border-bottom:1px solid #edf1eaa3;justify-content:space-between;align-items:flex-start;gap:14px;padding:10px 0;font-size:12px;display:flex}.responsive-table td:before{content:attr(data-label);color:#93a08e;overflow-wrap:anywhere;flex:0 0 30%;min-width:0;padding-top:2px;font-size:10px}.responsive-table td:first-child{padding:9px 0 13px}.responsive-table td:first-child:before,.responsive-table td[data-label=""]:before{display:none}.responsive-table td:first-child .cell-content{text-align:left;width:100%}.responsive-table td:last-child{border:none}.cell-content{text-align:right;overflow-wrap:anywhere;flex:1}.cell-content>div,.cell-content .tag-stack,.cell-content .row-actions{justify-content:flex-end}.cell-content .person-cell{justify-content:flex-start}.cell-content .row-actions{flex-wrap:wrap}.person-cell,.person-cell>span{min-width:0}.person-cell strong{font-size:13px}.person-cell small{font-size:10px}.person-cell .avatar{width:38px;height:38px}.table-toolbar{border:none;flex-wrap:wrap;gap:9px;padding:15px 16px}.search-field{min-width:0}.search-field input{min-height:40px;font-size:16px}.table-toolbar .search-field{background:#f2f7ef70;border:1px solid #e1e9df;border-radius:11px;flex:100%;width:100%;max-width:none;padding:0 10px}.pagination{padding:15px 17px;font-size:10px}.tabs{width:100%}.tabs button{flex:1;min-height:40px;padding:8px 12px;font-size:11px}.roster-row{align-items:stretch;gap:12px;padding:18px}.roster-row>.person-cell{width:100%}.attendance-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;display:grid}.attendance-options button{min-height:45px;padding:9px;font-size:11px}.attendance-options button:last-child{grid-column:1/-1}.journal-toolbar{padding:18px}.journal-toolbar>label,.journal-toolbar>.button{width:100%}.billing-roster-pay{border-radius:12px;justify-content:space-between;width:100%;margin:0}.billing-contract-grid,.card-grid,.invoice-cards{grid-template-columns:minmax(0,1fr)}.billing-contract-card,.group-card{padding:20px}.billing-contract-numbers{gap:10px;padding:13px}.billing-live-totals{flex-wrap:wrap}.billing-live-totals strong{font-size:25px}.finance-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-stats>.panel{padding:17px 16px}.finance-stats strong{font-size:24px}.finance-stats>.panel:last-child{margin-top:0}.week-strip{gap:5px;padding:0 13px 17px}.week-strip>button{border-radius:12px;min-width:0;padding:10px 0}.week-strip strong{font-size:18px}.week-strip span,.week-strip small{font-size:9px}.calendar-toolbar{flex-wrap:wrap;gap:10px;padding:17px}.calendar-toolbar input{min-height:42px;font-size:13px}.schedule-lesson{gap:12px;padding:18px 3px}.schedule-lesson h3{font-size:15px}.schedule-lesson-body{padding-left:12px}.modal{width:100%;max-width:100%;max-height:calc(100dvh - 35px - env(safe-area-inset-top));padding-bottom:env(safe-area-inset-bottom);border-radius:27px 27px 0 0;inset:auto 0 0;transform:none}.modal:before{content:"";background:#c8d6c9;border-radius:8px;width:35px;height:4px;margin:9px auto 0;display:block}.modal-heading{padding:17px 21px 18px}.modal-heading h2{font-size:22px}.modal-heading p{font-size:11px}.editor,.detail-content,.invite-result{padding:20px}.form-grid{grid-template-columns:1fr}.form-grid label{font-size:12px}.modal-actions{background:#f8fcf9;padding:17px 0 0;position:sticky;bottom:0}.modal-actions .button{flex:1}.toast{bottom:calc(92px + env(safe-area-inset-bottom));width:auto;max-width:none;font-size:12px;left:18px;right:18px}.profile-layout{grid-template-columns:1fr}.profile-card{padding:28px 22px}.settings-row{padding:20px}.settings-row .button{min-height:44px}.ai-workspace{display:block}.ai-history{display:none}.ai-main{min-height:600px;padding:35px 20px}.ai-prompts{grid-template-columns:1fr 1fr;gap:11px}.ai-prompts button{padding:15px;font-size:12px}.ai-main h2{font-size:28px}.login-layout{flex-direction:column;min-height:100dvh;padding:0;display:flex}.login-brand{border-top:0;border-radius:0 0 30px 30px;min-height:240px;padding:28px}.brand-line img{width:44px;height:44px}.brand-line{font-size:21px}.login-statement{margin:30px 0 0}.login-statement h1{margin:12px 0 14px;font-size:34px}.login-statement .eyebrow{font-size:8px}.login-statement p{margin:0;font-size:12px}.brand-features,.brand-footer{display:none}.login-side{background:0 0;border:none;padding:29px 25px}.login-card{width:100%;max-width:420px;padding:0}.login-card h2{font-size:28px}.login-card>.muted{font-size:12px}.login-card form{gap:18px}.login-card label{font-size:12px}.login-help{font-size:11px}.login-copyright{margin:22px 0 7px;font-size:10px}}@media (max-width:380px){.main-content{padding-inline:13px}.panel.pd-kpi{padding:14px}.pd-kpi-value{font-size:23px}.pd-kpi-top{gap:5px;font-size:9px}.mobile-menu-grid{gap:7px;padding-inline:16px}.bottom-nav{width:calc(100% - 24px)}}.pd-teacher-focus{background:linear-gradient(135deg,#ffffffd9,#e6f2eedb);flex-direction:column;justify-content:center;align-items:flex-start;gap:15px;padding:28px;display:flex}.pd-teacher-focus h2{letter-spacing:-.035em;margin:0;font-size:clamp(24px,2vw,32px);line-height:1.2}.pd-teacher-focus p{color:#677f76;max-width:450px;margin:0;line-height:1.7}.pd-teacher-actions{flex-wrap:wrap;gap:10px;padding-block:6px;display:flex}.pd-lower-grid.pd-finance-lower{grid-template-columns:minmax(0,1fr)}.pd-finance-lower .pd-tasks{grid-column:1/-1}.pd-count-badge{color:#71609e;background:#e5e0f3;border-radius:9px;place-items:center;min-width:26px;height:26px;padding-inline:8px;font-size:12px;font-weight:600;display:grid}.pd-lesson-line.pd-amber{background:#d7b56d}.pd-course-icon.pd-amber{color:#ad873f;background:#faf0d9}.pd-schedule-row.is-current{background:linear-gradient(90deg,#ddf1e744,#0000)}.pd-onboarding-steps .is-done{color:#288562;background:#dcf0e4}.pd-kpi-foot,.pd-chart-selection,.pd-money-summary span,.pd-chart-legend>div,.pd-panel-foot,.pd-lesson-time small,.pd-lesson-title small,.pd-group-content small,.pd-task-row small,.pd-period-label{color:#667c72;font-size:11px}.pd-quick-actions button,.pd-segmented button,.pd-cash-tabs button{color:#527b70;font-size:11px}.pd-lesson-status{flex-shrink:0}@media (max-width:760px){.pd-eyebrow,.pd-kpi-top{font-size:11px}.pd-segmented button,.pd-cash-tabs button{min-height:40px}.pd-lesson-title strong,.pd-group-content strong,.pd-task-row strong{font-size:13px}.pd-chart-selection{flex-wrap:wrap;row-gap:4px}.responsive-table td:before{color:#687d74;font-size:11px}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.sidebar,.topbar,.bottom-nav,.modal{background:#f4f9f4}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (prefers-contrast:more){:root{--muted:#4c6a5c;--line:#9cb8a8}.panel,.topbar,.bottom-nav{background:#fff;border-color:#a8c1b3}.sidebar{background:#eef6ef}}
.login-card .login-apply{text-align:center;gap:12px;min-width:0;margin-top:24px;display:grid}.login-card .login-apply-link{white-space:normal;justify-content:center;gap:10px;width:100%;min-height:48px;margin:0}.login-card .login-apply-link svg{flex-shrink:0}.login-card .login-apply-caption{color:var(--muted,#587b71);text-align:center;overflow-wrap:anywhere;margin:0;padding:0 8px;font-size:13px;line-height:1.6}.login-side{flex-direction:column;gap:24px;min-width:0}.login-footer{text-align:center;overflow-wrap:anywhere;gap:8px;width:100%;max-width:420px;display:grid}.login-footer .login-copyright,.login-footer .local-note{color:#557268;margin:0;font-size:11px;line-height:1.6;position:static}.login-card-caption{align-items:center;gap:7px;display:flex}.login-card-caption svg{flex-shrink:0}.login-input{position:relative}.login-input>svg{color:#5e8379;pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.login-card .login-input input{padding-left:46px}.login-card .password-input button{min-width:44px;min-height:44px;top:50%;right:5px;transform:translateY(-50%)}.login-verification{min-width:0}.login-verification summary{color:#526c66;cursor:pointer;border-radius:10px;align-items:center;gap:8px;min-height:44px;font-size:12px;list-style:none;display:flex}.login-verification summary::-webkit-details-marker{display:none}.login-verification summary>svg{flex-shrink:0}.login-verification summary>svg:last-child{margin-left:auto;transition:transform .18s}.login-verification[open] summary>svg:last-child{transform:rotate(180deg)}.login-verification>label{margin:6px 0 4px}.login-verification summary:focus-visible{outline-offset:3px;outline:3px solid #118477}.login-ambient{display:none}@media (max-width:1000px),(max-width:1200px) and (pointer:coarse){.login-layout{isolation:isolate;min-height:100svh;padding:max(24px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));background:radial-gradient(at 2% 6%,#b9e5d8 0,#0000 48%),radial-gradient(at 100% 38%,#e0d9f7 0,#0000 47%),linear-gradient(155deg,#eef7f3,#f4f5fb 65%,#edf6f2);flex-direction:column;align-items:center;gap:20px;display:flex;position:relative}.login-brand{background:0 0;border:0;border-radius:0;width:100%;max-width:440px;min-height:0;padding:4px 10px 0;overflow:visible}.login-brand .brand-line{z-index:1;letter-spacing:.035em;color:#194d43;gap:12px;font-size:22px;position:relative}.login-brand .brand-line img{border:3px solid #ffffffeb;width:52px;height:52px;box-shadow:0 5px 16px #32685712}.login-brand .brand-sub{letter-spacing:.015em;color:#486c62;margin-top:2px;font-size:11px}.login-brand .login-statement{margin:23px 0 0;padding:0}.login-brand .login-statement h1{z-index:1;letter-spacing:-.045em;color:#163f37;margin:0;font-size:clamp(27px,7.3vw,34px);font-weight:650;line-height:1.16;position:relative}.login-statement h1 br{display:initial}.login-brand .login-statement h1 span{color:#13816f;margin-left:0}.login-statement .eyebrow,.login-statement>p,.login-brand .brand-features,.login-brand .brand-footer{display:none}.login-ambient{pointer-events:none;z-index:0;width:105px;height:105px;display:block;position:absolute;top:31px;right:2px}.login-ambient span{background:linear-gradient(140deg,#ffffffbd,#b5dace45);border:1px solid #ffffffed;border-radius:22px;width:68px;height:68px;position:absolute;top:22px;right:4px;transform:rotate(22deg);box-shadow:0 10px 26px #37695412,inset 0 1px #fff}.login-ambient span+span{background:linear-gradient(140deg,#f8f5ffed,#cbb8f469);border-radius:15px;width:42px;height:42px;top:0;right:49px;transform:rotate(-17deg)}.login-side{background:0 0;border:0;border-radius:0;gap:20px;width:100%;max-width:440px;padding:0}.login-card{background:linear-gradient(140deg,#ffffffef,#ffffffc9);border:1px solid #fff;border-radius:28px;width:100%;max-width:none;padding:25px 23px 22px;position:relative;box-shadow:0 18px 52px -30px #204c4152,inset 0 1px #fff}.login-card>.eyebrow{color:#695886;letter-spacing:.065em;background:#f0edf8;border:1px solid #e0daef;border-radius:9px;width:fit-content;margin:0 0 15px;padding:7px 9px;font-size:9px;line-height:1.4}.login-card h2{color:#173d35;margin:0 0 10px;font-size:clamp(25px,6.9vw,29px);font-weight:650;line-height:1.18}.login-card>.muted{color:#58746b;margin:0 0 24px;font-size:13px;line-height:1.65}.login-card form{gap:17px}.login-card label{color:#2a5046;gap:8px;font-size:13px}.login-card input{color:#183d34;background:#f8fbfa;border:1px solid #cfdfd8;border-radius:15px;min-height:54px;padding:14px 15px;scroll-margin-block:24px;font-size:16px;line-height:1.4;transition:border-color .18s,box-shadow .18s,background .18s;box-shadow:inset 0 1px 2px #1c4a3e04}.login-card input::placeholder{color:#71877e;font-weight:400}.login-card input:focus{background:#fff;border-color:#258f7e;box-shadow:0 0 0 4px #1c927514}.login-card .password-input input{padding-right:51px}.login-card .password-input button{color:#53796d;border-radius:12px}.login-verification{margin-block:-6px -9px}.login-verification summary,.login-verification>label{font-size:12px}.login-card .button.primary{background:linear-gradient(110deg,#178d7b,#087266);border:1px solid #138474;border-radius:15px;min-height:54px;font-size:16px;font-weight:600;transition:transform .18s,box-shadow .18s;box-shadow:0 9px 20px -10px #087b64b3,inset 0 1px #ffffff38}.login-card .button.primary:active:not(:disabled){transform:scale(.985);box-shadow:0 4px 10px -6px #087b6466}.login-help{color:#47695c;background:#edf5f1;border:1px solid #dae8e1;border-radius:15px;align-items:flex-start;gap:10px;margin:20px 0 0;padding:14px;font-size:12px;line-height:1.65}.login-help svg{width:18px;height:18px;margin-top:2px}.login-footer{gap:7px;padding:0 8px}.login-footer .login-copyright{color:#486c60;font-size:12px}.login-footer .local-note{color:#61786f;font-size:10px}.login-card .loading{padding:24px 0}.login-card .error{overflow-wrap:anywhere}}@media (max-width:359px){.login-layout{padding-inline:12px}.login-card{border-radius:24px;padding:22px 18px 18px}.login-ambient{opacity:.55;transform-origin:100% 0;scale:.8}}@media (max-height:500px) and (orientation:landscape) and (max-width:1000px),(max-height:500px) and (orientation:landscape) and (max-width:1200px) and (pointer:coarse){.login-layout{padding-top:max(16px, env(safe-area-inset-top));gap:15px}.login-brand .login-statement,.login-ambient{display:none}}@media (prefers-reduced-motion:no-preference){.login-card{animation:.48s cubic-bezier(.22,1,.36,1) both login-arrive}.login-ambient{animation:.65s cubic-bezier(.22,1,.36,1) both login-arrive}}@keyframes login-arrive{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-contrast:more){.login-card{background:#fff;border-color:#72998a}.login-help,.login-card input{border-color:#72998a}}@media (max-width:1000px),(max-width:1200px) and (pointer:coarse){html .login-layout{gap:0}html .login-layout .login-brand{border:1px solid var(--glass-border,#fffd);background:linear-gradient(155deg, var(--wine-soft,#def0e9), var(--surface-solid,#f8fbfa) 85%);border-bottom:0;border-radius:28px 28px 0 0;flex:none;padding:clamp(22px,5vw,28px) clamp(20px,5vw,28px) 24px;position:relative;overflow:hidden;box-shadow:0 -8px 36px -26px #173f3733}html .login-layout .login-side{border:1px solid var(--glass-border,#fffd);background:var(--surface-solid,#f8fbfa);border-top:0;border-radius:0 0 28px 28px;flex:none;gap:0;overflow:hidden;box-shadow:0 22px 45px -32px #173f3755}html .login-layout .login-card{box-shadow:none;background:0 0;border:0;border-radius:0;padding:6px clamp(20px,5vw,28px) 0}html .login-layout .login-footer{max-width:none;margin-top:24px;padding:0 24px 24px}html .login-layout .login-ambient{opacity:.55;right:14px}}
.workspace-loading{min-height:45vh;color:var(--muted);justify-content:center;align-items:center;gap:12px;display:flex}.glass-shell .sidebar-brand img,.glass-shell .mobile-brand img{box-shadow:0 5px 16px #17233118,inset 0 1px #fff9}.glass-shell .main-content{max-width:1920px}.glass-shell .topbar{gap:20px}.glass-shell .global-search{border:1px solid var(--line);background:var(--surface);border-radius:50px;max-width:360px;padding:9px 14px}.glass-shell .global-search input{background:0 0;min-width:0}.glass-shell .branch-picker{flex-shrink:0}.glass-shell .sidebar-caption{letter-spacing:.11em}.glass-shell .nav-item.selected{position:relative}.glass-shell .nav-item.selected:after{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px;margin-left:auto}.glass-shell.compact-nav .nav-item.selected:after{display:none}.glass-shell .profile-button{min-height:44px}.glass-shell .icon-button{min-width:38px;min-height:38px}.glass-shell .sidebar-collapse{min-width:28px;min-height:28px}.glass-shell .workspace-footer{font-size:11px}.glass-shell .mobile-menu-grid button{border-radius:20px;min-height:94px}.glass-shell .mobile-menu-grid button>span{border-radius:15px}.glass-shell .parent-content .family-metric{min-height:142px;box-shadow:var(--shadow);border-radius:25px}.glass-shell .family-lesson-hero{box-shadow:0 18px 48px -22px color-mix(in srgb, var(--wine) 42%, transparent), inset 0 1px 0 #fff5;border-radius:30px}.glass-shell .family-lesson-hero .family-orb{pointer-events:none}@media (min-width:1700px){.glass-shell .main-content{padding:38px 44px}.glass-shell .topbar{padding-inline:44px}}@media (hover:hover) and (prefers-reduced-motion:no-preference){html:not([data-motion=off]) .glass-shell .family-metric:hover{transform:translateY(-3px)}html:not([data-motion=off]) .glass-shell .mobile-menu-grid button:hover{transform:translateY(-2px)}}@media (max-width:1200px){.glass-shell .topbar{gap:12px}.glass-shell .global-search{max-width:240px}}@media (max-width:1000px){.glass-shell .topbar{border-bottom:0;min-height:80px}.glass-shell .bottom-nav{isolation:isolate;width:min(560px,100% - 28px);height:76px;bottom:calc(12px + env(safe-area-inset-bottom));background:var(--surface);border:1px solid var(--glass-border,#fff9);-webkit-backdrop-filter:blur(20px)saturate(155%);border-radius:28px;padding:7px;overflow:visible;box-shadow:0 14px 44px #15273826,inset 0 1px 1px #fff9,inset 0 -1px 1px #ffffff30}.glass-shell .bottom-nav:before{content:"";z-index:-1;border-radius:inherit;background:linear-gradient(115deg, color-mix(in srgb, var(--wine) 10%, transparent), transparent 40%, color-mix(in srgb, var(--accent-2) 24%, transparent));pointer-events:none;position:absolute;inset:0}.glass-shell .bottom-nav button{min-height:58px;color:var(--muted);background:0 0;border-radius:21px;gap:4px;font-size:10px;font-weight:550;position:relative}.glass-shell .bottom-nav button svg{width:22px;height:22px}.glass-shell .bottom-nav button.selected{color:var(--wine);background:var(--wine-soft);box-shadow:inset 0 1px 0 var(--glass-border), 0 3px 10px #1527380a}.glass-shell .bottom-nav button.selected:after{content:"";background:currentColor;border-radius:6px;width:12px;height:3px;position:absolute;bottom:3px}.glass-shell .bottom-nav button:active{transform:scale(.95)}.glass-shell .main-content,.glass-shell.parent-shell .main-content{padding-bottom:calc(118px + env(safe-area-inset-bottom))}.glass-shell .toast{bottom:calc(102px + env(safe-area-inset-bottom))}}@media (max-width:760px){.glass-shell .global-search{display:none}.glass-shell .topbar{min-height:76px;padding-inline:20px}.glass-shell .topbar-actions{gap:5px}.glass-shell .main-content{padding-inline:18px}.glass-shell .mobile-brand{font-size:25px}.glass-shell .mobile-brand small{font-size:10px}.glass-shell .mobile-context-bar{margin-bottom:23px}.glass-shell .mobile-context-bar>span{font-size:10px}.glass-shell .parent-content .family-metric{border-radius:21px;min-height:122px}.glass-shell .family-lesson-hero{border-radius:26px}}@media (max-width:380px){.glass-shell .main-content{padding-inline:12px}.glass-shell .topbar{gap:8px;padding-inline:14px}.glass-shell .bottom-nav{width:calc(100% - 18px);padding:5px}.glass-shell .bottom-nav button{font-size:9px}.glass-shell .mobile-context-bar>span{display:none}}@media (prefers-reduced-motion:reduce){.glass-shell .bottom-nav button:active{transform:none}}.bottom-nav>button{position:relative}.chat-nav-badge{background:var(--wine);min-width:16px;color:var(--on-accent);border-radius:12px;padding:1px 4px;font-size:9px;line-height:14px;position:absolute;top:3px;right:13%}.local-notification-count{background:var(--wine,#8466c2);min-width:19px;height:19px;color:var(--on-accent,white);border-radius:10px;place-items:center;padding:0 4px;font-size:10px;display:inline-grid;position:absolute;top:0;right:0}.notification-items{gap:12px;display:grid}.notification-items>button{text-align:left;border:1px solid var(--line,#d5e6df);background:var(--surface,#f2f8f5);min-width:0;color:var(--text,#2b574c);border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.notification-items>button>span:first-child{overflow-wrap:anywhere;min-width:0}.notification-items small{color:var(--muted,#5f7d74);margin-top:6px;display:block}
