:root{--ink:#1e2a25;--muted:#68746e;--paper:#fbfcf8;--surface:#fff;--line:#dfe7e1;--primary:#156b52;--primary-dark:#0e523e;--accent:#dff2e9;--danger:#a33737;--warning:#d49a28;--warning-ink:#765612;--shadow:0 18px 50px #26493d1a;--background:#f4f7f5;--surface-muted:#eef2ef}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.skip-link{z-index:1000;color:#fff;background:var(--primary-dark);border-radius:.65rem;padding:.7rem 1rem;font-weight:800;position:fixed;top:.75rem;left:.75rem;transform:translateY(calc(-100% - 1rem))}.skip-link:focus{transform:translateY(0)}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.045em;margin-bottom:.5rem;font-size:clamp(2rem,4vw,3rem)}h2{margin-bottom:.75rem;font-size:1.35rem}h3{margin-bottom:.25rem}.muted{color:var(--muted);line-height:1.55}.eyebrow{color:var(--primary);letter-spacing:.13em;text-transform:uppercase;margin-bottom:.5rem;font-size:.75rem;font-weight:800}.stack{gap:1rem;display:grid}.auth-shell{background:radial-gradient(circle at 15% 15%, #dff2e9, transparent 35%), var(--paper);place-items:center;min-height:100vh;padding:1.25rem;display:grid}.auth-card{border:1px solid var(--line);width:min(100%,30rem);box-shadow:var(--shadow);background:#ffffffeb;border-radius:1.5rem;padding:clamp(1.5rem,5vw,3rem)}.auth-card-wide{width:min(100%,43rem)}.registration-role-list{gap:.75rem;margin-top:1.5rem;display:grid}.registration-role-card{border:1px solid var(--line);background:var(--surface);border-radius:.9rem;grid-template-columns:2.75rem minmax(0,1fr);align-items:center;gap:.9rem;padding:1rem;transition:border-color .15s,transform .15s,box-shadow .15s;display:grid}.registration-role-card:hover{border-color:#9fbcad;transform:translateY(-2px);box-shadow:0 10px 24px #26493d14}.registration-role-card strong,.registration-role-card small{display:block}.registration-role-card small{color:var(--muted);margin-top:.2rem;line-height:1.4}.registration-role-mark{width:2.75rem;height:2.75rem;color:var(--primary);background:var(--accent);border-radius:.75rem;place-items:center;font-weight:900;display:grid}.public-parent-registration{margin-top:1.4rem}.registration-progress{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.registration-progress span{min-width:0;color:var(--muted);align-items:center;gap:.5rem;font-size:.78rem;font-weight:750;display:flex}.registration-progress b{width:1.8rem;height:1.8rem;color:var(--primary-dark);background:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:.75rem;display:grid}.registration-section{border:1px solid var(--line);background:var(--surface);border-radius:1rem;gap:1rem;margin:0;padding:1.15rem;display:grid}.registration-section>legend{color:var(--ink);align-items:center;gap:.55rem;padding:0 .4rem;font-size:1rem;font-weight:850;display:flex}.registration-section>legend span{width:1.65rem;height:1.65rem;color:var(--primary);background:var(--accent);border-radius:.5rem;place-items:center;font-size:.72rem;display:grid}.registration-section>.field-help{margin:-.45rem 0 0}.registration-consents{gap:.45rem;display:grid}.public-parent-submit{width:100%;min-height:3.4rem}.registration-existing-teacher{border:1px dashed var(--line);background:var(--background);border-radius:.9rem;gap:.3rem;margin-top:1.3rem;padding:1rem 1.1rem;display:grid}.registration-existing-teacher h2,.registration-existing-teacher p{margin:0}.registration-existing-teacher h2{font-size:1rem}.registration-existing-teacher p{color:var(--muted);font-size:.85rem;line-height:1.5}@media (max-width:700px){.registration-progress{grid-template-columns:1fr;gap:.35rem}.registration-progress span{background:var(--surface);border-radius:.65rem;padding:.35rem .5rem}.registration-section{padding:1rem}}.registration-tax-fields{background:linear-gradient(145deg,#f7fbf9,#fffdf7);border:1px solid #cbdcd3;border-radius:1rem;gap:.9rem;margin:0;padding:1rem;display:grid}.registration-tax-fields legend{color:var(--primary-dark);padding:0 .35rem;font-weight:850}.registration-tax-fields>p{margin:0}.registration-fast-start{border:1px solid var(--line);background:var(--accent);border-radius:1rem;gap:.25rem;padding:.85rem 1rem;display:grid}.registration-fast-start strong{color:var(--primary-dark)}.registration-fast-start span{color:var(--muted);font-size:.88rem;line-height:1.45}.phone-verification-fields{border:1px solid var(--line);background:var(--background);border-radius:1rem;gap:.7rem;padding:1rem;display:grid}.phone-verification-fields>.button{width:fit-content}.phone-verification-code{grid-template-columns:minmax(10rem,1fr) auto;align-items:end;gap:.7rem;display:grid}.phone-verification-code .field{margin:0}.phone-verification-fields .form-success{color:var(--primary);margin:0;font-weight:750}.registration-note{background:#f0f8f4;border:1px solid #b9d8ca;border-radius:.9rem;margin:1.5rem 0;padding:1.15rem}.registration-note h2{font-size:1rem}.registration-note p{color:var(--muted);margin-bottom:0;line-height:1.55}.brand-mark{color:#fff;background:var(--primary);border-radius:1rem;place-items:center;width:3.5rem;height:3.5rem;margin-bottom:1.5rem;display:grid}.brand-mark.small{border-radius:.65rem;width:2.25rem;height:2.25rem;margin:0}.brand-mark svg{width:100%;height:100%;padding:.35rem;display:block}.brand-mark.small svg{padding:.2rem}.brand-mark-secondary{color:#bfe4d7}.brand-wordmark{color:var(--primary);letter-spacing:-.055em;white-space:nowrap;align-items:center;font-weight:850;line-height:1;display:inline-flex}.brand-person-o{border:.12em solid;border-radius:50%;width:.78em;height:.78em;margin:0 .015em;display:inline-block;position:relative}.brand-person-o:after{content:"";background:currentColor;border-radius:.3em .3em 0 0;width:.48em;height:.2em;position:absolute;bottom:-.35em;left:50%;transform:translate(-50%)}.brand-person-o.secondary{color:#76a994}.auth-brand-wordmark{margin-bottom:.85rem;font-size:1.05rem;display:block}.field{gap:.45rem;font-size:.88rem;font-weight:700;display:grid}.field input,.field textarea,.field select{width:100%;min-height:3rem;color:var(--ink);background:var(--surface);resize:vertical;border:1px solid #bac8c0;border-radius:.7rem;padding:.75rem .9rem}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--primary)}.password-input-wrap{display:block;position:relative}.field .password-input-wrap input{padding-right:3.25rem}.password-visibility-toggle{width:2.25rem;height:2.25rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.55rem;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:.45rem;transform:translateY(-50%)}.password-visibility-toggle:hover,.password-visibility-toggle:focus-visible{color:var(--primary);background:var(--accent)}.password-visibility-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.25rem;height:1.25rem}.time-zone-picker{gap:.45rem;display:grid}.account-settings-grid{align-items:start}.account-settings-grid>.field,.account-settings-grid .time-zone-picker{align-content:start;min-width:0}.account-settings-grid :is(input,select){min-width:0}.time-zone-picker>input{background-image:linear-gradient(90deg, color-mix(in srgb, var(--primary) 5%, transparent), transparent);min-height:2.7rem}.time-zone-search{display:block;position:relative}.time-zone-search input{background-image:linear-gradient(90deg, color-mix(in srgb, var(--primary) 5%, transparent), transparent);width:100%;min-height:2.7rem;padding-right:2.7rem}.time-zone-search-toggle{width:fit-content;color:var(--primary);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:.15rem 0;font-size:.75rem;font-weight:750}.time-zone-search-toggle:hover{text-underline-offset:.18em;text-decoration:underline}.time-zone-search-close{width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:1.35rem;line-height:1;position:absolute;top:50%;right:.45rem;translate:0 -50%}.time-zone-search-close:hover{color:var(--ink);background:var(--accent)}.time-zone-search-result{color:var(--muted);font-size:.72rem;font-weight:550;line-height:1.35}.field-error{color:var(--danger);font-size:.8rem;font-weight:600}.field-help{color:var(--muted);font-size:.78rem;font-weight:500}.form-error{color:var(--danger);margin:0;font-size:.9rem}.demo-hint{color:var(--muted);margin:1.25rem 0 0;font-size:.78rem}.text-link{color:var(--primary);text-underline-offset:.18em;font-weight:750;text-decoration:underline}.consent-field{color:var(--muted);align-items:flex-start;gap:.65rem;font-size:.8rem;line-height:1.5;display:flex}.consent-field input{width:1.1rem;height:1.1rem;accent-color:var(--primary);flex:none;margin-top:.15rem}.legal-consent-field{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:.75rem;padding:.7rem .75rem}.legal-consent-field input{appearance:none;background:var(--surface);cursor:pointer;border:1.5px solid #789386;border-radius:.24rem;place-items:center;display:grid;position:relative}.legal-consent-field input:after{content:"";opacity:0;border:0 solid #fff;border-width:0 0 .13rem .13rem;width:.52rem;height:.28rem;transform:translateY(-.05rem)rotate(-45deg)}.legal-consent-field input:checked{border-color:var(--primary);background:var(--primary)}.legal-consent-field input:checked:after{opacity:1}.legal-consent-field input:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 28%, transparent);outline-offset:2px}.site-legal-links{border-top:1px solid var(--line);color:var(--muted);background:var(--paper);flex-wrap:wrap;justify-content:center;gap:.75rem 1.25rem;padding:1.25rem;font-size:.74rem;display:flex}.site-legal-links a:hover{color:var(--primary);text-underline-offset:.15em;text-decoration:underline}.legal-shell{width:min(100% - 2rem,58rem);margin:0 auto;padding:2rem 0 4rem}.legal-shell>nav{margin-bottom:2rem}.legal-document{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:1.25rem;padding:clamp(1.25rem,4vw,3rem)}.legal-document h2{margin-top:2rem}.legal-document p{line-height:1.7}.teacher-landing{width:min(100% - 2rem,76rem);margin:0 auto}.teacher-landing-nav{justify-content:space-between;align-items:center;gap:1rem;min-height:5rem;display:flex}.teacher-landing-brand,.teacher-landing-actions,.teacher-landing-nav-menu-panel,.teacher-landing-nav-desktop{align-items:center;gap:.75rem;display:flex}.teacher-landing-brand{flex:none}.teacher-landing-brand .brand-mark{flex:none;margin:0}.teacher-landing-brand .brand-wordmark{flex:none;font-size:1.15rem}.teacher-landing-nav-desktop{justify-content:flex-end}.teacher-landing-nav-menu{flex:none;display:none}.teacher-landing-nav-menu>summary{display:none}.teacher-landing-nav-menu-panel{justify-content:flex-end}.teacher-landing-hero{grid-template-columns:minmax(0,1.15fr) minmax(19rem,.85fr);align-items:center;gap:clamp(2rem,7vw,6rem);min-height:34rem;padding:clamp(3rem,8vw,7rem) 0;display:grid}.teacher-landing-hero h1{max-width:16ch;font-size:clamp(2.5rem,5vw,4.65rem);line-height:.98}.teacher-landing-lead{max-width:40rem;color:var(--muted);margin:1.5rem 0;font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.55}.teacher-landing-note{max-width:38rem;color:var(--muted);margin:1rem 0 0;font-size:.82rem;line-height:1.5}.teacher-landing-preview{box-shadow:var(--shadow);background:linear-gradient(145deg,#e8f6ef,#f5f8e9);border:1px solid #b9d8ca;border-radius:1.5rem;padding:clamp(1.5rem,4vw,2.5rem);transform:rotate(1deg)}.teacher-landing-preview>strong{font-size:1rem}.teacher-landing-preview h2{margin:.4rem 0 1.25rem;font-size:1.9rem}.teacher-landing-preview ul{gap:.7rem;margin:0 0 1.5rem;padding:0;list-style:none;display:grid}.teacher-landing-preview li{padding-left:1.6rem;position:relative}.teacher-landing-preview li:before{content:"✓";color:var(--primary);font-weight:900;position:absolute;left:0}.teacher-landing-preview>span{color:var(--muted);border-top:1px solid #bad6ca;padding-top:1rem;font-size:.85rem;display:block}.teacher-landing-section{border-top:1px solid var(--line);padding:clamp(3rem,7vw,6rem) 0}.teacher-landing-section>h2{max-width:20ch;font-size:clamp(2rem,4vw,3.25rem)}.teacher-capability-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem;display:grid}.teacher-capability-grid article{border:1px solid var(--line);background:var(--surface);border-radius:1.15rem;min-height:13rem;padding:1.5rem}.teacher-capability-grid article>span{color:#78a792;letter-spacing:.08em;font-size:.75rem;font-weight:850}.teacher-capability-grid h3{margin-top:2rem;font-size:1.2rem}.family-capability-grid h3{margin-top:0}.teacher-capability-grid p{color:var(--muted);margin-bottom:0;line-height:1.55}.teacher-detail-links .marketing-showcase-heading>p:last-child{color:var(--muted);line-height:1.6}.teacher-detail-link-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.teacher-detail-link-grid>a{border:1px solid var(--line);min-height:12rem;color:var(--ink);background:var(--surface);border-radius:1.15rem;align-content:end;gap:.55rem;padding:1.4rem;text-decoration:none;transition:border-color .18s,transform .18s,box-shadow .18s;display:grid;position:relative}.teacher-detail-link-grid>a:hover{box-shadow:var(--shadow);border-color:#9fcbb8;transform:translateY(-2px)}.teacher-detail-link-grid small{color:var(--primary);letter-spacing:.07em;text-transform:uppercase;align-self:start;font-weight:850}.teacher-detail-link-grid strong{padding-right:2rem;font-size:1.25rem}.teacher-detail-link-grid span{color:var(--muted);line-height:1.45}.teacher-detail-link-grid b{color:var(--primary);font-size:1.3rem;position:absolute;bottom:1.3rem;right:1.3rem}.teacher-feature-hero h1{max-width:17ch}.feature-package-dots{grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin:1.2rem 0;display:grid}.feature-package-dots i{min-height:2.7rem;color:var(--muted);background:color-mix(in srgb, var(--surface) 80%, transparent);border:1px solid #9fcbb8;border-radius:.8rem;place-items:center;font-size:.72rem;font-style:normal;font-weight:850;display:grid}.feature-package-dots i.done{color:var(--primary-dark);background:#bcebd9;border-color:#75cdb0}.feature-board-preview{gap:1rem;display:grid;transform:none}.feature-board-toolbar{flex-wrap:wrap;gap:.45rem;display:flex}.feature-board-toolbar b{width:2.55rem;height:2.55rem;color:var(--primary-dark);background:color-mix(in srgb, var(--surface) 88%, transparent);border:1px solid #b9d8ca;border-radius:.75rem;place-items:center;font-size:1.05rem;display:grid}.feature-board-toolbar b:nth-child(2){color:#fff;border-color:var(--primary);background:var(--primary)}.feature-board-sheet{background-color:#fffdf5;background-image:radial-gradient(#c7d8d0 1px,#0000 1px);background-size:18px 18px;border:1px solid #c7d8d0;border-radius:1rem;min-height:15rem;position:relative;overflow:hidden}.feature-board-sheet span{color:#20312b;font-family:ui-rounded,system-ui,sans-serif;font-size:clamp(1.1rem,2vw,1.55rem);font-weight:750;position:absolute;top:18%;left:12%;transform:rotate(-2deg)}.feature-board-sheet i{transform-origin:0;background:#2d8066;border-radius:2px;width:60%;height:3px;position:absolute;top:58%;left:18%}.feature-board-sheet i:first-of-type{transform:rotate(-13deg)}.feature-board-sheet i:nth-of-type(2){transform:rotate(15deg)}.feature-board-sheet em{color:#20312b;font-style:normal;font-weight:800;position:absolute;top:72%}.feature-board-sheet em:first-of-type{left:22%}.feature-board-sheet em:nth-of-type(2){right:20%}.landing-testimonials .teacher-capability-grid figure{border:1px solid var(--line);background:var(--surface);border-radius:1.15rem;flex-direction:column;justify-content:space-between;gap:1.5rem;min-height:11rem;margin:0;padding:1.5rem;display:flex}.landing-testimonials blockquote{color:var(--ink);margin:0;font-size:1.05rem;line-height:1.65}.landing-testimonials figcaption{color:var(--muted);font-size:.9rem;font-weight:750}.teacher-landing-steps{grid-template-columns:minmax(0,1fr) minmax(20rem,1fr);gap:3rem;display:grid}.teacher-landing-steps h2{font-size:clamp(2rem,4vw,3rem)}.teacher-landing-steps ol{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.teacher-landing-steps li{border:1px solid var(--line);background:var(--surface);border-radius:.9rem;gap:.2rem;padding:1rem 1.2rem;display:grid}.teacher-landing-steps li span{color:var(--muted);font-size:.9rem}.teacher-landing-transparent{grid-template-columns:minmax(14rem,.65fr) minmax(0,1.35fr);gap:3rem;display:grid}.teacher-landing-transparent p:last-child{color:var(--muted);margin:0;font-size:1.05rem;line-height:1.7}.teacher-landing-install{grid-template-columns:minmax(0,46rem);justify-content:center;display:grid}.teacher-landing-install .panel{margin:0}.teacher-landing-cta{color:#fff;background:var(--primary-dark);border-radius:1.5rem;justify-content:space-between;align-items:center;gap:2rem;margin:2rem 0 5rem;padding:clamp(1.5rem,5vw,3rem);display:flex}.teacher-landing-cta h2{margin-bottom:.4rem;font-size:clamp(1.7rem,3vw,2.5rem)}.teacher-landing-cta p{color:#d4e7df;max-width:42rem;margin:0;line-height:1.55}.teacher-landing-cta .button{color:var(--primary-dark);background:#fff;flex:none}.tariffs-page{padding-bottom:.1px}.tariffs-page .teacher-landing-nav{border-bottom:1px solid var(--line)}.tariffs-hero{grid-template-columns:minmax(0,1.08fr) minmax(19rem,.92fr);align-items:center;gap:clamp(2rem,7vw,6rem);min-height:35rem;padding:clamp(3.5rem,8vw,7.5rem) 0;display:grid;position:relative;overflow:hidden}.tariffs-hero:before{content:"";z-index:-1;aspect-ratio:1;background:radial-gradient(circle, color-mix(in srgb, var(--accent) 80%, transparent), transparent 68%);pointer-events:none;border-radius:50%;width:min(36rem,58vw);position:absolute;top:10%;right:-12%}.tariffs-hero-copy{min-width:0}.tariffs-hero h1{letter-spacing:-.06em;max-width:12.5ch;margin-bottom:0;font-size:clamp(2.65rem,5.5vw,5rem);line-height:.98}.tariffs-hero-lead{max-width:42rem;color:var(--muted);margin:1.5rem 0;font-size:clamp(1.05rem,2vw,1.28rem);line-height:1.58}.tariffs-hero-note{max-width:39rem;color:var(--muted);margin:1rem 0 0;font-size:.86rem;font-weight:650;line-height:1.5}.tariffs-hero-summary{border:1px solid color-mix(in srgb, var(--primary) 25%, var(--line));background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 78%, var(--surface)), var(--surface));box-shadow:var(--shadow);border-radius:1.6rem;gap:1.5rem;padding:clamp(1.5rem,4vw,2.4rem);display:grid;position:relative;transform:rotate(1deg)}.tariffs-hero-summary:after{content:"";border:1px solid color-mix(in srgb, var(--primary) 25%, transparent);opacity:.58;pointer-events:none;border-radius:50%;width:4.75rem;height:4.75rem;position:absolute;bottom:1.1rem;right:1.25rem}.tariffs-hero-summary-header{gap:.35rem;display:grid}.tariffs-hero-summary-header>span{color:var(--primary);letter-spacing:.11em;text-transform:uppercase;font-size:.72rem;font-weight:850}.tariffs-hero-summary-header strong{font-size:clamp(1.4rem,3vw,2rem);line-height:1.05}.tariffs-storage-compare{gap:1rem;display:grid}.tariffs-storage-compare-row{gap:.55rem;display:grid}.tariffs-storage-compare-label{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.tariffs-storage-compare-label span{color:var(--muted);font-size:.85rem;font-weight:700}.tariffs-storage-compare-label strong{color:var(--ink);font-size:1.1rem}.tariffs-storage-compare-row-pro .tariffs-storage-compare-label strong{color:var(--primary)}.tariffs-storage-track{background:color-mix(in srgb, var(--line) 68%, var(--surface));border-radius:999px;height:.7rem;display:block;overflow:hidden}.tariffs-storage-fill{border-radius:inherit;background:var(--primary);height:100%;display:block}.tariffs-storage-fill-free{background:color-mix(in srgb, var(--primary) 58%, var(--muted));width:5%;min-width:.75rem}.tariffs-storage-fill-pro{background:linear-gradient(90deg, var(--primary), color-mix(in srgb, var(--primary) 62%, #80d9b2));width:100%}.tariffs-hero-summary>p{border-top:1px solid var(--line);max-width:30rem;color:var(--muted);margin:0;padding-top:1rem;font-size:.88rem;font-weight:650;line-height:1.55}.tariffs-plans-section,.tariffs-comparison-section,.tariffs-explainer,.tariffs-faq{border-top:1px solid var(--line);padding:clamp(3.5rem,7vw,6.25rem) 0}.tariffs-section-heading{grid-template-columns:minmax(0,1.15fr) minmax(17rem,.85fr);align-items:end;gap:clamp(1.5rem,5vw,5rem);display:grid}.tariffs-section-heading h2,.tariffs-explainer h2,.tariffs-faq>h2{letter-spacing:-.045em;max-width:19ch;margin-bottom:0;font-size:clamp(2rem,4vw,3.2rem);line-height:1.03}.tariffs-section-heading>p,.tariffs-explainer-copy>p:last-child{color:var(--muted);margin:0;font-size:1rem;line-height:1.65}.tariffs-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem;display:grid}.tariffs-plan-card{border:1px solid var(--line);background:var(--surface);border-radius:1.4rem;flex-direction:column;min-width:0;padding:clamp(1.35rem,3vw,2rem);display:flex;box-shadow:0 12px 34px #26493d0f}.tariffs-plan-card-pro{border-color:color-mix(in srgb, var(--primary) 45%, var(--line));background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 88%, var(--surface)), var(--surface));box-shadow:0 18px 42px #156b521f}.tariffs-plan-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.tariffs-plan-heading .eyebrow{margin-bottom:.3rem}.tariffs-plan-heading h3{font-size:clamp(1.5rem,3vw,2rem);line-height:1.05}.tariffs-plan-status{border:1px solid color-mix(in srgb, var(--primary) 22%, var(--line));max-width:13rem;color:var(--primary-dark);background:color-mix(in srgb, var(--accent) 72%, var(--surface));text-align:center;border-radius:999px;flex:none;padding:.42rem .65rem;font-size:.7rem;font-weight:850;line-height:1.25}.tariffs-plan-status-pro{color:#725320;background:#fff4da;border-color:#e4c996}.tariffs-plan-price{align-items:baseline;gap:.65rem;margin:1.7rem 0 1rem;display:flex}.tariffs-plan-price strong{letter-spacing:-.06em;font-size:clamp(2.3rem,5vw,3.25rem);line-height:.9}.tariffs-plan-price span{color:var(--muted);font-size:.9rem;font-weight:650}.tariffs-plan-storage{border:1px solid var(--line);background:var(--background);border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.tariffs-plan-storage span{color:var(--muted);font-size:.8rem;font-weight:700;line-height:1.35}.tariffs-plan-storage strong{flex:none;font-size:1.22rem}.tariffs-plan-storage-pro{border-color:color-mix(in srgb, var(--primary) 26%, var(--line));background:color-mix(in srgb, var(--accent) 55%, var(--surface))}.tariffs-plan-storage-pro strong{color:var(--primary)}.tariffs-feature-list{gap:.65rem;margin:1.45rem 0 1.75rem;padding:0;list-style:none;display:grid}.tariffs-feature-list li{min-height:1.35rem;color:var(--muted);padding-left:1.75rem;font-size:.9rem;line-height:1.45;position:relative}.tariffs-feature-list li:before{content:"✓";width:1.2rem;height:1.2rem;color:var(--primary-dark);background:var(--accent);border-radius:50%;place-items:center;font-size:.76rem;font-weight:950;display:grid;position:absolute;top:-.02rem;left:0}.tariffs-feature-list .tariffs-feature-highlight{color:var(--primary-dark);font-weight:800}.tariffs-feature-list .tariffs-feature-highlight:before{color:#fff;background:var(--primary)}.tariffs-plan-action{width:100%;margin-top:auto}.tariffs-plan-closed{border:1px dashed color-mix(in srgb, var(--primary) 32%, var(--line));color:var(--muted);background:color-mix(in srgb, var(--surface) 65%, transparent);border-radius:.9rem;margin:auto 0 0;padding:.9rem 1rem;font-size:.84rem;line-height:1.5}.tariffs-comparison-wrap{border:1px solid var(--line);background:var(--surface);border-radius:1.3rem;margin-top:2rem;overflow-x:auto;box-shadow:0 12px 34px #26493d0d}.tariffs-comparison-mobile-hint{display:none}.tariffs-comparison-table{border-collapse:collapse;width:100%}.tariffs-comparison-table caption{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.tariffs-comparison-table th,.tariffs-comparison-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:1.08rem 1.2rem}.tariffs-comparison-table thead th{color:var(--muted);background:var(--background);letter-spacing:.09em;text-transform:uppercase;font-size:.72rem;font-weight:850}.tariffs-comparison-table thead th:nth-child(3){color:var(--primary);background:color-mix(in srgb, var(--accent) 58%, var(--background))}.tariffs-comparison-table tbody th{width:25%;color:var(--ink);font-size:.92rem;font-weight:800}.tariffs-comparison-table tbody td{width:27%;color:var(--muted);font-size:.9rem;line-height:1.45}.tariffs-comparison-table tbody td[data-plan=PRO\ Лайт]{color:var(--primary-dark);background:color-mix(in srgb, var(--accent) 32%, var(--surface));font-weight:700}.tariffs-comparison-table tbody .tariffs-comparison-shared{color:var(--ink);background:color-mix(in srgb, var(--accent) 18%, var(--surface));font-weight:700}.tariffs-comparison-table .tariffs-comparison-status{width:21%;color:var(--muted);font-size:.82rem;font-weight:750}.tariffs-comparison-table tbody tr:last-child>*{border-bottom:0}.teacher-tariffs-note{max-width:52rem;color:var(--muted);margin:1.15rem 0 0;font-size:.9rem;line-height:1.55}.teacher-tariffs-note a{color:var(--primary);font-weight:800}.tariffs-explainer{grid-template-columns:minmax(0,.82fr) minmax(20rem,1.18fr);align-items:start;gap:clamp(2rem,7vw,6rem);display:grid}.tariffs-explainer-copy>p:last-child{max-width:34rem;margin-top:1.25rem}.tariffs-explainer-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.tariffs-explainer-list li{border:1px solid var(--line);background:var(--surface);border-radius:1rem;grid-template-columns:2.1rem minmax(0,1fr);gap:.85rem;padding:1rem 1.15rem;display:grid}.tariffs-explainer-list li>span{color:var(--primary);letter-spacing:.08em;padding-top:.1rem;font-size:.72rem;font-weight:900}.tariffs-explainer-list strong{font-size:1rem;display:block}.tariffs-explainer-list p{color:var(--muted);margin:.25rem 0 0;font-size:.88rem;line-height:1.5}.tariffs-faq{padding-bottom:clamp(3rem,6vw,5rem)}.tariffs-faq>h2{max-width:18ch}.tariffs-faq>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:2rem;display:grid}.tariffs-faq details{border:1px solid var(--line);background:var(--surface);border-radius:1rem;min-height:100%;padding:1.1rem 1.15rem}.tariffs-faq summary{cursor:pointer;color:var(--ink);padding-right:1.5rem;font-size:.95rem;font-weight:800;line-height:1.4}.tariffs-faq summary::marker{color:var(--primary)}.tariffs-faq details p{color:var(--muted);margin:.85rem 0 0;font-size:.88rem;line-height:1.55}.tariffs-final-cta{margin-top:0}.tariffs-final-cta .eyebrow{color:#9de0c4}.inline-notice{background:var(--accent);border:1px solid #bdd8cc;border-radius:.8rem;gap:.25rem;padding:.9rem 1rem;display:grid}.inline-notice span{color:var(--muted);font-size:.82rem;line-height:1.5}.public-landing-hero{text-align:center;align-content:center;justify-items:center;min-height:calc(100vh - 9rem);padding:clamp(3rem,8vw,7rem) 0;display:grid}.public-landing-hero h1{max-width:16ch;font-size:clamp(2.5rem,6vw,5rem);line-height:.98}.public-landing-hero .teacher-landing-lead{max-width:48rem}.public-landing-hero .teacher-landing-note{max-width:45rem}.public-landing-hero-with-demo{align-content:start;min-height:0;padding-top:clamp(2rem,4vw,4rem);padding-bottom:clamp(4rem,9vw,8rem)}.public-landing-hero-with-demo>.public-home-demo{text-align:left;width:100%;margin-top:clamp(2rem,4vw,3.5rem)}.public-landing-hero-with-demo .marketing-showcase-heading{text-align:center;max-width:66rem;margin:0 auto 1.25rem}.public-landing-hero-with-demo .marketing-showcase-heading h2{font-size:clamp(1.8rem,3vw,2.7rem)}.public-role-choice{text-align:center;justify-items:center;display:grid}.public-role-choice .marketing-showcase-heading{margin-inline:auto}.public-role-choice .marketing-showcase-heading>p:last-child{color:var(--muted);line-height:1.6}.public-home-problem{grid-template-columns:minmax(15rem,.78fr) minmax(0,1.22fr);align-items:center;gap:clamp(2rem,7vw,6rem);display:grid}.public-home-problem h2{max-width:15ch;font-size:clamp(2rem,4vw,3.25rem)}.public-home-problem>div>p:last-child{max-width:32rem;color:var(--muted);margin-bottom:0;line-height:1.6}.public-home-problem ul{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.public-home-problem li{border:1px solid var(--line);background:var(--surface);border-radius:1rem;grid-template-columns:minmax(6.5rem,.45fr) minmax(0,1fr);align-items:baseline;gap:1rem;padding:1rem 1.2rem;display:grid}.public-home-problem li strong{color:var(--primary-dark);font-size:.88rem}.public-home-problem li span{color:var(--muted);font-size:.9rem;line-height:1.45}.role-choice-grid{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;width:min(100%,62rem);margin:1.5rem 0 .5rem;display:grid}.role-choice-card{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow);border-radius:1.2rem;grid-template-columns:3.4rem minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.35rem;transition:border-color .15s,transform .15s;display:grid}.role-choice-card:hover{border-color:var(--primary);transform:translateY(-2px)}.role-choice-icon{width:3.4rem;height:3.4rem;color:var(--primary);background:var(--accent);border-radius:.9rem;place-items:center;font-size:1.15rem;font-weight:900;display:grid}.role-choice-card.family .role-choice-icon{color:#82530f;background:#fff1cf}.role-choice-card>span:nth-child(2){gap:.25rem;min-width:0;display:grid}.role-choice-card small{color:var(--primary);letter-spacing:.06em;text-transform:uppercase;font-size:.7rem;font-weight:850}.role-choice-card strong{font-size:1.12rem}.role-choice-card em{color:var(--muted);font-size:.78rem;font-style:normal;line-height:1.45}.role-choice-card b{color:var(--primary);font-size:1.4rem}.parent-landing-preview{transform:rotate(-1deg)}.public-workflow{grid-template-columns:minmax(15rem,.8fr) minmax(0,1.2fr);gap:clamp(2rem,7vw,6rem);display:grid}.public-workflow h2,.lesson-flow-section h2,.family-privacy-section h2,.teacher-switch-section h2{font-size:clamp(2rem,4vw,3.25rem)}.public-workflow-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.public-workflow-list li{border:1px solid var(--line);background:var(--surface);border-radius:1rem;grid-template-columns:2.3rem minmax(0,1fr);gap:.2rem .8rem;padding:1rem 1.2rem;display:grid}.public-workflow-list li>span{color:var(--primary);letter-spacing:.08em;grid-row:1/3;font-size:.75rem;font-weight:850}.public-workflow-list p{color:var(--muted);margin:0;font-size:.88rem;line-height:1.5}.public-landing-cta{margin-top:4rem}.lesson-flow-section{grid-template-columns:minmax(0,.85fr) minmax(22rem,1.15fr);align-items:center;gap:clamp(2rem,7vw,6rem);display:grid}.lesson-flow-demo{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:1.4rem;padding:clamp(1rem,3vw,1.5rem)}.lesson-flow-source{color:#fff;background:var(--primary-dark);border-radius:1rem;gap:.2rem;padding:1rem 1.1rem;display:grid}.lesson-flow-source small{color:#d4e7df}.lesson-flow-demo ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.lesson-flow-demo li{border:1px solid var(--line);background:var(--background);min-width:0;animation:6s ease-in-out infinite landing-flow-step;animation-delay:calc(var(--flow-order) * .45s);border-radius:.85rem;align-items:center;gap:.75rem;padding:.85rem;display:flex}.lesson-flow-demo li>span{width:1.7rem;height:1.7rem;color:var(--primary);background:var(--accent);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.lesson-flow-demo li div{gap:.15rem;min-width:0;display:grid}.lesson-flow-demo li small{color:var(--muted);line-height:1.35}.teacher-switch-section,.family-privacy-section{grid-template-columns:minmax(14rem,.65fr) minmax(0,1.35fr);gap:3rem;display:grid}.teacher-switch-section ul{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.teacher-switch-section li{border:1px solid var(--line);background:var(--surface);border-radius:.85rem;padding:.9rem 1rem .9rem 2.7rem;position:relative}.teacher-switch-section li:before{content:"✓";color:var(--primary);font-weight:900;position:absolute;left:1rem}.landing-faq>h2{font-size:clamp(2rem,4vw,3.25rem)}.landing-faq>div{gap:.65rem;margin-top:2rem;display:grid}.landing-faq details{border:1px solid var(--line);background:var(--surface);border-radius:.9rem;padding:1rem 1.2rem}.landing-faq summary{cursor:pointer;font-weight:800}.landing-faq details p{color:var(--muted);margin:.8rem 0 0;line-height:1.6}.family-privacy-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.family-privacy-grid article{border:1px solid var(--line);background:var(--surface);border-radius:1rem;padding:1.3rem}.family-privacy-grid p{color:var(--muted);margin-bottom:0;line-height:1.55}.marketing-showcase-heading{max-width:52rem;margin-bottom:2rem}.marketing-showcase-heading h2{font-size:clamp(2rem,4vw,3.25rem)}.marketing-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1.25rem;display:grid}.parent-showcase>.marketing-product-preview{max-width:49rem;margin-inline:auto}.marketing-product-preview{min-width:0;margin:0}.marketing-preview-window{border:1px solid var(--line);background:var(--background);border-radius:1.2rem;overflow:hidden;box-shadow:0 18px 48px #203d321a}.marketing-preview-chrome{border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:.4rem;height:2.7rem;padding:0 .85rem;display:flex}.marketing-preview-chrome>span{background:#efb2a8;border-radius:50%;width:.55rem;height:.55rem}.marketing-preview-chrome>span:nth-child(2){background:#efd58e}.marketing-preview-chrome>span:nth-child(3){background:#91cbb1}.marketing-preview-chrome strong{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-left:.35rem;font-size:.72rem;overflow:hidden}.marketing-product-preview figcaption{gap:.35rem;padding:1rem .25rem 0;display:grid}.marketing-product-preview figcaption strong{font-size:.95rem}.marketing-product-preview figcaption span{color:var(--muted);font-size:.8rem;line-height:1.5}.marketing-schedule-preview{padding:1rem}.marketing-schedule-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.marketing-schedule-heading>span{color:var(--primary);background:var(--accent);border-radius:999px;padding:.25rem .55rem;font-size:.65rem;font-weight:800}.marketing-schedule-grid{border:1px solid var(--line);background:var(--surface);border-radius:.8rem;grid-template-rows:2.2rem repeat(3,4.6rem);grid-template-columns:2.8rem repeat(5,minmax(0,1fr));min-height:16.5rem;display:grid;position:relative;overflow:hidden}.marketing-day-label{z-index:2;border-left:1px solid var(--line);color:var(--muted);justify-content:center;align-items:center;gap:.25rem;font-size:.68rem;display:flex}.marketing-day-label strong{color:var(--ink);text-transform:uppercase}.marketing-day-label.day-1{grid-column:2}.marketing-day-label.day-2{grid-column:3}.marketing-day-label.day-3{grid-column:4}.marketing-day-label.day-4{grid-column:5}.marketing-day-label.day-5{grid-column:6}.marketing-time-label{z-index:2;color:var(--muted);text-align:right;align-self:start;padding:.3rem .35rem;font-size:.58rem}.marketing-time-label.time-1{grid-area:2/1}.marketing-time-label.time-2{grid-area:3/1}.marketing-time-label.time-3{grid-area:4/1}.marketing-schedule-line{z-index:1;border-top:1px dashed var(--line);grid-column:2/-1}.marketing-schedule-line.line-1{grid-row:2}.marketing-schedule-line.line-2{grid-row:3}.marketing-schedule-line.line-3{grid-row:4}.marketing-lesson-chip{z-index:3;border-left:3px solid var(--primary);color:#185943;background:#dff2e9;border-radius:.55rem;align-self:start;gap:.12rem;min-width:0;margin:.25rem;padding:.48rem .5rem;font-size:.62rem;display:grid;overflow:hidden}.marketing-lesson-chip>*{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.marketing-lesson-chip strong{font-size:.68rem}.marketing-lesson-chip span{color:#477364}.marketing-lesson-chip.lesson-a{grid-area:3/4}.marketing-lesson-chip.lesson-b{color:#604981;background:#eee7f7;border-left-color:#8c68be;grid-area:2/6}.marketing-family-preview{gap:.8rem;padding:1rem;display:grid}.marketing-family-heading{grid-template-columns:2.8rem minmax(0,1fr) auto;align-items:center;gap:.7rem;display:grid}.marketing-family-heading>div:nth-child(2){gap:.15rem;min-width:0;display:grid}.marketing-family-heading small{color:var(--muted);text-transform:uppercase;font-size:.62rem}.marketing-family-heading strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.marketing-family-heading>span{color:var(--primary);background:var(--accent);white-space:nowrap;border-radius:999px;padding:.3rem .55rem;font-size:.58rem;font-weight:800}.marketing-family-avatar{width:2.8rem;height:2.8rem;color:var(--primary);background:var(--accent);border-radius:.8rem;place-items:center;font-weight:900;display:grid}.marketing-family-preview nav{background:var(--surface);border-radius:.65rem;gap:.35rem;padding:.3rem;display:flex;overflow:hidden}.marketing-family-preview nav>*{color:var(--muted);white-space:nowrap;border-radius:.5rem;padding:.4rem .55rem;font-size:.62rem}.marketing-family-preview nav strong{color:var(--primary);background:var(--accent)}.marketing-family-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.marketing-family-cards article{border:1px solid var(--line);background:var(--surface);border-radius:.75rem;gap:.25rem;min-width:0;padding:.8rem;display:grid}.marketing-family-cards small,.marketing-family-cards span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.6rem;overflow:hidden}.marketing-family-cards strong{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.marketing-package-row{border:1px solid var(--line);background:var(--surface);border-radius:.75rem;align-items:center;gap:.4rem;padding:.7rem .8rem;display:flex}.marketing-package-row>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-right:auto;font-size:.7rem;overflow:hidden}.marketing-package-row>span{border:1px solid var(--line);min-width:2.1rem;height:2.1rem;color:var(--muted);border-radius:50%;place-items:center;padding:.15rem;font-size:.5rem;display:grid}.marketing-package-row>span.complete{color:#fff;border-color:var(--primary);background:var(--primary);font-size:.75rem;font-weight:900}.public-home-demo .marketing-showcase-heading>p:last-child{max-width:42rem;color:var(--muted);line-height:1.6}.marketing-home-flow{width:min(100%,60rem);min-width:0;margin:0 auto}.marketing-home-flow .marketing-preview-window{aspect-ratio:16/9;grid-template-rows:2.7rem minmax(0,1fr);display:grid}.marketing-home-flow .marketing-preview-chrome{height:auto}.marketing-home-slides{background:radial-gradient(circle at 12% 0%, var(--accent), transparent 38%), var(--background);min-height:0;position:relative;overflow:hidden}.marketing-home-slide{opacity:0;grid-template-rows:auto minmax(0,1fr);gap:1rem;padding:clamp(1rem,2.5vw,1.6rem) clamp(1rem,3vw,2rem) 3.5rem;animation:12s ease-in-out infinite marketing-home-slide;display:grid;position:absolute;inset:0;transform:scale(.985)}.marketing-home-slide.slide-closure{animation-delay:4s}.marketing-home-slide.slide-family{animation-delay:8s}.marketing-home-slide-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.marketing-home-slide-heading>div{align-items:center;gap:.6rem;display:flex}.marketing-home-slide-heading>div span{width:2rem;height:2rem;color:var(--primary);background:var(--accent);border-radius:.65rem;place-items:center;font-size:.7rem;font-weight:900;display:grid}.marketing-home-slide-heading small{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:750}.marketing-home-slide-heading>strong{font-size:clamp(1rem,2vw,1.35rem)}.marketing-home-app-shell{border:1px solid var(--line);background:var(--surface);border-radius:1rem;grid-template-columns:8rem minmax(0,1fr);min-height:0;display:grid;overflow:hidden;box-shadow:0 18px 40px #203d3214}.marketing-home-app-nav{border-right:1px solid var(--line);background:var(--background);align-content:start;gap:.45rem;padding:1rem .75rem;display:grid}.marketing-home-app-nav b{color:#fff;background:var(--primary);border-radius:.75rem;place-items:center;width:2.5rem;height:2.5rem;margin-bottom:.45rem;font-size:.75rem;display:grid}.marketing-home-app-nav span{color:var(--muted);border-radius:.55rem;padding:.55rem .65rem;font-size:.65rem;font-weight:750}.marketing-home-app-nav span.active{color:var(--primary-dark);background:var(--accent)}.marketing-home-schedule-screen{grid-template-rows:auto minmax(0,1fr);gap:.8rem;min-width:0;padding:1rem;display:grid}.marketing-home-schedule-screen>header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.marketing-home-schedule-screen>header div{gap:.15rem;display:grid}.marketing-home-schedule-screen>header small{color:var(--muted);text-transform:uppercase;font-size:.62rem}.marketing-home-schedule-screen>header strong{font-size:1rem}.marketing-home-schedule-screen>header>span{color:#fff;background:var(--primary);border-radius:.55rem;padding:.45rem .65rem;font-size:.62rem;font-weight:800}.marketing-home-week{border:1px solid var(--line);background:var(--background);border-radius:.7rem;grid-template-rows:2rem repeat(3,minmax(3.2rem,1fr));min-height:0;display:grid;overflow:hidden}.marketing-home-week-days,.marketing-home-week-row{grid-template-columns:2.8rem repeat(5,minmax(0,1fr));min-width:0;display:grid}.marketing-home-week-days>*,.marketing-home-week-row>*{border-left:1px solid var(--line);min-width:0}.marketing-home-week-days>:first-child,.marketing-home-week-row>:first-child{border-left:0}.marketing-home-week-days strong{color:var(--muted);text-transform:uppercase;place-items:center;font-size:.62rem;display:grid}.marketing-home-week-row{border-top:1px dashed var(--line)}.marketing-home-week-row small{color:var(--muted);text-align:right;padding:.35rem;font-size:.55rem}.marketing-home-week-row i{align-content:center;gap:.05rem;padding:.35rem;font-style:normal;display:grid;position:relative;overflow:hidden}.marketing-home-week-row.lesson-row i:nth-of-type(3){border-left:3px solid var(--primary);color:#195d46;background:#dff2e9;border-radius:.5rem;align-self:stretch;margin:.2rem}.marketing-home-week-row i b,.marketing-home-week-row i span,.marketing-home-week-row i em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.marketing-home-week-row i b{font-size:.55rem}.marketing-home-week-row i span{font-size:.66rem;font-weight:850}.marketing-home-week-row i em{color:#477364;font-size:.52rem;font-style:normal}.marketing-home-closure-screen{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1rem;min-height:0;display:grid}.marketing-home-lesson-summary,.marketing-home-closure-form{border:1px solid var(--line);background:var(--surface);border-radius:1rem;align-content:start;gap:.7rem;min-width:0;padding:clamp(1rem,2.5vw,1.5rem);display:grid;box-shadow:0 18px 40px #203d3212}.marketing-home-lesson-summary>span{color:var(--primary);font-size:.68rem;font-weight:850}.marketing-home-lesson-summary>strong{font-size:clamp(1.1rem,2.3vw,1.55rem)}.marketing-home-lesson-summary>p{max-width:30rem;color:var(--muted);margin:0;font-size:.76rem;line-height:1.55}.marketing-home-lesson-summary>div{background:var(--accent);border-radius:.75rem;align-items:center;gap:.7rem;margin-top:auto;padding:.8rem;display:flex}.marketing-home-lesson-summary>div i{color:#fff;background:var(--primary);border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;font-style:normal;font-weight:900;display:grid}.marketing-home-lesson-summary>div span{gap:.15rem;min-width:0;display:grid}.marketing-home-lesson-summary>div strong{font-size:.75rem}.marketing-home-lesson-summary>div small{color:var(--muted);font-size:.6rem}.marketing-home-closure-results{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.marketing-home-closure-results li{color:var(--primary-dark);background:var(--background);opacity:0;border:1px solid #b9d8ca;border-radius:999px;align-items:center;gap:.25rem;padding:.3rem .45rem;font-size:.56rem;font-weight:800;animation:12s ease-in-out 4s infinite marketing-home-result;display:inline-flex;transform:translateY(.35rem)}.marketing-home-closure-results i{color:var(--primary);font-style:normal}.marketing-home-closure-form{grid-template-rows:auto minmax(4.8rem,1fr) auto 2.7rem;align-content:stretch;position:relative}.marketing-home-closure-form label{color:var(--muted);justify-content:space-between;align-items:center;gap:.5rem;font-size:.66rem;font-weight:750;display:flex}.marketing-home-closure-form label em{color:var(--primary);background:var(--accent);border-radius:999px;padding:.25rem .45rem;font-size:.55rem;font-style:normal}.marketing-home-closure-form>div{border:1px solid var(--line);min-height:4.8rem;color:var(--ink);background:var(--background);border-radius:.7rem;padding:.8rem;font-size:.72rem;line-height:1.45}.marketing-home-close-button{color:#fff;background:var(--primary);border-radius:.65rem;place-items:center;min-height:2.7rem;margin-top:auto;font-size:.72rem;font-weight:850;animation:12s ease-in-out 4s infinite marketing-home-close-action;display:grid}.marketing-home-demo-cursor{color:#fff;filter:drop-shadow(0 2px 2px #00000059);opacity:0;width:1.5rem;height:1.7rem;animation:12s ease-in-out 4s infinite marketing-home-cursor;position:absolute;bottom:1.5rem;right:1.8rem}.marketing-home-demo-cursor svg{width:100%;height:100%;fill:var(--ink);stroke:#fff;stroke-width:1.5px;stroke-linejoin:round}.marketing-home-family-screen{border:1px solid var(--line);background:var(--surface);border-radius:1rem;align-content:start;gap:.75rem;min-height:0;padding:clamp(1rem,2.5vw,1.5rem);display:grid;box-shadow:0 18px 40px #203d3212}.marketing-home-family-screen>header{grid-template-columns:2.7rem minmax(0,1fr) auto;align-items:center;gap:.7rem;display:grid}.marketing-home-family-screen>header>div:nth-child(2){gap:.08rem;display:grid}.marketing-home-family-screen>header small,.marketing-home-family-cards small,.marketing-home-family-package small{color:var(--muted);text-transform:uppercase;font-size:.58rem}.marketing-home-family-screen>header strong{font-size:.8rem}.marketing-home-family-screen>header>span{color:var(--primary);background:var(--accent);border-radius:999px;padding:.3rem .55rem;font-size:.58rem;font-weight:800}.marketing-home-family-avatar{color:#fff;background:var(--primary);border-radius:.75rem;place-items:center;width:2.7rem;height:2.7rem;font-size:.8rem;font-weight:900;display:grid}.marketing-home-family-screen nav{background:var(--background);border-radius:.65rem;gap:.3rem;padding:.25rem;display:flex;overflow:hidden}.marketing-home-family-screen nav>*{color:var(--muted);white-space:nowrap;border-radius:.45rem;padding:.4rem .6rem;font-size:.6rem}.marketing-home-family-screen nav strong{color:var(--primary);background:var(--accent)}.marketing-home-family-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.marketing-home-family-cards article{border:1px solid var(--line);background:var(--background);border-radius:.7rem;gap:.25rem;min-width:0;padding:.8rem;display:grid}.marketing-home-family-cards strong,.marketing-home-family-cards span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.marketing-home-family-cards strong{font-size:.88rem}.marketing-home-family-cards span{color:var(--muted);font-size:.6rem}.marketing-home-family-package{border:1px solid var(--line);background:var(--background);border-radius:.7rem;align-items:center;gap:.45rem;padding:.7rem .8rem;display:flex}.marketing-home-family-package>div{gap:.1rem;min-width:8rem;margin-right:auto;display:grid}.marketing-home-family-package>div strong{font-size:.7rem}.marketing-home-family-package>span{border:1px solid var(--line);width:2.35rem;height:2.35rem;color:var(--muted);border-radius:50%;flex:none;place-items:center;font-size:.52rem;display:grid}.marketing-home-family-package>span.complete{color:#fff;border-color:var(--primary);background:var(--primary);font-size:.75rem;font-weight:900}.marketing-home-slide-dots{z-index:4;justify-content:center;gap:.4rem;display:flex;position:absolute;bottom:1.15rem;left:0;right:0}.marketing-home-slide-dots span{background:var(--line);border-radius:999px;width:.45rem;height:.45rem;animation:12s ease-in-out infinite marketing-home-dot}.marketing-home-slide-dots .dot-closure{animation-delay:4s}.marketing-home-slide-dots .dot-family{animation-delay:8s}.marketing-home-flow figcaption{gap:.35rem;padding:1rem .25rem 0;display:grid}.marketing-home-flow figcaption strong{font-size:.95rem}.marketing-home-flow figcaption span{max-width:52rem;color:var(--muted);font-size:.8rem;line-height:1.5}@keyframes landing-flow-step{0%,42%,to{border-color:var(--line);transform:translateY(0)}8%,28%{border-color:#78a792;transform:translateY(-2px)}}@keyframes marketing-home-slide{0%,29%{opacity:1;transform:scale(1)}34%,to{opacity:0;transform:scale(.985)}}@keyframes marketing-home-dot{0%,29%{background:var(--primary);width:1.5rem}34%,to{background:var(--line);width:.45rem}}@keyframes marketing-home-cursor{0%,6%{opacity:0;transform:translate(1rem,.7rem)scale(1)}10%,18%{opacity:1;transform:translate(0)scale(1)}21%{opacity:1;transform:translate(0)scale(.82)}25%,to{opacity:0;transform:translate(0)scale(1)}}@keyframes marketing-home-close-action{0%,17%,25%,to{box-shadow:none;transform:scale(1)}21%{transform:scale(.985);box-shadow:0 0 0 .35rem #1775572e}}@keyframes marketing-home-result{0%,20%{opacity:0;transform:translateY(.35rem)}24%,31%{opacity:1;transform:translateY(0)}36%,to{opacity:0;transform:translateY(0)}}.button{cursor:pointer;text-align:center;white-space:normal;word-break:normal;border:1px solid #0000;border-radius:.7rem;justify-content:center;align-items:center;gap:.45rem;min-width:0;min-height:2.65rem;padding:.65rem 1rem;font-weight:750;line-height:1.25;display:inline-flex}.button:disabled,.button[aria-disabled=true]{cursor:not-allowed;opacity:.48}.button-primary{color:#fff;background:var(--primary)}.button-primary:hover:not(:disabled){background:var(--primary-dark)}.button-secondary{border-color:var(--primary);color:var(--primary);background:var(--surface)}.button-quiet{border-color:var(--line);color:var(--ink);background:0 0}.button-quiet.danger{color:var(--danger)}.button-danger{color:#fff;background:var(--danger)}.button-row,.actions-row{flex-wrap:wrap;align-items:center;gap:.75rem;min-width:0;display:flex}.button-row>form,.actions-row>form{min-width:0}.family-autonomy-summary{gap:1rem;display:grid}.family-private-finance-list{margin-top:1rem}.family-private-finance-list>a{color:inherit;text-decoration:none}.family-private-finance-list .family-payment-card{transition:border-color .18s,transform .18s}.family-private-finance-list .family-payment-card:hover{border-color:var(--primary);transform:translateY(-1px)}.family-finance-category-summary{border:1px solid var(--line);background:var(--surface-muted);border-radius:.9rem;gap:.65rem;padding:.85rem 1rem;display:grid}.family-finance-category-summary>div{flex-wrap:wrap;gap:.5rem;display:flex}.family-finance-category-summary span{background:var(--surface);color:var(--muted);border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .65rem;font-size:.78rem;display:inline-flex}.family-finance-category-summary b{color:var(--ink);font-variant-numeric:tabular-nums}.app-shell{min-height:100vh}.topbar{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;justify-content:space-between;align-items:center;height:4.5rem;padding:0 1.5rem;display:flex;position:sticky;top:0}.brand,.user-menu{align-items:center;gap:.75rem;font-weight:800;display:flex}.user-menu{color:var(--muted);font-size:.88rem}.dashboard-role-switcher{border:1px solid var(--line);background:var(--background);border-radius:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:.2rem;padding:.2rem;display:grid}.dashboard-role-switcher a{min-height:2.15rem;color:var(--muted);white-space:nowrap;border-radius:.55rem;justify-content:center;align-items:center;padding:.35rem .65rem;font-size:.72rem;font-weight:850;display:flex}.dashboard-role-switcher a:hover{color:var(--primary)}.dashboard-role-switcher a.active{color:#fff;background:var(--primary)}.role-switcher-short{display:none}.theme-toggle{border:1px solid var(--line);cursor:pointer;width:3.4rem;height:1.9rem;color:var(--muted);background:var(--background);border-radius:999px;flex:none;padding:0;transition:border-color .15s,background .15s;position:relative}.theme-toggle:hover{border-color:var(--primary)}.theme-toggle-icons{justify-content:space-between;align-items:center;font-size:.72rem;line-height:1;display:flex;position:absolute;inset:0 .38rem}.theme-toggle-thumb{background:var(--surface);border-radius:50%;width:1.4rem;height:1.4rem;transition:transform .18s,background .18s;position:absolute;top:.18rem;left:.2rem;box-shadow:0 2px 7px #192e2633}.theme-toggle[aria-pressed=true] .theme-toggle-thumb{transform:translate(1.55rem)}.workspace{grid-template-columns:14rem minmax(0,1fr);align-items:start;min-height:calc(100dvh - 4.5rem);transition:grid-template-columns .18s;display:grid}.workspace:has(>.sidebar.is-collapsed){grid-template-columns:3.75rem minmax(0,1fr)}.sidebar{overscroll-behavior:contain;scrollbar-gutter:stable;border-right:1px solid var(--line);background:var(--surface);height:calc(100dvh - 4.5rem);padding:1.25rem 1rem 2rem;position:sticky;top:4.5rem;overflow-y:auto}.sidebar-collapse-button{border:1px solid var(--line);cursor:pointer;width:100%;min-height:2.4rem;color:var(--muted);font:inherit;background:0 0;border-radius:.65rem;justify-content:space-between;align-items:center;gap:.5rem;margin:0 0 1rem;padding:.5rem .7rem;font-size:.72rem;font-weight:750;display:flex}.sidebar-collapse-button:hover{border-color:var(--primary);color:var(--primary);background:var(--accent)}.sidebar-collapse-button:focus-visible{outline-offset:2px;outline:3px solid #17755738}.sidebar-collapse-icon{font-size:1.05rem;line-height:1}.sidebar.is-collapsed{scrollbar-gutter:auto;padding-inline:.6rem;overflow:hidden}.sidebar.is-collapsed .sidebar-collapse-button{justify-content:center;padding-inline:.4rem}.sidebar.is-collapsed .sidebar-collapse-label,.sidebar.is-collapsed .sidebar-sections,.mobile-navigation{display:none}.onboarding-start-button{width:100%;margin-top:1rem}.teacher-tour-root{z-index:1200;position:fixed;inset:0}.teacher-tour-backdrop{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#0c1914a8;position:absolute;inset:0}.teacher-tour-spotlight{z-index:1;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.teacher-tour-dialog{z-index:2;border:1px solid var(--line);width:min(28rem,100vw - 2rem);color:var(--ink);background:var(--surface);border-radius:1.2rem;padding:1.4rem;position:fixed;bottom:clamp(1rem,4vw,3rem);right:clamp(1rem,4vw,3rem);box-shadow:0 24px 70px #0000004d}.teacher-tour-dialog:focus{outline:none}.teacher-tour-dialog h2{margin:.65rem 0 .55rem;font-size:clamp(1.35rem,3vw,1.75rem)}.teacher-tour-dialog>p{color:var(--muted);margin-bottom:1rem;line-height:1.55}.teacher-tour-progress{color:var(--muted);justify-content:space-between;align-items:center;gap:1rem;font-size:.72rem;font-weight:750;display:flex}.teacher-tour-progress span:first-child{color:var(--primary);letter-spacing:.08em;text-transform:uppercase}.teacher-tour-dots{gap:.35rem;margin-bottom:1.15rem;display:flex}.teacher-tour-dots span{background:var(--line);border-radius:999px;width:.45rem;height:.45rem;transition:width .15s,background .15s}.teacher-tour-dots span.active{background:var(--primary);width:1.35rem}.teacher-tour-actions,.teacher-tour-actions>div{align-items:center;gap:.55rem;display:flex}.teacher-tour-actions{justify-content:space-between}.teacher-tour-replay{justify-content:space-between;align-items:center;gap:1.25rem;display:flex}.teacher-tour-replay h2{margin-bottom:.25rem}.teacher-tour-replay p{margin-bottom:0}.family-quick-start{border-color:color-mix(in srgb, var(--primary) 42%, var(--line));background:linear-gradient(145deg, var(--surface), var(--accent));gap:1rem;display:grid}.family-quick-start-heading,.family-quick-start-replay{justify-content:space-between;align-items:flex-start;gap:1.25rem;display:flex}.family-quick-start-heading h2,.family-quick-start-replay h2{margin:.15rem 0 .35rem}.family-quick-start-heading p:last-child,.family-quick-start-replay p{margin-bottom:0}.family-quick-start-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.family-quick-start-step{border:1px solid var(--line);background:var(--surface);border-radius:.85rem;grid-template-columns:1.8rem minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.8rem;display:grid}.family-quick-start-number{width:1.8rem;height:1.8rem;color:var(--primary-dark);background:var(--accent);border-radius:50%;justify-content:center;align-items:center;font-size:.78rem;font-weight:850;display:inline-flex}.family-quick-start-step h3{margin:0 0 .15rem;font-size:.96rem}.family-quick-start-step p{color:var(--muted);margin:0;font-size:.86rem;line-height:1.4}.family-quick-start-step .button{white-space:nowrap;min-height:2.3rem;font-size:.8rem}.family-quick-start-replay{align-items:center}.nav-role-group+.nav-role-group{border-top:2px solid #dce7e1;margin-top:1.35rem;padding-top:1.15rem}.nav-role-group-title{color:var(--primary-dark);letter-spacing:.08em;text-transform:uppercase;margin:0 .75rem .8rem;font-size:.72rem;font-weight:900}.nav-section+.nav-section{border-top:1px solid var(--line);margin-top:1.1rem;padding-top:1rem}.nav-section-title{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;margin:0 1rem .45rem;font-size:.66rem;font-weight:800}.nav-section-links{gap:.3rem;display:grid}.nav-link{border-radius:.7rem;justify-content:space-between;align-items:center;gap:.6rem;padding:.8rem 1rem;font-weight:700;display:flex}.nav-link.active{color:var(--primary);background:var(--accent)}.nav-link.disabled{color:#9aa49f}.nav-unread-badge{color:#fff;background:var(--primary);border-radius:999px;justify-content:center;align-items:center;min-width:1.35rem;height:1.35rem;padding:0 .35rem;font-size:.68rem;line-height:1;display:inline-flex}.week-navigation{flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem;min-width:0;display:flex}.calendar-range-toggle{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;gap:.55rem;margin-bottom:-.9rem;font-size:.75rem;display:flex}.calendar-range-toggle .button{min-height:2.15rem;padding:.35rem .65rem;font-size:.72rem}.week-calendar-scroll{border:1px solid var(--line);background:var(--surface);border-radius:1rem;width:100%;min-width:0;max-width:100%;overflow-x:auto}.week-calendar{grid-template-columns:3.4rem repeat(7,minmax(7.25rem,1fr));min-width:58rem;display:grid}.week-calendar-day{min-height:calc(var(--calendar-hour-count,15) * 3rem + 3.25rem);border-left:1px solid var(--line)}.week-calendar-day>header{z-index:2;border-bottom:1px solid var(--line);text-transform:capitalize;background:#fffffff2;justify-content:space-between;align-items:center;height:3.25rem;padding:.65rem;display:flex;position:sticky;top:0}.week-calendar-day>header span{color:var(--muted);font-size:.82rem}.week-calendar-day>header span small{color:var(--primary);text-transform:uppercase;margin-top:.08rem;font-size:.56rem;font-weight:850;display:block}.week-calendar-day.current{background:linear-gradient(#f1faf6,#f1faf62e)}.week-calendar-day.current>header{box-shadow:inset 0 -3px var(--primary);background:#f1faf6}.week-calendar-body{height:calc(var(--calendar-hour-count,15) * 3rem);position:relative}.week-calendar-hours{grid-template-rows:repeat(var(--calendar-hour-count,15), 3rem);display:grid;position:absolute;inset:0}.week-calendar-hours span{border-bottom:1px dashed #dfe7e2}.week-calendar-time-axis{z-index:4;color:var(--muted);background:var(--surface);position:sticky;left:0}.week-calendar-time-axis>header{border-bottom:1px solid var(--line);height:3.25rem}.week-calendar-time-labels{height:calc(var(--calendar-hour-count,15) * 3rem);grid-template-rows:repeat(var(--calendar-hour-count,15), 3rem) 0;border-right:1px solid var(--line);display:grid}.week-calendar-time-labels span{z-index:1;font-variant-numeric:tabular-nums;justify-self:end;margin-right:.4rem;font-size:.72rem;position:relative;translate:0 -.48em}.week-calendar-time-labels span:first-child{translate:0}.week-calendar-time-labels span:last-child{translate:0 -100%}.week-calendar-event{--calendar-start-hour:0rem;--calendar-start-minute:0rem;--calendar-duration-hour:0rem;--calendar-duration-minute:3rem;--subject-tone:var(--primary);--subject-tint:#dff2e9;z-index:1;top:calc(var(--calendar-start-hour) + var(--calendar-start-minute));height:calc(var(--calendar-duration-hour) + var(--calendar-duration-minute));border-left:3px solid var(--subject-tone);min-height:1.75rem;color:var(--subject-tone);background:var(--subject-tint);border-radius:.4rem;align-content:start;gap:.08rem;padding:.3rem .42rem;font-size:.78rem;transition:box-shadow .15s,filter .15s,transform .15s;display:grid;position:absolute;left:.22rem;right:.22rem;overflow:hidden}.week-calendar-event:hover{filter:saturate(1.08);transform:translateY(-1px);box-shadow:0 5px 14px #26493d24}.week-calendar-event:focus-visible{z-index:3;outline-offset:1px;outline:3px solid #1775573d}.week-calendar-event.draggable{cursor:grab}.week-calendar-event.draggable:active{cursor:grabbing}.week-calendar-event.is-dragging{opacity:.7;box-shadow:0 0 0 2px #17755759}.week-calendar-body.drop-target{background:#17755714;box-shadow:inset 0 0 0 2px #17755773}.week-calendar-vacancy{--calendar-start-hour:0rem;--calendar-start-minute:0rem;--calendar-duration-hour:0rem;--calendar-duration-minute:3rem;z-index:2;top:calc(var(--calendar-start-hour) + var(--calendar-start-minute));height:calc(var(--calendar-duration-hour) + var(--calendar-duration-minute));border:1px dashed color-mix(in srgb, var(--primary) 75%, var(--line));min-height:1.75rem;color:var(--primary);background:color-mix(in srgb, var(--accent) 72%, var(--surface));text-align:left;cursor:pointer;border-radius:.42rem;align-content:center;gap:.05rem;padding:.22rem .34rem;font-size:.74rem;display:grid;position:absolute;left:.18rem;right:.18rem;overflow:hidden}.week-calendar-vacancy time,.week-calendar-vacancy small{font-size:.7rem}.week-calendar-vacancy.is-for-matching{color:#225f4c;background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--accent) 92%, var(--surface)), color-mix(in srgb, var(--accent) 92%, var(--surface)) 6px, color-mix(in srgb, var(--surface) 88%, var(--accent)) 6px, color-mix(in srgb, var(--surface) 88%, var(--accent)) 12px);border-style:solid}.week-calendar-vacancy.drag-compatible{background:color-mix(in srgb, var(--accent) 92%, var(--surface));border-style:solid;box-shadow:0 0 0 3px #63cca64d}.week-calendar-vacancy.drag-incompatible{border-color:var(--danger);color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, var(--surface))}.week-calendar-availability{--calendar-start-hour:0rem;--calendar-start-minute:0rem;--calendar-duration-hour:0rem;--calendar-duration-minute:3rem;z-index:0;top:calc(var(--calendar-start-hour) + var(--calendar-start-minute));height:calc(var(--calendar-duration-hour) + var(--calendar-duration-minute));color:#246b53;background:repeating-linear-gradient(135deg,#e8f7f0,#e8f7f0 6px,#f4fbf8 6px 12px);border:1px dashed #68a88e;border-radius:.42rem;min-height:1.5rem;padding:.27rem .38rem;font-size:.72rem;position:absolute;left:.12rem;right:.12rem;overflow:hidden}.week-calendar-availability span,.week-calendar-availability small{font-size:.68rem;font-weight:750;display:block}.week-calendar-start-hour-0{--calendar-start-hour:0rem}.week-calendar-start-hour-1{--calendar-start-hour:3rem}.week-calendar-start-hour-2{--calendar-start-hour:6rem}.week-calendar-start-hour-3{--calendar-start-hour:9rem}.week-calendar-start-hour-4{--calendar-start-hour:12rem}.week-calendar-start-hour-5{--calendar-start-hour:15rem}.week-calendar-start-hour-6{--calendar-start-hour:18rem}.week-calendar-start-hour-7{--calendar-start-hour:21rem}.week-calendar-start-hour-8{--calendar-start-hour:24rem}.week-calendar-start-hour-9{--calendar-start-hour:27rem}.week-calendar-start-hour-10{--calendar-start-hour:30rem}.week-calendar-start-hour-11{--calendar-start-hour:33rem}.week-calendar-start-hour-12{--calendar-start-hour:36rem}.week-calendar-start-hour-13{--calendar-start-hour:39rem}.week-calendar-start-hour-14{--calendar-start-hour:42rem}.week-calendar-start-hour-15{--calendar-start-hour:45rem}.week-calendar-start-hour-16{--calendar-start-hour:48rem}.week-calendar-start-hour-17{--calendar-start-hour:51rem}.week-calendar-start-hour-18{--calendar-start-hour:54rem}.week-calendar-start-hour-19{--calendar-start-hour:57rem}.week-calendar-start-hour-20{--calendar-start-hour:60rem}.week-calendar-start-hour-21{--calendar-start-hour:63rem}.week-calendar-start-hour-22{--calendar-start-hour:66rem}.week-calendar-start-hour-23{--calendar-start-hour:69rem}.week-calendar-start-minute-0{--calendar-start-minute:0rem}.week-calendar-start-minute-15{--calendar-start-minute:.75rem}.week-calendar-start-minute-30{--calendar-start-minute:1.5rem}.week-calendar-start-minute-45{--calendar-start-minute:2.25rem}.week-calendar-duration-hour-0{--calendar-duration-hour:0rem}.week-calendar-duration-hour-1{--calendar-duration-hour:3rem}.week-calendar-duration-hour-2{--calendar-duration-hour:6rem}.week-calendar-duration-hour-3{--calendar-duration-hour:9rem}.week-calendar-duration-hour-4{--calendar-duration-hour:12rem}.week-calendar-duration-hour-5{--calendar-duration-hour:15rem}.week-calendar-duration-hour-6{--calendar-duration-hour:18rem}.week-calendar-duration-hour-7{--calendar-duration-hour:21rem}.week-calendar-duration-hour-8{--calendar-duration-hour:24rem}.week-calendar-duration-hour-9{--calendar-duration-hour:27rem}.week-calendar-duration-hour-10{--calendar-duration-hour:30rem}.week-calendar-duration-hour-11{--calendar-duration-hour:33rem}.week-calendar-duration-hour-12{--calendar-duration-hour:36rem}.week-calendar-duration-hour-13{--calendar-duration-hour:39rem}.week-calendar-duration-hour-14{--calendar-duration-hour:42rem}.week-calendar-duration-hour-15{--calendar-duration-hour:45rem}.week-calendar-duration-minute-0{--calendar-duration-minute:0rem}.week-calendar-duration-minute-15{--calendar-duration-minute:.75rem}.week-calendar-duration-minute-30{--calendar-duration-minute:1.5rem}.week-calendar-duration-minute-45{--calendar-duration-minute:2.25rem}.week-calendar-event time,.week-calendar-event small{font-size:.72rem}.week-calendar-event.cancelled{opacity:.55;text-decoration:line-through}.schedule-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;font-size:.84rem;font-weight:750;display:flex}.schedule-legend span{align-items:center;gap:.45rem;display:inline-flex}.schedule-legend i{border-radius:.25rem;width:1.5rem;height:.8rem;display:inline-block}.schedule-legend i.lesson{border-left:3px solid var(--primary);background:var(--accent)}.schedule-legend i.available{background:#e8f7f0;border:1px dashed #68a88e}.schedule-legend i.vacancy{border:1px dashed var(--primary);background:var(--accent)}.schedule-drag-hint{color:var(--muted);margin:-.9rem 0 0;font-size:.76rem}.schedule-mobile-hint{display:none}.schedule-drag-preview{z-index:80;pointer-events:none;border:1px solid color-mix(in srgb, var(--primary) 65%, var(--line));min-width:10rem;color:var(--ink);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:.7rem;gap:.12rem;padding:.55rem .7rem;font-size:.78rem;display:grid;position:fixed;translate:.75rem .75rem;box-shadow:0 12px 28px #0d1d1738}.schedule-drag-preview span{color:var(--primary);font-variant-numeric:tabular-nums;font-weight:850}.schedule-drag-preview small{color:var(--danger)}.schedule-drag-preview.incompatible{border-color:color-mix(in srgb, var(--danger) 65%, var(--line))}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.schedule-move-backdrop{z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0d1d178c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.schedule-move-dialog{border:1px solid var(--line);width:min(100%,32rem);color:var(--ink);background:var(--surface);border-radius:1rem;gap:1.25rem;padding:1.4rem;display:grid;box-shadow:0 24px 70px #0d1d1747}.schedule-move-dialog h2{margin:.2rem 0 .35rem}.schedule-move-dialog p{margin:0}.regular-schedule-calendar .week-calendar-day>header{justify-content:center}.regular-availability-section{gap:.8rem;display:grid}.regular-availability-section>.panel{box-shadow:none}.regular-matching-availability{padding:0;overflow:hidden}.regular-matching-availability>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.3rem;display:flex}.regular-matching-availability>summary>span:first-child{gap:.2rem;min-width:0;display:grid}.regular-matching-availability>summary strong{color:var(--primary);font-size:1rem}.regular-matching-availability>summary small{color:var(--muted);font-size:.82rem;font-weight:600}.regular-matching-availability[open]>summary{border-bottom:1px solid var(--line)}.regular-matching-availability-form{gap:1rem;padding:1.2rem 1.3rem 1.3rem;display:grid}.regular-matching-availability .matching-availability-row{gap:1rem;padding:1rem}.regular-matching-availability .matching-availability-row :is(input,select,.button){min-height:3.25rem;font-size:.95rem}.regular-matching-availability .form-actions{margin-top:0}.regular-vacancy-creator{padding:0;overflow:hidden}.regular-vacancy-creator>summary{color:var(--primary);cursor:pointer;padding:1.25rem 1.4rem;font-size:1.08rem;font-weight:850;list-style:none}.regular-vacancy-creator>summary::-webkit-details-marker{display:none}.regular-vacancy-creator[open]>summary{border-bottom:1px solid var(--line)}.regular-vacancy-form{gap:1.15rem;padding:1.4rem;display:grid}.regular-vacancy-main-fields{grid-template-columns:minmax(12rem,1fr) minmax(12rem,1fr) auto;align-items:end;gap:1rem;display:grid}.regular-vacancy-main-fields>label{min-width:0;color:var(--muted);gap:.5rem;font-size:.96rem;font-weight:800;display:grid}.regular-vacancy-main-fields input{border:1px solid var(--line-strong,#91a39a);width:100%;min-width:0;min-height:3.65rem;color:var(--ink);background:var(--surface);border-radius:.78rem;padding:.8rem .95rem;font-size:1.08rem;font-weight:750}.regular-vacancy-main-fields input:focus{border-color:var(--primary);outline:3px solid var(--focus);outline-offset:1px}.regular-vacancy-main-fields .button{white-space:nowrap;min-height:3.65rem;padding-inline:1.4rem;font-size:1rem}.regular-vacancy-main-fields .duration-input{display:block;position:relative}.regular-vacancy-main-fields .duration-input input{padding-right:3.5rem}.regular-vacancy-main-fields .duration-input b{color:var(--muted);pointer-events:none;font-size:.9rem;position:absolute;top:50%;right:1rem;translate:0 -50%}.regular-vacancy-weekdays{border:0;min-width:0;margin:0;padding:0}.regular-vacancy-weekdays legend{color:var(--muted);margin-bottom:.55rem;font-size:.96rem;font-weight:800}.regular-vacancy-weekdays>div{grid-template-columns:repeat(7,minmax(0,1fr));gap:.55rem;display:grid}.regular-vacancy-weekdays label{border:1px solid var(--line);min-width:0;min-height:3.1rem;color:var(--ink);background:var(--surface);cursor:pointer;border-radius:.75rem;justify-content:center;align-items:center;gap:.5rem;padding:.6rem .7rem;font-size:.9rem;font-weight:800;display:flex}.regular-vacancy-weekdays label:has(input:checked){border-color:var(--primary);color:var(--primary);background:var(--accent)}.regular-vacancy-weekdays input{width:1.15rem;height:1.15rem;accent-color:var(--primary);flex:none;margin:0}.regular-vacancy-weekdays label:focus-within{outline:3px solid var(--focus);outline-offset:1px}.regular-vacancy-form .form-message{margin:0}.regular-vacancy-form .regular-vacancy-matching-choice{border:1px solid var(--line);min-height:3.4rem;color:var(--ink);background:var(--surface-muted);cursor:pointer;border-radius:.75rem;grid-template-columns:auto minmax(0,1fr);align-content:center;align-items:center;gap:.7rem;padding:.65rem .8rem;display:grid}.regular-vacancy-form .regular-vacancy-matching-choice input{width:1.2rem;min-height:1.2rem;accent-color:var(--primary);margin:0;padding:0}.regular-vacancy-matching-choice span{gap:.08rem;display:grid}.regular-vacancy-matching-choice small{color:var(--muted);font-size:.78rem;font-weight:600}.vacancy-family-offer-entry{justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.3rem;display:flex}.vacancy-family-offer-entry div{gap:.2rem;min-width:0;display:grid}.vacancy-family-offer-entry strong{font-size:1.02rem}.vacancy-family-offer-entry p{color:var(--muted);margin:0;font-size:.84rem;line-height:1.4}.vacancy-family-offer-entry .button{flex:none}.vacancy-offer-family-button{margin:0 1.2rem}.vacancy-family-offer-sheet{width:min(100%,46rem)}.vacancy-family-offer-form{gap:1rem;padding:0 1.2rem 1.2rem;display:grid;overflow-y:auto}.vacancy-family-offer-scope,.vacancy-family-offer-options{border:0;min-width:0;margin:0;padding:0}.vacancy-family-offer-scope legend,.vacancy-family-offer-options legend{color:var(--muted);margin-bottom:.5rem;font-size:.86rem;font-weight:800}.vacancy-family-offer-scope{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.vacancy-family-offer-scope legend{grid-column:1/-1}.vacancy-family-offer-scope>label,.vacancy-family-offer-options>label{border:1px solid var(--line);min-width:0;color:var(--ink);background:var(--surface-muted);cursor:pointer;border-radius:.75rem;align-items:center;gap:.65rem;padding:.75rem .8rem;display:flex}:is(.vacancy-family-offer-scope>label:has(input:checked),.vacancy-family-offer-options>label:has(input:checked)){border-color:var(--primary);background:var(--accent)}.vacancy-family-offer-scope input,.vacancy-family-offer-options input{width:1.15rem;height:1.15rem;accent-color:var(--primary);flex:none;margin:0}.vacancy-family-offer-scope span,.vacancy-family-offer-options span{gap:.08rem;min-width:0;display:grid}.vacancy-family-offer-scope small,.vacancy-family-offer-options small{color:var(--muted);font-size:.76rem}.vacancy-family-offer-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;max-height:16rem;padding:.1rem .2rem .2rem;display:grid;overflow-y:auto}.vacancy-family-offer-options legend{grid-column:1/-1}.vacancy-family-offer-form .form-actions{margin-top:0}.vacancy-matching-form{border:1px solid color-mix(in srgb, var(--primary) 35%, var(--line));background:color-mix(in srgb, var(--accent) 48%, var(--surface));border-radius:.85rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.8rem;margin:0 1.2rem;padding:1rem;display:grid}.vacancy-matching-form p{color:var(--muted);margin:.25rem 0 0;font-size:.8rem;line-height:1.4}.vacancy-matching-form .form-message{grid-column:1/-1;margin:0}.vacancy-edit-form{grid-template-columns:minmax(7rem,1fr) minmax(7rem,1fr);gap:.8rem;padding:0 1.2rem;display:grid}.vacancy-edit-form label{min-width:0;color:var(--muted);gap:.4rem;font-size:.82rem;font-weight:800;display:grid}.vacancy-edit-form :is(input,select){border:1px solid var(--line-strong,#91a39a);width:100%;min-width:0;min-height:3rem;color:var(--ink);background:var(--surface);font:inherit;border-radius:.68rem;padding:.65rem .75rem;font-weight:700}.vacancy-edit-form>.button,.vacancy-edit-form>.form-message{grid-column:1/-1}.vacancy-schedule-options{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:.55rem;max-height:min(18rem,34dvh);margin-top:.2rem;padding:1rem 1.2rem;display:grid;overflow:auto}.vacancy-schedule-options>p{margin:0}.vacancy-delete-form{margin-top:auto;padding:0 1.2rem}@media (min-width:721px) and (max-width:980px){.regular-vacancy-main-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.regular-vacancy-main-fields .button{grid-column:1/-1;width:100%}.regular-vacancy-weekdays>div{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:720px){:is(.regular-schedule-scroll,.weekly-schedule-scroll){scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scroll-padding-left:3.4rem}:is(.regular-schedule-scroll,.weekly-schedule-scroll):focus-visible{outline:3px solid var(--focus);outline-offset:2px}:is(.regular-schedule-calendar,.weekly-schedule-calendar){grid-template-columns:3.4rem repeat(7,clamp(16rem,100vw - 6.5rem,38rem));width:max-content;min-width:0}:is(.regular-schedule-calendar,.weekly-schedule-calendar) .week-calendar-day{scroll-snap-align:start;scroll-snap-stop:always}.schedule-drag-hint>span:first-child{display:none}.schedule-mobile-hint{display:inline}.regular-vacancy-form{padding:1rem}.regular-vacancy-main-fields{grid-template-columns:1fr}.regular-vacancy-main-fields .button{width:100%}.regular-vacancy-weekdays>div{grid-template-columns:repeat(2,minmax(0,1fr))}.regular-matching-availability>summary{flex-direction:column;align-items:flex-start;padding:1rem}.regular-matching-availability-form{padding:1rem}.vacancy-edit-form{grid-template-columns:1fr}.vacancy-matching-form{grid-template-columns:1fr;margin-inline:1rem}.vacancy-matching-form .button{width:100%}.vacancy-family-offer-entry{flex-direction:column;align-items:stretch}.vacancy-family-offer-entry .button{width:100%}.vacancy-family-offer-scope,.vacancy-family-offer-options{grid-template-columns:1fr}.vacancy-family-offer-scope legend,.vacancy-family-offer-options legend{grid-column:auto}.vacancy-family-offer-form{padding-inline:1rem}.vacancy-edit-form>.button,.vacancy-edit-form>.form-message{grid-column:auto}.schedule-drag-preview{display:none}}.content{width:100%;min-width:0;max-width:76rem;padding:clamp(1.25rem,4vw,3rem)}.page-stack{gap:2rem;min-width:0;display:grid}.narrow-page{max-width:52rem}.page-heading,.section-heading,.next-card-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.page-heading{flex-wrap:wrap}.page-heading-actions{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.next-card-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:.55rem;display:flex}.next-card{color:#16352b;background:linear-gradient(135deg,#dff2e9,#edf7d9);border-radius:1.25rem;padding:1.5rem}.next-card strong{font-size:1.75rem}.next-card h2{margin:.3rem 0;font-size:1.55rem}.next-card p:last-child{margin-bottom:0}.next-card.attention{background:linear-gradient(135deg,#fff2cf,#f8f4dd)}.next-card-link{color:var(--primary);text-underline-offset:.18em;margin-top:1rem;font-size:.82rem;font-weight:750;text-decoration:underline;display:inline-flex}.today-device-setup{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:1rem;display:grid}.today-device-setup:empty{display:none}.today-device-setup:has(>:only-child){grid-template-columns:minmax(0,1fr)}.pwa-install-card{align-content:start;gap:1rem;margin:0}.pwa-install-today{background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 72%, var(--surface)), var(--surface))}.pwa-install-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.pwa-install-heading>div{min-width:0}.pwa-install-heading h2,.today-notification-setup h2{margin:0 0 .35rem;font-size:1.15rem}.pwa-install-heading p,.today-notification-setup p,.pwa-parallel-note{margin:0}.pwa-install-dismiss{flex:none;min-height:2.25rem;padding:.4rem .65rem}.today-notification-setup{justify-content:space-between;align-items:center;gap:1rem;margin:0;display:flex}.today-notification-setup>div{min-width:0}.today-notification-setup .button{flex:none}.today-device-setup .messenger-connection-card{background:var(--surface);height:100%;margin:0;box-shadow:0 8px 24px #26493d0d}.today-pulse{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.today-pulse-card{border:1px solid var(--line);background:var(--surface);border-radius:1rem;grid-template-columns:2.45rem minmax(0,1fr);align-items:center;gap:.75rem;min-width:0;padding:.9rem 1rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;box-shadow:0 8px 24px #26493d0d}.today-pulse-card:hover{border-color:currentColor;transform:translateY(-2px);box-shadow:0 12px 26px #26493d17}.today-pulse-card>span:last-child{flex-direction:column;min-width:0;display:flex}.today-pulse-card small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:750;line-height:1.25;overflow:hidden}.today-pulse-card strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:1.55rem;line-height:1.1}.today-pulse-icon{color:currentColor;background:color-mix(in srgb, currentColor 12%, white);border-radius:.75rem;place-items:center;width:2.45rem;height:2.45rem;font-size:1.05rem;font-weight:900;display:grid}.today-pulse-card.students{color:#2d7fe0}.today-pulse-card.lessons{color:#8263d9}.today-pulse-card.actions{color:#dd8c17}.today-pulse-card.finances{color:#118e69}.today-pulse-card.finances strong{text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.05rem,2vw,1.55rem);overflow:hidden}.today-pulse-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:.18rem;font-size:.65rem;font-weight:700;line-height:1.2;overflow:hidden}.today-pulse-meta.debt{color:var(--danger)}.family-overview-pulse,#family-children{scroll-margin-top:6rem}.today-follow-up{border:1px solid var(--line);background:var(--surface);border-radius:.85rem;justify-content:space-between;align-items:center;gap:1rem;margin-top:-1rem;padding:.85rem 1rem;display:flex}.today-follow-up>div{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:.15rem .65rem;min-width:0;display:grid}.today-follow-up .eyebrow{grid-row:1/3;margin:0}.today-follow-up strong,.today-follow-up span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.today-follow-up span{color:var(--muted);font-size:.82rem}.section-heading{flex-wrap:wrap;justify-content:flex-start}.section-heading>h2{overflow-wrap:anywhere;min-width:0}.count-badge,.status-badge{color:var(--muted);background:#edf1ee;border-radius:999px;padding:.25rem .55rem;font-size:.75rem;font-weight:750}.lesson-origin-badge{border-radius:999px;align-items:center;width:fit-content;padding:.2rem .48rem;font-size:.7rem;font-weight:780;line-height:1.25;display:inline-flex}.lesson-origin-regular{color:#17634d;background:#dff2e9}.lesson-origin-one_off{color:#315f91;background:#e5f0fb}.lesson-origin-rescheduled{color:#74520f;background:#fff0c8}.week-calendar-origin{font-weight:800}.lesson-list{gap:.75rem;display:grid}.lesson-card{border:1px solid var(--line);background:var(--surface);border-radius:1rem;grid-template-columns:4.2rem minmax(9rem,1fr) auto auto;align-items:center;gap:1rem;padding:1rem 1.2rem;display:grid}.lesson-card.cancelled{opacity:.68;background:#f4f4f1}.lesson-card.completed,.week-lesson.completed{background:#f0f8f4;border-color:#b9d8ca}.lesson-card time{font-size:1.1rem;font-weight:850}.lesson-main p{color:var(--muted);margin:0;font-size:.88rem}.lesson-actions{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;min-width:0;display:flex}.lesson-actions>form{min-width:0}.student-history-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.student-history-metric{border:1px solid var(--line);background:var(--surface);border-radius:1rem;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.5rem 1rem;min-width:0;padding:1rem 1.1rem;display:grid}.student-history-metric span{color:var(--muted);font-size:.78rem;font-weight:750;line-height:1.35}.student-history-metric strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:1.65rem;line-height:1}.student-history-card{grid-template-columns:minmax(8.5rem,10rem) minmax(0,1fr) auto}.student-history-card time{min-width:0;color:var(--primary-dark);overflow-wrap:normal;font-size:.92rem;line-height:1.35}.student-history-card .lesson-main{min-width:0}.student-history-card .lesson-main h3{overflow-wrap:anywhere;margin:0 0 .2rem}.student-history-card>.status-badge{white-space:nowrap;grid-column:auto;justify-self:end}.empty-state{text-align:center;border:1px dashed #bac8c0;border-radius:1rem;padding:2.5rem 1.25rem}.empty-state p{color:var(--muted);margin:0}.empty-state .button{margin-top:1.25rem}.teacher-setup{gap:1rem;display:grid}.teacher-setup h2{margin-bottom:0}.teacher-setup-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.teacher-setup-list li{border:1px solid var(--line);border-radius:.9rem;grid-template-columns:2rem minmax(0,1fr) auto;align-items:center;gap:.85rem;padding:.85rem;display:grid}.teacher-setup-list li.current{background:#f3faf6;border-color:#78ae99}.teacher-setup-list li.complete{color:var(--muted);background:#f7f9f8}.teacher-setup-list strong,.teacher-setup-list small{display:block}.teacher-setup-list small{color:var(--muted);margin-top:.15rem}.teacher-setup-number{width:2rem;height:2rem;color:var(--primary);background:#e4f2ec;border-radius:50%;place-items:center;font-weight:800;display:grid}.teacher-setup-list li.complete .teacher-setup-number{color:#fff;background:var(--primary)}.teacher-setup-completed{border:1px solid var(--line);background:#f7f9f8;border-radius:.9rem}.teacher-setup-completed>summary{color:var(--muted);cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem .85rem;list-style:none;display:flex}.teacher-setup-completed>summary::-webkit-details-marker{display:none}.teacher-setup-completed>summary small{color:var(--primary);font-weight:750}.teacher-setup-completed[open]>summary{border-bottom:1px solid var(--line)}.teacher-setup-completed[open]>summary small{font-size:0}.teacher-setup-completed[open]>summary small:after{content:"Скрыть";font-size:.78rem}.teacher-setup-completed .teacher-setup-list{padding:.65rem}.teacher-setup-completed .teacher-setup-list li{border:0;padding:.65rem}.teacher-setup-note{margin:0;font-size:.85rem}.panel{border:1px solid var(--line);background:var(--surface);border-radius:1.15rem;padding:clamp(1.1rem,3vw,1.75rem);box-shadow:0 8px 30px #26493d0d}.form-stack{gap:1.5rem;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem;display:grid}.field-wide{grid-column:1/-1}.form-actions{flex-wrap:wrap;justify-content:flex-end;gap:.65rem;padding-top:.25rem;display:flex}.lesson-primary-actions{border-color:color-mix(in srgb, var(--primary) 34%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 52%, var(--surface)), var(--surface))}.lesson-primary-actions .section-heading h2{margin-bottom:.35rem}.lesson-primary-actions .form-actions{justify-content:flex-start}.lesson-duration-control{align-items:stretch;gap:.5rem;display:flex}.lesson-duration-presets{flex:auto;gap:.35rem;display:flex}.lesson-duration-presets button{border:1px solid var(--line);min-width:2.85rem;color:var(--ink);background:var(--surface);cursor:pointer;border-radius:.65rem;flex:1 1 0;padding:.55rem .45rem;font-weight:800}.lesson-duration-presets button:hover{border-color:var(--primary)}.lesson-duration-presets button.active{color:#fff;border-color:var(--primary);background:var(--primary)}.lesson-duration-custom{flex:0 0 7.5rem;width:7.5rem}.lesson-duration-custom input{min-height:100%}.schedule-create-advanced{border:1px solid var(--line);background:var(--background);border-radius:.8rem}.schedule-create-advanced>summary{color:var(--primary);cursor:pointer;padding:.8rem .9rem;font-size:.84rem;font-weight:800}.schedule-create-advanced[open]>summary{border-bottom:1px solid var(--line)}.schedule-create-advanced>.form-grid{padding:.9rem}.student-create-steps{align-items:center;gap:.65rem;width:fit-content;margin:1.35rem 0;padding:0;list-style:none;display:flex}.student-create-steps li:not(.student-create-step-line){color:var(--muted);justify-items:center;gap:.3rem;font-size:.72rem;font-weight:750;display:grid}.student-create-steps li b{border:1px solid var(--line);background:var(--surface);border-radius:50%;place-items:center;width:2rem;height:2rem;display:grid}.student-create-steps li[aria-current=step]{color:var(--primary)}.student-create-steps li[aria-current=step] b{color:#fff;border-color:var(--primary);background:var(--primary)}.student-create-step-line{background:var(--line);width:3rem;height:1px}.student-create-actions{gap:.6rem}.form-message{border-radius:.65rem;margin:0;padding:.7rem .85rem;font-size:.88rem}.form-message.error{color:#7c2929;background:#fbe8e8}.form-message.success{color:#14543e;background:var(--accent)}.form-message.warning{color:#694b12;background:#fff4cf}.form-message.warning p{margin:0}.form-message.warning .button{background:#fff6d9;margin-top:.65rem}.commercial-confirmation-panel,.commercial-relationship-panel{gap:1rem;display:grid}.commercial-confirmation-card{border:1px solid var(--line);background:var(--paper);border-radius:.9rem;gap:.9rem;padding:1rem;display:grid}.commercial-confirmation-card p,.commercial-mode-summary p{color:var(--muted);margin:.3rem 0 0}.commercial-mode-summary{gap:.35rem;display:grid}.commercial-mode-summary .status-badge{width:fit-content}.next-lead-progress{border-top:1px solid var(--line);margin-top:.65rem;padding-top:.75rem}.next-lead-progress .section-heading{align-items:center}.next-lead-progress progress{width:100%;height:.65rem;accent-color:var(--primary)}.storage-usage-progress{width:100%;height:.75rem;accent-color:var(--primary)}.video-usage-breakdown{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:0;display:grid}.video-usage-breakdown>div{border:1px solid var(--line);background:var(--paper);border-radius:.8rem;gap:.2rem;min-width:0;padding:.75rem;display:grid}.video-usage-breakdown dt{color:var(--muted);font-size:.72rem;font-weight:750;line-height:1.25}.video-usage-breakdown dd{color:var(--ink);margin:0;font-size:1rem;font-weight:850;line-height:1.2}.video-usage-policy>summary{cursor:pointer;width:fit-content;color:var(--primary);font-size:.88rem;font-weight:800}.video-usage-policy[open]>summary{margin-bottom:.6rem}.video-usage-policy p{margin:0}.video-reservation-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.video-reservation-list li{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.video-reservation-list span{color:var(--ink);font-size:.84rem;font-weight:750}@media (max-width:480px){.video-reservation-list li{flex-direction:column;align-items:flex-start;gap:.15rem}}.subscription-purchase-list{margin:0;padding:0;list-style:none}.subscription-purchase-card{border:1px solid var(--line);background:var(--background);border-radius:.85rem;gap:.7rem;padding:1rem;display:grid}.subscription-purchase-card .button{justify-self:start}.pro-lite-cta{border-color:color-mix(in srgb, var(--primary) 32%, var(--line));background:linear-gradient(125deg, color-mix(in srgb, var(--accent) 78%, var(--surface)), var(--surface));justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.pro-lite-cta h2{max-width:34rem;margin:.2rem 0 .5rem;font-size:clamp(1.25rem,2.1vw,1.65rem);line-height:1.1}.pro-lite-cta p:last-child{max-width:46rem;margin:0}.pro-lite-cta .button{flex:none}.next-lead-progress label{color:var(--ink);font-size:.9rem;font-weight:700}.form-note{color:var(--muted);margin:0;font-size:.82rem;line-height:1.5}.back-link{color:var(--primary);margin-bottom:1.25rem;font-size:.9rem;font-weight:750;display:inline-flex}.student-grid{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:.85rem;display:grid}.student-grid.compact{margin-top:1rem}.student-card{--subject-tone:var(--primary);--subject-tint:var(--accent);border:1px solid var(--line);border-top:3px solid var(--subject-tone);border-left:.34rem solid var(--student-label-color,transparent);background:linear-gradient(150deg, var(--surface) 68%, var(--subject-tint));border-radius:1rem;align-items:flex-start;gap:1rem;min-height:8.5rem;padding:1.15rem;transition:border-color .15s,transform .15s,box-shadow .15s;display:flex}.student-card.student-directory-card{grid-template-columns:minmax(0,1fr) auto;gap:.7rem;min-height:7.5rem;padding:1rem;display:grid}.student-card:hover{border-color:#9fbcad;border-top-color:var(--subject-tone);border-left-color:var(--student-label-color,transparent);transform:translateY(-2px);box-shadow:0 10px 24px #26493d14}.student-card-main{min-width:0;color:inherit;grid-column:1/-1;align-items:flex-start;gap:.85rem;text-decoration:none;display:flex}.student-card-main:focus-visible,.student-card-action-link:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:.55rem}.student-card-shortcuts{flex-wrap:wrap;gap:.35rem;min-width:0;display:flex}.student-card-action-link{border:1px solid var(--line);min-height:2.2rem;color:var(--primary-dark);background:var(--surface);border-radius:.6rem;align-items:center;padding:.35rem .55rem;font-size:.76rem;font-weight:800;text-decoration:none;display:inline-flex}.student-card-action-link:hover{border-color:var(--primary);color:var(--primary)}.student-card p{color:var(--subject-tone);margin:0 0 .55rem;font-size:.86rem;font-weight:750}.student-card span{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.83rem;line-height:1.45;display:-webkit-box;overflow:hidden}.student-card.archived{opacity:.72;min-height:auto}.student-card-heading{flex-wrap:wrap;align-items:center;gap:.45rem;margin-bottom:.25rem;display:flex}.student-card-heading h3{margin:0}.student-card-heading .status-badge{font-size:.68rem}.student-color-none{--student-label-color:transparent}.student-color-green{--student-label-color:#29996a}.student-color-blue{--student-label-color:#327bc7}.student-color-violet{--student-label-color:#7658c7}.student-color-orange{--student-label-color:#d17a1a}.student-color-red{--student-label-color:#c74d55}.student-heading.student-color-frame{border-left:.34rem solid var(--student-label-color,transparent);padding-left:1rem}.student-organization-badges{flex-wrap:wrap;gap:.35rem;margin-top:.65rem;display:flex}.student-organization-badges :is(.student-group-badge,.student-tag-badge){color:var(--ink);background:var(--surface-muted);-webkit-line-clamp:unset;border-radius:999px;padding:.25rem .48rem;font-size:.72rem;font-weight:700;line-height:1.2;display:inline-flex;overflow:visible}.student-organization-badges .student-group-badge{color:var(--primary-dark);background:var(--accent)}.student-card-subjects{flex-wrap:wrap;gap:.3rem;margin:.3rem 0;display:flex}.student-card-subjects small{color:var(--primary-dark);background:var(--accent);border-radius:999px;padding:.2rem .45rem;font-weight:750}.student-subject-links{margin-top:.7rem}.student-subject-links .subject-chip{min-height:auto;padding:.35rem .62rem;text-decoration:none}.compact-panel{grid-template-columns:minmax(0,1fr) minmax(18rem,.8fr);align-items:start;gap:1.25rem;display:grid}.student-add-subject-form{gap:.75rem;display:grid}@media (max-width:760px){.compact-panel{grid-template-columns:1fr}}.student-organization-panel{padding:0;overflow:hidden}.student-organization-panel>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;list-style-position:inside;display:flex}.student-organization-panel>summary>span:first-child{gap:.2rem;display:inline-grid}.student-organization-panel>summary small{color:var(--muted);font-weight:500}.student-color-preview{background:var(--student-label-color,var(--line));border-radius:999px;flex:none;width:2.75rem;height:.48rem}.student-color-preview.student-color-none{background:var(--line)}.student-organization-form{border-top:1px solid var(--line);gap:1rem;padding:1rem 1.2rem 1.2rem;display:grid}.student-bulk-organization{gap:2rem;display:grid}.student-bulk-toolbar{z-index:14;padding:0;position:sticky;top:4.8rem;overflow:visible}.student-bulk-toolbar>summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:3.25rem;padding:.75rem 1rem;list-style-position:inside;display:flex}.student-bulk-toolbar>summary>span{flex-wrap:wrap;align-items:baseline;gap:.45rem .75rem;display:inline-flex}.student-bulk-toolbar>summary small{color:var(--muted);font-weight:600}.student-bulk-toolbar-body{border-top:1px solid var(--line);gap:.85rem;padding:.9rem 1rem 1rem;display:grid}.student-bulk-selection-actions{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.student-bulk-selection-actions .button{min-height:2.25rem;padding:.35rem .55rem;font-size:.75rem}.student-bulk-existing-groups{gap:.4rem;min-width:0;display:grid}.student-bulk-existing-groups>small{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.7rem;font-weight:800}.student-bulk-existing-groups>div{gap:.4rem;padding-bottom:.15rem;display:flex;overflow-x:auto}.student-bulk-existing-groups button{border:1px solid var(--line);min-width:max-content;color:var(--ink);background:var(--surface);cursor:pointer;font:inherit;border-radius:999px;align-items:center;gap:.38rem;padding:.42rem .55rem;font-size:.75rem;font-weight:750;display:inline-flex}.student-bulk-existing-groups button:hover,.student-bulk-existing-groups button.active{border-color:var(--primary);background:var(--accent)}.student-bulk-existing-groups button .student-color-swatch{flex-basis:.8rem;width:.8rem;height:.8rem}.student-bulk-existing-groups button small{color:var(--muted);font-size:.68rem;font-weight:650}.student-bulk-fields{grid-template-columns:minmax(14rem,1fr) minmax(14rem,1fr);gap:1rem;display:grid}.student-bulk-toolbar .student-color-fieldset{align-self:stretch}.student-bulk-select{z-index:2;border:1px solid var(--line);color:#0000;background:var(--surface);cursor:pointer;border-radius:.55rem;justify-content:center;align-items:center;width:2rem;height:2rem;display:none;position:absolute;top:.8rem;right:.8rem}.student-bulk-select input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.student-bulk-select:has(input:checked){border-color:var(--primary);color:#fff;background:var(--primary)}.student-bulk-select:focus-within{outline:3px solid var(--focus);outline-offset:2px}.student-bulk-organization:has(.student-bulk-toolbar[open]) .student-bulk-select{display:inline-flex}.student-bulk-organization:has(.student-bulk-toolbar[open]) .student-card-main{padding-right:2.45rem}.student-organization-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;display:grid}.student-color-fieldset{border:0;min-width:0;margin:0;padding:0}.student-color-fieldset legend{margin-bottom:.55rem;font-weight:750}.student-color-options{flex-wrap:wrap;gap:.55rem;display:flex}.student-color-options label{cursor:pointer;place-items:center;display:inline-grid;position:relative}.student-color-options input{opacity:0;width:1px;height:1px;position:absolute}.student-color-swatch{border:2px solid var(--surface);background:var(--student-label-color,var(--line));width:2rem;height:2rem;box-shadow:0 0 0 1px var(--line);border-radius:50%}.student-color-swatch.student-color-none{background:linear-gradient(135deg, transparent 44%, var(--muted) 45%, var(--muted) 55%, transparent 56%)}.student-color-options input:checked+.student-color-swatch{box-shadow:0 0 0 3px var(--surface), 0 0 0 5px var(--primary)}.student-color-options input:focus-visible+.student-color-swatch{outline:3px solid var(--primary);outline-offset:4px}.student-status-paused,.student-status-pending{color:#765612;background:#fff3d5}.student-status-ended{color:var(--muted);background:#eceeeb}.student-status-filter{flex-wrap:wrap;max-width:100%}.subject-tone-science{--subject-tone:#1f65b5;--subject-tint:#eef5ff}.subject-tone-language{--subject-tone:#08795a;--subject-tint:#eaf8f2}.subject-tone-humanities{--subject-tone:#6d4fc1;--subject-tint:#f2effd}.subject-tone-creative{--subject-tone:#9b5908;--subject-tint:#fff5df}.subject-tone-primary{--subject-tone:#a9465d;--subject-tint:#fff0f3}.subject-tone-neutral{--subject-tone:#718078;--subject-tint:#f1f4f2}.student-list-filters{grid-template-columns:repeat(5,minmax(10rem,1fr));align-items:end;gap:.75rem;margin-top:1rem;display:grid}.student-list-filter-actions{grid-column:1/-1;align-items:center;gap:.55rem;min-height:2.85rem;display:flex}.student-import-actions{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1rem;display:grid}.student-import-actions .button{margin-bottom:.05rem}.student-import-summary{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.student-import-summary>*{background:#edf4ef;border-radius:.65rem;padding:.4rem .65rem}.student-import-summary span{color:var(--muted)}.student-import-preview{min-width:42rem}.student-import-preview td:last-child{white-space:normal;max-width:28rem}.team-curator-control{flex:22rem;min-width:min(100%,18rem)}.team-curator-control .inline-form{align-items:center}.team-oversight-grid{align-items:start}.attendance-card{background:#f3f7f4;border-radius:.9rem;gap:.65rem;padding:.85rem 1rem;display:grid}.attendance-card .schedule-row{background:0 0;padding:0}.attendance-form{grid-template-columns:minmax(12rem,1fr) minmax(12rem,1fr) auto;align-items:end}.attendance-journal-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.attendance-journal-filters{grid-template-columns:repeat(3,minmax(10rem,1fr));align-items:end;gap:.75rem;display:grid}.attendance-journal-filter-actions{align-items:center;gap:.8rem;min-height:2.85rem;display:flex}.attendance-journal-table{min-width:60rem}.attendance-journal-table time{white-space:nowrap;font-variant-numeric:tabular-nums}.attendance-journal-mark{color:var(--primary-dark);font-weight:750}@media (max-width:800px){.phone-verification-code{grid-template-columns:1fr}.phone-verification-code .button,.phone-verification-fields>.button{width:100%}.student-schedule-groups{grid-template-columns:1fr}.schedule-slot-row,.matching-preference-row{grid-template-columns:1fr 1fr}.schedule-slot-row .button,.matching-preference-row .button{grid-column:1/-1;width:100%}.attendance-form{grid-template-columns:1fr}.attendance-journal-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.student-card:has(.team-curator-control){flex-direction:column}.team-curator-control{width:100%;min-width:0}.student-list-filters,.student-organization-fields{grid-template-columns:1fr}.student-list-filter-actions .button{flex:auto}.student-import-actions{grid-template-columns:1fr}.student-import-actions .button{width:100%}}.family-student-access-card{align-content:start;gap:1rem;min-width:0;min-height:0;display:grid}.family-child-teacher-list{gap:.65rem;display:grid}.family-child-connection-card{border:1px solid var(--line);background:var(--paper);border-radius:.85rem;gap:.65rem;min-width:0;padding:.8rem;display:grid;container-type:inline-size}.family-child-connection-card>*,.family-child-connection-actions>*,.family-schedule-preference :is(.form-stack,.matching-preference-editor,.matching-preference-row){min-inline-size:0}.family-teacher-connection-summary{gap:.65rem;min-width:0;display:grid}.family-teacher-connection-summary h3,.family-teacher-connection-summary p{margin:0}.family-child-connection-actions,.family-child-dashboard-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.family-child-connection-actions>form{min-width:0;display:block}.family-child-connection-actions .family-schedule-preference{min-width:0;max-width:100%;flex:1 0 100%;inline-size:100%}.family-child-connection-state{border:1px dashed var(--line);background:var(--surface-muted);border-radius:.85rem;gap:.55rem;padding:.9rem;display:grid}.family-child-connection-state p{color:var(--muted);margin:0;font-size:.86rem;line-height:1.45}.family-child-connection-state.restricted{border-style:solid;border-color:color-mix(in srgb, var(--primary) 42%, var(--line))}.family-child-upcoming{border:1px solid var(--line);background:var(--surface-muted);border-radius:.85rem;gap:.28rem;padding:.85rem .9rem;display:grid}.family-child-upcoming .eyebrow{margin:0}.family-child-upcoming>strong{color:var(--primary-dark);font-variant-numeric:tabular-nums}.family-child-upcoming>span{color:var(--muted);font-size:.84rem;line-height:1.4}.family-regular-schedule{gap:.35rem;display:grid}.family-regular-schedule-row{background:var(--surface-muted);border-radius:.65rem;grid-template-columns:minmax(7rem,1fr) auto;gap:.12rem .7rem;padding:.5rem .6rem;font-size:.78rem;display:grid}.family-regular-schedule-row strong{min-width:0;color:var(--primary-dark);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.family-regular-schedule-row span{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:750}.family-regular-schedule-row small{color:var(--muted);grid-column:1/-1}.family-schedule-connection-list{gap:.8rem;display:grid}.family-schedule-connection{gap:.9rem;display:grid}.family-schedule-connection>.button{justify-self:start}.family-schedule-toolbar{gap:.75rem;min-width:0;margin:1rem 0;display:grid}.family-schedule-view-tabs{border:1px solid var(--line);background:var(--surface-muted);border-radius:.85rem;grid-template-columns:repeat(2,minmax(7rem,1fr));gap:.3rem;width:fit-content;padding:.3rem;display:inline-grid}.family-schedule-view-tabs a{min-width:0;color:var(--muted);text-align:center;border-radius:.6rem;padding:.55rem .75rem;font-size:.82rem;font-weight:850}.family-schedule-view-tabs a:hover{color:var(--primary);background:var(--paper)}.family-schedule-view-tabs a.active{color:#fff;background:var(--primary)}.family-schedule-week-controls{flex-wrap:wrap;align-items:center;gap:.6rem 1rem;min-width:0;display:flex}.family-schedule-week-navigation{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;min-width:0;display:grid}.family-schedule-week-navigation .button{text-align:center;justify-content:center;min-width:0}.family-schedule-week-label{color:var(--muted);margin:0;font-size:.85rem;font-weight:750}.family-schedule-child-filter{scrollbar-width:thin;gap:.45rem;min-width:0;padding:.1rem 0 .3rem;display:flex;overflow-x:auto}.family-schedule-child-filter a{border:1px solid var(--line);color:var(--muted);background:var(--surface);border-radius:999px;flex:none;padding:.43rem .65rem;font-size:.78rem;font-weight:800}.family-schedule-child-filter a:hover{color:var(--primary);border-color:color-mix(in srgb, var(--primary) 40%, var(--line))}.family-schedule-child-filter a.active{color:var(--primary-dark);border-color:color-mix(in srgb, var(--primary) 54%, var(--line));background:var(--accent)}.family-weekly-schedule{min-width:0;container-type:inline-size}.family-weekly-schedule-scroll{border:1px solid var(--line);background:var(--surface);border-radius:1rem;width:100%;min-width:0;overflow-x:auto}.family-weekly-schedule-grid{grid-template-columns:repeat(7,minmax(9.5rem,1fr));gap:.65rem;min-width:70rem;padding:.65rem;display:grid}.family-weekly-schedule-day{border:1px solid var(--line);background:var(--paper);border-radius:.85rem;align-content:start;gap:.65rem;min-width:0;padding:.75rem;display:grid}.family-weekly-schedule-day.current{border-color:color-mix(in srgb, var(--primary) 45%, var(--line));background:color-mix(in srgb, var(--accent) 48%, var(--surface))}.family-weekly-schedule-day>header{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.2rem .5rem;min-width:0;display:grid}.family-weekly-schedule-day>header h3{overflow-wrap:anywhere;min-width:0;margin:0;font-size:.92rem}.family-weekly-schedule-day>header time{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.76rem}.family-weekly-schedule-day>header span{color:var(--primary);letter-spacing:.06em;text-transform:uppercase;grid-column:1/-1;font-size:.65rem;font-weight:850}.family-weekly-schedule-list{gap:.5rem;min-width:0;margin:0;padding:0;list-style:none;display:grid}.family-weekly-schedule-list li{min-width:0}.family-weekly-schedule-card{--family-weekly-accent:var(--primary);border:1px solid var(--line);border-left:3px solid var(--family-weekly-accent);min-width:0;color:var(--ink);background:var(--surface);border-radius:.7rem;gap:.28rem;padding:.65rem;font-size:.78rem;line-height:1.35;display:grid}.family-weekly-schedule-card.linked{transition:border-color .15s,box-shadow .15s,transform .15s}.family-weekly-schedule-card.linked:hover{border-color:color-mix(in srgb, var(--family-weekly-accent) 58%, var(--line));transform:translateY(-1px);box-shadow:0 8px 18px #26493d17}.family-weekly-schedule-card.linked:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 36%, transparent);outline-offset:2px}.family-weekly-schedule-card-topline{justify-content:space-between;align-items:center;gap:.4rem;min-width:0;display:flex}.family-weekly-schedule-card time{color:var(--family-weekly-accent);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.76rem;font-weight:850}.family-child-marker{--family-child-marker-ink:#0e523e;--family-child-marker-background:#dff2e9;border:1px solid color-mix(in srgb, var(--family-child-marker-ink) 20%, transparent);width:1.55rem;height:1.55rem;color:var(--family-child-marker-ink);background:var(--family-child-marker-background);border-radius:50%;flex:none;place-items:center;font-size:.68rem;font-weight:900;line-height:1;display:inline-grid}.family-child-marker.tone-mint{--family-child-marker-ink:#0e5a43;--family-child-marker-background:#d9f2e5}.family-child-marker.tone-sky{--family-child-marker-ink:#315f95;--family-child-marker-background:#e3efff}.family-child-marker.tone-lilac{--family-child-marker-ink:#5f4c98;--family-child-marker-background:#eee8ff}.family-child-marker.tone-amber{--family-child-marker-ink:#875708;--family-child-marker-background:#fff0cb}.family-child-marker.tone-coral{--family-child-marker-ink:#91463e;--family-child-marker-background:#ffe5e1}.family-child-marker.tone-teal{--family-child-marker-ink:#176b62;--family-child-marker-background:#d7f2ed}.family-weekly-schedule-child,.family-weekly-digest-event-child{align-items:center;gap:.42rem;min-width:0;display:inline-flex}.family-weekly-schedule-child>strong,.family-weekly-digest-event-child>span:last-child{overflow-wrap:anywhere;min-width:0}.family-weekly-schedule-card strong{overflow-wrap:anywhere;min-width:0;font-size:.86rem}.family-weekly-schedule-subject,.family-weekly-schedule-origin{overflow-wrap:anywhere;min-width:0}.family-weekly-schedule-subject{color:var(--muted)}.family-weekly-schedule-origin{color:var(--family-weekly-accent);font-size:.7rem;font-weight:750}.family-weekly-schedule-status{color:var(--muted);background:var(--surface-muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;flex:0 auto;padding:.14rem .38rem;font-size:.62rem;font-weight:800;line-height:1.25;overflow:hidden}.family-weekly-schedule-card.planned{--family-weekly-accent:var(--primary);background:color-mix(in srgb, var(--accent) 20%, var(--surface))}.family-weekly-schedule-card.completed{--family-weekly-accent:#278567;background:color-mix(in srgb, var(--accent) 40%, var(--surface))}.family-weekly-schedule-card.cancelled{--family-weekly-accent:var(--muted);opacity:.82;background:var(--surface-muted)}.family-weekly-schedule-card.attention{--family-weekly-accent:#a56a08;background:#fff8e7}.family-weekly-schedule-card.attention .family-weekly-schedule-status{color:#7b4e00;background:#ffedbf}.family-weekly-schedule-card-link{color:var(--primary);margin-top:.15rem;font-size:.68rem;font-weight:850}.family-weekly-schedule-empty{color:var(--muted);margin:0;padding:.6rem 0;font-size:.78rem;line-height:1.45}.family-weekly-digest-panel{gap:.9rem;display:grid}.family-weekly-digest-panel .section-heading{align-items:start}.family-weekly-digest-panel .section-heading .muted{max-width:52rem;margin:.35rem 0 0}.family-weekly-digest-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.family-weekly-digest-list>li{min-width:0}.family-weekly-digest-event{--family-digest-accent:var(--primary);border:1px solid var(--line);border-left:3px solid var(--family-digest-accent);min-width:0;color:var(--ink);background:var(--surface);border-radius:.75rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.7rem .8rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.family-weekly-digest-event:hover{border-color:color-mix(in srgb, var(--family-digest-accent) 58%, var(--line));transform:translateY(-1px);box-shadow:0 8px 18px #26493d14}.family-weekly-digest-event:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 36%, transparent);outline-offset:2px}.family-weekly-digest-event.report{--family-digest-accent:#5c7cdb;background:color-mix(in srgb, #e8edff 42%, var(--surface))}.family-weekly-digest-event.homework{--family-digest-accent:#168364;background:color-mix(in srgb, var(--accent) 28%, var(--surface))}.family-weekly-digest-event.schedule{--family-digest-accent:#9a6508;background:color-mix(in srgb, #fff0c9 52%, var(--surface))}.family-weekly-digest-event-mark{background:var(--family-digest-accent);width:.58rem;height:.58rem;box-shadow:0 0 0 .25rem color-mix(in srgb, var(--family-digest-accent) 16%, transparent);border-radius:999px}.family-weekly-digest-event-copy{gap:.2rem;min-width:0;display:grid}.family-weekly-digest-event-topline{min-width:0;color:var(--family-digest-accent);justify-content:space-between;gap:.5rem;font-size:.72rem;font-weight:850;display:flex}.family-weekly-digest-event-topline time{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-weight:700}.family-weekly-digest-event strong,.family-weekly-digest-event small{overflow-wrap:anywhere;min-width:0}.family-weekly-digest-event strong{font-size:.91rem;line-height:1.3}.family-weekly-digest-event small{color:var(--muted);font-size:.78rem;line-height:1.35}.family-weekly-digest-event-meta{flex-wrap:wrap;align-items:center;gap:.15rem;display:flex}.family-weekly-digest-event small.family-weekly-digest-event-detail{color:var(--family-digest-accent);font-weight:750}.family-weekly-digest-event-arrow{color:var(--family-digest-accent);font-weight:900}.family-weekly-digest-empty{color:var(--muted);margin:0;padding:.25rem 0}.family-schedule-preference{border-top:1px solid var(--line);padding-top:.75rem}.family-schedule-preference>summary{border:1px solid color-mix(in srgb, var(--primary) 40%, var(--line));background:var(--surface-muted);cursor:pointer;width:fit-content;min-height:2.75rem;color:var(--primary);border-radius:.75rem;align-items:center;padding:.5rem .72rem;font-size:.82rem;font-weight:850;line-height:1.25;display:inline-flex}.family-schedule-preference>summary:hover{border-color:var(--primary);background:var(--accent)}.family-schedule-preference>summary:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 32%, transparent);outline-offset:2px}.family-schedule-preference[open]>summary{margin-bottom:.8rem}.family-schedule-preference .form-stack,.family-schedule-preference .matching-preference-editor{min-width:0}.family-schedule-preference .form-stack{gap:.75rem}.family-schedule-preference .button-row{flex-wrap:wrap;align-items:stretch;gap:.5rem;min-width:0;display:flex}.family-schedule-preference .button-row .button{flex:13rem}@media (max-width:52rem){.family-schedule-view-tabs{width:100%}.family-schedule-week-controls{flex-direction:column;align-items:stretch}.family-schedule-week-navigation{width:100%}.family-schedule-week-label{text-align:center}.family-weekly-schedule-scroll{background:0 0;border:0;border-radius:0;overflow:visible}.family-weekly-schedule-grid{grid-template-columns:minmax(0,1fr);min-width:0;padding:0}.family-weekly-schedule-day{gap:.55rem;padding:.75rem}.family-weekly-schedule-day>header{grid-template-columns:auto 1fr auto;align-items:center}.family-weekly-schedule-day>header h3{grid-column:auto}.family-weekly-schedule-day>header time,.family-weekly-schedule-day>header span{grid-column:auto;justify-self:end}.family-weekly-schedule-list{gap:.45rem}.family-weekly-schedule-card{grid-template-columns:minmax(0,1fr);padding:.7rem .75rem}.family-weekly-schedule-card-topline{align-items:flex-start}.family-weekly-schedule-status{max-width:min(52%,13rem)}.family-weekly-digest-event{align-items:start;padding:.7rem}.family-weekly-digest-event-topline{flex-direction:column;align-items:start;gap:.12rem}}@media (max-width:24rem){.family-schedule-week-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}.family-schedule-week-navigation .button:nth-child(2){grid-area:2/1/auto/-1}}@container (max-width:52rem){.family-weekly-schedule-scroll{background:0 0;border:0;border-radius:0;overflow:visible}.family-weekly-schedule-grid{grid-template-columns:minmax(0,1fr);min-width:0;padding:0}.family-weekly-schedule-day{gap:.55rem;padding:.75rem}.family-weekly-schedule-day>header{grid-template-columns:auto 1fr auto;align-items:center}.family-weekly-schedule-day>header h3{grid-column:auto}.family-weekly-schedule-day>header time,.family-weekly-schedule-day>header span{grid-column:auto;justify-self:end}.family-weekly-schedule-list{gap:.45rem}.family-weekly-schedule-card{grid-template-columns:minmax(0,1fr);padding:.7rem .75rem}.family-weekly-schedule-card-topline{align-items:flex-start}.family-weekly-schedule-status{max-width:min(52%,13rem)}}@container (max-width:42rem){.family-child-connection-actions{grid-template-columns:minmax(0,1fr);align-items:stretch;min-width:0;display:grid}.family-child-connection-actions>form,.family-child-connection-actions>form>.button,.family-child-connection-actions>.button,.family-child-connection-actions>.manual-reminder-menu,.family-child-connection-actions .manual-reminder-menu>summary,.family-child-connection-actions .family-schedule-preference{width:100%;max-width:100%}.family-child-connection-actions .manual-reminder-menu>form{width:100%;max-width:100%;margin-top:.5rem;position:static}.family-child-connection-actions .family-schedule-preference>summary{width:100%}.family-child-connection-actions .matching-preference-row{grid-template-columns:repeat(2,minmax(0,1fr))}.family-child-connection-actions .matching-preference-row>.field:first-child,.family-child-connection-actions .matching-preference-row>.button{grid-column:1/-1}.family-child-connection-actions .matching-preference-row>.button,.family-child-connection-actions .family-schedule-preference .button-row .button{width:100%}.family-child-connection-actions .family-schedule-preference .button-row{grid-template-columns:minmax(0,1fr);display:grid}}@media (max-width:42rem){.family-child-connection-actions{grid-template-columns:minmax(0,1fr);align-items:stretch;min-width:0;display:grid}.family-child-connection-actions>form,.family-child-connection-actions>form>.button,.family-child-connection-actions>.button,.family-child-connection-actions>.manual-reminder-menu,.family-child-connection-actions .manual-reminder-menu>summary,.family-child-connection-actions .family-schedule-preference{width:100%;max-width:100%}.family-child-connection-actions .manual-reminder-menu>form{width:100%;max-width:100%;margin-top:.5rem;position:static}.family-child-connection-actions .family-schedule-preference>summary{width:100%}.family-child-connection-actions .matching-preference-row{grid-template-columns:repeat(2,minmax(0,1fr))}.family-child-connection-actions .matching-preference-row>.field:first-child,.family-child-connection-actions .matching-preference-row>.button{grid-column:1/-1}.family-child-connection-actions .matching-preference-row>.button,.family-child-connection-actions .family-schedule-preference .button-row .button{width:100%}.family-child-connection-actions .family-schedule-preference .button-row{grid-template-columns:minmax(0,1fr);display:grid}}@container (max-width:22rem){.family-child-connection-actions .matching-preference-row{grid-template-columns:minmax(0,1fr)}.family-child-connection-actions .matching-preference-row>.field:first-child,.family-child-connection-actions .matching-preference-row>.button{grid-column:auto}}.family-student-access-heading{align-items:flex-start;gap:1rem;display:flex}.student-access-disclosure{border-top:1px solid var(--line);padding-top:.75rem}.student-access-disclosure>summary{color:var(--primary);cursor:pointer;font-size:.82rem;font-weight:800}.student-access-disclosure>:not(summary){margin-top:.75rem}.student-access-disclosure>.student-access-form,.student-access-disclosure>.student-access-active{border-top:0;padding-top:0}.student-access-form,.student-access-active{border-top:1px solid var(--line);gap:.7rem;padding-top:.9rem;display:grid}.student-access-form .field{font-size:.78rem}.student-access-form .field input{min-height:2.65rem}.student-access-form .button{width:100%}.student-access-login{color:var(--ink)!important;margin:0!important;font-size:.9rem!important}.student-access-login strong{-webkit-user-select:all;user-select:all}.student-access-active small{color:var(--muted);line-height:1.45}.student-access-reset summary{cursor:pointer;color:var(--primary);font-size:.78rem;font-weight:800}.student-access-reset[open] summary{margin-bottom:.8rem}.student-avatar{width:2.8rem;height:2.8rem;color:var(--subject-tone);background:var(--subject-tint);border-radius:.8rem;flex:none;place-items:center;font-size:1.15rem;font-weight:900;display:grid}.archived-section{border-top:1px solid var(--line);padding:1rem 0}.archived-section summary{cursor:pointer;width:fit-content;color:var(--muted);font-weight:750}.student-heading{align-items:flex-end}.danger-zone{background:snow;border:1px solid #eccccc;border-radius:1rem;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.25rem;display:flex}.danger-zone h2{margin-bottom:.3rem;font-size:1rem}.danger-zone p,.archived-notice p{color:var(--muted);margin:0;font-size:.88rem}.archived-notice{background:#f4f4f1}.schedule-section{gap:1rem;display:grid}.schedule-section .page-heading h2{margin-bottom:.2rem}.schedule-section .page-heading p{margin:0;font-size:.85rem}.schedule-list{gap:.6rem;display:grid}.schedule-row{background:#f3f7f4;border-radius:.8rem;grid-template-columns:minmax(12rem,1fr) auto auto;align-items:center;gap:1rem;padding:.85rem 1rem;display:grid}.schedule-row span,.schedule-row small{color:var(--muted);font-size:.82rem}.trial-label{background:#fff4d8;border:1px solid #ead09a;border-radius:999px;align-items:center;width:fit-content;padding:.18rem .45rem;font-size:.75rem;font-weight:750;line-height:1.2;display:inline-flex;color:#7a4f08!important}.team-attention-row>div{gap:.15rem;display:grid}.team-attention-row time{color:var(--muted);white-space:nowrap;font-size:.82rem}.lesson-history-section{gap:1rem;display:grid}.lesson-history-list{gap:.75rem;display:grid}.lesson-history-row{border:1px solid var(--line);border-radius:.85rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem;display:grid}.lesson-history-main{min-width:0}.lesson-history-heading{align-items:center;gap:.65rem;display:flex}.lesson-history-heading time{color:var(--muted);font-size:.8rem;font-weight:700}.lesson-history-main h3{margin:.5rem 0 .25rem}.lesson-history-main>p{color:var(--muted);white-space:pre-wrap;margin:.25rem 0;font-size:.85rem}.lesson-history-main .history-reason{color:var(--danger)}.lesson-history-meta{flex-wrap:wrap;gap:.45rem;margin-top:.6rem;display:flex}.lesson-history-meta span{color:var(--muted);background:#f1f4f1;border-radius:.55rem;padding:.35rem .55rem;font-size:.72rem}.lesson-history-actions{display:flex}.inline-empty{color:var(--muted);background:#f7f8f5;border-radius:.8rem;margin:0;padding:1rem}.compact-empty-action{justify-content:space-between;align-items:center;gap:1.25rem;display:flex}.compact-empty-action h2{margin-bottom:.35rem}.compact-empty-action p:last-child{margin-bottom:0}.compact-empty-action .button{flex:none}.segmented{border:1px solid var(--line);background:var(--surface);border-radius:.8rem;gap:.25rem;width:fit-content;padding:.25rem;display:flex}.segmented a{color:var(--muted);border-radius:.6rem;padding:.55rem .9rem;font-size:.86rem;font-weight:750}.segmented a.active{color:var(--primary);background:var(--accent)}.week-list{gap:.8rem;display:grid}.week-action-list-disclosure{padding:0;overflow:hidden}.week-action-list-disclosure>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.week-action-list-disclosure>summary>span:first-child{gap:.18rem;min-width:0;display:grid}.week-action-list-disclosure>summary strong{color:var(--primary);font-size:1rem}.week-action-list-disclosure>summary small{color:var(--muted);font-size:.78rem;font-weight:600}.week-action-list-disclosure[open]>summary{border-bottom:1px solid var(--line)}.week-action-list-disclosure>.week-list{padding:1rem}.week-summary-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem;display:grid}.week-summary-strip>div{border:1px solid var(--line);background:var(--surface);border-radius:.85rem;gap:.16rem;min-width:0;padding:.8rem .9rem;display:grid}.week-summary-strip span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:750}.week-summary-strip strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;line-height:1.2;overflow:hidden}.week-summary-strip small{color:var(--muted);font-size:.68rem}.week-summary-strip small a{color:var(--primary);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--primary) 34%, transparent);text-decoration-color:color-mix(in srgb, var(--primary) 34%, transparent);text-underline-offset:.16em;font-weight:800}.week-payment-legend{color:var(--muted);flex-wrap:wrap;gap:.45rem .8rem;font-size:.72rem;display:flex}.week-payment-legend>span{align-items:center;gap:.35rem;display:inline-flex}.week-payment-legend>span:before{background:var(--payment-tone);content:"";border-radius:50%;flex:none;width:.55rem;height:.55rem}.payment-tone-paid{--payment-tone:#29966f}.payment-tone-partial{--payment-tone:#d5a22b}.payment-tone-unpaid{--payment-tone:#d56f55}.payment-tone-neutral{--payment-tone:#94a19b}.week-day{border:1px solid var(--line);background:var(--surface);border-radius:1rem;grid-template-columns:8rem minmax(0,1fr);gap:1rem;padding:1rem;display:grid}.week-day>header{text-transform:capitalize;flex-direction:column;gap:.25rem;display:flex}.week-day>header span{color:var(--muted);font-size:.82rem}.week-lessons{gap:.6rem;display:grid}.week-lesson{--subject-tone:var(--primary);--subject-tint:#f4f8f5;border-left:3px solid var(--subject-tone);border-right:4px solid var(--payment-tone);background:linear-gradient(100deg, var(--subject-tint), #f8faf9 52%);border-radius:.8rem;grid-template-columns:3.8rem minmax(10rem,1fr) minmax(0,auto);align-items:center;gap:1rem;min-width:0;padding:.85rem;scroll-margin-top:6rem;display:grid}.week-lesson-main{min-width:0}.week-lesson.cancelled{opacity:.68;background:#f3f2ef}.week-lesson.completed{background:#f0f8f4}.week-lesson time{font-weight:850}.week-lesson h2{margin:0 0 .2rem;font-size:1rem}.week-lesson p{color:var(--muted);margin:0;font-size:.82rem}.week-lesson small{color:var(--danger);font-size:.76rem}.week-payment-badge{width:fit-content;color:var(--ink);background:color-mix(in srgb, var(--payment-tone) 16%, var(--surface));border-radius:999px;align-items:center;gap:.3rem;margin-top:.28rem;padding:.16rem .4rem;font-size:.68rem;font-weight:800;line-height:1.2;display:inline-flex}.week-payment-badge:before{background:var(--payment-tone);content:"";border-radius:50%;flex:none;width:.42rem;height:.42rem}.week-payment-attention{border:1px solid color-mix(in srgb, #d56f55 38%, var(--line));background:color-mix(in srgb, #d56f55 5%, var(--surface));border-radius:.9rem;gap:.65rem;padding:.8rem;scroll-margin-top:6rem;display:grid}.week-payment-attention>header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.week-payment-attention>header>div{gap:.12rem;display:grid}.week-payment-attention>header span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.68rem;font-weight:800}.week-payment-attention>header strong{font-size:.9rem}.week-payment-attention-list{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.45rem;display:grid}.week-payment-attention-item{border:1px solid var(--line);min-width:0;color:var(--ink);background:var(--surface);border-radius:.7rem;justify-content:space-between;align-items:center;gap:.65rem;padding:.6rem .7rem;display:flex}.week-payment-attention-item:hover{border-color:color-mix(in srgb, var(--primary) 45%, var(--line))}.week-payment-attention-item>span:first-child{gap:.12rem;min-width:0;display:grid}.week-payment-attention-item strong,.week-payment-attention-item small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.week-payment-attention-item small{color:var(--muted);font-size:.7rem}.week-payment-attention-item .week-payment-badge{flex:none;margin:0}.week-calendar-event.payment-tone-paid,.week-calendar-event.payment-tone-partial,.week-calendar-event.payment-tone-unpaid,.week-calendar-event.payment-tone-neutral{border-right:4px solid var(--payment-tone)}.student-card.student-color-fill,.lesson-card.student-color-fill,.next-card.student-color-fill,.week-calendar-event.student-color-fill,.week-lesson.student-color-fill,.schedule-action-sheet.student-color-fill{border-left-color:var(--student-label-color);background:linear-gradient(145deg, color-mix(in srgb, var(--student-label-color) 22%, var(--surface)), color-mix(in srgb, var(--student-label-color) 10%, var(--surface)))}.week-calendar-event.student-color-fill{color:var(--ink)}.week-calendar-event.student-color-fill time{color:color-mix(in srgb, var(--student-label-color) 78%, var(--ink))}.student-card.student-color-fill:hover{border-left-color:var(--student-label-color)}.day-empty{color:#9aa49f;align-self:center;margin:0;font-size:.85rem}.cancel-panel{background:snow;border-color:#eccccc}.closure-form>section{border-bottom:1px solid var(--line);gap:.85rem;padding-bottom:1.25rem;display:grid}.closure-form>section .eyebrow{margin:0}.closure-payment-section{border:1px solid color-mix(in srgb, var(--primary) 28%, var(--line));background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 44%, var(--surface)), var(--surface));border-radius:.9rem;padding:1rem}.closure-section-heading{gap:.25rem;display:grid}.closure-section-heading :is(h2,p){margin:0}.closure-section-heading h2{font-size:1.15rem}.closure-section-heading .muted{font-size:.85rem;line-height:1.45}.closure-optional-heading{justify-content:space-between;align-items:baseline;gap:.75rem;padding-top:.2rem;display:flex}.closure-optional-heading span{color:var(--muted);font-size:.82rem}.closure-page{gap:1.15rem}.closure-page-intro{grid-template-columns:minmax(0,.9fr) minmax(20rem,1.1fr);align-items:center;gap:1rem;display:grid}.closure-page-intro header{min-width:0}.closure-page-intro h1{margin-bottom:.3rem;font-size:clamp(1.9rem,3vw,2.4rem)}.closure-page-intro .muted{margin-bottom:0;font-size:.88rem;line-height:1.45}.closure-details{background:#f6f8f5;border-radius:.8rem;padding:1rem}.closure-details summary{cursor:pointer;color:var(--primary);font-weight:750}.closure-details[open] summary{margin-bottom:1rem}.closure-result{gap:1.2rem;display:grid}.closure-result>div{gap:.25rem;display:grid}.closure-result span{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:750}.closure-result p{white-space:pre-wrap;margin:0}.closure-correction{display:block}.closure-correction>summary{cursor:pointer;color:var(--primary);font-size:1.05rem;font-weight:800}.closure-correction[open]>summary{margin-bottom:1.25rem}.closure-correction-intro{gap:.3rem;margin-bottom:1rem;display:grid}.closure-correction-intro h2,.closure-correction-intro p{margin:0}.closure-correction-form{padding-top:.25rem}.closure-correction-time{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr) minmax(0,.8fr)}.private-note{border-left:4px solid var(--primary);background:var(--accent);border-radius:.4rem;padding:1rem}.private-field{border-left:4px solid var(--primary);background:#f1f8f4;border-radius:.7rem;padding:1rem}.split-actions{justify-content:flex-end;gap:.75rem;display:flex}.copy-report-action{align-items:center;gap:.6rem;display:flex}.whiteboard-page{gap:1rem;display:grid}.whiteboard-page-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.whiteboard-page-heading p:last-child{margin-bottom:0}.learning-room-page{gap:1rem;display:grid}.learning-room-heading p:last-child{max-width:46rem;margin-bottom:0}.learning-room-context{border:1px solid var(--line);width:fit-content;color:var(--muted);background:var(--surface);border-radius:999px;flex-wrap:wrap;align-items:center;gap:.35rem;margin:.65rem 0 0;padding:.38rem .65rem;font-size:.78rem;display:flex}.learning-room-context>span:first-child{letter-spacing:.04em;text-transform:uppercase;font-size:.68rem;font-weight:800}.learning-room-context strong{color:var(--ink)}.learning-room-nav{z-index:5;border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-radius:.9rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem;display:flex;position:sticky;top:5.25rem;box-shadow:0 8px 24px #26493d12}.learning-room-tabs{align-items:center;gap:.25rem;min-width:0;display:flex;overflow-x:auto}.learning-room-tab,.learning-room-back{min-height:2.6rem;color:var(--muted);white-space:nowrap;border-radius:.65rem;justify-content:center;align-items:center;padding:.55rem .85rem;font-size:.82rem;font-weight:800;display:inline-flex}.learning-room-tab:hover,.learning-room-back:hover{color:var(--primary);background:var(--accent)}.learning-room-tab[aria-current=page]{color:#fff;background:var(--primary)}.learning-room-tab.disabled{cursor:not-allowed;opacity:.48}.learning-room-tab.disabled:hover{color:var(--muted);background:0 0}.learning-room-back{border-left:1px solid var(--line);border-radius:0 .65rem .65rem 0;flex:none}.learning-room-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.learning-room-card{border:1px solid var(--line);background:linear-gradient(145deg, var(--surface), #f7fbf8);min-height:15rem;box-shadow:var(--shadow);border-radius:1rem;grid-template-columns:3.25rem minmax(0,1fr);align-content:start;gap:1rem;padding:1.25rem;display:grid}.learning-room-card.unavailable{background:var(--background);box-shadow:none}.learning-room-card-icon{width:3.25rem;height:3.25rem;color:var(--primary);background:var(--accent);border-radius:.85rem;place-items:center;font-size:1.55rem;font-weight:900;display:grid}.learning-room-card-icon.files{color:#9a6215;background:#fff1cf}.learning-room-card h2{margin:.2rem 0 .35rem}.learning-room-card p{color:var(--muted);margin:0;line-height:1.5}.learning-room-card>:is(.button,.status-badge){grid-column:1/-1;align-self:end;width:fit-content;margin-top:auto}.room-files-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:1rem;gap:1rem;padding:1.1rem;display:grid}.room-files-toolbar{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.room-files-toolbar h2,.room-files-toolbar p{margin:0}.room-files-toolbar p{margin-top:.25rem}.room-files-list{border:1px solid var(--line);border-radius:.8rem;display:grid;overflow:hidden}.room-file-row{background:var(--surface);grid-template-columns:2.65rem minmax(0,1fr) auto;align-items:center;gap:.7rem;min-width:0;padding:.72rem .8rem;display:grid}.room-file-row+.room-file-row{border-top:1px solid var(--line)}.room-file-icon{width:2.4rem;height:2.4rem;color:var(--primary);background:var(--accent);border-radius:.6rem;place-items:center;font-size:1.15rem;font-weight:850;display:grid}.room-file-icon.pdf{color:#a44545;background:#fbeaea;font-size:.62rem}.room-file-open{min-width:0;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;gap:.2rem;padding:.15rem 0;display:grid}.room-file-open strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-file-open small{color:var(--muted);font-size:.72rem}.room-file-open:hover strong{color:var(--primary);text-decoration:underline}.room-file-delete{width:2.2rem;height:2.2rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:1.45rem;line-height:1}.room-file-delete:hover{color:var(--danger);background:#fff0f0}.room-file-confirm{align-items:center;gap:.55rem;display:flex}.room-files-empty{text-align:center;place-content:center;min-height:14rem;display:grid}.room-files-limit{color:var(--muted);text-align:right;margin:0;font-size:.72rem}.whiteboard-editor{border:1px solid var(--line);box-shadow:var(--shadow);background:#eef2ef;border-radius:1rem;overflow:hidden}.whiteboard-editor.focus-mode{z-index:1000;border-radius:.8rem;flex-direction:column;height:calc(100dvh - 1rem);display:flex;position:fixed;inset:.5rem;box-shadow:0 24px 80px #142d243d}.whiteboard-editor.focus-mode .whiteboard-workspace{flex:auto;min-height:0}.whiteboard-editor.focus-mode .whiteboard-canvas-shell{min-height:0}.whiteboard-editor.focus-mode .whiteboard-canvas{height:100%;min-height:0;max-height:none}.whiteboard-topbar{border-bottom:1px solid var(--line);background:var(--surface);gap:.7rem;padding:.75rem;display:grid}.whiteboard-status-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.55rem;display:flex}.whiteboard-presence{border:1px solid color-mix(in srgb, var(--muted) 28%, transparent);width:fit-content;color:color-mix(in srgb, var(--ink) 72%, var(--muted));background:#edf1ee;border-radius:999px;align-items:center;gap:.45rem;padding:.38rem .62rem;font-size:.74rem;font-weight:800;display:inline-flex}.whiteboard-presence>span:not(.whiteboard-presence-dot):not(.whiteboard-presence-actions){min-width:0}.whiteboard-presence-dot{background:#94a19b;border-radius:50%;width:.52rem;height:.52rem}.whiteboard-presence.state-connected{color:var(--primary-dark);background:var(--accent)}.whiteboard-presence.state-connected .whiteboard-presence-dot{background:#1a9b70;box-shadow:0 0 0 3px #1a9b7024}.whiteboard-presence.state-offline{color:#765612;background:#fff8e8}.whiteboard-presence.state-offline .whiteboard-presence-dot{background:#d49a28}.whiteboard-presence.state-offline.action-required{color:var(--danger);background:#fbe8e8}.whiteboard-presence.state-offline.action-required .whiteboard-presence-dot{background:var(--danger)}.whiteboard-presence-actions{align-items:center;gap:.15rem;display:inline-flex}.whiteboard-presence-actions button{min-height:1.7rem;color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;border-radius:.42rem;padding:.16rem .38rem;font-size:.7rem;font-weight:850}.whiteboard-presence-actions button:hover,.whiteboard-presence-actions button:focus-visible{background:#1b2f261a}.whiteboard-presence-actions button:last-child{width:1.7rem;padding:0;font-size:1.05rem;line-height:1}.whiteboard-follow-peer{min-height:1.75rem;color:inherit;cursor:pointer;font:inherit;background:0 0;border:1px solid;border-radius:999px;padding:.18rem .45rem;font-size:.68rem;font-weight:850}.whiteboard-follow-peer:hover,.whiteboard-follow-peer:focus-visible{background:#ffffff8c}.whiteboard-disclosure{border:1px solid var(--line);background:#f8faf8;border-radius:.7rem}.whiteboard-disclosure>summary{cursor:pointer;min-height:2.35rem;color:var(--ink);align-items:center;gap:.45rem;padding:.45rem .65rem;font-size:.78rem;list-style:none;display:flex}.whiteboard-disclosure>summary::-webkit-details-marker{display:none}.whiteboard-disclosure>summary:after{content:"⌄";color:var(--muted);margin-left:.1rem;font-size:1rem;line-height:1;transition:transform .15s}.whiteboard-disclosure[open]>summary:after{transform:rotate(180deg)}.whiteboard-disclosure>summary small{color:var(--muted);font-size:.68rem;font-weight:700}.whiteboard-moderation{min-width:min(100%,19rem)}.whiteboard-moderation-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;padding:0 .65rem .65rem;display:flex}.whiteboard-moderation .button{min-height:2.25rem;padding:.45rem .65rem;font-size:.74rem}.whiteboard-moderation .button[aria-pressed=true]{color:var(--danger);background:#fff2f2;border-color:#d89191}.whiteboard-group-moderation{gap:.15rem;display:grid}.whiteboard-group-participants{border-top:1px solid var(--line);max-height:13rem;display:grid;overflow:auto}.whiteboard-group-participant{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:.65rem;padding:.5rem .65rem;display:flex}.whiteboard-group-participant>div{gap:.1rem;min-width:0;display:grid}.whiteboard-group-participant strong{text-overflow:ellipsis;white-space:nowrap;font-size:.77rem;overflow:hidden}.whiteboard-group-participant small{color:var(--muted);font-size:.68rem;font-weight:700}.whiteboard-group-participant .button{flex:none}.whiteboard-permission-notice{color:#765612;background:#fff8e8;border-left:4px solid #d49a28;border-radius:.45rem;padding:.6rem .7rem;font-size:.78rem;font-weight:750}.whiteboard-student-hint{color:var(--muted);margin:0;font-size:.73rem;font-weight:700;line-height:1.4}.whiteboard-capacity-notice{color:#7b3030;background:#fff5f5;border-left:4px solid #b75656;border-radius:.45rem;padding:.6rem .7rem;font-size:.78rem;font-weight:750}.whiteboard-capacity-notice.warning{color:#765612;background:#fff8e8;border-left-color:#d49a28}.whiteboard-tools,.whiteboard-controls,.whiteboard-future-imports,.whiteboard-canvas-actions{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.whiteboard-tool-group{flex:none;align-items:center;gap:.3rem;display:inline-flex}.whiteboard-tool-group+.whiteboard-tool-group{border-left:1px solid var(--line);margin-left:.1rem;padding-left:.55rem}.whiteboard-toolbar-scroll-hint{color:var(--muted);font-size:.66rem;display:none}.whiteboard-tool{border:1px solid var(--line);width:2.4rem;min-height:2.4rem;color:var(--ink);background:var(--surface);cursor:pointer;border-radius:.6rem;place-items:center;padding:.35rem;font-size:1.15rem;font-weight:750;display:grid}.whiteboard-tool-icon{flex:none;width:1.3rem;height:1.3rem;display:block;overflow:visible}.whiteboard-tool[aria-pressed=true]{border-color:var(--primary);color:var(--primary);background:var(--accent)}.whiteboard-tool:disabled{cursor:not-allowed;opacity:.45}.whiteboard-tool-menu{flex:none;position:relative}.whiteboard-tool-menu>summary{border:1px solid var(--line);width:2.4rem;min-height:2.4rem;color:var(--ink);background:var(--surface);cursor:pointer;border-radius:.6rem;place-items:center;padding:.35rem;list-style:none;display:grid}.whiteboard-tool-menu>summary::-webkit-details-marker{display:none}.whiteboard-tool-menu.is-active>summary{border-color:var(--primary);color:var(--primary);background:var(--accent)}.whiteboard-tool-menu-popover{z-index:40;border:1px solid var(--line);background:var(--surface);border-radius:.75rem;gap:.25rem;width:min(20rem,100vw - 2rem);padding:.45rem;display:grid;position:absolute;top:calc(100% + .55rem);left:0;box-shadow:0 16px 38px #12292033}.whiteboard-tool-menu-popover>button{min-height:2.75rem;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:.55rem;align-items:center;gap:.7rem;padding:.5rem .65rem;display:flex}.whiteboard-tool-menu-popover>button:hover,.whiteboard-tool-menu-popover>button[aria-pressed=true]{color:var(--primary);background:var(--accent)}.whiteboard-tool-menu-popover>button>span:not(.whiteboard-line-sample){gap:.08rem;display:grid}.whiteboard-tool-menu-popover strong{font-size:.78rem}.whiteboard-tool-menu-popover small{color:var(--muted);font-size:.68rem;line-height:1.25}.whiteboard-line-menu-popover{width:min(17rem,100vw - 2rem)}.whiteboard-line-sample{color:currentColor;flex:0 0 3rem;width:3rem;height:.9rem;display:block;position:relative}.whiteboard-line-sample:before,.whiteboard-line-sample:after{content:"";border-top:2px solid;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.whiteboard-line-sample.style-dashed:before{border-top-style:dashed}.whiteboard-line-sample.style-dotted:before{border-top:3px dotted}.whiteboard-line-sample.style-double:before{transform:translateY(-3px)}.whiteboard-line-sample.style-double:after{transform:translateY(3px)}.whiteboard-line-sample:not(.style-double):after{display:none}.whiteboard-line-sample.style-dash-dot:before{background:repeating-linear-gradient(90deg,currentColor 0 13px,#0000 13px 19px,currentColor 19px 22px,#0000 22px 28px);border:0;height:2px}.whiteboard-line-sample.style-wavy:before{content:"∿∿";letter-spacing:-.28rem;border:0;font-size:1.45rem;line-height:1;top:-.38rem;transform:none}.whiteboard-drawing-presets{align-items:center;gap:.3rem;display:inline-flex}.whiteboard-drawing-preset{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:.6rem;place-items:center;width:2.4rem;min-height:2.4rem;padding:.35rem;display:grid}.whiteboard-drawing-preset>span{border-radius:999px;width:1.35rem;height:.28rem;transform:rotate(-25deg)}.whiteboard-drawing-preset.is-highlighter>span{opacity:.58;border-radius:.16rem;height:.58rem}.whiteboard-drawing-preset[aria-pressed=true]{border-color:var(--primary);background:var(--accent);box-shadow:0 0 0 2px #17765b1f}.whiteboard-stroke-settings{width:fit-content;max-width:100%}.whiteboard-stroke-settings>summary{min-height:2.4rem}.whiteboard-stroke-settings>summary:after{margin-left:auto}.whiteboard-stroke-settings .whiteboard-next-stroke{width:2rem;height:1.8rem}.whiteboard-controls{padding:0 .65rem .65rem}.whiteboard-controls label,.whiteboard-color{color:var(--muted);align-items:center;gap:.45rem;font-size:.76rem;font-weight:750;display:inline-flex}.whiteboard-brush-choice,.whiteboard-background-controls fieldset{border:0;flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;padding:0;display:inline-flex}.whiteboard-brush-choice legend,.whiteboard-background-controls legend{width:100%;color:var(--muted);margin-bottom:.15rem;font-size:.68rem;font-weight:800}.whiteboard-brush-choice button,.whiteboard-background-controls button{border:1px solid var(--line);min-height:2.15rem;color:var(--ink);background:var(--surface);cursor:pointer;font:inherit;border-radius:.5rem;padding:.4rem .62rem;font-size:.72rem;font-weight:800}.whiteboard-brush-choice button[aria-pressed=true],.whiteboard-background-controls button[aria-pressed=true]{border-color:var(--primary);color:var(--primary);background:var(--accent);box-shadow:0 0 0 2px #17765b1a}.whiteboard-brush-choice button:disabled,.whiteboard-background-controls button:disabled{cursor:not-allowed;opacity:.45}.whiteboard-color input{border:1px solid var(--line);background:#fff;border-radius:.4rem;width:2.4rem;height:2.1rem;padding:.15rem}.whiteboard-next-stroke{border:1px solid var(--line);background:#fff;border-radius:.4rem;place-items:center;width:2.4rem;height:2.1rem;display:grid}.whiteboard-next-stroke>span{border-radius:999px;width:1.45rem;min-height:1px;max-height:1rem;transform:rotate(-18deg)}.whiteboard-background-settings{width:fit-content;max-width:100%}.whiteboard-background-settings>summary:after{margin-left:auto}.whiteboard-background-swatch{border:1px solid #9daba4;border-radius:.35rem;flex:none;width:1.3rem;height:1.3rem}.whiteboard-background-swatch.color-white{background:#fff}.whiteboard-background-swatch.color-cream{background:#fffaf0}.whiteboard-background-swatch.color-dark{background:#17231e;border-color:#52655c}.whiteboard-background-controls{grid-template-columns:auto minmax(16rem,1fr);gap:.8rem;padding:0 .65rem .65rem;display:grid}.whiteboard-background-controls button{align-items:center;gap:.35rem;display:inline-flex}.whiteboard-active-tool{border-left:3px solid var(--primary);min-height:2.25rem;color:var(--muted);background:color-mix(in srgb, var(--accent) 55%, var(--surface));border-radius:.45rem;flex-wrap:wrap;align-items:baseline;gap:.25rem .6rem;padding:.48rem .65rem;font-size:.72rem;line-height:1.35;display:flex}.whiteboard-active-tool strong{color:var(--ink);font-size:.78rem}.whiteboard-active-tool-copy{align-items:baseline;gap:.25rem .6rem;display:flex}.whiteboard-active-tool-help{display:none}.whiteboard-polyline-actions{align-items:center;gap:.25rem;display:inline-flex}.whiteboard-polyline-actions button{border:1px solid var(--line);min-height:1.7rem;color:var(--ink);background:var(--surface);cursor:pointer;font:inherit;border-radius:999px;padding:.22rem .5rem;font-weight:800}.whiteboard-polyline-actions button:first-child{border-color:var(--primary);color:#fff;background:var(--primary)}.whiteboard-polyline-actions button:disabled{opacity:.45;cursor:not-allowed}.whiteboard-text-draft{color:var(--muted);grid-template-columns:auto minmax(12rem,30rem);align-items:center;gap:.55rem;font-size:.78rem;font-weight:750;display:grid}.whiteboard-text-draft input{border:1px solid #bac8c0;border-radius:.6rem;min-height:2.5rem;padding:.55rem .7rem}.whiteboard-future-imports{width:fit-content;max-width:100%;color:var(--muted)}.whiteboard-import-actions{flex-wrap:wrap;align-items:center;gap:.45rem;padding:0 .65rem .65rem;display:flex}.whiteboard-material-tool{border:1px solid var(--line);width:2.4rem;min-height:2.4rem;color:var(--ink);background:var(--surface);cursor:pointer;border-radius:.6rem;place-items:center;padding:.35rem;font-size:1.15rem;font-weight:850;display:grid}.whiteboard-material-tool.is-pdf{letter-spacing:-.02em;font-size:.65rem}.whiteboard-material-tool:disabled{cursor:not-allowed;opacity:.45}.whiteboard-import-actions small{flex:18rem;min-width:0;font-size:.72rem;line-height:1.4}.whiteboard-pdf-preview{border-bottom:1px solid var(--line);background:#f8faf8;gap:.7rem;padding:.75rem;display:grid}.whiteboard-pdf-preview>header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.whiteboard-pdf-preview>header>div{gap:.15rem;display:grid}.whiteboard-pdf-preview>header small{color:var(--muted);font-size:.72rem}.whiteboard-pdf-pages{scroll-snap-type:x proximity;gap:.75rem;padding:.15rem 0 .6rem;display:flex;overflow-x:auto}.whiteboard-pdf-page{border:1px solid var(--line);scroll-snap-align:start;background:#fff;border-radius:.7rem;align-content:start;gap:.55rem;min-width:12rem;max-width:15rem;padding:.55rem;display:grid}.whiteboard-pdf-thumbnail{background:#eef2ef;border:1px solid #dce5df;border-radius:.45rem;place-items:center;height:13rem;display:grid;overflow:hidden}.whiteboard-pdf-thumbnail svg{width:100%;height:100%}.whiteboard-pdf-page .button{width:100%;min-height:2.5rem;padding:.55rem}.whiteboard-workspace{grid-template-columns:8.5rem minmax(0,1fr);min-height:36rem;display:grid}.whiteboard-pages{border-right:1px solid var(--line);background:#f8faf8;flex-direction:column;gap:.55rem;max-height:calc(68vh + 3.3rem);padding:.75rem;display:flex;overflow-y:auto}.whiteboard-pages>button{border:1px solid var(--line);color:var(--muted);cursor:pointer;text-align:left;background:#fff;border-radius:.6rem;gap:.2rem;padding:.65rem;display:grid}.whiteboard-pages>button.active{border-color:var(--primary);color:var(--primary);box-shadow:inset 3px 0 var(--primary)}.whiteboard-pages>button:disabled{cursor:not-allowed;opacity:.5}.whiteboard-page-preview{aspect-ratio:3/2;background:#fff;border:1px solid #dce5df;border-radius:.38rem;width:100%;display:block;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff7a}.whiteboard-pages>button.active .whiteboard-page-preview{border-color:color-mix(in srgb, var(--primary) 44%, #dce5df)}.whiteboard-pages>button span{font-weight:850}.whiteboard-pages>button small{font-size:.65rem}.whiteboard-page-search{color:var(--muted);gap:.3rem;font-size:.68rem;font-weight:750;display:grid}.whiteboard-page-search input{background:#fff;border:1px solid #bac8c0;border-radius:.55rem;width:100%;min-height:2.35rem;padding:.45rem .55rem}.whiteboard-page-empty{color:var(--muted);text-align:center;gap:.45rem;font-size:.72rem;display:grid}.whiteboard-page-empty .button{min-height:2.2rem;padding:.4rem .55rem}.whiteboard-add-page{margin-top:.25rem}.whiteboard-page-summary{color:var(--muted);text-align:center;font-size:.68rem;font-weight:750}.whiteboard-remove-page{color:var(--danger)!important}.whiteboard-page-remove-confirm{color:#7b3030;background:#fff7f7;border:1px solid #e2b5b5;border-radius:.65rem;gap:.45rem;padding:.6rem;font-size:.7rem;line-height:1.35;display:grid}.whiteboard-page-remove-confirm>div{grid-template-columns:1fr 1fr;gap:.35rem;display:grid}.whiteboard-page-remove-confirm .button{min-height:2rem;padding:.35rem;font-size:.68rem}.whiteboard-canvas-shell{grid-template-rows:auto minmax(0,1fr);gap:.65rem;min-width:0;padding:.75rem;display:grid}.whiteboard-canvas-actions{min-height:2.65rem}.whiteboard-canvas-actions span{min-width:3.2rem;color:var(--muted);text-align:center;font-size:.78rem;font-weight:750}.whiteboard-canvas-actions .whiteboard-tool span,.whiteboard-focus-toggle span{min-width:0;color:inherit;font-size:1.05rem}.whiteboard-page-stepper{border-right:1px solid var(--line);align-items:center;gap:.25rem;padding-right:.45rem;display:inline-flex}.whiteboard-page-stepper .whiteboard-tool{width:2.2rem;min-height:2.2rem}.whiteboard-page-stepper .whiteboard-page-position{min-width:3.4rem}.whiteboard-focus-toggle{place-items:center;width:2.4rem;min-height:2.4rem;padding:.35rem;display:grid}.whiteboard-page-title-form{border:1px solid var(--line);background:#f8faf8;border-radius:.65rem;grid-template-columns:minmax(12rem,1fr) auto auto;align-items:end;gap:.5rem;padding:.55rem;display:grid}.whiteboard-page-title-form label{color:var(--muted);gap:.3rem;font-size:.72rem;font-weight:750;display:grid}.whiteboard-page-title-form input{background:#fff;border:1px solid #bac8c0;border-radius:.55rem;min-height:2.45rem;padding:.5rem .65rem}.whiteboard-image-editor{background:color-mix(in srgb, var(--accent) 55%, var(--surface));border:1px solid #b9d8ca;border-radius:.7rem;grid-template-columns:minmax(11rem,auto) auto minmax(14rem,1fr);align-items:center;gap:.55rem;padding:.6rem;display:grid}.whiteboard-image-editor-heading{gap:.1rem;display:grid}.whiteboard-image-editor-heading span{color:var(--muted);font-size:.7rem}.whiteboard-image-rotate{gap:.35rem;display:flex}.whiteboard-image-editor>details{position:relative}.whiteboard-image-editor>details>summary{cursor:pointer;color:var(--primary);font-size:.78rem;font-weight:850}.whiteboard-image-editor>details[open]{border-top:1px solid var(--line);grid-column:1/-1;padding-top:.55rem}.whiteboard-image-editor>details p{color:var(--muted);margin:.25rem 0 .65rem;font-size:.72rem}.whiteboard-crop-controls{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;display:grid}.whiteboard-crop-controls label{color:var(--muted);gap:.25rem;font-size:.7rem;font-weight:750;display:grid}.whiteboard-crop-controls input{width:100%}.whiteboard-image-editor-actions{flex-wrap:wrap;gap:.45rem;margin-top:.65rem;display:flex}.whiteboard-text-editor{background:color-mix(in srgb, var(--accent) 55%, var(--surface));border:1px solid #b9d8ca;border-radius:.7rem;grid-template-columns:minmax(14rem,1fr) auto;align-items:end;gap:.5rem;padding:.6rem;display:grid}.whiteboard-text-editor label{color:var(--muted);gap:.25rem;font-size:.72rem;font-weight:750;display:grid}.whiteboard-text-editor input{min-height:2.5rem;color:var(--ink);background:var(--surface);border:1px solid #bac8c0;border-radius:.55rem;padding:.5rem .65rem}.whiteboard-canvas{touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #cbd7d0;border-radius:.65rem;width:100%;min-height:30rem;max-height:68vh;box-shadow:0 8px 24px #26493d14}.whiteboard-canvas.tool-pencil,.whiteboard-canvas.tool-highlighter,.whiteboard-canvas.tool-partial_eraser{cursor:crosshair}.whiteboard-canvas.tool-object_eraser{cursor:not-allowed}.whiteboard-canvas.tool-select{cursor:default}.whiteboard-canvas.tool-pan{cursor:grab}.whiteboard-canvas.tool-text{cursor:text}.whiteboard-pointer-preview{vector-effect:non-scaling-stroke}.whiteboard-pointer-preview.is-pencil{opacity:.78}.whiteboard-pointer-preview.is-eraser{stroke:#536860;stroke-dasharray:5 4;stroke-width:1.5px}.whiteboard-selection{stroke:#1d78d0;stroke-width:2px;stroke-dasharray:8 5;vector-effect:non-scaling-stroke}.whiteboard-peer-cursor{--peer-cursor-fill:#a33778;--peer-cursor-stroke:#80285e}.whiteboard-peer-cursor.color-1{--peer-cursor-fill:#2f70c9;--peer-cursor-stroke:#1d4d91}.whiteboard-peer-cursor.color-2{--peer-cursor-fill:#d26b2d;--peer-cursor-stroke:#9d4210}.whiteboard-peer-cursor.color-3{--peer-cursor-fill:#257f64;--peer-cursor-stroke:#175542}.whiteboard-peer-cursor.color-4{--peer-cursor-fill:#7656c7;--peer-cursor-stroke:#4b338d}.whiteboard-peer-cursor path{fill:var(--peer-cursor-fill);stroke:#fff;stroke-width:2px;paint-order:stroke;vector-effect:non-scaling-stroke}.whiteboard-peer-cursor text{fill:#fff;stroke:var(--peer-cursor-stroke);stroke-width:7px;paint-order:stroke;stroke-linejoin:round;font-size:16px;font-weight:800}.whiteboard-footer{border-top:1px solid var(--line);color:var(--muted);background:var(--surface);justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .9rem;font-size:.78rem;display:flex}.whiteboard-footer-status{gap:.15rem;display:grid}.whiteboard-footer-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.whiteboard-more-actions{position:relative}.whiteboard-more-actions>summary{cursor:pointer;list-style:none}.whiteboard-more-actions>summary::-webkit-details-marker{display:none}.whiteboard-more-actions>div{z-index:12;border:1px solid var(--line);background:var(--surface);border-radius:.7rem;gap:.35rem;width:max-content;padding:.45rem;display:grid;position:absolute;bottom:calc(100% + .45rem);right:0;box-shadow:0 12px 30px #1e372d26}.whiteboard-shortcuts{position:relative}.whiteboard-shortcuts>summary{cursor:pointer;color:var(--primary);white-space:nowrap;font-weight:750;list-style:none}.whiteboard-shortcuts>summary::-webkit-details-marker{display:none}.whiteboard-shortcuts>div{z-index:8;border:1px solid var(--line);background:#fff;border-radius:.75rem;gap:.45rem;width:min(19rem,75vw);padding:.75rem;display:grid;position:absolute;bottom:calc(100% + .55rem);right:0;box-shadow:0 12px 30px #1e372d26}.whiteboard-shortcuts span{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.whiteboard-shortcuts kbd{color:var(--ink);font:inherit;background:#f6f8f6;border:1px solid #cbd7d0;border-bottom-width:2px;border-radius:.35rem;padding:.12rem .35rem;font-weight:750}.whiteboard-sync-state{font-size:.68rem}.whiteboard-sync-state.state-synced{color:var(--primary)}.whiteboard-sync-state.state-offline{color:var(--danger)}.whiteboard-editor.student-view .whiteboard-student-tools{justify-content:center}.whiteboard-editor.student-view .whiteboard-pages>button{text-align:center}.whiteboard-editor.student-view .whiteboard-footer{justify-content:flex-start}@media (max-width:760px){.role-choice-grid{grid-template-columns:1fr}.role-choice-card{grid-template-columns:3rem minmax(0,1fr) auto;padding:1rem}.role-choice-icon{width:3rem;height:3rem}.whiteboard-page-heading{display:grid}.learning-room-nav{flex-direction:column;align-items:stretch;top:4.75rem}.learning-room-tabs{width:100%}.learning-room-tab{flex:1 0 auto}.learning-room-back{border-top:1px solid var(--line);border-left:0;border-radius:0 0 .6rem .6rem;min-height:2.25rem}.learning-room-overview{grid-template-columns:1fr}.learning-room-card{min-height:12rem}.room-files-toolbar{display:grid}.room-files-toolbar .button{width:100%}.room-file-row{grid-template-columns:2.4rem minmax(0,1fr) auto;padding:.65rem}.room-file-open small{white-space:normal}.room-file-confirm{flex-direction:column;align-items:flex-end}.whiteboard-workspace{grid-template-columns:1fr}.whiteboard-pages{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;max-height:none;overflow:auto hidden}.whiteboard-page-search{flex:0 0 10rem}.whiteboard-page-empty{flex:0 0 9rem;align-content:center}.whiteboard-page-summary{align-self:center;min-width:max-content}.whiteboard-pages>button{min-width:6.5rem}.whiteboard-canvas{min-height:24rem}.whiteboard-page-title-form{grid-template-columns:1fr 1fr}.whiteboard-page-title-form label{grid-column:1/-1}.whiteboard-text-draft{grid-template-columns:1fr}.whiteboard-pdf-preview>header,.whiteboard-footer{flex-direction:column;align-items:stretch}.whiteboard-footer-actions{display:grid}.whiteboard-footer-actions .button{width:100%}.whiteboard-shortcuts>div{left:0;right:auto}.whiteboard-status-row{align-items:stretch}.whiteboard-moderation{width:100%}.whiteboard-moderation-actions{align-items:stretch;display:grid}.whiteboard-future-imports{width:100%}.whiteboard-import-actions{align-items:center;display:flex}.whiteboard-import-actions small{flex-basis:100%}.whiteboard-tools,.whiteboard-controls{flex-wrap:nowrap;padding-bottom:.2rem;overflow-x:auto}.whiteboard-tool-group{flex:none}.whiteboard-toolbar-scroll-hint{display:block}.whiteboard-stroke-settings{width:100%}.whiteboard-stroke-settings .whiteboard-controls{padding:0 .65rem .65rem}.whiteboard-background-settings{width:100%}.whiteboard-background-controls{grid-template-columns:1fr}.whiteboard-tool,.whiteboard-drawing-preset{flex:0 0 2.4rem}.whiteboard-controls label{flex:none}.whiteboard-editor.student-view{border-radius:.75rem}.whiteboard-editor.focus-mode{border:0;border-radius:0;height:100dvh;inset:0}.whiteboard-editor.student-view .whiteboard-topbar{gap:.45rem;padding:.5rem}.whiteboard-editor.student-view .whiteboard-presence,.whiteboard-editor.student-view .whiteboard-student-hint{font-size:.68rem}.whiteboard-editor.student-view .whiteboard-student-tools{flex-wrap:nowrap;padding:0;overflow:visible}.whiteboard-editor.student-view .whiteboard-pages{gap:.35rem;padding:.4rem}.whiteboard-editor.student-view .whiteboard-pages>button{text-align:center;min-width:2.75rem;padding:.45rem}.whiteboard-editor.student-view .whiteboard-page-preview{display:none}.whiteboard-editor.student-view .whiteboard-workspace{min-height:0}.whiteboard-editor.student-view .whiteboard-canvas-shell{gap:.35rem;padding:.35rem}.whiteboard-editor.student-view .whiteboard-canvas-actions{overscroll-behavior-inline:contain;scrollbar-width:thin;flex-wrap:nowrap;justify-content:flex-start;min-height:2.25rem;overflow-x:auto}.whiteboard-editor.student-view .whiteboard-canvas-actions>*{flex:none}.whiteboard-editor.student-view .whiteboard-canvas-actions .button{min-height:2.2rem;padding:.4rem .55rem}.whiteboard-editor.student-view .whiteboard-canvas{min-height:58svh;max-height:72svh}.whiteboard-editor.student-view.focus-mode .whiteboard-canvas{height:100%;min-height:0;max-height:none}.whiteboard-editor.student-view .whiteboard-footer{padding:.45rem .6rem}.whiteboard-editor.student-view .whiteboard-sync-state,.whiteboard-editor.student-view .whiteboard-shortcuts{display:none}.whiteboard-image-editor,.whiteboard-text-editor{grid-template-columns:1fr}.whiteboard-image-rotate{grid-template-columns:1fr 1fr;display:grid}.whiteboard-crop-controls{grid-template-columns:1fr 1fr}.whiteboard-editor.focus-mode .whiteboard-pages{flex:none;max-height:6rem}.whiteboard-editor.focus-mode .whiteboard-page-preview{display:none}}.report-list{gap:.75rem;display:grid}.report-card{border:1px solid var(--line);background:var(--surface);border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.report-card.unread{border-left:5px solid var(--primary)}.report-card.read{opacity:.78}.report-card h3{margin:.2rem 0}.report-card p,.report-card span{color:var(--muted);margin:0;font-size:.82rem}.homework-list{gap:.75rem;display:grid}.homework-card{border:1px solid var(--line);background:var(--surface);border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;transition:border-color .15s,transform .15s;display:flex}.homework-card:hover{border-color:#9fbcad;transform:translateY(-1px)}.homework-card.accepted{opacity:.8}.homework-card h3{margin:.2rem 0}.homework-card p,.homework-card>div>span{color:var(--muted);margin:0;font-size:.82rem}.status-in_progress{color:#245b85;background:#e4f0fa}.status-submitted{color:#674b15;background:#fff2cf}.status-needs_revision,.status-overdue{color:#8a3131;background:#fbe8e8}.status-accepted{color:#14543e;background:var(--accent)}.homework-details{gap:1.25rem;display:grid}.homework-details>div{gap:.3rem;display:grid}.homework-details span{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:750}.homework-details p{white-space:pre-wrap;margin:0;line-height:1.6}.revision-note{background:#fff8f8;border-color:#e9bcbc}.revision-note p:last-child,.accepted-note p:last-child{white-space:pre-wrap;margin-bottom:0}.accepted-note{background:#f0f8f4;border-color:#b9d8ca}.knowledge-entry{justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.knowledge-entry h2{margin-bottom:.35rem}.knowledge-entry p:last-child{margin-bottom:0}.message-entry{justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.message-entry h2{margin-bottom:.35rem}.message-entry p:last-child{margin-bottom:0}.knowledge-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.knowledge-overview{grid-template-columns:minmax(0,1fr) minmax(18rem,.7fr);align-items:end;gap:1.5rem;display:grid}.knowledge-overview>div>span{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:800}.knowledge-overview>div>p{white-space:pre-wrap;margin:.4rem 0 0;line-height:1.6}.knowledge-review-form{grid-template-columns:minmax(12rem,1fr) auto;align-items:end;gap:.75rem;display:grid}.knowledge-review-form .form-message{grid-column:1/-1}.knowledge-list{gap:.75rem;display:grid}.knowledge-node{gap:1rem;display:grid}.knowledge-node.level-1{margin-left:2rem}.knowledge-node.level-2{margin-left:4rem}.knowledge-node>header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.knowledge-node h3{margin:.15rem 0 0}.knowledge-code{color:var(--muted);letter-spacing:.06em;font-size:.7rem}.knowledge-node-form{grid-template-columns:minmax(12rem,.7fr) minmax(16rem,1.3fr) auto;align-items:end;gap:.75rem;display:grid}.knowledge-node-form .form-message{grid-column:1/-1}.knowledge-baseline{color:var(--muted);margin:-.35rem 0 0;font-size:.78rem}.knowledge-not_assessed{color:var(--muted);background:#edf1ee}.knowledge-major_gap{color:#8a3131;background:#fbe8e8}.knowledge-needs_practice{color:#674b15;background:#fff2cf}.knowledge-mastered{color:#245b85;background:#e4f0fa}.knowledge-confident{color:#14543e;background:var(--accent)}.knowledge-list.read-only .knowledge-node{gap:.6rem}.knowledge-student-evidence{white-space:pre-wrap;margin:0;line-height:1.55}.progress-subject{gap:1rem}.segmented>span{text-transform:capitalize;white-space:nowrap;align-items:center;padding:.55rem .9rem;font-size:.86rem;font-weight:800;display:inline-flex}.finance-summary-board{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;display:grid}.finance-summary-card{border:1px solid var(--line);background:var(--surface);border-radius:1.15rem;align-content:start;gap:.28rem;min-height:10.5rem;padding:1.15rem;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 28px #26493d0d}.finance-summary-card:after{content:"";opacity:.42;filter:blur(1px);background:currentColor;border-radius:50%;width:7rem;height:7rem;position:absolute;bottom:-2.5rem;right:-2rem}.finance-summary-card small{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin-top:.8rem;font-size:.72rem;font-weight:800}.finance-summary-card strong{z-index:1;color:currentColor;margin-top:.15rem;font-size:clamp(1.35rem,2.6vw,2rem);line-height:1.05;position:relative}.finance-summary-card>span:last-child{z-index:1;color:var(--muted);margin-top:auto;font-size:.72rem;line-height:1.35;position:relative}.finance-summary-card.income{color:#2d7fe0;background:linear-gradient(145deg,#f8fbff,#eef5ff)}.finance-summary-card.bank{color:#dd8c17;background:linear-gradient(145deg,#fffdfa,#fff5df)}.finance-summary-card.tax{color:#8263d9;background:linear-gradient(145deg,#fcfbff,#f2effd)}.finance-summary-card.net{color:#118e69;background:linear-gradient(145deg,#f8fffc,#e7f7f0);border-color:#b7ddcf}.finance-summary-icon{z-index:1;color:currentColor;background:#ffffffb8;border-radius:.7rem;place-items:center;width:2.1rem;height:2.1rem;font-size:1rem;font-weight:900;display:grid;position:relative;box-shadow:0 4px 14px #26493d12}.finance-secondary-summary{border:1px solid var(--line);background:#fafbf9;border-radius:1rem;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;padding:.85rem 1rem;display:grid}.finance-secondary-summary>span{border-left:2px solid #d6e3dc;gap:.18rem;padding:.35rem .7rem;display:grid}.finance-secondary-summary small{color:var(--muted);font-size:.72rem}.finance-secondary-summary strong{font-size:1rem}.finance-secondary-summary .debt strong{color:var(--danger)}.finance-settings{padding:0;overflow:hidden}.finance-settings>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;list-style:none;display:flex}.finance-settings>summary::-webkit-details-marker{display:none}.finance-settings>summary>span:first-child{gap:.2rem;display:grid}.finance-settings>summary small{color:var(--muted);font-size:.78rem}.finance-settings-edit{color:var(--primary);font-size:.8rem;font-weight:800}.finance-settings[open]>summary{border-bottom:1px solid var(--line);background:#f7faf8}.finance-settings[open] .finance-settings-edit{font-size:0}.finance-settings[open] .finance-settings-edit:after{content:"Свернуть";font-size:.8rem}.finance-settings-form{padding:1.2rem}.finance-settings-form .button{width:fit-content}.finance-settings-note{color:#285b49;background:#edf8f3;border-radius:.8rem;margin:0;padding:.8rem 1rem;font-size:.82rem;line-height:1.5}.finance-guidance{background:linear-gradient(145deg,#fbfdff,#f5f8fd);border:1px solid #d6dfed;border-radius:1.1rem;grid-template-columns:minmax(12rem,.55fr) minmax(18rem,1.2fr);gap:1rem 2rem;padding:1.2rem;display:grid}.finance-guidance h2{margin:.2rem 0 0;font-size:1.3rem}.finance-guidance ul{color:var(--muted);gap:.5rem;margin:0;padding-left:1.15rem;font-size:.84rem;line-height:1.5;display:grid}.finance-guidance-links{flex-wrap:wrap;grid-column:2;gap:.75rem;display:flex}.finance-guidance-links a{color:var(--primary);font-size:.78rem;font-weight:800}.platform-settlements-section{gap:1rem}.platform-settlements-section .section-heading>div{max-width:48rem}.platform-settlements-section .section-heading h2{margin:.2rem 0 0}.platform-settlements-section .section-heading p:last-child{margin:.45rem 0 0;line-height:1.5}.settlement-list{grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));gap:.85rem;display:grid}.settlement-card{gap:1rem;display:grid}.settlement-card>header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.settlement-card>header span:first-child{color:var(--muted);font-size:.78rem}.settlement-card>header h3{margin:.2rem 0 0}.settlement-payout{background:var(--accent);border-radius:.85rem;gap:.2rem;padding:1rem;display:grid}.settlement-payout span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:750}.settlement-payout strong{color:var(--primary);font-size:1.65rem}.settlement-meta{flex-wrap:wrap;gap:.45rem;display:flex}.settlement-meta span{color:var(--muted);background:#edf1ee;border-radius:.6rem;padding:.4rem .55rem;font-size:.72rem}.settlement-payable{color:#14543e;background:var(--accent)}.settlement-voided{color:#8a3131;background:#fbe8e8}.action-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-card.urgent strong{color:var(--danger)}.action-list{gap:.75rem;display:grid}.action-card{border:1px solid var(--line);background:var(--surface);border-left:4px solid #9fbcad;border-radius:1rem;grid-template-columns:2.5rem minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem 1.2rem;display:grid}.action-card.priority-urgent{border-left-color:var(--danger)}.action-card.priority-high{border-left-color:#b58322}.action-rank{width:2.2rem;height:2.2rem;color:var(--primary);background:var(--accent);border-radius:50%;place-items:center;font-size:.8rem;font-weight:850;display:grid}.action-main h3{margin:.45rem 0 .2rem}.action-main p{color:var(--muted);margin:0;font-size:.86rem}.action-main time{color:var(--muted);margin-top:.45rem;font-size:.75rem;display:block}.status-badge.priority-urgent{color:#8a3131;background:#fbe8e8}.status-badge.priority-high{color:#674b15;background:#fff2cf}.payment-list{gap:1rem;display:grid}.payment-card{gap:1.25rem;display:grid}.payment-card>header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.payment-card>header h3{margin:.2rem 0 0}.payment-card>header div>span{color:var(--muted);font-size:.8rem}.payment-amounts{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.payment-amounts>div{background:#f4f8f5;border-radius:.75rem;gap:.2rem;padding:.8rem;display:grid}.payment-amounts span{color:var(--muted);text-transform:uppercase;font-size:.72rem}.payment-form{border-top:1px solid var(--line);gap:1rem;padding-top:1rem;display:grid}.payment-fields{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:.85rem;display:grid}.payment-reminder{background:#f7f8f5;border-radius:.8rem;padding:.9rem}.payment-reminder summary{cursor:pointer;color:var(--primary);font-weight:750}.payment-reminder p{margin:.8rem 0;line-height:1.55}.manual-reminder-menu{position:relative}.manual-reminder-menu>summary{cursor:pointer;list-style:none}.manual-reminder-menu>summary::-webkit-details-marker{display:none}.manual-reminder-menu[open]>summary{background:color-mix(in srgb, var(--primary) 12%, var(--surface))}.manual-reminder-menu>form{z-index:30;border:1px solid var(--line);background:var(--surface);border-radius:1rem;width:min(23rem,100vw - 2rem);padding:.75rem;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 1rem 2.5rem #112e2429}.manual-reminder-options{gap:.45rem;display:grid}.manual-reminder-option{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.75rem;gap:.2rem;padding:.7rem .8rem;display:grid}.manual-reminder-option:hover:not(:disabled){border-color:var(--line);background:var(--surface-muted)}.manual-reminder-option small{color:var(--muted);line-height:1.35}.manual-reminder-option:disabled{cursor:not-allowed;opacity:.64}.manual-reminder-menu .form-message{margin:.65rem 0 0}.manual-reminder-menu .field-help{margin-top:.65rem;display:block}.payment-paid{color:#14543e;background:var(--accent)}.payment-partially_paid{color:#674b15;background:#fff2cf}.payment-unpaid{color:#8a3131;background:#fbe8e8}.payment-refunded,.payment-not_required{color:var(--muted);background:#edf1ee}.packages-section{gap:1rem}.package-summary{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.package-summary>span{border:1px solid var(--line);color:var(--muted);background:var(--surface-muted);border-radius:.7rem;padding:.5rem .7rem;font-size:.76rem}.package-summary strong{color:var(--ink)}.package-create-details>.panel{box-shadow:none;margin-top:1rem}.package-template-picker{max-width:42rem}.package-price-warning{border:1px solid color-mix(in srgb, #c58a24 42%, var(--line));background:color-mix(in srgb, #c58a24 9%, var(--surface));color:var(--ink);border-radius:.9rem;justify-content:space-between;align-items:center;gap:.8rem;padding:.8rem 1rem;display:flex}.package-save-template{border:1px dashed var(--line);background:var(--surface-muted);border-radius:.9rem;gap:.75rem;padding:.85rem 1rem;display:grid}.package-save-template>.field{max-width:34rem}.package-template-manager{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:1rem;padding:1rem 0;display:grid}.package-template-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.package-template-card{min-width:0;box-shadow:none;padding:0;overflow:hidden}.package-template-card.archived{opacity:.78}.package-template-disclosure>summary{list-style:none}.package-template-disclosure>summary::-webkit-details-marker{display:none}.package-template-summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto 1.25rem;align-items:center;gap:.7rem;min-width:0;padding:.85rem 1rem;transition:background-color .16s;display:grid}.package-template-summary:hover{background:var(--surface-muted)}.package-template-summary:focus-visible{outline:2px solid var(--primary);outline-offset:-3px}.package-template-summary-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.package-template-summary-values{color:var(--muted);white-space:nowrap;font-size:.78rem}.package-template-summary-values strong{color:var(--primary)}.package-template-summary-chevron{color:var(--muted);text-align:center;font-size:1.55rem;line-height:1;transition:transform .16s;transform:rotate(90deg)}.package-template-disclosure[open]>.package-template-summary{background:var(--surface-muted)}.package-template-disclosure[open]>.package-template-summary .package-template-summary-chevron{transform:rotate(-90deg)}.package-template-content{border-top:1px solid var(--line);gap:.7rem;padding:.85rem 1rem 1rem;display:grid}.package-template-content>header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.package-template-content>header>span:first-child{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:700}.package-template-content p{margin:0}.package-template-edit-form{gap:.75rem;margin-top:.8rem;display:grid}.package-template-edit-form .payment-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.package-template-actions{flex-wrap:wrap;gap:.55rem;display:flex}.package-template-archive>summary{cursor:pointer;color:var(--muted);font-weight:750}.package-template-archive>.package-template-list{margin-top:.8rem}.package-scope-choice,.package-family-members{border:0;min-width:0;margin:0;padding:0}.package-scope-choice{flex-wrap:wrap;gap:.55rem;display:flex}.package-scope-choice legend,.package-family-members legend{width:100%;color:var(--ink);margin-bottom:.45rem;font-size:.86rem;font-weight:800}.package-scope-choice label{border:1px solid var(--line);color:var(--muted);background:var(--surface);cursor:pointer;border-radius:.75rem;align-items:center;padding:.65rem .85rem;display:inline-flex;position:relative}.package-scope-choice label.active{border-color:var(--primary);color:var(--primary);background:var(--accent)}.package-scope-choice input{opacity:0;pointer-events:none;position:absolute}.package-family-members{border:1px solid var(--line);border-radius:.85rem;gap:.55rem;padding:.85rem;display:grid}.package-family-members .check-row{background:var(--paper);cursor:pointer;border-radius:.65rem;align-items:center;gap:.65rem;padding:.6rem .7rem;display:flex}.package-family-members .check-row input{width:1.1rem;height:1.1rem;accent-color:var(--primary)}.package-fixed-student{border:1px solid var(--line);color:var(--ink);background:var(--paper);border-radius:.75rem;padding:.78rem .85rem;font-weight:750;display:block}.student-package-entry{gap:1rem;display:grid}.student-package-entry .section-heading{margin:0}.package-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,30rem),1fr));gap:.85rem;display:grid}.package-card{min-width:0;padding:0;scroll-margin-top:1rem;overflow:hidden}.package-card:target{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 18%, transparent)}.package-card .field,.package-card input,.package-card select{min-width:0}.package-card .package-edit-form .payment-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.package-card-disclosure>summary{list-style:none}.package-card-disclosure>summary::-webkit-details-marker{display:none}.package-card-summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto 1.25rem;align-items:center;gap:.85rem;min-width:0;padding:.95rem 1rem;transition:background-color .16s;display:grid}.package-card-summary:hover{background:var(--surface-muted)}.package-card-summary:focus-visible{outline:2px solid var(--primary);outline-offset:-3px}.package-card-summary-name{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.98rem;overflow:hidden}.package-card-summary-count{color:var(--muted);white-space:nowrap;font-size:.8rem}.package-card-summary-count strong{color:var(--primary);font-size:.92rem}.package-card-summary-chevron{color:var(--muted);text-align:center;font-size:1.55rem;line-height:1;transition:transform .16s;transform:rotate(90deg)}.package-card-disclosure[open]>.package-card-summary{background:var(--surface-muted)}.package-card-disclosure[open]>.package-card-summary .package-card-summary-chevron{transform:rotate(-90deg)}.package-card-content{border-top:1px solid var(--line);gap:1rem;padding:1rem;display:grid}.package-card-content>header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.package-card-content>header span:first-child{color:var(--muted);font-size:.78rem}.package-card-content>header h3{margin:.2rem 0 0}.package-balance{background:var(--accent);border-radius:.85rem;align-items:baseline;gap:.55rem;padding:1rem;display:flex}.package-balance strong{color:var(--primary);font-size:2rem}.package-balance span,.package-dates{color:var(--muted);font-size:.8rem}.package-card-content>header small{color:var(--muted);margin-top:.3rem;font-size:.76rem;display:block}.package-progress-block{gap:.65rem;display:grid}.package-payment-note{border:1px solid var(--line);color:var(--muted);background:var(--surface-muted);border-radius:.65rem;margin:0;padding:.65rem .72rem;font-size:.78rem;line-height:1.4}.package-payment-note[data-audience=family]{border-color:color-mix(in srgb, var(--primary) 26%, var(--line))}.package-payment-warning{color:var(--ink);background:color-mix(in srgb, #f0b44d 14%, var(--surface))}.package-usage-summary{color:var(--muted);margin:0;font-size:.78rem;line-height:1.45}.package-usage-summary strong{color:var(--ink)}.package-family-note{margin:0;font-size:.78rem}.package-progress-heading{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.package-progress-heading small{color:var(--muted);font-size:.72rem}.package-progress{flex-wrap:wrap;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.package-progress>li{justify-items:center;gap:.28rem;min-width:2.25rem;display:grid;position:relative}.package-progress>li time,.package-progress>li>small{color:var(--muted);font-size:.65rem;font-weight:700;line-height:1}.package-progress>li.scheduled time{color:var(--ink)}.package-lesson-marker.pending,.package-lesson-marker.completed>summary{box-sizing:border-box;border:2px solid #aebdb5;border-radius:50%;place-items:center;width:1.8rem;height:1.8rem;display:grid}.package-lesson-marker.pending{background:var(--surface)}.package-lesson-marker.completed{position:relative}.package-lesson-marker.completed>summary{border-color:var(--primary);color:#fff;background:var(--primary);cursor:pointer;font-size:.85rem;font-weight:900;list-style:none}.package-lesson-marker.completed>summary::-webkit-details-marker{display:none}.package-lesson-date{z-index:15;color:#fff;background:var(--ink);width:max-content;max-width:min(16rem,75vw);box-shadow:var(--shadow);border-radius:.55rem;padding:.5rem .65rem;font-size:.72rem;line-height:1.35;display:none;position:absolute;bottom:calc(100% + .45rem);left:50%;transform:translate(-50%)}.package-lesson-marker.completed:hover .package-lesson-date,.package-lesson-marker.completed:focus-within .package-lesson-date,.package-lesson-marker.completed[open] .package-lesson-date{display:block}.package-dates{margin:0}.closure-payment-choice{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.85rem;display:grid}.closure-package-selected{min-height:100%}.package-actions{flex-wrap:wrap;gap:.6rem;display:flex}.package-adjust-form{gap:.5rem;display:grid}.package-adjust-form .form-message{max-width:18rem}.package-payment-form{border-top:1px solid var(--line);grid-template-columns:minmax(12rem,1fr) auto;align-items:end;gap:.75rem;padding-top:1rem;display:grid}.package-payment-form .form-message{grid-column:1/-1}.package-edit-details{border-top:1px solid var(--line);padding-top:.9rem}.package-edit-details>summary{cursor:pointer;color:var(--primary);font-size:.88rem;font-weight:750}.package-edit-form{gap:.8rem;margin-top:.85rem;display:grid}.package-delete-form{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.65rem;padding-top:.9rem;display:flex}.package-delete-form .form-message{width:100%;margin:0}.package-delete-help{border-top:1px solid var(--line);margin:0;padding-top:.9rem}.package-active{color:#14543e;background:var(--accent)}.package-exhausted{color:var(--muted);background:#edf1ee}.package-expired{color:#8a3131;background:#fbe8e8}.family-report{gap:1.5rem;display:grid}.family-report>div{gap:.35rem;display:grid}.family-report span{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:800}.family-report p{white-space:pre-wrap;margin:0;line-height:1.6}.family-contact-section{grid-template-columns:minmax(0,1fr) minmax(17rem,auto);align-items:center;gap:1.5rem;display:grid}.family-contact-copy{min-width:0}.family-contact-copy h2{margin-bottom:.35rem}.family-contact-copy>p:last-child{max-width:46rem;margin-bottom:0}.family-contact-title-row{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.family-contact-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;min-width:17rem;display:flex}.family-contact-unavailable{max-width:18rem;color:var(--muted);text-align:right;margin:0;font-size:.8rem}.family-invite-box{gap:.75rem;display:grid}.family-children-panel{border:1px solid var(--line);background:linear-gradient(135deg, var(--surface), var(--paper));border-radius:1rem;grid-template-columns:minmax(0,1fr) minmax(15rem,.8fr);gap:1rem 1.25rem;padding:1.1rem 1.2rem;display:grid}.family-children-panel h3{margin:0;font-size:1.05rem}.family-children-panel .eyebrow{margin-bottom:.25rem}.family-children-panel .muted{max-width:40rem;margin:.35rem 0 0}.family-children-list{align-content:start;gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.family-children-list li{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 82%, var(--accent));border-radius:.7rem;padding:.55rem .7rem;font-size:.86rem;font-weight:700}.family-child-add-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.65rem;display:grid}.family-child-add-form .form-message{grid-column:1/-1;margin:0}.family-children-panel>.text-link{grid-column:1/-1;width:fit-content;font-size:.86rem}.lesson-create-stack{gap:1rem;display:grid}.lesson-mode-switch{width:fit-content}.lesson-mode-switch button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:.6rem;padding:.55rem .9rem;font-size:.86rem;font-weight:750}.lesson-mode-switch button.active{color:var(--primary);background:var(--accent)}.lesson-context-card{border:1px solid var(--line);background:linear-gradient(135deg, var(--surface), var(--paper));border-radius:1rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:.9rem 1rem;display:grid;box-shadow:0 .35rem 1.2rem #17362b0d}.lesson-context-date{color:#fff;background:var(--primary);text-align:center;border-radius:.9rem;place-content:center;gap:.05rem;width:3.4rem;height:3.4rem;display:grid}.lesson-context-date strong{font-size:1.15rem;line-height:1}.lesson-context-date span{text-transform:uppercase;font-size:.68rem;font-weight:800}.lesson-context-copy{gap:.12rem;min-width:0;display:grid}.lesson-context-copy>strong{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.lesson-context-copy>span,.lesson-context-copy>time{color:var(--muted);font-size:.78rem}.group-student-picker{border:0;margin:0;padding:0}.group-student-picker legend{margin-bottom:.3rem;font-weight:750}.group-student-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;max-height:28rem;margin-top:.65rem;padding-right:.25rem;display:grid;overflow-y:auto}.group-student-option{border:1px solid var(--line);cursor:pointer;background:#f8faf8;border-radius:.8rem;align-items:flex-start;gap:.65rem;padding:.75rem;display:flex}.group-student-option:has(input:checked){border-color:var(--primary);background:var(--accent)}.group-student-option input{margin-top:.2rem}.group-student-option span{gap:.15rem;display:grid}.group-student-option small{color:var(--muted)}.group-lesson-members{gap:.45rem;margin-top:.65rem;display:grid}.group-lesson-member{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:.75rem;padding-top:.45rem;display:flex}.group-lesson-member>span{gap:.1rem;min-width:0;display:grid}.group-lesson-member small{color:var(--muted)}.group-lesson-member-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem;display:flex}.group-lesson-actions-disclosure{border-top:1px solid color-mix(in srgb, currentColor 18%, transparent);margin-top:1rem;padding-top:.85rem}.group-lesson-actions-disclosure>summary{cursor:pointer;font-weight:750}.group-lesson-actions-disclosure>.muted{margin:.65rem 0 0;font-size:.9rem}.invite-result{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.6rem;display:grid}.invite-result input{font-size:.78rem}.student-quick-access-panel{grid-template-columns:minmax(12rem,.65fr) minmax(0,1.35fr);align-items:start;gap:1.25rem;scroll-margin-top:6rem;display:grid}.student-quick-access-panel:target{border-color:color-mix(in srgb, var(--primary) 52%, var(--line));box-shadow:0 0 0 4px color-mix(in srgb, var(--primary) 10%, transparent)}.student-quick-access-panel h2{margin-bottom:0}.student-quick-access-controls{gap:.65rem;min-width:0;display:grid}.student-quick-access-controls>p{margin:0}.student-quick-access-actions{flex-wrap:wrap;gap:.55rem;display:flex}.invite-card{width:min(100%,34rem)}.invite-summary{background:var(--accent);border-radius:.8rem;gap:.25rem;margin:1.25rem 0;padding:1rem;display:grid}.invite-summary span{color:var(--muted);font-size:.85rem}.reschedule-request-list{gap:.75rem;display:grid}.reschedule-request-card{justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.reschedule-request-card h3{margin-bottom:.2rem}.reschedule-request-card>div>p:not(.eyebrow){color:var(--muted);margin:0;font-size:.85rem}.reschedule-time-change{align-items:center;gap:.6rem;margin-top:.85rem;font-size:.85rem;display:flex}.reschedule-time-change span:last-child{color:var(--primary);font-weight:750}.reschedule-decision-actions{gap:.5rem;display:flex}.reschedule-decision-actions form{gap:.4rem;display:grid}.family-summary-list{gap:.75rem;display:grid}.family-summary-card{border:1px solid var(--line);background:var(--surface);border-radius:1rem;grid-template-columns:10rem minmax(0,1fr) auto auto;align-items:center;gap:1rem;padding:1rem 1.2rem;display:grid}.family-summary-card time{color:var(--primary);font-size:.88rem;font-weight:800}.family-summary-card h3{margin-bottom:.2rem}.family-summary-card p{color:var(--muted);margin:0;font-size:.82rem}.family-summary-card-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:.55rem;display:flex}.family-task-sections,.family-task-list{gap:.75rem;display:grid}.family-task-card{border:1px solid var(--line);background:var(--surface);border-radius:1rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.8rem 1rem;padding:1rem 1.15rem;display:grid}.family-task-card.attention{border-color:color-mix(in srgb, var(--danger) 52%, var(--line))}.family-task-card.completed{opacity:.82}.family-task-card h3{margin:.12rem 0 .3rem}.family-task-card p:not(.eyebrow){color:var(--muted);margin:0 0 .35rem}.family-task-card small{color:var(--muted)}.family-task-actions{flex-wrap:wrap;grid-column:1/-1;gap:.55rem;display:flex}.family-task-actions form{display:contents}.family-task-history{border-top:1px solid var(--line);padding-top:.85rem}.family-task-history>summary{width:fit-content;color:var(--primary);cursor:pointer;font-weight:850}.family-task-history>.family-task-list{margin-top:.75rem}.family-finance-period-heading{margin-top:.25rem}.family-finance-period-heading .segmented{min-width:min(100%,25rem)}.family-attention-panel{border-color:color-mix(in srgb, var(--primary) 32%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 58%, var(--surface)), var(--surface));gap:1rem;display:grid}.family-attention-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.family-attention-item{border:1px solid var(--line);background:var(--surface);border-radius:.85rem;justify-content:space-between;align-items:center;gap:.8rem;min-width:0;padding:.85rem .95rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.family-attention-item:hover{border-color:color-mix(in srgb, var(--primary) 48%, var(--line));transform:translateY(-1px);box-shadow:0 8px 20px #26493d17}.family-attention-copy{gap:.2rem;min-width:0;display:grid}.family-attention-copy strong{line-height:1.25}.family-attention-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;line-height:1.35;overflow:hidden}.family-attention-action{color:var(--primary);white-space:nowrap;flex:none;font-size:.78rem;font-weight:800}.family-history-statuses{flex-wrap:wrap;justify-content:flex-end;gap:.35rem;display:flex}.lesson-rescheduled{color:var(--primary-dark);border:1px solid color-mix(in srgb, var(--primary) 35%, var(--line));background:var(--accent)}.family-homework-review{border-left:3px solid var(--primary);background:var(--accent);border-radius:.45rem;gap:.2rem;margin:0;padding:.65rem .7rem;display:grid}.family-homework-review p{color:var(--ink);margin:0;font-size:.82rem;line-height:1.4}.section-heading-actions{flex-wrap:wrap;align-items:center;gap:.55rem;margin-left:auto;display:flex}.family-reschedule-disabled{gap:.3rem;display:grid}.family-reschedule-disabled small{max-width:16rem;line-height:1.35}.family-dashboard-grid{grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:.75rem;display:grid}.family-payment-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;display:grid}.family-payment-summary>article{border:1px solid var(--line);background:var(--surface-muted);border-radius:.8rem;gap:.2rem;min-width:0;padding:.8rem .85rem;display:grid}.family-payment-summary>article.attention{border-color:color-mix(in srgb, #d38b1f 46%, var(--line));background:color-mix(in srgb, #f0b44d 12%, var(--surface))}.family-payment-summary small,.family-payment-summary span{overflow-wrap:anywhere;color:var(--muted);font-size:.7rem;line-height:1.35}.family-payment-summary strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:1.1rem}.family-payment-accounting-note{color:var(--muted);margin:.15rem 0 0;font-size:.78rem;line-height:1.45}.family-today-payments{gap:1rem;display:grid}.family-today-payments .section-heading{justify-content:space-between}.family-today-payment-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:.65rem;display:grid}.family-today-payment-grid article{border:1px solid var(--line);background:var(--surface-muted);border-radius:.85rem;align-content:start;gap:.25rem;min-width:0;padding:.9rem 1rem;display:grid}.family-today-payment-grid article.paid{border-color:color-mix(in srgb, var(--primary) 35%, var(--line));background:color-mix(in srgb, var(--accent) 55%, var(--surface))}.family-today-payment-grid article.attention{border-color:color-mix(in srgb, #d38b1f 46%, var(--line));background:color-mix(in srgb, #f0b44d 12%, var(--surface))}.family-today-payment-grid small,.family-today-payment-grid span{color:var(--muted);font-size:.72rem;line-height:1.4}.family-today-payment-grid strong{color:var(--ink);font-size:1.08rem;line-height:1.25}.family-child-page{scroll-behavior:smooth}.family-child-name-editor{max-width:34rem;margin-top:.65rem}.family-child-name-editor>summary{color:var(--primary);cursor:pointer;width:fit-content;font-weight:800;list-style-position:inside}.family-child-name-form{background:var(--surface-muted);border:1px solid var(--line);border-radius:1rem;align-items:start;gap:.75rem;margin-top:.75rem;padding:1rem;display:grid}.family-child-name-form .field{width:min(100%,28rem)}.family-child-section{scroll-margin-top:6rem}.family-child-section-nav{z-index:5;border:1px solid var(--line);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-radius:1rem;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.5rem;padding:.55rem;display:grid;position:sticky;top:4.5rem}.family-child-section-nav a{min-height:2.75rem;color:var(--primary-dark);text-align:center;border-radius:.75rem;justify-content:center;align-items:center;gap:.45rem;padding:.65rem .8rem;font-size:.82rem;font-weight:800;display:flex}.family-child-section-nav a:hover,.family-child-section-nav a:focus-visible{background:var(--accent)}.family-child-section-nav span{min-width:1.45rem;height:1.45rem;color:var(--muted);background:var(--surface-muted);border-radius:999px;place-items:center;padding:0 .35rem;font-size:.7rem;display:inline-grid}.family-child-section-nav a.active span{color:var(--primary-dark);background:#fff}.family-matching-cta{border:2px solid var(--primary);color:#fff;background:linear-gradient(135deg, var(--primary-dark), var(--primary));border-radius:1.35rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1.2rem;min-height:8rem;padding:clamp(1.25rem,4vw,2rem);transition:transform .15s,box-shadow .15s;display:grid;box-shadow:0 18px 45px #156b5238}.family-matching-cta:hover{transform:translateY(-2px);box-shadow:0 22px 52px #156b5247}.family-matching-cta-mark{width:3.5rem;height:3.5rem;color:var(--primary-dark);background:#fff;border-radius:1rem;place-items:center;font-size:2rem;font-weight:500;display:grid}.family-matching-cta strong,.family-matching-cta small{display:block}.family-matching-cta strong{font-size:clamp(1.35rem,3vw,1.8rem)}.family-matching-cta small{color:#ffffffd1;margin-top:.35rem;line-height:1.45}.family-matching-cta-arrow{font-size:2rem}.family-matching-unavailable{border:1px dashed var(--line);background:linear-gradient(135deg, var(--surface-muted), var(--surface));border-radius:1.2rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.25rem;padding:clamp(1.1rem,3vw,1.6rem);display:grid}.family-matching-unavailable .eyebrow{margin-bottom:.2rem}.family-matching-unavailable h2{margin:0;font-size:clamp(1.15rem,2vw,1.45rem)}.family-matching-unavailable p:last-child{max-width:42rem;margin:.35rem 0 0}.matching-request-list,.matching-candidate-list{gap:1rem;display:grid}.matching-collapsible-card{padding:1rem}.matching-collapsible-card>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;list-style-position:inside;display:flex}.matching-card-title{flex-wrap:wrap;align-items:baseline;gap:.35rem .7rem;min-width:0;display:inline-flex}.matching-card-title small,.matching-card-summary-meta>small{color:var(--muted);font-weight:600}.matching-card-summary-meta{text-align:right;justify-content:flex-end;align-items:center;gap:.75rem;min-width:0;display:flex}.matching-collapsible-card[open]>summary{margin-bottom:1rem}.matching-collapsible-card .details-content{border-top:1px solid var(--line);padding-top:1rem}.matching-export-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.matching-export-row p{margin:0}.matching-export-row form{flex:none}.matching-candidate-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.matched-teacher-card{border:2px solid var(--primary);background:linear-gradient(145deg, var(--accent), var(--surface));border-radius:1.2rem;grid-template-columns:auto minmax(0,1fr);gap:1.25rem;padding:1.25rem;display:grid}.matching-availability-editor{gap:.65rem;display:grid}.matching-availability-row{border:1px solid var(--line);background:#f8faf8;border-radius:.85rem;grid-template-columns:minmax(10rem,1.4fr) minmax(6.5rem,.7fr) minmax(6.5rem,.7fr) auto;align-items:end;gap:.65rem;padding:.8rem;display:grid}.matching-availability-row .field{margin:0}.matching-availability-list{gap:.5rem;margin:.35rem 0 0;padding:0;list-style:none;display:grid}.matching-availability-list li{border-left:3px solid var(--primary);background:#f8faf8;gap:.15rem;padding:.65rem .75rem;display:grid}.matching-availability-list span,.matching-availability-list small{color:var(--muted)}.matching-brief{background:#f4f8f5;border-radius:.85rem;gap:.55rem;padding:1rem;display:grid}.matching-brief p{color:var(--muted);white-space:pre-wrap;margin:0;line-height:1.55}.checkbox-grid{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.6rem;display:grid}.teacher-questionnaire-card{border:1px solid var(--line);background:linear-gradient(145deg, #f3f8f5, var(--surface));border-radius:1.2rem;grid-template-columns:auto minmax(0,1fr);gap:1.25rem;padding:clamp(1.1rem,3vw,1.6rem);display:grid}.teacher-questionnaire-card h3{margin-bottom:.25rem;font-size:1.45rem}.teacher-questionnaire-card p{white-space:pre-wrap;margin:0;line-height:1.6}.teacher-questionnaire-avatar{color:#fff;background:var(--primary);border-radius:1.25rem;place-items:center;width:4.5rem;height:4.5rem;font-size:1.8rem;font-weight:850;display:grid}.teacher-questionnaire-photo{border:1px solid var(--line);object-fit:cover;background:var(--surface-muted);border-radius:1.35rem;flex:none;width:7rem;height:7rem}.questionnaire-photo-field{border:1px solid var(--line);background:var(--surface-muted);border-radius:1rem;align-items:center;gap:1rem;padding:1rem;display:flex}.questionnaire-photo-copy{gap:.45rem;min-width:0;display:grid}.questionnaire-photo-copy>small{color:var(--muted);line-height:1.45}.questionnaire-photo-copy .form-message{margin:0}.questionnaire-facts{flex-wrap:wrap;gap:.5rem;display:flex}.questionnaire-facts span{color:var(--primary-dark);background:var(--accent);border-radius:999px;padding:.42rem .65rem;font-size:.8rem;font-weight:700}.audience-price-fieldset{gap:.75rem}.audience-price-list{gap:.55rem;display:grid}.audience-price-row{border:1px solid var(--line);border-radius:.8rem;grid-template-columns:minmax(13rem,1fr) minmax(7rem,.45fr) minmax(7rem,.45fr);align-items:end;gap:.65rem;padding:.7rem;display:grid}.compact-field{color:var(--muted);gap:.25rem;font-size:.75rem;font-weight:700;display:grid}.compact-field input{width:100%}.questionnaire-offers{gap:.45rem;display:grid}.questionnaire-offers>div{background:var(--background);border-radius:.7rem;justify-content:space-between;gap:1rem;padding:.5rem .65rem;display:flex}.multi-select-stack{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.multi-select-stack select{flex:1;min-width:13rem}.selected-option{color:var(--primary-dark);background:var(--accent);border-radius:999px;align-items:center;gap:.45rem;padding:.45rem .65rem;font-size:.85rem;font-weight:750;display:inline-flex}.selected-option button{width:1.4rem;height:1.4rem;color:inherit;cursor:pointer;font:inherit;background:#ffffffa6;border:0;border-radius:50%;padding:0;line-height:1}.subject-chip-picker{gap:.9rem;display:grid}.subject-chip-group{gap:.45rem;display:grid}.subject-chip-group>small{color:var(--muted);font-weight:750}.subject-chip-list,.choice-chip-list{flex-wrap:wrap;gap:.45rem;display:flex}.subject-chip,.choice-chip{border:1px solid var(--line);min-height:2.35rem;color:var(--ink);background:var(--surface);cursor:pointer;font:inherit;border-radius:999px;padding:.48rem .72rem;font-size:.86rem;font-weight:700;transition:border-color .15s,background .15s,transform .15s}.subject-chip:hover,.choice-chip:hover{border-color:var(--primary);transform:translateY(-1px)}.subject-chip.active,.choice-chip.active{border-color:var(--primary);color:var(--primary-dark);background:var(--accent);box-shadow:inset 0 0 0 1px var(--primary)}.selected-subject-summary{background:var(--background);border-radius:.8rem;gap:.2rem;padding:.75rem .9rem;display:grid}.selected-subject-summary span{color:var(--muted);font-size:.85rem;line-height:1.45}.custom-option-fields{gap:.55rem;display:grid}.custom-subject-entry{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.55rem;display:grid}.schedule-slot-editor,.matching-preference-editor{gap:.65rem;margin:.65rem 0;display:grid}.schedule-slot-row,.matching-preference-row{border:1px solid var(--line);background:var(--background);border-radius:.9rem;grid-template-columns:minmax(10rem,1.5fr) minmax(8rem,1fr) auto;align-items:end;gap:.65rem;padding:.7rem;display:grid}.schedule-slot-row{grid-template-columns:minmax(8rem,1.25fr) minmax(6.5rem,.8fr) minmax(8rem,1fr) minmax(7rem,.8fr) minmax(7.5rem,1fr) auto}@media (max-width:1200px){.schedule-slot-row{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-slot-row .button{grid-column:1/-1;width:100%}}.matching-preference-row{grid-template-columns:minmax(10rem,1.5fr) minmax(7rem,1fr) minmax(7rem,1fr) auto}.compact-action{width:fit-content}.matching-goal-fieldset{gap:.65rem;display:grid}.matching-other-goal{margin-top:.25rem}.money-range-fieldset{gap:.5rem;display:grid}.money-range-control{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:.65rem;display:grid}.money-range-control>label{color:var(--muted);gap:.35rem;font-size:.8rem;font-weight:700;display:grid}.money-range-control>span{color:var(--muted);padding-bottom:.8rem}.input-with-suffix{border:1px solid var(--line);background:var(--surface);border-radius:.72rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:2.75rem;display:grid;overflow:hidden}.input-with-suffix:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #14775b1f}.input-with-suffix input{width:100%;min-width:0;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important}.input-with-suffix b{color:var(--muted);padding:0 .8rem;font-size:.9rem}.questionnaire-form-heading{justify-content:space-between;align-items:start;gap:1rem;display:flex}.questionnaire-form-heading h2{margin-bottom:.2rem}.questionnaire-form-section{border:1px solid var(--line);background:var(--surface);border-radius:1rem;overflow:clip}.questionnaire-form-section>summary{cursor:pointer;padding:.9rem 1rem;list-style-position:inside;display:flex}.questionnaire-form-section>summary span{gap:.15rem;margin-left:.35rem;display:inline-grid}.questionnaire-form-section>summary small{color:var(--muted);font-weight:500}.questionnaire-form-section[open]>summary{border-bottom:1px solid var(--line);background:var(--background)}.questionnaire-form-section-body{padding:1rem}.segmented-choice{background:var(--background);border-radius:.8rem;flex-wrap:wrap;gap:.35rem;padding:.25rem;display:flex}.segmented-choice button{min-width:4.5rem;min-height:2.4rem;color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:.62rem;flex:1;padding:.4rem .55rem;font-size:.85rem;font-weight:750}.segmented-choice button.active{color:#fff;background:var(--primary);box-shadow:0 .2rem .6rem #14775b33}.choice-checkbox-grid .consent-field{border:1px solid var(--line);border-radius:999px;padding:.6rem .75rem}.choice-checkbox-grid .consent-field:has(input:checked){border-color:var(--primary);background:var(--accent)}.schedule-section{container-type:inline-size}.student-schedule-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.student-schedule-group{border:1px solid var(--line);background:var(--background);border-radius:1rem;align-content:start;gap:.7rem;min-width:0;padding:.85rem;display:grid}.student-schedule-group-heading{gap:.1rem;display:grid}.student-schedule-group-heading small{color:var(--muted)}.student-schedule-group .schedule-row{background:var(--surface);grid-template-columns:minmax(0,1fr);gap:.25rem;min-width:0}.student-schedule-group .schedule-row>*{overflow-wrap:anywhere;min-width:0}@container (max-width:60rem){.schedule-section .student-schedule-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-section .student-schedule-group:first-child{grid-column:1/-1}}@container (max-width:44rem){.schedule-section .student-schedule-groups{grid-template-columns:minmax(0,1fr)}.schedule-section .student-schedule-group:first-child{grid-column:auto}}@media (max-width:800px){.schedule-section .student-schedule-groups{grid-template-columns:minmax(0,1fr)}.schedule-section .student-schedule-group:first-child{grid-column:auto}}.schedule-edit{border-top:1px solid var(--line);min-width:0;margin-top:.35rem;container-type:inline-size}.schedule-edit>summary{width:fit-content;color:var(--primary);cursor:pointer;padding:.55rem 0 .2rem;font-size:.82rem;font-weight:800}.schedule-edit[open]>summary{margin-bottom:.55rem}.schedule-edit-form{background:var(--background);border-radius:.8rem;gap:.75rem;min-width:0;padding:.75rem;display:grid;overflow:visible}.schedule-edit-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:.75rem;min-width:0;display:grid}.schedule-edit-form .field{min-width:0}.schedule-edit-form :is(input,select){width:100%;min-width:0}.schedule-edit-time-field input{font-variant-numeric:tabular-nums}@container (max-width:35rem){.schedule-edit .schedule-edit-grid{grid-template-columns:minmax(0,2fr) minmax(5.5rem,1fr);grid-template-areas:"valid-from valid-from""time duration""format price""recurrence recurrence""valid-until valid-until""meeting-url meeting-url"}.schedule-edit-valid-from-field{grid-area:valid-from}.schedule-edit-time-field{grid-area:time}.schedule-edit-duration-field{grid-area:duration}.schedule-edit-format-field{grid-area:format}.schedule-edit-price-field{grid-area:price}.schedule-edit-recurrence-field{grid-area:recurrence}.schedule-edit-valid-until-field{grid-area:valid-until}.schedule-edit-meeting-url-field{grid-area:meeting-url}}@container (max-width:26rem){.schedule-edit .schedule-edit-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"valid-from""time""duration""format""price""recurrence""valid-until""meeting-url"}}.schedule-update-confirmation{border:1px solid var(--line);background:var(--surface);border-radius:.75rem;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;padding:.65rem .75rem;display:grid}.schedule-update-confirmation span{overflow-wrap:anywhere;min-width:0}@container (max-width:26rem){.schedule-update-confirmation{grid-template-columns:minmax(0,1fr)}.schedule-update-confirmation input{margin-top:0}}.schedule-edit-form .form-actions{margin-top:0}.schedule-delete{border-top:1px solid var(--line);margin-top:.65rem}.schedule-delete>summary{width:fit-content;color:var(--danger);cursor:pointer;padding:.65rem 0 .25rem;font-size:.8rem;font-weight:800}.schedule-delete-form{border:1px solid color-mix(in srgb, var(--danger) 35%, var(--line));background:var(--surface);border-radius:.8rem;gap:.7rem;padding:.75rem;display:grid}.schedule-delete-form>p{color:var(--muted);margin:0;font-size:.8rem;line-height:1.45}.schedule-delete-confirmation{align-items:flex-start}.schedule-delete-form .button{justify-self:start}.family-homework-card,.family-payment-card,.family-checkout-card{gap:.8rem;display:grid}.family-homework-card>p,.family-payment-card>p,.family-checkout-card>p,.family-homework-card time,.family-payment-card time,.family-checkout-card time{color:var(--muted);margin:0;font-size:.82rem;line-height:1.5}.family-homework-card .status-badge,.family-payment-card .status-badge,.family-checkout-card .status-badge{justify-self:start}.commerce-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.stats-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;display:grid}.stat-card{border:1px solid var(--line);background:var(--surface);border-radius:.9rem;gap:.2rem;padding:1rem;display:grid}.stat-card strong{color:var(--primary);font-size:1.65rem}.stat-card span{color:var(--muted);font-size:.78rem}.stat-card>small{color:var(--muted);margin-top:.25rem;font-size:.72rem}.admin-page-header,.admin-tools-heading,.admin-browser-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.admin-page-header .status-badge{flex:none;margin-top:.2rem}.page-tabs{border:1px solid var(--line);background:var(--surface);border-radius:1rem;gap:.5rem;padding:.45rem;display:grid}.admin-page-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-overview-tabs{grid-template-columns:repeat(7,minmax(0,1fr))}.student-page-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.qualification-page-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.family-page-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}.questionnaire-page-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.finance-page-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.tutor-request-page-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.page-tabs a{min-width:0;min-height:3rem;color:var(--muted);overflow-wrap:anywhere;text-align:center;border-radius:.75rem;justify-content:center;align-items:center;padding:.65rem .85rem;font-size:.85rem;font-weight:800;display:flex}.page-tabs a:hover{color:var(--primary);background:var(--paper)}.page-tabs a.active{color:#fff;background:var(--primary)}.admin-primary-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-activity{overflow:hidden}.admin-activity-charts{grid-template-columns:minmax(20rem,.85fr) minmax(24rem,1.15fr);gap:1.25rem;display:grid}.admin-activity-charts>section{border:1px solid var(--line);background:var(--paper);border-radius:1rem;min-width:0;padding:1rem}.admin-activity-charts h3{margin:0 0 .75rem}.admin-day-bars{gap:.45rem;display:grid}.admin-day-bar{grid-template-columns:6.5rem minmax(4rem,1fr) 2rem 3.5rem;align-items:center;gap:.55rem;min-width:0;font-size:.75rem;display:grid}.admin-day-bar>span{color:var(--muted)}.admin-day-bar>div{background:#e8efeb;border-radius:999px;height:.5rem;overflow:hidden}.admin-day-bar>div>i{border-radius:inherit;background:var(--primary);min-width:0;height:100%;display:block}.admin-day-bar>strong{text-align:right;font-variant-numeric:tabular-nums}.admin-day-bar>small{color:var(--muted);font-size:.65rem}.admin-hour-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:.45rem;margin-top:.75rem;display:grid}.admin-hour-cell{border:1px solid rgb(23 118 91/calc(.12 + var(--activity-intensity) * .5));background:rgb(23 118 91/calc(.03 + var(--activity-intensity) * .17));border-radius:.7rem;gap:.15rem;min-height:4.5rem;padding:.55rem;display:grid}.admin-hour-cell span,.admin-hour-cell small{color:var(--muted);font-size:.65rem}.admin-hour-cell strong{font-variant-numeric:tabular-nums;font-size:1.05rem}.admin-shortcuts{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem;display:grid}.admin-shortcuts a{border:1px solid var(--line);background:var(--surface);border-radius:.9rem;align-content:start;gap:.35rem;min-height:6rem;padding:1rem;transition:border-color .15s,transform .15s;display:grid}.admin-shortcuts a:hover{border-color:var(--primary);transform:translateY(-1px)}.admin-shortcuts strong{color:var(--primary);font-size:.95rem}.admin-shortcuts span{color:var(--muted);font-size:.78rem;line-height:1.45}.admin-attention{overflow:hidden}.admin-attention-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.admin-attention-card{border:1px solid var(--line);background:var(--paper);border-radius:.85rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;min-width:0;padding:.9rem;transition:border-color .15s,transform .15s;display:grid}.admin-attention-card:hover{border-color:var(--primary);transform:translateY(-1px)}.admin-attention-card.severity-critical{border-color:color-mix(in srgb, var(--danger) 55%, var(--line));background:color-mix(in srgb, var(--danger) 5%, var(--paper))}.admin-attention-card.severity-high{border-color:color-mix(in srgb, var(--warning) 45%, var(--line))}.admin-attention-count{min-width:2.25rem;height:2.25rem;color:var(--primary-dark);background:var(--accent);font-variant-numeric:tabular-nums;border-radius:.7rem;place-items:center;padding-inline:.45rem;font-weight:900;display:grid}.admin-attention-card.severity-critical .admin-attention-count{color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, var(--paper))}.admin-attention-card.severity-high .admin-attention-count{color:var(--warning-ink);background:color-mix(in srgb, var(--warning) 16%, var(--paper))}.admin-attention-card>span:nth-child(2){gap:.2rem;min-width:0;display:grid}.admin-attention-severity{width:fit-content;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-weight:900;font-size:.62rem!important}.admin-attention-card.severity-critical .admin-attention-severity{color:var(--danger)}.admin-attention-card.severity-high .admin-attention-severity{color:var(--warning-ink)}.admin-attention-card strong{color:var(--ink);font-size:.9rem}.admin-attention-card small{color:var(--muted);font-size:.72rem;line-height:1.4}.admin-attention-arrow{color:var(--primary);font-size:1.2rem}.admin-attention-empty{text-align:center;place-content:center;gap:.35rem;min-height:8rem;display:grid}.admin-attention-empty strong{color:var(--primary-dark);font-size:1.05rem}.admin-attention-empty p{margin:0}.admin-health-strip{border-top:1px solid var(--line);flex-wrap:wrap;gap:.5rem;padding-top:.9rem;display:flex}.admin-health-strip span{color:var(--muted);background:var(--paper);border-radius:999px;padding:.45rem .65rem;font-size:.72rem}.admin-health-strip strong{color:var(--ink);font-variant-numeric:tabular-nums}.admin-delivery-summary td:not(:first-child),.admin-delivery-summary th:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.admin-privacy-completion{min-width:17rem}.admin-privacy-completion>summary{cursor:pointer;width:fit-content;color:var(--primary);font-size:.82rem;font-weight:800}.admin-privacy-completion[open]{border:1px solid var(--line);background:var(--paper);border-radius:.8rem;padding:.75rem}.admin-privacy-completion[open]>summary{margin-bottom:.75rem}.admin-privacy-completion .checkbox-field{align-items:flex-start;font-size:.72rem;line-height:1.4}.admin-user-overview-actions{flex-wrap:wrap;align-items:flex-start;gap:.6rem;display:flex}.admin-user-overview-actions .admin-access-details{min-width:11rem}.admin-user-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.admin-definition-list{gap:0;margin:0;display:grid}.admin-definition-list>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(8rem,.8fr) minmax(0,1.2fr);gap:.75rem;padding:.65rem 0;display:grid}.admin-definition-list>div:last-child{border-bottom:0}.admin-definition-list dt{color:var(--muted);font-size:.76rem}.admin-definition-list dd{overflow-wrap:anywhere;min-width:0;margin:0;font-size:.8rem;font-weight:750}.admin-channel-list{gap:.55rem;display:grid}.admin-channel-list>div{border:1px solid var(--line);background:var(--paper);border-radius:.75rem;grid-template-columns:minmax(6rem,auto) auto minmax(0,1fr);align-items:center;gap:.65rem;padding:.7rem;display:grid}.admin-channel-list span,.admin-channel-list small{color:var(--muted);font-size:.72rem}.team-workspace-shortcuts{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.7rem;display:grid}.team-workspace-shortcuts a{border:1px solid var(--line);background:var(--paper);border-radius:.85rem;gap:.25rem;min-width:0;padding:.9rem 1rem;transition:border-color .15s,transform .15s;display:grid}.team-workspace-shortcuts a:hover{border-color:var(--primary);transform:translateY(-1px)}.team-workspace-shortcuts strong{color:var(--primary-dark);font-size:.9rem}.team-workspace-shortcuts span{color:var(--muted);font-size:.74rem;line-height:1.4}.team-operations-stats{grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr))}.admin-browser{gap:1.25rem;display:grid}.admin-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-resource-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.admin-resource-group{min-width:0}.admin-resource-group>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .45rem .2rem;font-size:.68rem;font-weight:800;display:block}.admin-resource-group>div{gap:.4rem;display:grid}.admin-resource-group a{border:1px solid var(--line);background:var(--paper);border-radius:.75rem;justify-content:space-between;align-items:center;gap:.65rem;min-width:0;padding:.75rem;display:flex}.admin-resource-group a:hover{border-color:var(--primary)}.admin-resource-group a.active{border-color:var(--primary);background:var(--accent)}.admin-resource-group a>span:first-child{gap:.12rem;min-width:0;display:grid}.admin-resource-group a strong{font-size:.86rem}.admin-resource-group a small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;line-height:1.35;overflow:hidden}.admin-result-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.admin-result-heading h2,.admin-result-heading p{margin:0}.admin-result-heading p{margin-top:.25rem}.admin-browser .segmented{max-width:100%;overflow-x:auto}.admin-search{grid-template-columns:minmax(14rem,1fr) repeat(3,minmax(9rem,auto)) auto;align-items:end;gap:.75rem;display:grid}.admin-role-list,.admin-subject-list{flex-wrap:wrap;gap:.35rem;display:flex}.admin-identity{align-items:center;gap:.45rem;display:flex}.admin-identity>strong{min-width:0}.admin-subject-list>span{color:var(--primary-dark);background:var(--accent);border-radius:999px;padding:.3rem .5rem;font-size:.72rem;font-weight:700}.status-blocked{color:var(--danger)}.admin-user-matching-metrics{min-width:10rem;color:var(--muted);grid-template-columns:repeat(2,max-content);gap:.25rem .65rem;font-size:.75rem;display:grid}.admin-user-matching-metrics strong{color:var(--ink);font-variant-numeric:tabular-nums}.admin-user-matching-metrics .status-review-required{color:#8a2f2f;background:#fff0f0;grid-column:1/-1;width:max-content}.admin-user-activity-metrics{min-width:9rem;color:var(--muted);gap:.25rem;font-size:.75rem;display:grid}.admin-user-activity-metrics strong{color:var(--ink);font-variant-numeric:tabular-nums}.admin-user-review-row{background:snow}.admin-access-details{min-width:14rem}.admin-access-details summary{cursor:pointer;color:var(--danger);font-size:.82rem;font-weight:750}.admin-access-details[open]{background:snow;border:1px solid #eccccc;border-radius:.8rem;padding:.75rem}.admin-access-details[open] summary{margin-bottom:.75rem}.admin-access-form{gap:.75rem;min-width:14rem;display:grid}.admin-access-form .button{width:100%}.admin-access-form .form-message{max-width:20rem}.admin-methodist-details{min-width:13rem}.admin-methodist-details>summary{cursor:pointer;color:var(--primary);font-size:.82rem;font-weight:750}.admin-methodist-details[open]{border:1px solid var(--line);background:var(--paper);border-radius:.8rem;padding:.75rem}.admin-methodist-details[open]>summary{margin-bottom:.8rem}.admin-methodist-subjects{grid-template-columns:repeat(2,minmax(8.5rem,1fr));gap:.35rem .75rem;display:grid}.admin-tools{gap:.8rem}.admin-tools-heading{margin-bottom:.35rem}.admin-tools-heading h2,.admin-tools-heading p{margin:0}.admin-tools-heading .muted{text-align:right;max-width:30rem}.admin-disclosure{padding-block:1.1rem}.admin-disclosure>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;list-style:none;display:flex}.admin-disclosure>summary::-webkit-details-marker{display:none}.admin-disclosure>summary:after{content:"+";color:var(--primary);flex:none;font-size:1.5rem;font-weight:500}.admin-disclosure[open]>summary:after{content:"−"}.admin-disclosure-copy{gap:.18rem;min-width:0;display:grid}.admin-disclosure-copy>strong{color:var(--ink);font-size:1.15rem}.admin-disclosure-copy>.muted{font-size:.8rem;line-height:1.45}.admin-disclosure>summary>.count-badge{flex:none;margin-left:auto}.admin-disclosure-body{border-top:1px solid var(--line);gap:1.25rem;margin-top:1.1rem;padding-top:1.1rem}.feature-flag-groups{gap:1.25rem;display:grid}.feature-flag-group{gap:.65rem;display:grid}.feature-flag-group>h3{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.75rem}.feature-flag-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.feature-flag-card{align-content:start;gap:1rem;min-width:0}.feature-flag-card>summary{cursor:pointer;list-style-position:inside}.feature-flag-card>summary>span{vertical-align:top;gap:.2rem;margin-left:.25rem;display:inline-grid}.feature-flag-card>summary strong{overflow-wrap:anywhere;color:var(--ink);font-size:.9rem}.feature-flag-card>summary small{max-width:42rem;color:var(--muted);font-size:.72rem;line-height:1.4}.feature-flag-state{flex-wrap:wrap;gap:.35rem;margin-top:.25rem;display:flex}.feature-flag-state b,.feature-flag-state i{background:var(--background);color:var(--muted);border-radius:999px;padding:.2rem .4rem;font-size:.64rem;font-style:normal;font-weight:750}.feature-flag-state b{color:var(--primary-dark);background:var(--accent)}.feature-flag-key{overflow-wrap:anywhere;color:var(--muted);font-size:.68rem;display:block}.feature-flag-card[open]>summary{border-bottom:1px solid var(--line);padding-bottom:.8rem}.feature-flag-form{min-width:0}.admin-user-access-cell{gap:.55rem;min-width:10rem;display:grid}.admin-user-access-cell>.button{width:100%}.pilot-access-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.pilot-access-card{align-content:start;gap:.8rem}.pilot-access-card h2,.pilot-access-card p{margin:0}.pilot-access-card h2{font-size:1rem}.pilot-grant-form{gap:.55rem;margin-top:auto;display:grid}.pilot-grant-form>small{color:var(--muted);font-size:.72rem}@media (max-width:760px){.admin-page-header,.admin-tools-heading,.admin-browser-heading{flex-direction:column;align-items:stretch}.admin-page-header .status-badge{width:fit-content}.admin-page-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-page-tabs a:last-child{grid-column:1/-1}.admin-overview-tabs{scroll-snap-type:x proximity;display:flex;overflow-x:auto}.admin-overview-tabs a{scroll-snap-align:start;flex:none;min-width:7.5rem}.student-page-tabs,.family-page-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.family-page-tabs a:last-child{grid-column:1/-1}.questionnaire-page-tabs,.admin-primary-stats,.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-primary-stats .stat-card:last-child{grid-column:1/-1}.admin-activity-charts{grid-template-columns:1fr}.admin-hour-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-day-bar{grid-template-columns:5.8rem minmax(3rem,1fr) 1.6rem}.admin-day-bar>small{display:none}.admin-shortcuts,.admin-resource-nav,.admin-attention-grid,.admin-user-overview-grid{grid-template-columns:1fr}.admin-user-overview-actions{flex-direction:column;align-items:stretch}.admin-user-overview-actions>*,.admin-user-overview-actions .button{width:100%}.admin-definition-list>div,.admin-channel-list>div{grid-template-columns:1fr;gap:.2rem}.admin-tools-heading .muted{text-align:left}.admin-disclosure>summary{flex-wrap:wrap;align-items:flex-start}.admin-disclosure>summary>.count-badge{margin-left:0}.admin-methodist-subjects,.feature-flag-grid,.pilot-access-grid{grid-template-columns:1fr}.compact-empty-action{flex-direction:column;align-items:stretch}.compact-empty-action .button{width:100%}.matching-candidate-list{grid-template-columns:1fr}.matching-availability-row{grid-template-columns:1fr 1fr}.teacher-questionnaire-card{grid-template-columns:1fr}.audience-price-row{grid-template-columns:1fr 1fr}.audience-price-row .consent-field{grid-column:1/-1}}.qualification-list{gap:1rem;display:grid}.verification-check-list{gap:.75rem;display:grid}.verification-check-row{border:1px solid var(--line);border-radius:16px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;display:flex}.verification-check-row p{margin:.3rem 0 0}.verification-check-row.admin{align-items:center}.verification-check-disclosure{border:1px solid var(--line);border-radius:16px;overflow:hidden}.verification-check-disclosure>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;list-style:none;display:flex}.verification-check-disclosure>summary::-webkit-details-marker{display:none}.verification-check-disclosure>summary:after{color:var(--primary);content:"+";flex:none;order:3;font-size:1.25rem}.verification-check-disclosure[open]>summary:after{content:"−"}.verification-check-disclosure>summary>span:first-child{gap:.2rem;min-width:0;display:grid}.verification-check-disclosure>summary small{color:var(--muted);font-size:.75rem}.verification-check-disclosure>summary .status-badge{flex:none;margin-left:auto}.verification-check-body{border-top:1px solid var(--line);padding:1rem}.verification-check-body>strong{display:none}.verification-check-body>p:first-of-type{margin-top:0}.verification-check-actions{align-items:flex-end;gap:.5rem;min-width:12rem;display:grid}.verification-editor summary{color:var(--accent);cursor:pointer;font-weight:700}.verification-editor[open]{min-width:min(28rem,100%)}.verification-editor form{margin-top:.75rem}.verification-evidence{gap:.65rem;margin-top:.75rem;display:grid}.compact-list{gap:.35rem;margin:0;padding-left:1.1rem;display:grid}.text-button{color:var(--primary);cursor:pointer;font:inherit;text-align:left;text-underline-offset:.18em;background:0 0;border:0;padding:0;text-decoration:underline}.text-button.danger{color:var(--danger)}.verification-evidence-item{flex-wrap:wrap;align-items:baseline;gap:.4rem 1rem;display:flex}.file-button{cursor:pointer;position:relative;overflow:hidden}.file-button input[type=file]{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}@media (max-width:720px){.verification-check-row,.verification-check-row.admin{flex-direction:column;align-items:stretch}.verification-check-actions{align-items:stretch;min-width:0}.verification-check-disclosure>summary{flex-wrap:wrap;align-items:flex-start}.verification-check-disclosure>summary .status-badge{margin-left:0}}.qualification-card{gap:1rem}.qualification-card>div{gap:.25rem;display:grid}.qualification-card>div>strong{font-size:1.05rem}.admin-correction-details{min-width:19rem}.admin-correction-time{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}.notification-inbox-sections{gap:.9rem;display:grid}.notification-unread-groups{gap:1rem;display:grid}.notification-group{gap:.65rem;display:grid}.notification-group-heading{justify-content:space-between;align-items:center;gap:1rem;padding:0 .15rem;display:flex}.notification-group-heading>div{gap:.1rem;display:grid}.notification-group-heading h2{margin:0;font-size:1rem}.notification-group-heading p{color:var(--muted);margin:0;font-size:.78rem}.notification-action-group{background:#fffbef;border:1px solid #ead9ad;border-radius:1rem;padding:.85rem}.notification-list{gap:.8rem;display:grid}.notification-read-disclosure{border:1px solid var(--line);background:#f8faf8;border-radius:1rem;overflow:hidden}.notification-read-disclosure>summary{cursor:pointer;align-items:center;gap:1rem;padding:.9rem 1.1rem;list-style:none;display:flex}.notification-read-disclosure>summary::-webkit-details-marker{display:none}.notification-read-disclosure>summary:after{content:"+";color:var(--primary);font-size:1.2rem}.notification-read-disclosure[open]>summary:after{content:"−"}.notification-read-disclosure>summary>span:first-child{gap:.15rem;min-width:0;display:grid}.notification-read-disclosure>summary small{color:var(--muted);font-size:.74rem}.notification-read-disclosure>summary .count-badge{flex:none;margin-left:auto}.notification-read-disclosure>.notification-list{border-top:1px solid var(--line);padding:0 .85rem .85rem}.notification-read-disclosure>.notification-list .notification-card:first-child{margin-top:.85rem}.notification-settings-disclosure{padding:0;overflow:hidden}.notification-settings-disclosure>summary{cursor:pointer;align-items:center;gap:1rem;padding:1rem 1.25rem;list-style:none;display:flex}.notification-settings-disclosure>summary::-webkit-details-marker{display:none}.notification-settings-disclosure>summary:after{content:"+";color:var(--primary);font-size:1.25rem}.notification-settings-disclosure[open]>summary:after{content:"−"}.notification-settings-disclosure>summary>span:first-child{gap:.2rem;min-width:0;display:grid}.notification-settings-disclosure>summary small{color:var(--muted);font-size:.75rem}.notification-settings-disclosure>summary .status-badge{flex:none;margin-left:auto}.notification-settings-body{border-top:1px solid var(--line);padding:1rem 1.25rem 1.25rem}.notification-settings-body>.muted{margin-top:0}.notification-channel-list{gap:.75rem;display:grid}.notification-messenger-reminders{gap:.7rem;padding-top:.2rem;display:grid}.notification-messenger-reminders>div:first-child{gap:.18rem;display:grid}.notification-messenger-reminders h3{margin:0;font-size:1rem}.notification-messenger-reminders .form-note{margin:0;font-size:.82rem;line-height:1.4}.notification-channel-disclosure{border:1px solid var(--line);background:#f8faf8;border-radius:.9rem}.notification-channel-disclosure>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;list-style:none;display:flex}.notification-channel-disclosure>summary::-webkit-details-marker{display:none}.notification-channel-disclosure>summary:after{content:"+";color:var(--primary);font-size:1.25rem}.notification-channel-disclosure[open]>summary:after{content:"−"}.notification-channel-disclosure>summary>span:first-child{gap:.2rem;min-width:0;display:grid}.notification-channel-disclosure>summary small{color:var(--muted);font-size:.75rem}.notification-channel-disclosure>summary .status-badge{flex:none;margin-left:auto}.notification-preferences-form{border-top:1px solid var(--line);gap:1rem;margin:0;padding:0 1rem 1rem;display:grid}.calendar-subscription-controls{border:1px solid var(--line);background:#f8faf8;border-radius:.9rem;overflow:hidden}.calendar-subscription-controls>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;list-style:none;display:flex}.calendar-subscription-controls>summary::-webkit-details-marker{display:none}.calendar-subscription-controls>summary:after{content:"+";color:var(--primary);font-size:1.25rem}.calendar-subscription-controls[open]>summary:after{content:"−"}.calendar-subscription-controls>summary>span:first-child{gap:.2rem;min-width:0;display:grid}.calendar-subscription-controls>summary small{color:var(--muted);font-size:.75rem;line-height:1.35}.calendar-subscription-controls>summary .status-badge{flex:none;margin-left:auto}.calendar-subscription-controls>.stack{border-top:1px solid var(--line);gap:.8rem;padding:.9rem 1rem 1rem}.calendar-subscription-controls .compact-form{margin:0}.calendar-subscription-controls .form-note{margin:0;font-size:.82rem}.calendar-subscription-controls .field input{letter-spacing:-.01em;font-size:.78rem}.page-heading-actions>.calendar-subscription-controls{flex:100%}.notification-preferences-form>.master-toggle{margin-top:1rem}.classroom-entry{justify-items:stretch;gap:.45rem;display:grid}.classroom-entry .form-message{max-width:18rem;margin:0;font-size:.78rem}.classroom-ended-notice{background:color-mix(in srgb, var(--accent) 9%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 38%, var(--line));border-radius:.8rem;justify-content:space-between;align-items:center;gap:.75rem;min-width:min(32rem,100%);padding:.7rem .75rem;display:flex}.classroom-ended-notice>div:first-child{gap:.15rem;display:grid}.classroom-ended-notice span{color:var(--muted);font-size:.8rem;line-height:1.35}.classroom-ended-actions{flex:none;gap:.4rem;display:flex}.status-badge.classroom-ended-badge{background:color-mix(in srgb, var(--success) 13%, var(--surface));color:var(--success);justify-self:start}@media (max-width:640px){.classroom-ended-notice{flex-direction:column;align-items:stretch;min-width:0}.classroom-ended-actions .button{flex:auto}}.notification-preferences-form fieldset{border:0;min-width:0;margin:0;padding:0}.notification-preferences-form legend{margin-bottom:.4rem;font-size:.85rem;font-weight:800}.notification-preferences-form fieldset:disabled .notification-type-grid{opacity:.55}.notification-preferences-form fieldset:disabled .notification-toggle{cursor:not-allowed}.notification-category-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.notification-category-actions{gap:.45rem;display:flex}.notification-category-actions .button{min-height:2.15rem;padding:.4rem .65rem;font-size:.72rem}.notification-selection-status{color:var(--muted);margin:0;font-size:.74rem}.notification-category-heading+.notification-type-grid{margin-top:.7rem}.notification-type-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.notification-toggle{border:1px solid var(--line);cursor:pointer;background:#f7f9f6;border-radius:.8rem;align-items:flex-start;gap:.7rem;padding:.85rem;display:flex}.notification-toggle input{width:1.1rem;height:1.1rem;accent-color:var(--primary);flex:none;margin-top:.12rem}.notification-toggle span{gap:.2rem;display:grid}.notification-toggle strong{font-size:.86rem}.notification-toggle small{color:var(--muted);font-size:.76rem;line-height:1.4}.master-toggle{background:var(--accent);border-color:#b9d8ca}.notification-preferences-actions{justify-content:space-between;align-items:center;gap:1rem;display:flex}.notification-preferences-actions .form-message{margin-right:auto}.messenger-connection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:1rem;display:grid}.messenger-connection-card{border:1px solid var(--line);background:var(--surface-muted);border-radius:.9rem;flex-wrap:wrap;align-items:center;gap:.75rem;padding:1rem;display:flex}.messenger-connection-card>div{flex:1;gap:.2rem;min-width:12rem;display:grid}.messenger-connection-card small{color:var(--muted)}.messenger-connection-card .form-message{width:100%;margin:0}.messenger-reminder-enable-form{gap:.65rem;width:100%;display:grid}.messenger-reminder-enable-form .button{justify-self:start}.legal-checkbox-row{width:100%;color:var(--muted);align-items:flex-start;gap:.65rem;font-size:.9rem;line-height:1.35;display:flex}.legal-checkbox-row input{width:1.1rem;height:1.1rem;accent-color:var(--primary);flex:none;margin-top:.08rem}.legal-checkbox-row a{color:var(--primary-dark);font-weight:700}.family-checkout-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.family-checkout-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1rem;margin:0;display:grid}.family-checkout-summary div{min-width:0}.family-checkout-summary dt{color:var(--muted);margin-bottom:.15rem;font-size:.78rem;font-weight:700}.family-checkout-summary dd{overflow-wrap:anywhere;margin:0;font-weight:750}.family-checkout-policy{border:1px solid var(--line);background:var(--surface-muted);border-radius:.8rem;padding:.85rem}.family-checkout-policy p{color:var(--muted);margin:.35rem 0 0;font-size:.88rem;line-height:1.45}.messenger-connection-confirmation{gap:.75rem;width:100%;padding-top:.2rem;display:grid}.messenger-connection-confirmation ol{color:var(--muted);gap:.35rem;margin:0;padding-left:1.25rem;font-size:.86rem;line-height:1.45;display:grid}.messenger-connection-confirmation-actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.web-push-card{margin-top:0}.conversation-list{gap:.8rem;display:grid}.support-guides{gap:.9rem;display:grid}.support-guides h2,.support-contact h2{margin-bottom:0}.support-guide-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.75rem;display:grid}.support-guide{border:1px solid var(--line);background:var(--surface);border-radius:1rem;overflow:hidden}.support-guide summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;min-height:6.4rem;padding:1rem;list-style:none;display:grid}.support-guide summary::-webkit-details-marker{display:none}.support-guide summary strong,.support-guide summary small{display:block}.support-guide summary small{color:var(--muted);margin-top:.35rem;font-size:.8rem;font-weight:500;line-height:1.45}.support-guide-chevron{color:var(--primary);font-weight:900;transition:transform .15s}.support-guide[open] .support-guide-chevron{transform:rotate(180deg)}.support-guide[open] summary{border-bottom:1px solid var(--line);background:#f7faf8}.support-guide-body{gap:1rem;padding:1rem;display:grid}.support-guide-body ol{color:var(--muted);gap:.55rem;margin:0;padding-left:1.25rem;font-size:.86rem;line-height:1.5;display:grid}.support-guide-body .button{justify-self:start}.support-contact{border-top:1px solid var(--line);gap:1rem;padding-top:1.25rem;display:grid}.conversation-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.conversation-card.unread{border-left:5px solid var(--primary);background:#fbfdfb}.conversation-card>div{min-width:0}.conversation-card h3,.conversation-card p{margin:.2rem 0}.conversation-card>div>p:not(.eyebrow){color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.conversation-card time{color:var(--muted);font-size:.75rem}.conversation-card-actions{flex:none;align-items:center;gap:.75rem;display:flex}.conversation-unread-badge{color:#fff;background:var(--primary);white-space:nowrap;border-radius:999px;padding:.3rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.conversation-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.conversation-live-status{color:var(--muted);margin:-.35rem 0;font-size:.75rem}.conversation-thread{border:1px solid var(--line);background:#f3f6f3;border-radius:1rem;flex-direction:column;gap:.65rem;min-height:18rem;padding:1rem;display:flex}.message-bubble{border:1px solid var(--line);background:var(--surface);border-radius:.9rem .9rem .9rem .2rem;align-self:flex-start;gap:.4rem;max-width:78%;padding:.75rem .9rem;scroll-margin-top:6rem;display:grid}.message-bubble:target{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 22%, transparent)}.message-bubble.own{background:var(--accent);border-color:#b9d8ca;border-radius:.9rem .9rem .2rem;align-self:flex-end}.message-bubble>div{align-items:center;gap:.5rem;display:flex}.message-bubble>div span,.message-bubble time{color:var(--muted);font-size:.7rem}.message-bubble p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.schedule-offer-card{border:1px solid color-mix(in srgb, var(--primary) 32%, var(--line));width:min(34rem,100%);color:var(--ink);background:var(--surface);border-radius:.85rem;gap:.85rem;margin-top:.35rem;padding:.9rem;display:grid}.schedule-offer-card>header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.schedule-offer-card>header>div{gap:.15rem;min-width:0;display:grid}.schedule-offer-card>header strong{font-size:.92rem}.schedule-offer-card>header small{color:var(--muted);font-weight:700}.schedule-offer-card form{gap:.75rem;display:grid}.schedule-offer-card fieldset{border:0;gap:.55rem;min-width:0;margin:0;padding:0;display:grid}.schedule-offer-card legend{margin-bottom:.55rem;font-size:.76rem;font-weight:800}.schedule-offer-options,.schedule-offer-summary{gap:.45rem;display:grid}.schedule-offer-options label,.schedule-offer-summary>div{border:1px solid var(--line);background:var(--background);border-radius:.65rem;align-items:center;gap:.65rem;min-width:0;padding:.62rem .7rem;display:flex}.schedule-offer-options label{cursor:pointer}.schedule-offer-options label.is-unavailable{cursor:not-allowed;background:var(--surface-muted)}.schedule-offer-options label.is-unavailable small{color:var(--muted);font-weight:700}.schedule-offer-summary>div.is-selected{border-color:var(--primary);background:color-mix(in srgb, var(--accent) 78%, var(--surface))}.schedule-offer-options label:has(input:checked){border-color:var(--primary);background:color-mix(in srgb, var(--accent) 78%, var(--surface))}.schedule-offer-options input{width:1.15rem;height:1.15rem;accent-color:var(--primary);flex:none}.schedule-offer-options span,.schedule-offer-summary span{gap:.08rem;min-width:0;display:grid}.schedule-offer-options small,.schedule-offer-summary small{color:var(--muted)}.schedule-offer-confirm-all{width:fit-content;margin-bottom:.15rem}.schedule-offer-summary>div>b{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:.72rem}.schedule-offer-summary .button{white-space:nowrap;min-height:2.2rem;margin-left:auto;padding:.38rem .58rem;font-size:.72rem}.schedule-offer-card>.schedule-offer-summary>p{color:var(--muted)}.schedule-offer-prefill{border:1px solid color-mix(in srgb, var(--primary) 42%, var(--line));background:color-mix(in srgb, var(--accent) 72%, var(--surface));border-radius:.8rem;gap:.22rem;padding:.8rem .9rem;display:grid}.schedule-offer-prefill span{color:var(--muted);font-size:.78rem}.message-composer{border:1px solid var(--line);background:var(--surface);border-radius:1rem;gap:.75rem;padding:1rem;display:grid}.message-composer-actions{justify-content:space-between;align-items:center;gap:1rem;display:flex}.message-composer-actions small{color:var(--muted)}.message-attachment-input{gap:.55rem;display:grid}.message-attachment-input>small{color:var(--muted)}.message-attachment-button{justify-self:start;min-height:2.75rem}.message-attachment-pending,.message-attachment-card{border:1px solid var(--line);background:var(--surface-subtle);border-radius:.75rem;align-items:center;gap:.65rem;min-width:0;padding:.65rem .75rem;display:flex}.message-attachment-pending>span:nth-child(3),.message-attachment-card>div{overflow-wrap:anywhere;flex:1;min-width:0}.message-attachment-card>div{gap:.1rem;display:grid}.message-attachment-card small{color:var(--muted)}.message-attachment-list{align-items:stretch!important;gap:.45rem!important;display:grid!important}.message-attachment-card .field-error{width:100%}.message-context-card{border:1px solid color-mix(in srgb, var(--primary) 36%, var(--line));width:min(30rem,100%);color:var(--ink);background:var(--surface);border-radius:.8rem;margin-top:.2rem;padding:.8rem;align-items:start!important;gap:.45rem!important;display:grid!important}.message-context-card>span{color:var(--muted);font-size:.78rem}.message-context-card .button{width:fit-content;margin-top:.2rem}.notification-card{border:1px solid var(--line);background:var(--surface);border-radius:1rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.25rem;display:grid}.notification-card.unread{border-left:5px solid var(--primary);box-shadow:0 8px 24px #26493d0f}.notification-card.read{opacity:.76}.notification-card h2{margin:.65rem 0 .3rem;font-size:1.05rem}.notification-card p{color:var(--muted);margin:0}.notification-meta{color:var(--muted);align-items:center;gap:.65rem;font-size:.78rem;display:flex}.table-scroll{max-width:100%;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:44rem;font-size:.85rem}.data-table th,.data-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.8rem}.data-table th{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem}.data-table td strong,.data-table td small{display:block}.data-table td small{max-width:18rem;color:var(--muted);text-overflow:ellipsis;margin-top:.2rem;font-size:.7rem;overflow:hidden}.data-table code{font-size:.72rem}@media (max-width:800px){.closure-page-intro{grid-template-columns:1fr}.teacher-landing-nav{align-items:center;min-height:4.5rem;padding:.65rem 0;position:relative}.teacher-landing-nav-desktop{display:none}.teacher-landing-nav-menu{display:block}.teacher-landing-nav-menu>summary{border:1px solid var(--line);min-height:2.7rem;color:var(--ink);background:var(--surface);cursor:pointer;border-radius:.8rem;align-items:center;gap:.45rem;padding:.5rem .75rem;font-size:.82rem;font-weight:800;list-style:none;display:inline-flex}.teacher-landing-nav-menu>summary::-webkit-details-marker{display:none}.teacher-landing-nav-menu>summary:before{content:"☰";color:var(--primary);font-size:1rem;line-height:1}.teacher-landing-nav-menu[open]>summary:before{content:"×"}.teacher-landing-nav-menu-panel{z-index:30;border:1px solid var(--line);background:var(--surface);border-radius:1rem;grid-template-columns:1fr;align-items:stretch;gap:.45rem;width:min(20rem,100vw - 2rem);padding:.7rem;display:none;position:absolute;top:calc(100% - .2rem);right:0;box-shadow:0 16px 36px #1a332b2e}.teacher-landing-nav-menu[open]>.teacher-landing-nav-menu-panel{display:grid}.teacher-landing-nav-menu-panel .button{justify-content:center;width:100%;min-height:2.7rem;padding:.55rem .75rem;font-size:.88rem}.teacher-landing-hero,.teacher-landing-steps,.teacher-landing-transparent,.public-home-problem,.public-workflow,.lesson-flow-section,.teacher-switch-section,.family-privacy-section{grid-template-columns:1fr}.teacher-landing-hero{gap:2.5rem;padding:3.5rem 0}.teacher-landing-hero h1{max-width:none}.teacher-landing-actions{flex-direction:column;align-items:stretch;width:min(100%,28rem)}.teacher-landing-actions .button{justify-content:center;width:100%;min-height:3.25rem}.teacher-landing-preview{transform:none}.teacher-capability-grid,.teacher-detail-link-grid,.lesson-flow-demo ol,.family-privacy-grid,.marketing-showcase-grid{grid-template-columns:1fr}.marketing-home-flow .marketing-home-slides{min-height:0}.marketing-home-app-shell{grid-template-columns:6.5rem minmax(0,1fr)}.marketing-home-app-nav{padding-inline:.6rem}.marketing-family-heading{grid-template-columns:2.5rem minmax(0,1fr)}.marketing-family-heading>span{grid-column:1/-1;width:fit-content}.marketing-family-avatar{width:2.5rem;height:2.5rem}.marketing-lesson-chip span{display:none}.teacher-landing-cta{flex-direction:column;align-items:stretch}.teacher-landing-cta .button{width:100%}.topbar{height:3.75rem;padding:0 .75rem}.user-menu>span,.user-menu>form{display:none}.user-menu{gap:.45rem}.topbar:has(.dashboard-role-switcher) .brand-wordmark{display:none}.dashboard-role-switcher a{min-height:2rem;padding-inline:.5rem;font-size:.68rem}.role-switcher-long{display:none}.role-switcher-short{display:inline}.theme-toggle{width:3rem;height:1.75rem}.theme-toggle-thumb{width:1.25rem;height:1.25rem}.theme-toggle[aria-pressed=true] .theme-toggle-thumb{transform:translate(1.35rem)}.workspace{min-height:0;display:block}.sidebar{display:none}.mobile-navigation{z-index:15;border-bottom:1px solid var(--line);background:#fffffff5;display:block;position:sticky;top:3.75rem;box-shadow:0 8px 18px #1a332b14}.mobile-navigation summary{cursor:pointer;min-height:3rem;color:var(--primary-dark);justify-content:space-between;align-items:center;gap:1rem;padding:.55rem .75rem;font-size:.8rem;list-style:none;display:flex}.mobile-navigation summary::-webkit-details-marker{display:none}.mobile-navigation summary span:before{content:"☰";margin-right:.55rem;font-size:1.1rem}.mobile-navigation[open] summary span:before{content:"×"}.mobile-navigation-panel{overscroll-behavior:contain;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-height:calc(100dvh - 6.75rem);padding:.25rem .75rem .75rem;display:grid;overflow-y:auto}.mobile-navigation-account{border-top:1px solid var(--line);grid-column:1/-1;padding-top:.75rem}.mobile-navigation-account .button{width:100%}.mobile-navigation .nav-role-group{grid-column:1/-1}.mobile-navigation .nav-role-group+.nav-role-group{margin-top:0}.mobile-navigation .nav-role-group-sections{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.mobile-navigation .nav-role-group-title{grid-column:1/-1;margin-left:.25rem}.mobile-navigation .nav-section+.nav-section{border:0;margin:0;padding:0}.mobile-navigation .nav-section-title{margin-left:.25rem}.mobile-navigation .nav-link{min-height:2.65rem;padding:.65rem .75rem}.lesson-card{grid-template-columns:3.5rem minmax(0,1fr)}.student-history-card{grid-template-columns:minmax(7.5rem,9rem) minmax(0,1fr)}.student-history-card>.status-badge{grid-column:2;justify-self:start}.family-lesson-history-card{grid-template-columns:minmax(7.5rem,9rem) minmax(0,1fr);align-items:start}.family-lesson-history-card .family-history-statuses,.family-lesson-history-card>.button{grid-column:2;justify-self:start}.today-device-setup{grid-template-columns:1fr}.today-notification-setup{flex-direction:column;align-items:stretch}.today-notification-setup .button{width:100%}.status-badge,.lesson-actions{grid-column:2}.lesson-actions{flex-wrap:wrap}.stats-grid,.today-pulse,.finance-summary-board,.finance-secondary-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-guidance{grid-template-columns:1fr}.finance-guidance-links{grid-column:auto}.action-card{grid-template-columns:2.5rem minmax(0,1fr)}.action-card .button{grid-column:2;justify-self:start}.today-follow-up{flex-direction:column;align-items:stretch}.today-follow-up .button{align-self:flex-start}.support-guide-list{grid-template-columns:1fr}.support-guide summary{min-height:0}.support-guide-body .button{width:100%}}@media (max-width:480px){.student-history-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.student-history-metric:last-child{grid-column:1/-1}.student-history-card{grid-template-columns:1fr;gap:.45rem}.student-history-card>.status-badge{grid-column:1}.marketing-home-flow .marketing-preview-window{border-radius:.8rem;grid-template-rows:1.8rem minmax(0,1fr)}.marketing-home-flow .marketing-preview-chrome{gap:.25rem;padding-inline:.55rem}.marketing-home-flow .marketing-preview-chrome>span{width:.34rem;height:.34rem}.marketing-home-flow .marketing-preview-chrome strong{margin-left:.15rem;font-size:.46rem}.marketing-home-slide{gap:.3rem;padding:.4rem .5rem 1.25rem}.marketing-home-slide-heading{gap:.35rem}.marketing-home-slide-heading>div{gap:.3rem}.marketing-home-slide-heading>div span{border-radius:.35rem;width:1.2rem;height:1.2rem;font-size:.44rem}.marketing-home-slide-heading small{letter-spacing:.03em;font-size:.43rem}.marketing-home-slide-heading>strong{font-size:.62rem}.marketing-home-app-shell{display:block}.marketing-home-app-nav{display:none}.marketing-home-schedule-screen{gap:.25rem;height:100%;padding:.4rem}.marketing-home-schedule-screen>header small{font-size:.38rem}.marketing-home-schedule-screen>header strong{font-size:.58rem}.marketing-home-schedule-screen>header>span{padding:.25rem .35rem;font-size:.37rem}.marketing-home-week{border-radius:.35rem;grid-template-rows:.85rem repeat(3,minmax(1.25rem,1fr))}.marketing-home-week-days,.marketing-home-week-row{grid-template-columns:1.5rem repeat(5,minmax(0,1fr))}.marketing-home-week-days strong{font-size:.36rem}.marketing-home-week-row small{padding:.15rem;font-size:.34rem}.marketing-home-week-row i{padding:.12rem}.marketing-home-week-row.lesson-row i:nth-of-type(3){border-left-width:2px;border-radius:.25rem;margin:.08rem;padding:.15rem}.marketing-home-week-row i b{font-size:.33rem}.marketing-home-week-row i span{font-size:.4rem}.marketing-home-week-row i em{display:none}.marketing-home-closure-screen{grid-template-columns:1fr;gap:0}.marketing-home-lesson-summary{display:none}.marketing-home-closure-form{border-radius:.5rem;grid-template-rows:auto minmax(1.6rem,1fr) auto 1.55rem;gap:.22rem;padding:.4rem}.marketing-home-closure-form label{font-size:.4rem}.marketing-home-closure-form label em{padding:.12rem .25rem;font-size:.34rem}.marketing-home-closure-form>div{border-radius:.35rem;min-height:1.6rem;padding:.35rem;font-size:.44rem}.marketing-home-close-button{border-radius:.35rem;min-height:1.55rem;font-size:.44rem}.marketing-home-demo-cursor{width:.9rem;height:1rem;bottom:.55rem;right:.8rem}.marketing-home-family-screen{border-radius:.5rem;gap:.25rem;padding:.4rem}.marketing-home-family-screen>header{grid-template-columns:1.5rem minmax(0,1fr) auto;gap:.35rem}.marketing-home-family-screen>header small,.marketing-home-family-cards small,.marketing-home-family-package small{font-size:.34rem}.marketing-home-family-screen>header strong{font-size:.48rem}.marketing-home-family-screen>header>span{padding:.15rem .25rem;font-size:.34rem}.marketing-home-family-avatar{border-radius:.4rem;width:1.5rem;height:1.5rem;font-size:.45rem}.marketing-home-family-screen nav{display:none}.marketing-home-family-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem}.marketing-home-family-cards article{border-radius:.35rem;gap:.1rem;padding:.35rem}.marketing-home-family-cards strong{font-size:.48rem}.marketing-home-family-cards span{font-size:.34rem}.marketing-home-family-package{border-radius:.35rem;gap:.2rem;padding:.3rem .35rem}.marketing-home-family-package>div strong{font-size:.4rem}.marketing-home-family-package>span{width:1.3rem;height:1.3rem;font-size:.3rem}.marketing-home-family-package>span:nth-last-child(-n+2){display:none}.marketing-home-family-package>div{min-width:0}.marketing-home-slide-dots{gap:.25rem;bottom:.45rem}.marketing-home-slide-dots span{width:.3rem;height:.3rem}.teacher-tour-dialog{padding:1.1rem;bottom:1rem;right:1rem}.teacher-tour-actions{flex-direction:column-reverse;align-items:stretch}.teacher-tour-actions>button,.teacher-tour-actions>div{width:100%}.teacher-tour-actions>div .button{flex:1}.teacher-tour-replay{flex-direction:column;align-items:stretch}.teacher-tour-replay .button{width:100%}.family-quick-start-heading,.family-quick-start-replay{flex-direction:column;align-items:stretch}.family-quick-start-heading .button,.family-quick-start-replay .button{width:100%}.family-quick-start-step{grid-template-columns:1.8rem minmax(0,1fr);align-items:start}.family-quick-start-step .button{grid-column:2;width:100%}.schedule-slot-row,.matching-preference-row,.money-range-control,.schedule-edit-grid{grid-template-columns:1fr}.money-range-control>span{display:none}.questionnaire-form-heading{flex-direction:column;align-items:flex-start}.questionnaire-photo-field{align-items:flex-start}.teacher-questionnaire-photo{width:5.5rem;height:5.5rem}.questionnaire-form-section>summary,.questionnaire-form-section-body{padding:.8rem}.matching-collapsible-card>summary,.matching-card-summary-meta,.matching-export-row{flex-direction:column;align-items:flex-start}.matching-card-summary-meta{text-align:left;margin-left:1.1rem}.matching-export-row form,.matching-export-row .button{width:100%}.mobile-navigation-panel,.matched-teacher-card,.messenger-connection-grid{grid-template-columns:1fr}.messenger-connection-card,.conversation-card,.conversation-card-actions,.conversation-heading,.message-composer-actions{flex-direction:column;align-items:stretch}.messenger-connection-card .button,.messenger-connection-confirmation-actions,.conversation-card .button,.message-composer-actions .button{width:100%}.family-checkout-summary{grid-template-columns:1fr}.message-bubble{max-width:95%}.message-attachment-button{width:100%}.message-attachment-pending,.message-attachment-card{flex-wrap:wrap;align-items:flex-start}.message-context-card .button{width:100%}.schedule-offer-card>header,.schedule-offer-summary>div{flex-direction:column;align-items:stretch}.schedule-offer-card .status-badge,.schedule-offer-summary>div>b,.schedule-offer-summary .button{width:fit-content;margin-left:0}.page-heading,.next-card-row,.next-card-actions{flex-direction:column;align-items:stretch}.next-card-actions .manual-reminder-menu,.next-card-actions .manual-reminder-menu>summary{width:100%}.next-card-actions .manual-reminder-menu>form{width:100%;margin-top:.5rem;position:static}.pwa-install-heading{flex-direction:column;align-items:stretch}.pwa-install-dismiss{align-self:flex-start}.page-heading .button,.next-card .button{width:100%}.teacher-setup-list li{grid-template-columns:2rem minmax(0,1fr)}.teacher-setup-list li .button{grid-column:1/-1;width:100%}.today-follow-up>div{grid-template-columns:1fr}.today-follow-up .eyebrow{grid-row:auto}.today-follow-up .button{width:100%}.content{padding:1.2rem 1rem 2rem}.lesson-actions .button{flex:7rem}.today-pulse-card{padding:.8rem}.today-pulse-card small{white-space:normal}.today-pulse-meta{text-overflow:clip;white-space:normal;overflow:visible}.form-grid{grid-template-columns:1fr}.lesson-duration-control{flex-direction:column;align-items:stretch}.lesson-duration-custom{flex-basis:auto;width:100%}.custom-subject-entry{grid-template-columns:1fr}.custom-subject-entry .button{width:100%}.field-wide{grid-column:auto}.form-actions .button{width:100%}.student-grid{grid-template-columns:1fr}.danger-zone{flex-direction:column;align-items:stretch}.danger-zone .button{width:100%}.schedule-section .page-heading{align-items:stretch}.schedule-section .button{width:100%}.schedule-row{grid-template-columns:1fr;gap:.25rem}.lesson-history-row{grid-template-columns:1fr;align-items:stretch}.lesson-history-heading{flex-direction:column;align-items:flex-start}.lesson-history-actions .button{width:100%}.week-day{grid-template-columns:1fr}.week-action-list-disclosure>summary{align-items:flex-start}.week-action-list-disclosure>summary small{line-height:1.4}.week-action-list-disclosure>.week-list{padding:.7rem}.week-day>header{flex-direction:row;justify-content:space-between}.week-lesson{grid-template-columns:3.5rem minmax(0,1fr)}.week-lesson .lesson-actions{grid-column:2}.week-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.week-summary-strip>div:nth-child(3){grid-column:1/-1}.week-payment-attention>header{flex-direction:column;align-items:stretch}.week-payment-attention>header .button{width:100%}.week-payment-attention-list{grid-template-columns:1fr}.week-navigation{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.week-navigation .button{width:100%;min-width:0;padding-inline:.65rem}.week-navigation .button:nth-child(2){grid-area:2/1/auto/-1}.admin-search{grid-template-columns:1fr}.admin-search .button{width:100%}.attendance-journal-filters,.attendance-journal-stats{grid-template-columns:1fr}.attendance-journal-filter-actions{flex-direction:column;align-items:stretch}.attendance-journal-filter-actions .button{width:100%}.split-actions{flex-direction:column}.split-actions .button{width:100%}.copy-report-action{flex-direction:column;align-items:stretch;width:100%}.homework-card{flex-direction:column;align-items:flex-start}.knowledge-entry,.message-entry{flex-direction:column;align-items:stretch}.knowledge-entry .button,.message-entry .button{width:100%}.knowledge-overview,.knowledge-review-form,.knowledge-node-form{grid-template-columns:1fr}.knowledge-review-form .form-message,.knowledge-node-form .form-message{grid-column:auto}.knowledge-node.level-1,.knowledge-node.level-2{margin-left:.75rem}.knowledge-stats,.finance-summary-board,.finance-secondary-summary,.payment-fields,.payment-amounts{grid-template-columns:1fr}.finance-settings-form .button{width:100%}.action-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.action-stats .stat-card{min-width:0;padding:.7rem}.action-stats .stat-card strong{font-size:1.35rem}.action-card{grid-template-columns:1fr}.action-rank{display:none}.action-card .button{grid-column:auto;width:100%}.payment-card>header{flex-direction:column;align-items:flex-start}.package-summary{justify-content:flex-start}.settlement-list,.package-list{grid-template-columns:1fr}.package-card-summary{grid-template-columns:minmax(0,1fr) 1.25rem;gap:.35rem .7rem}.package-card-summary-count{grid-column:1/-1}.package-template-summary{grid-template-columns:minmax(0,1fr) 1.25rem;gap:.35rem .7rem}.package-template-summary-values{grid-area:2/1/auto/-1}.package-template-summary-chevron{grid-area:1/2/span 2}.package-card .package-edit-form .payment-fields,.package-template-edit-form .payment-fields,.closure-payment-choice,.closure-correction-time,.package-template-list{grid-template-columns:1fr}.package-price-warning{flex-direction:column;align-items:stretch}.package-payment-form{grid-template-columns:1fr}.package-payment-form .form-message{grid-column:auto}.family-contact-section,.invite-result,.student-quick-access-panel,.family-children-panel,.family-child-add-form{grid-template-columns:1fr}.family-child-add-form .button{width:100%}.family-contact-title-row{flex-direction:column;align-items:flex-start}.family-contact-actions{flex-direction:column;align-items:stretch;min-width:0}.family-contact-actions .button,.invite-result .button{width:100%}.family-contact-unavailable{text-align:left;max-width:none}.lesson-mode-switch{width:100%}.lesson-mode-switch button{text-align:center;flex:1}.lesson-context-card{grid-template-columns:auto minmax(0,1fr);gap:.75rem}.lesson-context-card>.status-badge{grid-column:2;justify-self:start}.group-student-options{grid-template-columns:1fr}.group-lesson-member{flex-direction:column;align-items:flex-start}.group-lesson-member-actions{justify-content:flex-start;width:100%}.reschedule-request-card{flex-direction:column;align-items:stretch}.reschedule-decision-actions{grid-template-columns:1fr 1fr;display:grid}.reschedule-decision-actions .button{width:100%}.reschedule-time-change{flex-direction:column;align-items:flex-start}.family-summary-card,.family-task-card{grid-template-columns:1fr}.family-task-card>.status-badge{justify-self:start}.family-task-actions{flex-direction:column;align-items:stretch}.family-task-actions .button{width:100%}.family-attention-list{grid-template-columns:1fr}.family-attention-item{flex-direction:column;align-items:flex-start}.family-attention-action{align-self:flex-start}.family-history-statuses{justify-content:flex-start}.section-heading-actions{width:100%;margin-left:0}.section-heading-actions .calendar-export-controls{width:100%}.section-heading-actions .calendar-export-controls .button{flex:auto}.calendar-subscription-controls>summary{flex-wrap:wrap;align-items:flex-start}.calendar-subscription-controls>summary .status-badge{margin-left:0}.calendar-subscription-controls .page-heading-actions{flex-direction:column;align-items:stretch}.calendar-subscription-controls .page-heading-actions .button,.calendar-subscription-controls .compact-form .button{width:100%}.family-summary-card-actions{flex-direction:column;align-items:stretch}.family-summary-card-actions>form,.family-summary-card-actions>.button,.family-summary-card-actions>.manual-reminder-menu,.family-summary-card-actions .manual-reminder-menu>summary{width:100%}.family-summary-card-actions .manual-reminder-menu>form{width:100%;margin-top:.5rem;position:static}.commerce-admin-grid{grid-template-columns:1fr}.family-summary-card .button{width:100%}.family-reschedule-disabled small{max-width:none}.family-dashboard-grid{grid-template-columns:1fr}.family-payment-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.family-child-section-nav{grid-template-columns:repeat(2,minmax(0,1fr));position:static}.family-matching-cta{grid-template-columns:auto minmax(0,1fr)}.family-matching-cta-arrow{display:none}.family-matching-unavailable{grid-template-columns:1fr;align-items:stretch}.family-matching-unavailable .button{width:100%}.family-child-connection-actions,.family-child-dashboard-actions{flex-direction:column;align-items:stretch}.family-child-connection-actions>form,.family-child-connection-actions>.button,.family-child-connection-actions>.manual-reminder-menu,.family-child-dashboard-actions>.button,.family-child-connection-actions .manual-reminder-menu>summary{width:100%}.family-child-connection-actions .manual-reminder-menu>form{width:100%;margin-top:.5rem;position:static}.admin-result-heading{flex-direction:column;align-items:stretch}.admin-result-heading .button{width:100%}.notification-card{grid-template-columns:1fr}.notification-card .button{width:100%}.notification-type-grid{grid-template-columns:1fr}.notification-category-heading{flex-direction:column;align-items:stretch}.notification-category-actions .button{flex:1}.notification-preferences-actions{flex-direction:column;align-items:stretch}.notification-preferences-actions .button{width:100%}.pro-lite-cta{flex-direction:column;align-items:flex-start}.pro-lite-cta .button{width:100%}.notification-settings-disclosure>summary,.notification-channel-disclosure>summary,.notification-read-disclosure>summary{flex-wrap:wrap;align-items:flex-start}.notification-settings-disclosure>summary .status-badge,.notification-channel-disclosure>summary .status-badge,.notification-read-disclosure>summary .count-badge{margin-left:0}.tariffs-hero,.tariffs-section-heading,.tariffs-explainer{grid-template-columns:1fr}.tariffs-hero{gap:2.5rem;min-height:0;padding:3.5rem 0}.tariffs-hero h1{max-width:none}.tariffs-hero-summary{max-width:34rem;transform:none}.tariffs-section-heading{align-items:start;gap:1rem}.tariffs-section-heading h2,.tariffs-explainer h2,.tariffs-faq>h2{max-width:24ch}.tariffs-explainer-copy>p:last-child{max-width:none}.tariffs-faq>div{grid-template-columns:1fr}}@media (max-width:620px){.tariffs-page{width:min(100% - 1.25rem,76rem)}.tariffs-plan-grid{grid-template-columns:1fr}.tariffs-plan-heading{flex-direction:column;align-items:flex-start}.tariffs-plan-status{max-width:none}.tariffs-comparison-mobile-hint{color:var(--muted);margin:1.25rem 0 -.9rem;font-size:.78rem;display:block}.tariffs-comparison-wrap{overscroll-behavior-inline:contain;scrollbar-width:thin;margin-top:1.25rem}.tariffs-comparison-table{min-width:46rem}.tariffs-comparison-table th,.tariffs-comparison-table td{padding:.85rem .9rem}.tariffs-comparison-table tbody th{width:22%}.tariffs-comparison-table tbody td{font-size:.84rem}.tariffs-explainer-list li{grid-template-columns:1.8rem minmax(0,1fr);padding:.95rem 1rem}}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#e7f0eb;--muted:#acb9b2;--paper:#0f1612;--surface:#17211c;--line:#34443b;--primary:#61c99e;--primary-dark:#3eaa80;--accent:#233d31;--danger:#ef8f8f;--warning:#d9ad52;--warning-ink:#f4d58b;--shadow:0 18px 50px #00000047;--background:#121b16;--surface-muted:#26322c}[data-theme=dark] body{background:var(--paper)}[data-theme=dark] .topbar{background:#17211ceb}[data-theme=dark] .mobile-navigation{background:#17211cf5;box-shadow:0 8px 18px #00000038}[data-theme=dark] .auth-shell{background:radial-gradient(circle at 15% 15%, #203a2f, transparent 35%), var(--paper)}[data-theme=dark] .auth-card{background:#17211cf0}[data-theme=dark] .button-secondary{background:var(--surface)}[data-theme=dark] :is(.field input,.field textarea,.field select,.whiteboard-text-draft input,.whiteboard-page-search input,.whiteboard-page-title-form input){color:var(--ink);background:var(--surface);border-color:#52645b}[data-theme=dark] :is(.status-badge,.count-badge){color:var(--muted);background:#27342e}[data-theme=dark] .form-message.error{color:#ffb5b5;background:#3a2323}[data-theme=dark] .form-message.success{color:#9fe1c5;background:#1e3b30}[data-theme=dark] .form-message.warning{color:#f4d58b;background:#3a321f}[data-theme=dark] .form-message.warning .button{background:#493e25}[data-theme=dark] :is(.student-status-paused,.student-status-pending){color:#f1cb79;background:#3b321f}[data-theme=dark] .student-status-ended{color:var(--muted);background:#2a312d}[data-theme=dark] .next-card{color:var(--ink);background:linear-gradient(135deg,#1d3a2f,#273b27)}[data-theme=dark] .next-card.attention{background:linear-gradient(135deg,#3a3020,#2c2e22)}[data-theme=dark] .week-calendar-scroll{background:var(--surface)}[data-theme=dark] .week-calendar-day>header{background:#17211cf5}[data-theme=dark] .week-calendar-day.current{background:linear-gradient(#183228,#1832282e)}[data-theme=dark] .week-calendar-day.current>header{background:#183228}[data-theme=dark] .week-calendar-hours span{border-bottom-color:#33443b}[data-theme=dark] .week-calendar-body.drop-target{background:#70d8b01a;box-shadow:inset 0 0 0 2px #70d8b073}[data-theme=dark] .week-calendar-availability{color:#8fd5b8;background:repeating-linear-gradient(135deg,#19372d,#19372d 6px,#1f4034 6px 12px);border-color:#477d68}[data-theme=dark] .schedule-legend i.available{background:#19372d;border-color:#477d68}[data-theme=dark] .family-weekly-schedule-card.completed{--family-weekly-accent:#7ed6b5}[data-theme=dark] .family-weekly-schedule-card.attention{--family-weekly-accent:#f1cb79;background:#3a321f}[data-theme=dark] .family-weekly-schedule-card.attention .family-weekly-schedule-status{color:#f4d58b;background:#4a3b1f}[data-theme=dark] .family-weekly-digest-event.report{--family-digest-accent:#aabaff;background:#202a43}[data-theme=dark] .family-weekly-digest-event.homework{--family-digest-accent:#7ed6b5;background:#18382e}[data-theme=dark] .family-weekly-digest-event.schedule{--family-digest-accent:#f1cb79;background:#3a321f}[data-theme=dark] .family-child-marker.tone-mint{--family-child-marker-ink:#9fe1c5;--family-child-marker-background:#1d3b30}[data-theme=dark] .family-child-marker.tone-sky{--family-child-marker-ink:#b4ccff;--family-child-marker-background:#21324c}[data-theme=dark] .family-child-marker.tone-lilac{--family-child-marker-ink:#ceb9ff;--family-child-marker-background:#302844}[data-theme=dark] .family-child-marker.tone-amber{--family-child-marker-ink:#f1cb79;--family-child-marker-background:#3a321f}[data-theme=dark] .family-child-marker.tone-coral{--family-child-marker-ink:#f2afa8;--family-child-marker-background:#3d2928}[data-theme=dark] .family-child-marker.tone-teal{--family-child-marker-ink:#98dcd1;--family-child-marker-background:#183a37}[data-theme=dark] .week-lesson{background:linear-gradient(100deg, var(--subject-tint), var(--surface) 52%)}[data-theme=dark] .week-lesson.cancelled{background:#292b29}[data-theme=dark] .week-lesson.completed{background:#1d352b}[data-theme=dark] .subject-tone-science{--subject-tone:#78b9ff;--subject-tint:#1b2d3e}[data-theme=dark] .subject-tone-language{--subject-tone:#70d8b0;--subject-tint:#18352c}[data-theme=dark] .subject-tone-humanities{--subject-tone:#b69bf0;--subject-tint:#2d2840}[data-theme=dark] .subject-tone-creative{--subject-tone:#e7ae62;--subject-tint:#3a2e1c}[data-theme=dark] .subject-tone-primary{--subject-tone:#e58da1;--subject-tint:#3a252c}[data-theme=dark] .subject-tone-neutral{--subject-tone:#a9b5af;--subject-tint:#28312d}[data-theme=dark] :is(.teacher-setup-list li.current,.teacher-setup-list li.complete,.teacher-setup-completed,.commercial-confirmation-card,.attendance-card,.notification-read-disclosure,.notification-channel-disclosure,.calendar-subscription-controls){background:var(--background)}[data-theme=dark] .notification-action-group{background:#2b291f;border-color:#5a4c2e}[data-theme=dark] :is(.teacher-landing-preview,.registration-tax-fields,.registration-note){border-color:var(--line);background:linear-gradient(145deg, var(--accent), var(--surface))}[data-theme=dark] .tariffs-hero-summary{background:linear-gradient(145deg, #1d392d, var(--surface));border-color:#3f725e}[data-theme=dark] .tariffs-hero-summary:after{border-color:#477d68}[data-theme=dark] .tariffs-storage-track{background:#2a3931}[data-theme=dark] .tariffs-plan-card-pro{background:linear-gradient(145deg, #1d392d, var(--surface));border-color:#3f725e}[data-theme=dark] .tariffs-plan-status{color:#9fe1c5;background:#1d352b;border-color:#3f725e}[data-theme=dark] .tariffs-plan-status-pro{color:#f4d58b;background:#3a321f;border-color:#70592e}[data-theme=dark] .tariffs-plan-storage-pro{background:#1d352b;border-color:#3f725e}[data-theme=dark] .tariffs-plan-closed{background:#15271f;border-color:#477d68}[data-theme=dark] .tariffs-comparison-table thead th{background:var(--background)}[data-theme=dark] .tariffs-comparison-table thead th:nth-child(3){color:#9fe1c5;background:#1d352b}[data-theme=dark] .tariffs-comparison-table tbody td[data-plan=PRO\ Лайт]{color:#9fe1c5;background:#1a3026}[data-theme=dark] .tariffs-comparison-table tbody .tariffs-comparison-shared{color:var(--ink);background:#172920}[data-theme=dark] .marketing-preview-window{box-shadow:0 18px 48px #0000003d}[data-theme=dark] .marketing-lesson-chip{color:#8fd5b8;background:#19372d}[data-theme=dark] .marketing-lesson-chip span{color:#8dbbaa}[data-theme=dark] .marketing-lesson-chip.lesson-b{color:#c5abe9;background:#2d2840}[data-theme=dark] .inline-notice{border-color:var(--line);background:var(--background)}[data-theme=dark] .role-choice-card.family .role-choice-icon{color:#e7ae62;background:#3a2e1c}[data-theme=dark] :is(.whiteboard-pages,.whiteboard-page-title-form,.whiteboard-pdf-preview),[data-theme=dark] .whiteboard-editor{background:var(--background)}[data-theme=dark] :is(.whiteboard-pages>button,.whiteboard-pdf-page,.whiteboard-shortcuts>div,.whiteboard-next-stroke){background:var(--surface)}[data-theme=dark] .whiteboard-canvas{background:#fff;border-color:#52645b;box-shadow:0 8px 24px #00000047}[data-theme=dark] .whiteboard-next-stroke{background:#eef3ef}[data-theme=dark] .whiteboard-shortcuts kbd{color:var(--ink);background:var(--background);border-color:#53645b}[data-theme=dark] .finance-summary-card.income{color:#78b9ff;background:linear-gradient(145deg,#172530,#1b2d3e)}[data-theme=dark] .finance-summary-card.bank{color:#e7ae62;background:linear-gradient(145deg,#292318,#3a2e1c)}[data-theme=dark] .finance-summary-card.tax{color:#b69bf0;background:linear-gradient(145deg,#242132,#2d2840)}[data-theme=dark] .finance-summary-card.net{color:#70d8b0;background:linear-gradient(145deg,#172a23,#18352c);border-color:#315b49}[data-theme=dark] .finance-summary-icon{background:#0f161294}[data-theme=dark] .payment-amounts>div{background:var(--surface-muted)}[data-theme=dark] .payment-amounts span{color:#becbc4}[data-theme=dark] .payment-amounts strong{color:var(--ink)}[data-theme=dark] .package-payment-note{color:#c3d0c9;background:#172720;border-color:#385346}[data-theme=dark] .package-payment-warning{color:#f1dec0;background:#342b1b;border-color:#705a2a}[data-theme=dark] .family-payment-summary>article.attention{background:#342b1b;border-color:#725927}[data-theme=dark] .package-balance{background:#1d3a2f;border:1px solid #315b49}[data-theme=dark] .package-balance span{color:#c3d0c9}[data-theme=dark] .package-lesson-marker.pending{background:var(--surface);border-color:#91a79c}[data-theme=dark] :is(.finance-secondary-summary,.finance-settings[open]>summary,.finance-guidance){border-color:var(--line);background:var(--background)}[data-theme=dark] :is(.family-child-section-nav,.admin-tabs,.page-tabs){background:#17211cf0}[data-theme=dark] .family-child-section-nav a.active span{color:var(--ink);background:var(--surface)}[data-theme=dark] :is(.page-tabs a:hover,.feature-flag-card,.questionnaire-form-section[open]>summary,.segmented-choice,.schedule-slot-row,.matching-preference-row,.student-schedule-group){background:var(--background)}[data-theme=dark] .notification-card.read{opacity:.82}[data-theme=dark] .trial-label{background:#3d321d;border-color:#70592e;color:#ffd88a!important}[data-theme=dark] .data-table th{color:#bdc8c2}[data-theme=dark] .theme-toggle{background:#27342e;border-color:#53645b}[data-theme=dark] .theme-toggle-thumb{background:#d7e5de;box-shadow:0 2px 8px #00000059}[data-theme=dark] .site-legal-links{background:var(--paper)}[data-theme=dark] .teacher-tour-dialog{border-color:#52645b}[data-theme=dark] .learning-room-nav{background:#17211cf0;box-shadow:0 8px 24px #0003}[data-theme=dark] .learning-room-card{background:linear-gradient(145deg, var(--surface), var(--background))}[data-theme=dark] .learning-room-card.unavailable{background:var(--background)}[data-theme=dark] .learning-room-card-icon.files{color:#e7ae62;background:#3a2e1c}[data-theme=dark] :is(.teacher-landing-cta .button,.lesson-card.cancelled,.archived-notice,.schedule-row,.lesson-history-meta span,.inline-empty,.week-lesson.cancelled,.closure-details,.whiteboard-disclosure,.whiteboard-pdf-preview,.whiteboard-pages,.whiteboard-page-title-form,.payment-reminder,.group-student-option,.matching-availability-row,.matching-availability-list li,.matching-brief,.notification-read-disclosure,.notification-channel-disclosure,.notification-toggle,.messenger-connection-card,.support-guide[open] summary,.conversation-card.unread,.conversation-thread){color:var(--ink);border-color:var(--line);background:var(--surface-muted)}[data-theme=dark] :is(.danger-zone,.cancel-panel,.revision-note,.status-needs_revision,.status-overdue,.knowledge-major_gap,.settlement-voided,.status-badge.priority-urgent,.payment-unpaid,.package-expired,.admin-user-matching-metrics .status-review-required,.admin-user-review-row,.admin-access-details[open],.whiteboard-presence.state-offline.action-required,.whiteboard-moderation .button[aria-pressed=true],.whiteboard-capacity-notice){color:#ffb5b5;background:#3a2323;border-color:#704242}[data-theme=dark] :is(.lesson-origin-rescheduled,.status-submitted,.knowledge-needs_practice,.status-badge.priority-high,.payment-partially_paid,.whiteboard-presence.state-offline,.whiteboard-permission-notice,.whiteboard-capacity-notice.warning){color:#f1cb79;background:#3b321f;border-color:#70592e}[data-theme=dark] :is(.lesson-card.completed,.accepted-note,.private-field){color:#bce6d3;background:#1e3b30;border-color:#315b49}[data-theme=dark] .teacher-questionnaire-card{background:linear-gradient(145deg, var(--accent), var(--surface))}[data-theme=dark] .family-matching-cta-mark{color:var(--ink);background:var(--surface-muted)}[data-theme=dark] .selected-option button{background:#0f161273}[data-theme=dark] :is(.whiteboard-color input,.whiteboard-next-stroke){background:var(--surface-muted)}[data-theme=dark] .whiteboard-page-remove-confirm{color:#ffb5b5;background:#3a2323;border-color:#704242}[data-theme=dark] .room-file-icon.pdf{color:#ffb5b5;background:#3a2323}[data-theme=dark] .room-file-delete:hover{background:#3a2323}.livekit-call-loading{background:var(--surface-muted);border:1px solid var(--line);z-index:89;border-radius:.75rem;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:1rem}.livekit-call-backdrop{z-index:90;background:#040f0bc2;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.livekit-call{width:min(100%,64rem);max-height:calc(100dvh - 2rem);overflow:auto}.livekit-call-backdrop:not(.compact):has(>.livekit-call:not(.livekit-ended-state)){align-items:stretch;padding:0}.livekit-call-backdrop:not(.compact)>.livekit-call:not(.livekit-ended-state){border:0;border-radius:0;width:100%;height:100dvh;max-height:none;padding:clamp(.65rem,1.4vw,1rem)}.livekit-call-backdrop:not(.compact)>.livekit-call:not(.livekit-ended-state) .livekit-call-grid{min-height:clamp(20rem,100dvh - 16rem,56rem)}.livekit-call-backdrop:not(.compact)>.livekit-call:not(.livekit-ended-state) .livekit-controls{background:color-mix(in srgb, var(--surface) 92%, transparent);border:1px solid var(--line);z-index:3;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:1rem;width:fit-content;margin-inline:auto;padding:.45rem;position:sticky;bottom:.5rem;box-shadow:0 10px 30px #040f0b38}.livekit-ended-state{text-align:center;justify-items:center;max-width:31rem;padding:clamp(1.5rem,4vw,2.5rem);display:grid}.livekit-ended-state h2,.livekit-ended-state p{margin:0}.livekit-ended-state .muted{max-width:26rem;line-height:1.5}.livekit-ended-state .button{margin-top:.35rem}.livekit-ended-mark{background:color-mix(in srgb, var(--success) 16%, var(--surface));border:1px solid color-mix(in srgb, var(--success) 42%, var(--line));color:var(--success);border-radius:50%;justify-content:center;align-items:center;width:3.4rem;height:3.4rem;font-size:1.45rem;font-weight:900;display:flex}.livekit-ended-state[data-state=other-device] .livekit-ended-mark{background:color-mix(in srgb, var(--accent) 15%, var(--surface));border-color:color-mix(in srgb, var(--accent) 42%, var(--line));color:var(--primary)}.livekit-ended-state[data-state=removed] .livekit-ended-mark{background:color-mix(in srgb, var(--danger) 12%, var(--surface));border-color:color-mix(in srgb, var(--danger) 38%, var(--line));color:var(--danger)}.livekit-call-heading{align-items:flex-start}.livekit-call-heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.livekit-end-all-short{display:none}.livekit-call-heading h2{margin:.1rem 0}.livekit-status{margin:0}.livekit-status-row{flex-wrap:wrap;align-items:center;gap:.45rem .7rem;display:flex}.livekit-connection-indicator{border:1px solid var(--line);color:var(--muted);border-radius:999px;align-items:center;gap:.35rem;padding:.22rem .55rem;font-size:.78rem;font-weight:750;display:inline-flex}.livekit-connection-indicator i{background:currentColor;border-radius:50%;width:.48rem;height:.48rem;display:block}.livekit-connection-indicator[data-tone=good]{background:color-mix(in srgb, var(--success) 10%, var(--surface));border-color:color-mix(in srgb, var(--success) 35%, var(--line));color:var(--success)}.livekit-connection-indicator[data-tone=warning]{background:color-mix(in srgb, #d38b14 12%, var(--surface));border-color:color-mix(in srgb, #d38b14 42%, var(--line));color:#95600b}[data-theme=dark] .livekit-connection-indicator[data-tone=warning]{color:#f1cb79}.livekit-connection-indicator[data-tone=danger]{background:color-mix(in srgb, var(--danger) 10%, var(--surface));border-color:color-mix(in srgb, var(--danger) 35%, var(--line));color:var(--danger)}.livekit-preflight{width:min(100%,50rem)}.livekit-preflight-body{grid-template-columns:minmax(0,1.35fr) minmax(15rem,.85fr);align-items:stretch;gap:1rem;display:grid}.livekit-preflight-preview,.livekit-preflight-preview video{min-height:18rem}.livekit-preflight-checks{align-content:center;gap:.7rem;display:grid}.livekit-preflight-check{border:1px solid var(--line);background:var(--surface-muted);border-radius:.75rem;grid-template-columns:2rem minmax(0,1fr);align-items:center;gap:.65rem;padding:.75rem;display:grid}.livekit-preflight-check>span{background:var(--surface);width:2rem;height:2rem;color:var(--muted);border-radius:50%;place-items:center;font-weight:900;display:grid}.livekit-preflight-check.ready>span{background:color-mix(in srgb, var(--success) 18%, var(--surface));color:var(--success)}.livekit-preflight-check.denied>span,.livekit-preflight-check.unavailable>span{background:color-mix(in srgb, var(--danger) 15%, var(--surface));color:var(--danger)}.livekit-preflight-check>div{gap:.3rem;min-width:0;display:grid}.livekit-preflight-check strong{font-size:.9rem;line-height:1.35}.livekit-preflight-check small{color:var(--muted);font-size:.78rem;line-height:1.4}.livekit-preflight-device-select{gap:.25rem;margin-top:.1rem;display:grid}.livekit-preflight-device-select>span{color:var(--muted);font-size:.74rem;font-weight:700}.livekit-preflight-device-select select{width:100%;min-width:0;padding:.45rem .55rem}.livekit-microphone-activity{flex-wrap:wrap;align-items:center;gap:.4rem .55rem;margin-top:.1rem;display:flex}.livekit-microphone-meter{align-items:end;gap:.16rem;height:1rem;display:inline-flex}.livekit-microphone-meter i{background:var(--line);border-radius:999px;width:.24rem;height:.35rem;transition:background-color .1s,height .1s;display:block}.livekit-microphone-meter i:nth-child(2){height:.55rem}.livekit-microphone-meter i:nth-child(3){height:.75rem}.livekit-microphone-meter i:nth-child(4){height:1rem}.livekit-microphone-meter i.active{background:var(--success)}.livekit-microphone-activity small{color:var(--muted);font-size:.74rem}.livekit-preflight-check.speaker.played>span{background:color-mix(in srgb, var(--success) 18%, var(--surface));color:var(--success)}.livekit-preflight-check.speaker.failed>span{background:color-mix(in srgb, var(--danger) 15%, var(--surface));color:var(--danger)}.livekit-preflight-media-toggle{color:var(--primary);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;justify-self:start;padding:0;font-size:.78rem;font-weight:750}.livekit-preflight-media-toggle[aria-pressed=false]{color:var(--muted)}.livekit-preflight-media-toggle:disabled{cursor:not-allowed;opacity:.6}.livekit-preflight-media-toggle:not(:disabled):hover{text-decoration:underline}.livekit-preflight-checks p{margin:.15rem 0 0;font-size:.82rem;line-height:1.45}.livekit-preflight-actions{flex-wrap:wrap;gap:.65rem;margin-top:1rem;display:flex}.livekit-call-grid{grid-template-columns:2fr 1fr;gap:.75rem;display:grid}.livekit-video-tile{background:var(--surface);border:1px solid var(--line);color:#eef8f2;border-radius:.75rem;min-height:9rem;position:relative;overflow:hidden}.livekit-video-tile>div,.livekit-video-tile video{object-fit:cover;background:#0b1713;width:100%;height:100%;min-height:9rem}.livekit-video-tile span{color:#eef8f2;background:#040f0bc2;border-radius:.4rem;padding:.2rem .4rem;font-size:.82rem;position:absolute;bottom:.5rem;left:.5rem}.livekit-remote-tile{min-height:18rem}.livekit-video-tile>.livekit-remote-grid{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));align-content:stretch;gap:.25rem;min-height:18rem;padding:.25rem;display:grid}.livekit-remote-grid video{background:#0b1713;border-radius:.5rem;min-height:8rem}.livekit-remote-grid audio{display:none}.livekit-video-placeholder{text-align:center;max-width:80%;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.livekit-controls{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:.9rem;display:flex}.livekit-recovery{background:color-mix(in srgb, #d38b14 10%, var(--surface));border:1px solid color-mix(in srgb, #d38b14 42%, var(--line));border-radius:.75rem;justify-content:space-between;align-items:center;gap:.8rem;margin-top:.75rem;padding:.7rem .8rem;display:flex}.livekit-recovery>div{gap:.15rem;display:grid}.livekit-recovery span{color:var(--muted);font-size:.84rem}.livekit-recovery>.livekit-recovery-actions{flex:none;align-items:center;gap:.45rem;display:flex}.livekit-moderation{background:var(--surface-muted);border:1px solid var(--line);border-radius:.75rem;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.75rem;padding:.65rem .75rem;display:flex}.livekit-moderation>div{gap:.1rem;display:grid}.livekit-moderation small{color:var(--muted)}.livekit-moderation-notice{background:color-mix(in srgb, var(--danger) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--danger) 35%, var(--line));text-align:center;border-radius:.75rem;margin:.75rem 0 0;padding:.65rem .75rem}.livekit-media-startup-notice{background:color-mix(in srgb, #d38b14 10%, var(--surface));border:1px solid color-mix(in srgb, #d38b14 42%, var(--line));color:var(--ink);border-radius:.75rem;gap:.25rem;margin-top:.75rem;padding:.65rem .75rem;font-size:.84rem;display:grid}.livekit-media-startup-notice p{margin:0}.livekit-control{background:var(--surface-muted);border:1px solid var(--line);color:var(--ink);border-radius:.75rem;justify-content:center;align-items:center;gap:.45rem;min-height:2.8rem;padding:.55rem .8rem;display:inline-flex}.livekit-control:hover:not(:disabled){border-color:var(--accent)}.livekit-control.off{background:color-mix(in srgb, var(--danger) 13%, var(--surface));border-color:color-mix(in srgb, var(--danger) 40%, var(--line))}.livekit-control.effect.off{background:var(--surface-muted);border-color:var(--line)}.livekit-control.effect.active{background:color-mix(in srgb, var(--accent) 16%, var(--surface));border-color:color-mix(in srgb, var(--accent) 55%, var(--line));color:var(--primary)}.livekit-control:disabled{cursor:not-allowed;opacity:.55}.livekit-control svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.25rem;height:1.25rem}.livekit-control .livekit-icon-slash{color:var(--danger);stroke-width:2.2px}.livekit-audio-resume{margin:.75rem auto 0;display:block}.livekit-device-settings{background:var(--surface-muted);border:1px solid var(--line);border-radius:.75rem;margin-top:.85rem;padding:.75rem .9rem}.livekit-device-settings summary{color:var(--primary);cursor:pointer;font-weight:750}.livekit-device-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:.75rem;display:grid}.livekit-device-grid label{gap:.35rem;font-size:.86rem;font-weight:700;display:grid}.livekit-device-grid select{width:100%;min-width:0}.livekit-help{text-align:center;margin:.65rem 0 0;font-size:.82rem}@media (max-width:640px){.livekit-call-backdrop{align-items:stretch;padding:0}.livekit-call{border-radius:0;width:100%;min-height:100dvh;max-height:100dvh}.livekit-call-grid,.livekit-preflight-body{grid-template-columns:1fr}.livekit-preflight-preview,.livekit-preflight-preview video{min-height:34dvh}.livekit-preflight-actions{flex-direction:column;align-items:stretch}.livekit-preflight-actions .button{width:100%}.livekit-remote-tile,.livekit-video-tile>.livekit-remote-grid{min-height:42dvh}.livekit-local-tile{min-height:24dvh}.livekit-call-backdrop:not(.compact)>.livekit-call:not(.livekit-ended-state){padding:.5rem}.livekit-call-heading{gap:.45rem}.livekit-call-heading>div:first-child{min-width:0}.livekit-call-heading .eyebrow,.livekit-call-heading h2,.livekit-status{display:none}.livekit-call-heading-actions{flex-wrap:nowrap}.livekit-call-heading-actions .button{min-height:2.45rem;padding:.42rem .55rem}.livekit-call-backdrop:not(.compact)>.livekit-call:not(.livekit-ended-state) .livekit-call-grid{min-height:calc(100dvh - 10rem)}.livekit-control{flex:0 0 2.8rem;min-height:2.8rem;padding:.45rem}.livekit-control span{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.livekit-recovery,.livekit-recovery>.livekit-recovery-actions{flex-direction:column;align-items:stretch}.livekit-recovery .button{width:100%}.livekit-moderation{flex-direction:column;align-items:stretch}.livekit-device-grid{grid-template-columns:1fr}}.livekit-call-backdrop.compact{pointer-events:none;background:0 0;justify-content:flex-end;align-items:flex-end}.livekit-call-backdrop.compact-left{justify-content:flex-start}.livekit-call-backdrop.compact .livekit-call{pointer-events:auto;border-radius:.9rem;width:min(24rem,100vw - 2rem);min-height:0;max-height:min(38rem,100dvh - 2rem);padding:.75rem;box-shadow:0 1.25rem 3.5rem #040f0b52}.livekit-compact-move{min-width:2.4rem;padding-inline:.55rem}.livekit-call-backdrop.compact .livekit-call-heading{align-items:center}.livekit-call-backdrop.compact .livekit-call-heading .eyebrow,.livekit-call-backdrop.compact .livekit-call-heading h2,.livekit-call-backdrop.compact .livekit-status{display:none}.livekit-call-backdrop.compact .livekit-call-grid{display:block;position:relative}.livekit-call-backdrop.compact .livekit-remote-tile,.livekit-call-backdrop.compact .livekit-video-tile>.livekit-remote-grid{min-height:12rem}.livekit-call-backdrop.compact .livekit-local-tile{z-index:2;width:30%;min-height:4.8rem;position:absolute;bottom:.65rem;right:.65rem}.livekit-call-backdrop.compact .livekit-local-tile>div,.livekit-call-backdrop.compact .livekit-local-tile video{min-height:4.8rem}.livekit-call-backdrop.compact .livekit-local-tile .livekit-video-placeholder{font-size:.65rem}.livekit-call-backdrop.compact .livekit-controls{flex-wrap:nowrap;gap:.35rem}.livekit-call-backdrop.compact .livekit-control{flex:1 1 0;min-height:2.5rem;padding:.45rem}.livekit-call-backdrop.compact .livekit-control span,.livekit-call-backdrop.compact .livekit-end-all-full{display:none}.livekit-call-backdrop.compact .livekit-end-all-short{display:inline}.livekit-call-backdrop.compact :is(.livekit-device-settings,.livekit-moderation,.livekit-moderation-notice,.livekit-help){display:none}.livekit-call-backdrop.with-board.compact .livekit-view-toggle{border-color:var(--primary);color:var(--primary)}@media (max-width:640px){.livekit-call-backdrop.compact{align-items:flex-end;padding:.5rem}.livekit-call-backdrop.compact .livekit-call{width:min(22rem,100vw - 1rem);max-height:calc(100dvh - 1rem)}}body:has(.whiteboard-page-canvas-first){overflow:hidden}body:has(.whiteboard-page-canvas-first) :is(.topbar,.sidebar,.mobile-navigation){display:none}body:has(.whiteboard-page-canvas-first) .workspace{min-height:100dvh;display:block}body:has(.whiteboard-page-canvas-first) .content{max-width:none;height:100dvh;padding:.45rem;overflow:hidden}.whiteboard-page-canvas-first{grid-template-rows:auto minmax(0,1fr);gap:.4rem;height:calc(100dvh - .9rem);display:grid}.whiteboard-page-canvas-first>.whiteboard-page-heading{justify-content:space-between;align-items:center;gap:.65rem;min-width:0;padding:.15rem .2rem;display:flex}.whiteboard-page-video-entry{flex:none}.whiteboard-page-video-entry .classroom-entry{margin:0}.whiteboard-page-video-entry .button{min-height:2rem;padding:.35rem .62rem;font-size:.72rem}.whiteboard-page-identity{align-items:center;gap:.65rem;min-width:0;display:flex}.whiteboard-page-identity h1{margin:0;font-size:1.05rem;line-height:1}.whiteboard-page-identity .learning-room-context{white-space:nowrap;background:0 0;border-color:#0000;min-width:0;margin:0;padding:.28rem .5rem;overflow:hidden}.whiteboard-page-identity .learning-room-context strong{text-overflow:ellipsis;overflow:hidden}.whiteboard-page-canvas-first .learning-room-nav{z-index:auto;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:.65rem;flex:0 auto;padding:.18rem;position:static}.whiteboard-page-canvas-first .learning-room-tab,.whiteboard-page-canvas-first .learning-room-back{min-height:2rem;padding:.35rem .62rem;font-size:.72rem}.whiteboard-page-canvas-first .learning-room-back{border:1px solid var(--primary-dark);color:#fff;background:var(--primary-dark);border-radius:.55rem;box-shadow:0 5px 14px #1256422e}.whiteboard-page-canvas-first .learning-room-back:before{content:"←";margin-right:.3rem;font-size:.88rem}.whiteboard-page-canvas-first .learning-room-back:hover,.whiteboard-page-canvas-first .learning-room-back:focus-visible{color:#fff;border-color:var(--primary);background:var(--primary)}.whiteboard-page-canvas-first .whiteboard-editor{height:100%;min-height:0;box-shadow:none;background:#e8ece9;border-radius:.8rem;position:relative}.whiteboard-page-canvas-first .whiteboard-editor.focus-mode{height:calc(100dvh - 1rem)}.whiteboard-page-canvas-first .whiteboard-topbar{z-index:20;border:1px solid color-mix(in srgb, var(--line) 82%, transparent);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:.8rem;align-items:center;gap:.3rem;width:min(100% - 1.3rem,72rem);min-width:0;padding:.35rem;display:flex;position:absolute;top:.65rem;left:50%;overflow:visible;transform:translate(-50%);box-shadow:0 8px 28px #162d2424}.whiteboard-page-canvas-first .whiteboard-tools{scrollbar-width:none;flex-wrap:nowrap;flex:auto;gap:.25rem;min-width:0;padding:0;overflow-x:auto}.whiteboard-page-canvas-first .whiteboard-tools:has(.whiteboard-tool-menu[open]){overflow:visible}.whiteboard-page-canvas-first .whiteboard-tools::-webkit-scrollbar{display:none}.whiteboard-page-canvas-first .whiteboard-tool-group{gap:.2rem}.whiteboard-page-canvas-first .whiteboard-tool-group+.whiteboard-tool-group{padding-left:.4rem}.whiteboard-page-canvas-first :is(.whiteboard-tool,.whiteboard-drawing-preset,.whiteboard-tool-menu>summary){border-color:#0000;border-radius:.55rem;flex:0 0 2.2rem;width:2.2rem;min-height:2.2rem}.whiteboard-page-canvas-first :is(.whiteboard-tool,.whiteboard-drawing-preset):hover:not(:disabled),.whiteboard-page-canvas-first .whiteboard-tool-menu>summary:hover{border-color:var(--line);background:var(--background)}.whiteboard-page-canvas-first .whiteboard-tool-menu>summary:after{content:"";opacity:.7;border-top:.22rem solid;border-left:.18rem solid #0000;border-right:.18rem solid #0000;width:0;height:0;position:absolute;bottom:.18rem;right:.2rem}.whiteboard-page-canvas-first .whiteboard-drawing-presets{gap:.2rem}.whiteboard-page-canvas-first .whiteboard-toolbar-scroll-hint{display:none}.whiteboard-page-canvas-first .whiteboard-disclosure{background:0 0;border-color:#0000;flex:none;width:auto;position:relative}.whiteboard-page-canvas-first .whiteboard-disclosure>summary{border:1px solid #0000;border-radius:.55rem;justify-content:center;width:2.2rem;min-height:2.2rem;padding:.25rem}.whiteboard-page-canvas-first .whiteboard-disclosure>summary:hover{border-color:var(--line);background:var(--background)}.whiteboard-page-canvas-first .whiteboard-disclosure[open]>summary{border-color:var(--primary);background:var(--accent)}.whiteboard-page-canvas-first .whiteboard-disclosure>summary:after,.whiteboard-page-canvas-first .whiteboard-disclosure>summary>:is(strong,small){display:none}.whiteboard-page-canvas-first .whiteboard-stroke-settings .whiteboard-next-stroke{background:0 0;border:0;width:1.75rem;height:1.75rem}.whiteboard-page-canvas-first .whiteboard-background-settings .whiteboard-background-swatch{width:1.45rem;height:1.45rem}.whiteboard-page-canvas-first .whiteboard-future-imports>summary:before{content:"+";font-size:1.45rem;font-weight:500;line-height:1}.whiteboard-page-canvas-first .whiteboard-disclosure>:is(.whiteboard-controls,.whiteboard-background-controls,.whiteboard-import-actions){z-index:25;border:1px solid var(--line);background:var(--surface);border-radius:.8rem;width:min(42rem,100vw - 2rem);padding:.75rem;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 16px 40px #1229202e}.whiteboard-page-canvas-first .whiteboard-background-controls{grid-template-columns:1fr}.whiteboard-page-canvas-first .whiteboard-import-actions small{flex-basis:100%}.whiteboard-page-canvas-first .whiteboard-status-row{width:max-content;max-width:min(23rem,45vw);position:absolute;top:calc(100% + .45rem);left:0}.whiteboard-page-canvas-first .whiteboard-moderation>summary{width:auto;min-width:2.2rem}.whiteboard-page-canvas-first .whiteboard-moderation>summary:before{content:"⚙";font-size:1rem}.whiteboard-page-canvas-first .whiteboard-moderation>:is(.whiteboard-group-moderation,.whiteboard-moderation-actions){z-index:25;border:1px solid var(--line);background:var(--surface);border-radius:.8rem;width:min(25rem,100vw - 2rem);padding:.65rem;position:absolute;top:calc(100% + .5rem);left:0;box-shadow:0 16px 40px #1229202e}.whiteboard-page-canvas-first :is(.whiteboard-permission-notice,.whiteboard-capacity-notice,.whiteboard-student-hint){z-index:18;width:min(28rem,48vw);margin:0;position:absolute;top:calc(100% + .45rem);right:0;box-shadow:0 8px 20px #1229201a}.whiteboard-page-canvas-first .whiteboard-active-tool{z-index:17;border:1px solid color-mix(in srgb, var(--primary) 35%, var(--line));background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left-width:1px;border-radius:999px;flex-wrap:nowrap;align-items:center;width:max-content;max-width:min(18rem,36vw);min-height:1.9rem;padding:.28rem .35rem .28rem .55rem;position:absolute;top:calc(100% + .45rem);left:50%;transform:translate(-50%);box-shadow:0 6px 18px #1229201a}.whiteboard-page-canvas-first .whiteboard-active-tool-copy{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.whiteboard-page-canvas-first .whiteboard-active-tool-copy>span{display:none}.whiteboard-page-canvas-first .whiteboard-active-tool-help{flex:none;display:block;position:relative}.whiteboard-page-canvas-first .whiteboard-active-tool-help>summary{width:1.45rem;height:1.45rem;color:var(--primary);background:var(--accent);cursor:pointer;border:0;border-radius:50%;place-items:center;font-size:.72rem;font-weight:900;list-style:none;display:grid}.whiteboard-page-canvas-first .whiteboard-active-tool-help>summary::-webkit-details-marker{display:none}.whiteboard-page-canvas-first .whiteboard-active-tool-help>span{z-index:30;border:1px solid var(--line);width:min(22rem,100vw - 1.5rem);color:var(--ink);background:var(--surface);border-radius:.7rem;padding:.65rem .75rem;font-size:.74rem;line-height:1.4;position:absolute;top:calc(100% + .55rem);left:50%;transform:translate(-50%);box-shadow:0 12px 30px #1229202e}.whiteboard-page-canvas-first .whiteboard-polyline-actions{flex:none;overflow:visible}.whiteboard-page-canvas-first .whiteboard-text-draft{z-index:24;border:1px solid var(--line);background:var(--surface);border-radius:.75rem;width:min(34rem,100vw - 2rem);padding:.6rem;position:absolute;top:calc(100% + .45rem);left:50%;transform:translate(-50%);box-shadow:0 12px 30px #12292026}.whiteboard-page-canvas-first .whiteboard-pdf-preview{z-index:24;border:1px solid var(--line);border-radius:.85rem;width:min(54rem,100% - 1.3rem);max-height:calc(100% - 5rem);position:absolute;top:4.2rem;right:.65rem;overflow:auto;box-shadow:0 18px 45px #1229202e}.whiteboard-page-canvas-first .whiteboard-workspace{height:100%;min-height:0;display:block;position:relative}.whiteboard-page-canvas-first .whiteboard-pages{z-index:15;border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 95%, transparent);opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:.8rem;width:12rem;max-height:none;padding:.65rem;transition:opacity .16s,transform .16s;position:absolute;top:4.4rem;bottom:4.2rem;left:.65rem;overflow:hidden auto;transform:translate(calc(-100% - 1rem));box-shadow:0 14px 36px #1229202e}.whiteboard-page-canvas-first .whiteboard-pages.is-open{opacity:1;pointer-events:auto;transform:translate(0)}.whiteboard-pages-heading{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.15rem;padding:.15rem .2rem .35rem;display:flex}.whiteboard-pages-heading strong{font-size:.78rem}.whiteboard-pages-heading button{width:1.8rem;height:1.8rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.45rem;place-items:center;padding:0;font-size:1.2rem;display:grid}.whiteboard-pages-heading button:hover{color:var(--ink);background:var(--background)}.whiteboard-page-canvas-first .whiteboard-pages>button{flex:none;min-width:0}.whiteboard-page-canvas-first .whiteboard-canvas-shell{height:100%;min-height:0;padding:.45rem;display:block;position:relative}.whiteboard-page-canvas-first .whiteboard-canvas-actions{z-index:12;border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);scrollbar-width:none;border-radius:.75rem;flex-wrap:nowrap;width:max-content;max-width:calc(100% - 1.3rem);min-height:2.65rem;padding:.3rem;position:absolute;bottom:.65rem;left:50%;overflow-x:auto;transform:translate(-50%);box-shadow:0 8px 26px #12292024}.whiteboard-page-canvas-first .whiteboard-canvas-actions::-webkit-scrollbar{display:none}.whiteboard-page-canvas-first .whiteboard-canvas-actions .button{min-height:2.2rem;padding:.35rem .55rem}.whiteboard-page-canvas-first .whiteboard-page-title-form,.whiteboard-page-canvas-first :is(.whiteboard-image-editor,.whiteboard-text-editor){z-index:14;width:min(46rem,100% - 1.5rem);position:absolute;top:4.7rem;right:.75rem;box-shadow:0 14px 36px #12292029}.whiteboard-page-canvas-first .whiteboard-canvas{width:100%;height:100%;min-height:0;max-height:none;box-shadow:none;border:0;border-radius:.55rem;display:block}.whiteboard-page-canvas-first .whiteboard-footer{z-index:13;pointer-events:none;background:0 0;border:0;min-height:0;padding:0;position:absolute;bottom:.75rem;left:.75rem;right:.75rem}.whiteboard-page-canvas-first .whiteboard-footer>*{pointer-events:auto}.whiteboard-page-canvas-first .whiteboard-footer-status{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:.55rem;padding:.32rem .5rem;box-shadow:0 6px 18px #1229201a}.whiteboard-page-canvas-first .whiteboard-shortcuts{margin-left:auto;margin-right:8.5rem}.whiteboard-page-canvas-first .whiteboard-shortcuts>summary{border:1px solid var(--line);background:var(--surface);color:#0000;border-radius:.55rem;place-items:center;width:2.2rem;height:2.2rem;font-size:0;display:grid;overflow:hidden}.whiteboard-page-canvas-first .whiteboard-shortcuts>summary:before{content:"⌨";color:var(--primary);font-size:1rem}.whiteboard-page-canvas-first .whiteboard-footer-actions .button{background:var(--surface);min-height:2.2rem;padding:.35rem .55rem;font-size:.72rem}@media (max-width:760px){body:has(.whiteboard-page-canvas-first) .content{padding:.25rem}.whiteboard-page-canvas-first{gap:.25rem;height:calc(100dvh - .5rem)}.whiteboard-page-canvas-first>.whiteboard-page-heading{min-height:2.75rem;padding:0 .15rem;display:flex}.whiteboard-page-identity h1{font-size:.92rem}.whiteboard-page-identity .learning-room-context{max-width:42vw;padding-inline:.25rem;font-size:.68rem}.whiteboard-page-identity .learning-room-context>span:first-child,.whiteboard-page-identity .learning-room-context>span[aria-hidden=true]{display:none}.whiteboard-page-canvas-first .learning-room-nav{flex-direction:row;align-items:center;width:auto;min-width:0;overflow:hidden}.whiteboard-page-canvas-first .learning-room-tabs{width:auto;min-width:0}.whiteboard-page-canvas-first .learning-room-tab{flex:none;min-width:0;padding-inline:.45rem}.whiteboard-page-canvas-first .learning-room-tab:not([aria-current=page]){display:none}.whiteboard-page-canvas-first .learning-room-back{border:1px solid var(--primary-dark);border-radius:.5rem;min-height:2rem;padding-inline:.45rem}.whiteboard-page-canvas-first .whiteboard-editor{border-radius:.6rem}.whiteboard-page-canvas-first .whiteboard-topbar{border-radius:.68rem;width:calc(100% - .7rem);padding:.25rem;top:.35rem}.whiteboard-page-canvas-first .whiteboard-status-row{max-width:52vw;top:calc(100% + .3rem)}.whiteboard-page-canvas-first .whiteboard-presence{max-width:100%;font-size:.62rem;overflow:hidden}.whiteboard-page-canvas-first .whiteboard-presence>span:not(.whiteboard-presence-dot):not(.whiteboard-presence-actions){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whiteboard-page-canvas-first :is(.whiteboard-tool,.whiteboard-drawing-preset),.whiteboard-page-canvas-first .whiteboard-disclosure>summary{flex-basis:2.15rem;width:2.15rem;min-height:2.15rem}.whiteboard-page-canvas-first .whiteboard-tool-group+.whiteboard-tool-group{margin-left:0;padding-left:.25rem}.whiteboard-page-canvas-first .whiteboard-disclosure>:is(.whiteboard-controls,.whiteboard-background-controls,.whiteboard-import-actions){z-index:1002;width:auto;max-height:calc(100dvh - 4rem);position:fixed;top:3.5rem;left:.5rem;right:.5rem;overflow:auto}.whiteboard-page-canvas-first .whiteboard-controls{flex-direction:column;align-items:stretch}.whiteboard-page-canvas-first .whiteboard-controls label{justify-content:space-between;width:100%}.whiteboard-page-canvas-first .whiteboard-controls input[type=range]{width:min(60vw,18rem)}.whiteboard-page-canvas-first .whiteboard-active-tool{max-width:42vw;padding:.24rem .3rem .24rem .45rem;top:calc(100% + .3rem)}.whiteboard-page-canvas-first .whiteboard-active-tool-copy{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.whiteboard-page-canvas-first :is(.whiteboard-permission-notice,.whiteboard-capacity-notice,.whiteboard-student-hint){width:calc(100vw - 1.2rem);max-width:none;font-size:.68rem;top:calc(100% + 2.55rem);right:0}.whiteboard-page-canvas-first .whiteboard-pages{border-right:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;width:min(12rem,100% - .7rem);max-height:none;top:3.55rem;bottom:3.9rem;left:.35rem;overflow:hidden auto}.whiteboard-page-canvas-first .whiteboard-pages>button{width:100%}.whiteboard-page-canvas-first .whiteboard-page-preview{display:block}.whiteboard-page-canvas-first .whiteboard-canvas-shell{padding:.25rem}.whiteboard-page-canvas-first .whiteboard-canvas-actions{max-width:calc(100% - .7rem);bottom:.35rem}.whiteboard-page-canvas-first .whiteboard-canvas{min-height:0;max-height:none}.whiteboard-page-canvas-first .whiteboard-footer{bottom:3.45rem;left:.45rem;right:.45rem}.whiteboard-page-canvas-first .whiteboard-footer-status,.whiteboard-page-canvas-first .whiteboard-shortcuts{display:none}.whiteboard-page-canvas-first .whiteboard-footer{justify-content:flex-end}.whiteboard-page-canvas-first .whiteboard-footer-actions .button-secondary{display:none}.whiteboard-page-canvas-first .whiteboard-page-title-form,.whiteboard-page-canvas-first :is(.whiteboard-image-editor,.whiteboard-text-editor){width:calc(100% - .8rem);max-height:calc(100% - 7.8rem);top:3.7rem;right:.4rem;overflow:auto}.whiteboard-page-canvas-first .whiteboard-pdf-preview{width:calc(100% - .8rem);max-height:calc(100% - 4.2rem);top:3.7rem;right:.4rem}}@media (min-width:1500px){.whiteboard-page-canvas-first :is(.whiteboard-stroke-settings,.whiteboard-background-settings,.whiteboard-future-imports)>summary{gap:.35rem;width:auto;padding-inline:.4rem}.whiteboard-page-canvas-first :is(.whiteboard-stroke-settings,.whiteboard-background-settings,.whiteboard-future-imports)>summary>strong{white-space:nowrap;font-size:.66rem;display:block}}[data-theme=dark] .whiteboard-page-canvas-first .whiteboard-editor{background:#0c1511}[data-theme=dark] .whiteboard-page-canvas-first :is(.whiteboard-topbar,.whiteboard-canvas-actions,.whiteboard-pages,.whiteboard-footer-status){background:color-mix(in srgb, var(--surface) 92%, transparent)}[data-theme=dark] .whiteboard-presence{color:var(--muted);border-color:var(--line);background:var(--surface-muted)}[data-theme=dark] .whiteboard-presence.state-connected{color:#8ee2bf;background:color-mix(in srgb, var(--primary) 22%, var(--surface))}[data-theme=dark] .whiteboard-presence.state-offline{color:#f1ca77;background:color-mix(in srgb, #7b5a18 32%, var(--surface))}.print-schedule{display:none}.quick-access-trigger{border:1px solid var(--line);min-height:2.35rem;color:var(--primary-dark);background:var(--surface);cursor:pointer;font:inherit;border-radius:.7rem;align-items:center;gap:.45rem;padding:.35rem .65rem;font-weight:800;display:inline-flex}.quick-access-trigger:hover{border-color:var(--primary)}.quick-access-trigger kbd{border:1px solid var(--line);color:var(--muted);background:var(--background);border-radius:.35rem;padding:.16rem .32rem;font-size:.65rem}.quick-access-dialog{border:1px solid var(--line);width:min(100% - 2rem,44rem);max-height:min(46rem,100dvh - 2rem);color:var(--ink);background:var(--surface);border-radius:1.1rem;padding:0;overflow:hidden;box-shadow:0 28px 90px #0d1d1752}.quick-access-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0d1d178a}.quick-access-dialog>header,.schedule-action-sheet>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.05rem 1.15rem;display:flex}.quick-access-dialog>header div{gap:.2rem;display:grid}.quick-access-dialog>header small{color:var(--muted);font-weight:600}.quick-access-close{width:2.15rem;height:2.15rem;color:var(--muted);background:var(--background);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;padding:0;font-size:1.45rem;line-height:1;display:grid}.quick-access-close:hover{color:var(--ink)}.quick-access-search{padding:1rem 1.15rem .25rem;display:block}.quick-access-search input{border:1px solid var(--line);width:100%;min-height:3.25rem;color:var(--ink);background:var(--background);font:inherit;border-radius:.8rem;padding:.8rem 1rem;font-size:1rem}.quick-access-sections{gap:1.15rem;max-height:min(35rem,100dvh - 10rem);padding:1rem 1.15rem 1.25rem;display:grid;overflow:auto}.quick-access-section-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.55rem;font-size:.68rem;font-weight:850;display:block}.quick-access-routes{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.quick-access-routes a{border:1px solid var(--line);background:var(--background);border-radius:.7rem;gap:.12rem;padding:.7rem .8rem;display:grid}.quick-access-routes a:hover{border-color:var(--primary)}.quick-access-routes small,.quick-access-students small{color:var(--muted)}.quick-access-students{gap:.45rem;display:grid}.quick-access-students article{border:1px solid var(--line);border-radius:.7rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .75rem;display:flex}.quick-access-students article>div:first-child{min-width:0;display:grid}.quick-access-students article>div:last-child{flex-wrap:wrap;justify-content:flex-end;gap:.35rem;display:flex}.quick-access-students article a{color:var(--primary);border-radius:.45rem;padding:.32rem .45rem;font-size:.73rem;font-weight:800}.quick-access-students article a:hover{background:var(--accent)}.student-quick-actions{z-index:12;border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:.9rem;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .8rem;display:flex;position:sticky;top:5rem;box-shadow:0 8px 22px #1e3e3214}.student-quick-context,.student-quick-buttons{align-items:center;gap:.55rem;display:flex}.student-quick-context>span{border-right:1px solid var(--line);gap:.08rem;padding-right:.75rem;display:grid}.student-quick-context>span:last-child{border-right:0}.student-quick-context small{color:var(--muted);font-size:.68rem}.student-quick-context strong{font-size:.78rem}.student-quick-buttons form{display:contents}.schedule-row-link{color:inherit;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--primary) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--primary) 35%, transparent);text-underline-offset:.18em}.compact-action-menu{flex:none;position:relative}.compact-action-menu>summary{cursor:pointer;list-style:none}.compact-action-menu>summary::-webkit-details-marker{display:none}.compact-action-menu>div{z-index:35;border:1px solid var(--line);background:var(--surface);border-radius:.7rem;min-width:12.5rem;padding:.35rem;display:grid;position:absolute;top:calc(100% + .35rem);right:0;box-shadow:0 14px 34px #0d1d172e}.compact-action-menu>div :is(a,button){width:100%;min-height:2.45rem;color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:.45rem;align-items:center;padding:.5rem .65rem;font-size:.78rem;font-weight:750;display:flex}.compact-action-menu>div :is(a,button):hover{background:var(--background)}.compact-action-menu>div .danger{color:var(--danger)}.student-card{position:relative}.student-card-more{align-self:flex-start}.student-card-more>summary{border:1px solid var(--line);min-width:2.2rem;min-height:2.2rem;color:var(--muted);background:var(--surface);cursor:pointer;border-radius:.6rem;place-items:center;font-weight:900;display:grid}.week-calendar-event{appearance:none;text-align:left;cursor:pointer;border-top:0;border-bottom:0;border-right:0;width:auto;font-family:inherit}.schedule-action-backdrop{z-index:39;background:#0d1d1747;position:fixed;inset:0}.schedule-action-sheet{border-left:1px solid var(--line);width:min(29rem,92vw);height:100%;color:var(--ink);background:var(--surface);flex-direction:column;gap:1rem;padding-bottom:1.1rem;display:flex;position:absolute;top:0;right:0;box-shadow:-18px 0 48px #0d1d1738}.schedule-action-sheet header{padding:1.2rem}.schedule-action-sheet header h2{margin:.15rem 0 .25rem}.schedule-action-sheet header p{color:var(--muted);margin:0}.schedule-action-primary{flex-wrap:wrap;gap:.55rem;padding:0 1.2rem;display:flex}.schedule-action-sheet nav{border-top:1px solid var(--line);gap:.2rem;margin-top:auto;padding:1rem 1.2rem 0;display:grid}.schedule-action-sheet nav a{border-radius:.55rem;align-items:center;min-height:2.7rem;padding:.55rem .7rem;font-weight:750;display:flex}.schedule-action-sheet nav a:hover{background:var(--background)}.schedule-action-sheet nav a.danger{color:var(--danger)}.form-actions,.page-heading-actions,.next-card-actions,.lesson-actions,.lesson-history-actions,.package-actions,.package-template-actions,.family-summary-card-actions,.reschedule-decision-actions,.conversation-card-actions,.messenger-connection-card>.messenger-connection-actions,.messenger-connection-confirmation-actions,.student-quick-access-actions,.student-bulk-selection-actions,.group-lesson-member-actions,.classroom-ended-actions,.livekit-call-heading-actions,.livekit-preflight-actions,.livekit-recovery-actions,.whiteboard-image-editor-actions,.whiteboard-footer-actions,.schedule-action-primary{gap:.75rem}@media (max-width:800px){.button-row,.actions-row{flex-direction:column;align-items:stretch}.button-row>form,.actions-row>form,.button-row .button,.actions-row .button{width:100%}.quick-access-trigger{justify-content:center;width:2.35rem;padding:0}.quick-access-trigger-label,.quick-access-trigger kbd{display:none}.student-quick-actions{flex-direction:column;align-items:stretch;gap:.55rem;position:static}.student-quick-context{overflow-x:auto}.student-quick-buttons{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.student-quick-buttons>.button,.student-quick-buttons>form .button,.student-quick-buttons>details>summary{width:100%;min-width:0;padding-inline:.45rem}.student-quick-buttons .compact-action-menu>div{position:fixed;inset:auto .75rem .75rem}.schedule-action-sheet{border-top:1px solid var(--line);border-left:0;border-radius:1rem 1rem 0 0;width:100%;height:auto;max-height:82dvh;top:auto;bottom:0;overflow:auto;box-shadow:0 -16px 44px #0d1d173d}.student-bulk-toolbar{top:4.1rem}.student-bulk-fields{grid-template-columns:1fr}}@media (max-width:520px){.quick-access-dialog{width:calc(100% - 1rem)}.quick-access-routes{grid-template-columns:1fr}.quick-access-students article{flex-direction:column;align-items:flex-start}.quick-access-students article>div:last-child{justify-content:flex-start}.student-quick-context>span:nth-child(2){display:none}}@media print{html,body{color:#15241e!important;background:#fff!important}.topbar,.sidebar,.mobile-navigation,.print-hide,.week-calendar-scroll,.schedule-drag-hint,.schedule-move-backdrop,.schedule-action-backdrop{display:none!important}.workspace{display:block!important}.content{max-width:none!important;padding:0!important}.page-stack{display:block!important}.page-heading{margin:0 0 5mm!important;display:block!important}.page-heading .eyebrow{margin-bottom:1mm}.page-heading h1{margin:0;font-size:18pt}.page-heading .muted{margin:1mm 0 0;color:#4a5b53!important}.print-schedule{display:block!important}.family-weekly-schedule-scroll{background:#fff!important;border:0!important;overflow:visible!important}.family-weekly-schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:3mm!important;min-width:0!important;padding:0!important}.family-weekly-schedule-day{break-inside:avoid;background:#fff!important;border-color:#b8c5bd!important;border-radius:0!important;gap:2mm!important;padding:2.5mm!important}.family-weekly-schedule-day.current{background:#f4faf6!important;border-color:#6d9b86!important}.family-weekly-schedule-card{box-shadow:none!important;color:#15241e!important;background:#fff!important;border-color:#b8c5bd!important;transform:none!important}.family-weekly-schedule-card-link{display:none!important}.print-schedule h2{margin:0 0 1mm;font-size:13pt}.print-schedule>p{margin:0 0 4mm;font-size:9pt;color:#4a5b53!important}.print-schedule table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:8.5pt}.print-schedule th,.print-schedule td{overflow-wrap:anywhere;text-align:left;vertical-align:top;border:1px solid #b8c5bd;padding:2.2mm}.print-schedule th{color:#173f31;letter-spacing:.04em;text-transform:uppercase;font-size:7.5pt;background:#e7f2ec!important}.print-schedule th:first-child,.print-schedule th:nth-child(2){width:13%}.print-schedule th:nth-child(3){width:27%}.print-schedule th:nth-child(4){width:20%}.print-schedule-family th:first-child{width:30%}.print-schedule-family th:nth-child(2){width:22%}.print-schedule-family th:nth-child(3){width:28%}.print-schedule-family th:nth-child(4){width:20%}.print-schedule thead{display:table-header-group}.print-schedule tr{break-inside:avoid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.marketing-home-slide.slide-schedule{opacity:1;transform:none}.marketing-home-slide.slide-closure,.marketing-home-slide.slide-family{opacity:0}.marketing-home-slide-dots .dot-schedule{background:var(--primary);width:1.5rem}.marketing-home-slide-dots .dot-closure,.marketing-home-slide-dots .dot-family{background:var(--line);width:.45rem}.marketing-home-closure-results li{opacity:1;transform:none}.marketing-home-close-button{box-shadow:none;transform:none}.marketing-home-demo-cursor{display:none}}.admin-integration-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;display:grid}.admin-integration-card{align-items:flex-start;min-height:142px}.admin-integration-card>strong{font-size:1.08rem}.integration-ready{color:var(--primary)}.integration-misconfigured{color:var(--danger)}.admin-report-periods{width:fit-content;max-width:100%}.admin-report-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}
