@import"https://fonts.googleapis.com/css2?family=Nunito:wght@700;800;900&family=Nunito+Sans:opsz,wght@6..12,400;6..12,600;6..12,700&family=Caveat:wght@600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";.global-student-search{position:relative;display:flex;align-items:center;gap:8px;width:min(520px,100%);padding:0 12px;border:1px solid var(--border-color, #dfe3ea);border-radius:14px;background:var(--surface-raised, #fff)}.global-student-search:focus-within{border-color:var(--color-primary, #3157d5);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary, #3157d5) 16%,transparent)}.global-student-search input{width:100%;min-height:44px;border:0;outline:0;background:transparent;font:inherit}.global-student-search__clear{display:grid;place-items:center;border:0;background:transparent;cursor:pointer}.global-student-search__popover{position:absolute;z-index:50;top:calc(100% + 8px);left:0;right:0;overflow:hidden;border:1px solid var(--border-color, #dfe3ea);border-radius:14px;background:var(--surface-raised, #fff);box-shadow:0 18px 48px #10182829}.global-student-search__popover>p{margin:0;padding:16px;color:var(--text-muted, #667085)}.global-student-search__popover ul{margin:0;padding:6px;list-style:none}.global-student-search__popover li button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:10px;background:transparent;text-align:left;cursor:pointer}.global-student-search__popover li[aria-selected=true] button,.global-student-search__popover li button:hover,.global-student-search__popover li button:focus-visible{background:color-mix(in srgb,var(--color-primary, #3157d5) 9%,white);outline:none}.global-student-search__popover span{display:grid;gap:2px}.global-student-search__popover small{color:var(--text-muted, #667085)}@media(max-width:720px){.global-student-search{width:100%}.global-student-search__popover{position:fixed;top:72px;left:12px;right:12px}}.lesson-invitation{position:fixed;right:24px;bottom:24px;z-index:1200;width:min(440px,calc(100vw - 32px));display:grid;grid-template-columns:auto 1fr auto;gap:14px;padding:20px;border:1px solid rgba(50,190,116,.35);border-radius:22px;background:#fffffffa;box-shadow:0 24px 70px #07182c3d;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.lesson-invitation__icon,.live-waiting-room__icon{display:grid;place-items:center;width:52px;height:52px;border-radius:17px;color:#fff;background:linear-gradient(145deg,#1cbd72,#087a50)}.lesson-invitation__content h2{margin:4px 0;font-size:1.1rem}.lesson-invitation__content>p{margin:0;color:var(--muted)}.lesson-invitation__expiry{display:flex;align-items:center;gap:6px;margin-top:10px;color:var(--muted);font-size:.82rem}.lesson-invitation__actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.lesson-invitation__close{align-self:start}.live-start-card{max-width:760px}.live-start-card__heading{display:flex;gap:16px;align-items:flex-start;margin-bottom:22px}.live-start-card__heading h2{margin:2px 0 5px}.live-start-form{display:grid;gap:16px}.live-start-form>.button{justify-self:start}.live-waiting-room{max-width:720px;text-align:center;padding:40px}.live-waiting-room__icon{margin:0 auto 16px;width:66px;height:66px}.live-waiting-room__icon.is-ready{background:linear-gradient(145deg,#168c58,#075c3b)}.live-waiting-room h2{margin:8px 0}.live-waiting-room>p{color:var(--muted)}.live-waiting-room__next{display:flex;gap:12px;align-items:center;text-align:left;margin:28px auto 0;padding:16px;max-width:510px;border-radius:16px;background:var(--surface-muted,#f4f7f8)}.live-waiting-room__next span{display:grid;gap:3px}.live-waiting-room__next small{color:var(--muted)}.live-invitation-toolbar{margin-top:14px}@media(max-width:640px){.lesson-invitation{right:16px;bottom:16px;padding:16px;grid-template-columns:auto 1fr}.lesson-invitation__close{position:absolute;right:10px;top:10px}.lesson-invitation__content{padding-right:18px}.live-waiting-room{padding:28px 18px}}.live-call-card{max-width:920px;margin-top:18px;padding:22px}.live-call-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.live-call-card__header h2{margin:4px 0 0}.live-call-status{display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border-radius:999px;background:var(--surface-muted,#f2f5f6);color:var(--muted);font-size:.82rem;font-weight:700}.live-call-status--connected{background:#e8f8ef;color:#12683f}.live-call-status--failed{background:#fff0ef;color:#a12d25}.live-call-stage{position:relative;overflow:hidden;min-height:420px;border-radius:22px;background:#0e1720}.live-call-video{display:block;width:100%;height:100%;object-fit:cover;background:#0e1720}.live-call-video--remote{position:absolute;inset:0}.live-call-video--local{position:absolute;right:16px;bottom:16px;width:min(28%,220px);height:auto;aspect-ratio:16/10;border:2px solid rgba(255,255,255,.9);border-radius:16px;box-shadow:0 14px 32px #0000004d;z-index:2}.live-call-placeholder{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:8px;color:#dbe5ec;text-align:center}.live-call-placeholder span{color:#9fb1bd;font-size:.9rem}.live-call-controls{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.live-call-note{margin:14px 0 0;color:var(--muted);font-size:.82rem;line-height:1.45}@media(max-width:760px){.live-call-card{padding:16px}.live-call-card__header{display:grid}.live-call-stage{min-height:300px}.live-call-video--local{right:10px;bottom:10px;width:34%}.live-call-controls>.button{flex:1 1 180px}}.live-call-card__header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.live-presence{display:inline-flex;align-items:center;gap:6px;margin-top:7px;color:var(--muted);font-size:.82rem}.live-presence.is-online{color:#14754a}.live-call-float-toggle{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--border,#dce4e7);border-radius:11px;background:var(--surface,#fff);color:var(--text,#10222c);cursor:pointer}.live-call-float-toggle:hover{background:var(--surface-muted,#f2f5f6)}.live-call-card--floating{position:fixed;right:22px;bottom:22px;z-index:1350;width:min(420px,calc(100vw - 32px));max-width:none;margin:0;padding:14px;box-shadow:0 28px 80px #05142157;border:1px solid rgba(40,91,104,.18);background:#fffffffa;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.live-call-card--floating .live-call-stage{min-height:220px}.live-call-card--floating .live-call-note{display:none}.live-call-card--floating .live-call-controls{gap:7px}.live-call-card--floating .live-call-controls>.button{padding-inline:10px}@media(max-width:760px){.live-call-card--floating{right:12px;bottom:12px;width:calc(100vw - 24px)}.live-call-card__header-actions{justify-content:flex-start}}.live-screen-share-state{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:6px 10px;border-radius:999px;background:#e8f4ff;color:#17618d;font-size:.82rem;font-weight:700}.live-call-video--local.is-screen-share{width:min(42%,320px);aspect-ratio:16/9;object-fit:contain;background:#111c25}.live-call-card--floating .live-screen-share-state{font-size:.76rem;padding:5px 8px}.live-call-card--floating .live-call-video--local.is-screen-share{width:44%}.live-whiteboard-card{max-width:1080px;margin-top:18px;padding:20px}.live-whiteboard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.live-whiteboard-header h2{margin:4px 0 2px}.live-whiteboard-header p{margin:0;color:var(--muted)}.live-whiteboard-sync{display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border-radius:999px;background:var(--surface-muted,#f2f5f6);color:var(--muted);font-size:.82rem;font-weight:700}.live-whiteboard-sync.is-ready{background:#e8f8ef;color:#12683f}.live-whiteboard-toolbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:12px}.live-whiteboard-colors{display:flex;align-items:center;gap:7px;padding:4px 6px;border:1px solid var(--border,#dce4e7);border-radius:999px;background:var(--surface,#fff)}.live-whiteboard-color{width:24px;height:24px;border:2px solid rgba(255,255,255,.95);border-radius:50%;box-shadow:0 0 0 1px #0f212b33;cursor:pointer}.live-whiteboard-color.is-active{box-shadow:0 0 0 3px #1cbd7240,0 0 0 1px #0f212b40}.live-whiteboard-count{margin-left:auto;color:var(--muted);font-size:.82rem}.live-whiteboard-stage{position:relative;overflow:hidden;width:100%;aspect-ratio:12/7;border:1px solid var(--border,#dce4e7);border-radius:20px;background-color:#fff;background-image:linear-gradient(rgba(18,43,55,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(18,43,55,.055) 1px,transparent 1px);background-size:28px 28px;touch-action:none;-webkit-user-select:none;user-select:none}.live-whiteboard-stage svg{display:block;width:100%;height:100%;cursor:crosshair;touch-action:none}.live-whiteboard-stage.is-eraser svg{cursor:cell}.live-whiteboard-stage path[data-element-id]{pointer-events:stroke}.live-whiteboard-empty{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;color:#7e9099;font-size:.92rem;text-align:center;padding:24px}.live-whiteboard-note{margin:12px 0 0;color:var(--muted);font-size:.82rem;line-height:1.45}@media(max-width:760px){.live-whiteboard-card{padding:14px}.live-whiteboard-header{display:grid}.live-whiteboard-toolbar>.button{flex:1 1 140px}.live-whiteboard-count{width:100%;margin-left:0}.live-whiteboard-stage{min-height:330px;aspect-ratio:auto}}.pet{--outline: #0b2a4f}.pet .breathe{transform-box:fill-box;transform-origin:50% 100%;animation:breathe 3.2s ease-in-out infinite}.pet .eye{transform-box:fill-box;transform-origin:50% 50%;animation:blink 4.6s infinite}.pet.m-happy .jump{animation:hop 1.4s ease-in-out infinite}.pet.m-sleep .breathe{animation-duration:5.5s}.pet .zz{animation:floatz 3s ease-in-out infinite;opacity:0}.pet .zz.z2{animation-delay:1.5s}.pet .spark{transform-box:fill-box;transform-origin:center;animation:twinkle 1.8s ease-in-out infinite}.pet .spark.s2{animation-delay:.6s}.pet .spark.s3{animation-delay:1.2s}.pet .tail{transform-box:fill-box;transform-origin:0% 100%;animation:wag 1.6s ease-in-out infinite}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.025,.975)}}@keyframes blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}@keyframes hop{0%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(0)}}@keyframes floatz{0%{opacity:0;transform:translate(0)}30%{opacity:1}to{opacity:0;transform:translate(12px,-26px)}}@keyframes twinkle{0%,to{transform:scale(.6);opacity:.4}50%{transform:scale(1.1);opacity:1}}@keyframes wag{0%,to{transform:rotate(0)}50%{transform:rotate(-8deg)}}@media(prefers-reduced-motion:reduce){.pet *{animation:none!important}.pet .zz{opacity:1}}.pet-card{margin-bottom:18px;background:linear-gradient(135deg,#edf5fd,#fffdf8 55%,#fff4d6)}.pet-art svg{display:block;width:100%;height:auto}.pet-home{display:grid;grid-template-columns:170px minmax(0,1fr);gap:18px;align-items:center}.pet-home__art{width:170px}.pet-home__body{display:grid;gap:12px;min-width:0}.pet-bubble{position:relative;background:#fff;border-radius:16px;padding:12px 14px;box-shadow:0 2px #0b2a4f14}.pet-bubble:before{content:"";position:absolute;left:-9px;top:22px;border:9px solid transparent;border-right-color:#fff;border-left:0}.pet-bubble p{margin:0;font:700 1.55rem/1.15 Caveat,Bradley Hand,cursive;color:#1f2d3d}.pet-bubble small{display:block;margin-top:4px;color:var(--muted);font-size:.78rem}.pet-home__meta{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}.pet-home__meta strong{font:800 1.05rem Manrope,sans-serif;color:#0b2a4f}.pet-home__meta span{color:var(--muted);font-size:.82rem}.pet-home__edit{margin-left:auto;border:0;background:transparent;color:#175cd3;font-weight:700;cursor:pointer}.pet-xp{display:grid;gap:6px}.pet-xp__bar{height:10px;border-radius:99px;background:#0b2a4f14;overflow:hidden}.pet-xp__bar i{display:block;height:100%;background:#2f7d4c;border-radius:inherit;transition:width .6s ease}.pet-xp__row{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:.78rem;font-variant-numeric:tabular-nums}.pet-picker{display:grid;gap:14px}.pet-picker__head{display:grid;gap:3px}.pet-picker__head strong{font:800 1.15rem Manrope,sans-serif}.pet-picker__head span{color:var(--muted)}.pet-picker__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pet-choice{display:grid;justify-items:center;gap:4px;padding:10px 6px;border:2px solid transparent;border-radius:16px;background:#fff;cursor:pointer}.pet-choice .pet-art{width:100%;max-width:120px}.pet-choice[aria-checked=true]{border-color:#2f7d4c;box-shadow:0 0 0 4px #2f7d4c1f}.pet-choice:focus-visible{outline:3px solid #2f7d4c;outline-offset:2px}.pet-picker__name{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.pet-picker__actions{display:flex;gap:8px}@media(max-width:640px){.pet-home{grid-template-columns:110px minmax(0,1fr);gap:12px}.pet-home__art{width:110px}.pet-picker__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-picker__name{grid-template-columns:1fr}}.pet-lane{position:fixed;left:272px;right:0;bottom:8px;height:0;z-index:40;pointer-events:none}.pet-walker{position:absolute;bottom:0;left:8px;width:92px;transition:transform 3.8s linear;pointer-events:none}.pet-body{pointer-events:auto;display:block;width:92px;padding:0;border:0;background:transparent;cursor:pointer;transition:transform .3s}.pet-body:focus-visible{outline:3px solid #2f7d4c;outline-offset:2px;border-radius:16px}.pet-figure{display:block}.pet-figure svg{display:block;width:100%;height:auto}.pet-walker.is-walking .pet-figure{animation:pet-bob .45s ease-in-out infinite}.pet-walker.is-excited .pet-figure{animation:pet-excited .7s ease-in-out infinite}@keyframes pet-bob{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-5px) rotate(2deg)}}@keyframes pet-excited{0%,to{transform:translateY(0)}30%{transform:translateY(-14px)}60%{transform:translateY(0)}}.pet-talk{pointer-events:auto;position:absolute;bottom:100px;left:0;width:min(300px,calc(100vw - 32px));background:#fff;border-radius:16px;padding:12px 14px;box-shadow:0 14px 40px #0b2a4f33;border:1px solid rgba(11,42,79,.08)}.pet-talk.is-left{left:auto;right:0}.pet-talk p{margin:0;font:700 1.3rem/1.15 Caveat,Bradley Hand,cursive;color:#1f2d3d}.pet-talk small{display:block;margin-top:3px;color:#5c6875;font-size:.75rem}.pet-talk__actions,.pet-tour__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}.pet-btn{border:0;border-radius:999px;background:#2f7d4c;color:#fff;font-weight:800;padding:7px 14px;cursor:pointer}.pet-link{border:0;background:transparent;color:#175cd3;font-weight:700;cursor:pointer;padding:4px 2px}.pet-btn:focus-visible,.pet-link:focus-visible,.pet-dock:focus-visible{outline:3px solid #2f7d4c;outline-offset:2px}.pet-dock{position:fixed;right:14px;bottom:14px;z-index:40;width:52px;height:52px;padding:4px;border-radius:50%;border:2px solid #fff;background:#edf5fd;box-shadow:0 6px 18px #0b2a4f33;cursor:pointer;overflow:hidden}.pet-tour{position:fixed;inset:0;z-index:1300}.pet-tour__dim{position:absolute;inset:0;background:#0f172a8c}.pet-tour__ring{position:absolute;border-radius:14px;box-shadow:0 0 0 4px #f5b301,0 0 0 9999px #0f172a8c;transition:all .35s ease;pointer-events:none}.pet-tour__card{position:absolute;width:min(340px,calc(100vw - 24px));display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px;align-items:start;background:#fff;border-radius:18px;padding:14px;box-shadow:0 24px 60px #07182c4d}.pet-tour__card p{margin:0;font:700 1.35rem/1.15 Caveat,Bradley Hand,cursive;color:#1f2d3d}.pet-tour__card small{display:block;margin-top:3px;color:#5c6875;font-size:.75rem}@media(max-width:900px){.pet-lane{left:0}.pet-walker,.pet-body{width:72px}.pet-talk{bottom:80px}}@media(max-width:640px){.pet-lane.is-above-card{bottom:210px}}@media(prefers-reduced-motion:reduce){.pet-walker{transition:none}.pet-walker .pet-figure{animation:none!important}}@media print{.pet-lane,.pet-dock,.pet-tour{display:none!important}}.calendar-overview{position:relative;display:grid;grid-template-columns:minmax(240px,.8fr) minmax(520px,1.6fr);gap:28px;align-items:center;overflow:hidden;margin-bottom:18px;padding:24px 26px;border:1px solid rgba(255,255,255,.1);border-radius:22px;color:#fff;background:radial-gradient(circle at 92% 10%,rgba(56,189,151,.28),transparent 32%),linear-gradient(125deg,#102f42,#163d4d 62%,#185649);box-shadow:0 18px 45px #102f4229}.calendar-overview:after{content:"";position:absolute;width:220px;height:220px;right:-80px;bottom:-145px;border:34px solid rgba(255,255,255,.06);border-radius:50%;pointer-events:none}.calendar-overview__intro{position:relative;z-index:1;display:grid;gap:5px}.calendar-overview__intro .eyebrow{color:#87e1c0}.calendar-overview__intro>strong{font:750 1.35rem/1.3 Manrope,sans-serif;text-transform:capitalize}.calendar-overview__intro p{margin:0;color:#ffffffa8;font-size:.82rem}.calendar-overview__metrics{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(105px,1fr));gap:10px}.calendar-overview__metrics>div{display:flex;align-items:center;gap:11px;min-height:72px;padding:13px;border:1px solid rgba(255,255,255,.1);border-radius:15px;background:#ffffff12;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.calendar-overview__metrics>div>span:last-child{display:grid;gap:2px}.calendar-overview__metrics small{color:#ffffffad;font-size:.68rem}.calendar-overview__metrics strong{font:750 1.28rem/1 Manrope,sans-serif}.calendar-overview__icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:11px;color:#99e7c9;background:#62daad1f}.calendar-filter-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;grid-column:1 / -1;padding-top:4px;color:var(--text-muted, #667085)}.calendar-card{border-radius:20px;box-shadow:0 16px 38px #102f4214}.calendar-toolbar>strong{text-transform:capitalize}.week-grid header{position:relative}.week-grid header small{position:absolute;right:8px;top:8px;padding:3px 6px;border-radius:999px;color:#17654e;background:#d9f4e9;font-size:.58rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.lesson-chip-wrap{transition:transform .18s ease,box-shadow .18s ease}.lesson-chip-wrap:hover{transform:translateY(-1px)}.lesson-chip{box-shadow:inset 0 0 0 1px #2080610a}.lesson-chip:focus-visible,.month-day:focus-visible,.day-empty:focus-visible{outline:3px solid rgba(32,128,97,.24);outline-offset:2px}.calendar-filter-summary strong{color:var(--text-primary, #182230)}.day-empty{display:grid;place-items:center;gap:6px;min-height:88px;width:100%;border:1px dashed var(--border-color, #d0d5dd);border-radius:12px;background:transparent;color:var(--text-muted, #667085);font:inherit;cursor:pointer}.day-empty:hover,.day-empty:focus-visible{border-color:var(--color-primary, #3157d5);color:var(--color-primary, #3157d5);background:color-mix(in srgb,var(--color-primary, #3157d5) 6%,white)}.day-empty span{font-size:.8rem;font-weight:700}@media(max-width:720px){.calendar-overview{grid-template-columns:1fr;gap:18px;padding:20px}.calendar-overview__metrics{grid-template-columns:repeat(2,1fr)}.calendar-filter-summary{align-items:stretch;flex-direction:column}.calendar-filter-summary .button{width:100%}}@media(max-width:420px){.calendar-overview__metrics{grid-template-columns:1fr}.calendar-overview__metrics>div{min-height:58px}}.student-combobox{position:relative;display:grid;gap:7px}.student-combobox__control{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid #d6dee7;border-radius:12px;background:#fff}.student-combobox__control:focus-within{border-color:#55ae9d;box-shadow:0 0 0 4px #087e6b16}.student-combobox__control svg{flex:0 0 auto;color:#7b8798}.student-combobox__control input{width:100%;min-width:0;height:42px;border:0;outline:0;background:transparent}.student-combobox__options{position:absolute;z-index:60;top:calc(100% + 6px);left:0;right:0;max-height:270px;overflow:auto;padding:6px;border:1px solid #d6dee7;border-radius:13px;background:#fff;box-shadow:0 18px 40px #10233929}.student-combobox__options button{width:100%;display:grid;gap:2px;padding:10px 11px;border:0;border-radius:9px;background:transparent;text-align:left}.student-combobox__options button:hover,.student-combobox__options button.is-active{background:#eef7f4}.student-combobox__options strong{color:#17253a;font-size:.84rem}.student-combobox__options small{color:var(--muted);font-size:.72rem}.student-combobox__empty{padding:14px 12px;color:var(--muted);font-size:.8rem;text-align:center}.cal2{--tg-hour: 66px}.cal2-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.cal2-nav{display:flex;align-items:center;gap:6px}.cal2-nav .button{min-height:38px;padding:0 12px}.cal2-nav h1{margin:0 0 0 10px;font:800 1.35rem Manrope,sans-serif;letter-spacing:-.02em;color:#14243a;text-transform:capitalize}.cal2-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.cal2-search{display:flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;border:1.5px solid #d6dde5;border-radius:12px;background:#fff;color:#667085}.cal2-search input{border:0;outline:0;background:transparent;min-width:190px;font-size:.92rem}.cal2-search:focus-within{border-color:#087e6b;box-shadow:0 0 0 3px #087e6b1f}.cal2-select{min-height:40px;border:1.5px solid #d6dde5;border-radius:12px;padding:0 10px;background:#fff;font-weight:600;color:#344054}.cal2 .view-switcher{display:inline-flex;gap:4px;padding:4px;border-radius:12px;background:#eef1f4}.cal2 .view-switcher button{border:0;background:transparent;border-radius:9px;padding:7px 14px;font-weight:700;color:#42536a;cursor:pointer}.cal2 .view-switcher button.active{background:#14243a;color:#fff}.cal2-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 12px;color:#667085;font-size:.86rem}.cal2-summary .button{min-height:32px;padding:0 10px;font-size:.82rem}.cal2-hint{margin-left:auto;color:#98a2b3;font-size:.8rem}.cal2-chip{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:999px;background:#e7f5f1;color:#0b5c4d;padding:5px 10px;font-weight:700;cursor:pointer}.cal2-main{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.cal2-main.has-panel{grid-template-columns:minmax(0,1fr) 380px}.cal2-view{min-width:0}.cal2-empty{text-align:center;color:#667085;margin:12px 0 0}.tg{background:#fff;border:1px solid #e4e8ee;border-radius:16px;overflow:hidden}.tg-head{display:grid;grid-template-columns:56px repeat(var(--tg-cols),minmax(0,1fr));border-bottom:1px solid #e4e8ee;background:#fbfcfd}.tg-colhead{display:grid;justify-items:center;padding:8px 4px;border-left:1px solid #eef1f4;min-width:0}.tg-colhead span{font-size:.72rem;font-weight:700;color:#667085;text-transform:uppercase;letter-spacing:.04em}.tg-colhead strong{font:800 1.05rem Manrope,sans-serif;color:#14243a;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tg-colhead.is-today strong{color:#fff;background:#087e6b;border-radius:999px;padding:0 9px}.tg-body{position:relative;overflow-y:auto;max-height:calc(100vh - 230px);min-height:420px;touch-action:pan-y}.tg-inner{position:relative;display:grid;grid-template-columns:56px repeat(var(--tg-cols),minmax(0,1fr))}.tg-hours{position:relative;grid-row:1;grid-column:1}.tg-hours span{position:absolute;right:8px;transform:translateY(-50%);font-size:.72rem;color:#98a2b3;font-variant-numeric:tabular-nums}.tg-hours span:first-child{transform:none}.tg-col{position:relative;grid-row:1;border-left:1px solid #eef1f4;cursor:copy}.tg-col.is-today{background:#087e6b09}.tg-line{position:absolute;left:0;right:0;border-top:1px solid #f0f2f5;pointer-events:none}.tg-now{position:absolute;left:-4px;right:0;border-top:2px solid #e4572e;pointer-events:none;z-index:3}.tg-now:before{content:"";position:absolute;left:0;top:-5px;width:8px;height:8px;border-radius:50%;background:#e4572e}.tg-block{position:absolute;z-index:2;display:grid;align-content:start;gap:1px;padding:4px 8px 4px 9px;border-radius:9px;border-left:4px solid var(--tone-strong);background:var(--tone-soft);color:#14243a;font-size:.8rem;line-height:1.25;overflow:hidden;cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:0 1px 2px #1023390f}.tg-block.is-movable{cursor:grab}.tg-block.is-movable:active{cursor:grabbing}.tg-block:hover{box-shadow:0 4px 14px #10233924;z-index:4}.tg-block:focus-visible{outline:2px solid #087e6b;outline-offset:1px}.tg-block strong{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tg-block small{color:#475467;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tg-block .tg-topic{color:#0b5c4d;font-weight:600}.tg-time{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700;color:#475467;font-variant-numeric:tabular-nums}.tg-block.is-short{grid-template-columns:auto 1fr;align-items:center;column-gap:6px;padding-top:2px}.tg-block.is-short small{display:none}.tg-block.is-done{opacity:.78}.tg-block.is-done .tg-time svg{color:#087e6b}.tg-block.is-absent{background:repeating-linear-gradient(135deg,#fdf2f1 0 6px,#fff 6px 12px);border-left-color:#d92d20}.tg-block.is-absent .tg-time svg{color:#d92d20}.tg-block.is-group{border-left-style:double;border-left-width:5px}.tg-quick{position:absolute;right:4px;top:4px;width:24px;height:24px;display:none;place-items:center;border:0;border-radius:7px;background:#fff;color:#087e6b;box-shadow:0 1px 4px #10233933;cursor:pointer}.tg-block:hover .tg-quick,.tg-block:focus-within .tg-quick{display:grid}.tg-resize{position:absolute;left:0;right:0;bottom:0;height:7px;cursor:ns-resize}.tg-ghost{position:absolute;left:2px;right:2px;z-index:5;border:2px dashed #087e6b;border-radius:9px;background:#e7f5f1d9;color:#0b5c4d;font-size:.78rem;font-weight:800;padding:4px 8px;pointer-events:none}.tone-0{--tone-soft: #e8f1ff;--tone-strong: #3b6fd8}.tone-1{--tone-soft: #e7f5f1;--tone-strong: #0f8a73}.tone-2{--tone-soft: #fff3e0;--tone-strong: #d98a1c}.tone-3{--tone-soft: #f3ecff;--tone-strong: #7c5cd6}.tone-4{--tone-soft: #fdecef;--tone-strong: #d0466a}.tone-5{--tone-soft: #e9f7fb;--tone-strong: #1f93b4}.cal2 .month-grid{background:#fff;border:1px solid #e4e8ee;border-radius:16px;overflow:hidden}.lp{position:sticky;top:14px;display:grid;gap:14px;max-height:calc(100vh - 28px);overflow:auto;background:#fff;border:1px solid #e4e8ee;border-radius:16px;padding:18px;box-shadow:0 12px 34px #1023391a}.lp-head{display:flex;justify-content:space-between;gap:10px}.lp-head h2{display:flex;align-items:center;gap:8px;margin:4px 0 2px;font:800 1.3rem Manrope,sans-serif;color:#14243a}.lp-head p{margin:0;color:#667085;font-size:.86rem}.lp-head .eyebrow{text-transform:none;letter-spacing:0;font-size:.8rem}.lp-close{border:0;background:#eef1f4;border-radius:999px;width:32px;height:32px;display:grid;place-items:center;cursor:pointer;color:#42536a;flex:none}.lp-last{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:#f6f8fa;color:#475467}.lp-last div{display:grid;gap:2px;min-width:0}.lp-last span{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#98a2b3}.lp-last strong{color:#14243a;font-size:.9rem}.lp-last small{color:#667085}.lp-form{display:grid;gap:10px}.lp-form h3{margin:0;font:800 1rem Manrope,sans-serif;color:#14243a}.lp-topic{display:grid;grid-template-columns:90px 1fr;gap:8px}.lp-topic label{display:grid;gap:3px;font-size:.74rem;font-weight:700;color:#667085;min-width:0}.lp-topic label:nth-child(2){grid-column:2}.lp-topic .lp-topic__lesson{grid-column:1 / -1}.lp-topic select{width:100%;min-height:38px;border:1.5px solid #d6dde5;border-radius:10px;padding:0 8px;background:#fff;color:#14243a;font-weight:600}.lp-hint{margin:0;font-size:.8rem;color:#667085}.lp-notes{display:grid;gap:4px;font-size:.78rem;font-weight:700;color:#667085}.lp-notes textarea{border:1.5px solid #d6dde5;border-radius:10px;padding:8px 10px;font:inherit;font-weight:400;color:#14243a;resize:vertical}.lp-homework{display:grid;gap:6px}.lp-homework.is-picked{grid-template-columns:1fr auto;align-items:center;padding:8px 10px;border-radius:10px;background:#e7f5f1}.lp-homework.is-picked span{display:grid}.lp-homework.is-picked small{color:#0b5c4d}.lp-homework.is-picked button{border:0;background:transparent;cursor:pointer;color:#0b5c4d}.lp-search{display:flex;align-items:center;gap:8px;min-height:38px;padding:0 10px;border:1.5px dashed #d6dde5;border-radius:10px;color:#98a2b3}.lp-search input{border:0;outline:0;flex:1;min-width:0;background:transparent}.lp-homework ul{list-style:none;margin:0;padding:0;border:1px solid #e4e8ee;border-radius:10px;overflow:hidden}.lp-homework li button{width:100%;display:grid;text-align:left;gap:1px;border:0;border-top:1px solid #eef1f4;background:#fff;padding:7px 10px;cursor:pointer}.lp-homework li:first-child button{border-top:0}.lp-homework li button:hover{background:#f6f8fa}.lp-homework li small{color:#667085;font-size:.76rem}.lp-actions{display:grid;gap:8px}.lp-actions .button:first-child{min-height:44px}.lp-foot{display:flex;gap:8px;flex-wrap:wrap;padding-top:10px;border-top:1px solid #eef1f4}.lp-foot .button{min-height:36px;font-size:.85rem}.lp-done{display:grid;gap:6px}.lp-done p{margin:0;color:#475467}.lp-series{display:flex;align-items:center;gap:6px}.lp-attendance section{grid-template-columns:1fr}.link-button{border:0;background:none;padding:0;color:#087e6b;font-weight:700;cursor:pointer}.cal2-toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%);z-index:60;display:flex;align-items:center;gap:12px;padding:10px 12px 10px 16px;border-radius:14px;background:#14243a;color:#fff;box-shadow:0 16px 40px #1023394d;font-size:.9rem}.cal2-toast button{display:inline-flex;align-items:center;gap:5px;border:0;border-radius:9px;background:#ffffff1f;color:#fff;padding:6px 10px;font-weight:700;cursor:pointer}.cal2-toast button:first-of-type{background:#f2b544;color:#14243a}.cal-agenda{display:grid;gap:14px}.cal-agenda h3{margin:0 0 6px;font:800 .95rem Manrope,sans-serif;color:#14243a;text-transform:capitalize}.cal-agenda h3.is-today{color:#087e6b}.cal-agenda__row{width:100%;display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:center;text-align:left;border:1px solid #e4e8ee;border-left:4px solid var(--tone-strong);border-radius:12px;background:#fff;padding:10px 12px;margin-bottom:6px;cursor:pointer}.cal-agenda__row time{font-weight:800;color:#14243a;font-variant-numeric:tabular-nums}.cal-agenda__row span{display:grid;min-width:0}.cal-agenda__row small{color:#667085;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:1180px){.cal2-main.has-panel{grid-template-columns:1fr}.lp{position:fixed;right:12px;top:12px;bottom:12px;width:min(400px,calc(100vw - 24px));max-height:none;z-index:50}}@media(max-width:760px){.cal2-nav h1{font-size:1.1rem;margin-left:4px}.cal2-tools{width:100%}.cal2-search{flex:1}.cal2-search input{min-width:0;width:100%}.cal2-hint{display:none}.lp{inset:auto 8px 8px;width:auto;max-height:85vh}}.tg-open{all:unset;display:grid;align-content:start;gap:1px;min-width:0;cursor:inherit}.tg-open:focus-visible{outline:2px solid #087e6b;outline-offset:2px;border-radius:6px}.tg-block.is-short .tg-open{grid-template-columns:auto 1fr;align-items:center;column-gap:6px}.tg-block.is-dragging{opacity:.35;box-shadow:none}.cal2-main.has-panel~.cal2-toast{left:24px;transform:none}@media(max-width:760px){.cal2-main.has-panel~.cal2-toast{inset:12px 12px auto}}.batch-invoice-panel{display:grid;gap:18px}.batch-invoice-panel__intro{display:flex;gap:14px;align-items:flex-start}.batch-invoice-panel__intro>span{display:grid;width:44px;height:44px;place-items:center;flex:0 0 auto;border-radius:14px;color:var(--color-primary, #3157d5);background:color-mix(in srgb,var(--color-primary, #3157d5) 10%,white)}.batch-invoice-panel__intro h3,.batch-invoice-panel__intro p{margin:0}.batch-invoice-panel__intro p{margin-top:6px;color:var(--text-muted, #667085)}.batch-invoice-panel__controls{display:grid;grid-template-columns:minmax(180px,240px) 1fr auto;gap:16px;align-items:end}.batch-invoice-panel__controls>div:last-of-type{min-height:42px;display:flex;align-items:center;color:var(--text-muted, #667085)}.batch-invoice-panel__warning{display:flex;gap:8px;align-items:center;margin:0;color:var(--color-danger, #b42318)}.batch-invoice-preview,.batch-invoice-blocked{display:grid;gap:8px;margin-top:18px}.batch-invoice-preview section,.batch-invoice-blocked section{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px 14px;border:1px solid var(--border-color, #e5e7eb);border-radius:12px}.batch-invoice-preview section>div,.batch-invoice-blocked section>span{display:grid;gap:3px}.batch-invoice-preview span,.batch-invoice-blocked small{color:var(--text-muted, #667085)}.batch-invoice-blocked h4{margin:8px 0 0}@media(max-width:760px){.batch-invoice-panel__controls{grid-template-columns:1fr;align-items:stretch}.batch-invoice-panel__controls .button{width:100%}}.student-invoice-creator{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.9fr) auto;gap:18px;align-items:end;margin:22px 0 26px;padding:22px;border:1px solid color-mix(in srgb,var(--color-primary, #3157d5) 20%,transparent);border-radius:20px;background:radial-gradient(circle at top right,color-mix(in srgb,var(--color-primary, #3157d5) 13%,transparent),transparent 44%),var(--surface-raised, #fff);box-shadow:0 14px 36px #20305c14}.student-invoice-creator__intro{display:flex;gap:14px;align-items:flex-start}.student-invoice-creator__icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:14px;color:var(--color-primary, #3157d5);background:color-mix(in srgb,var(--color-primary, #3157d5) 12%,white)}.student-invoice-creator h3{margin:2px 0 6px;font-size:1.05rem}.student-invoice-creator p{margin:0;color:var(--text-muted, #667085);line-height:1.5}.student-invoice-creator__selection{min-width:0}.student-invoice-creator__summary{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;color:var(--text-muted, #667085);font-size:.86rem}.student-invoice-creator__summary strong{color:var(--text-primary, #182230)}.student-invoice-creator__action{min-width:150px}@media(max-width:900px){.student-invoice-creator{grid-template-columns:1fr 1fr}.student-invoice-creator__intro{grid-column:1 / -1}}@media(max-width:620px){.student-invoice-creator{grid-template-columns:1fr;padding:18px}.student-invoice-creator__intro{grid-column:auto}.student-invoice-creator__action,.student-invoice-creator__action .button{width:100%}}.bank-reconciliation{display:grid;gap:22px}.bank-reconciliation__heading{align-items:flex-start}.bank-reconciliation__heading p{color:var(--text-muted);margin:6px 0 0;max-width:720px}.bank-reconciliation__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.bank-reconciliation__metrics>span{align-items:center;background:var(--surface-subtle, #f6f8fb);border:1px solid var(--border);border-radius:14px;color:var(--text-muted);display:flex;gap:9px;padding:15px}.bank-reconciliation__metrics svg{color:var(--primary)}.bank-reconciliation__metrics strong{color:var(--text);margin-left:auto}.bank-reconciliation__metrics .has-attention{background:#fffbeb;border-color:#f5d992}.bank-import-preview{border:1px solid var(--border);border-radius:16px;overflow:hidden}.bank-import-preview__title,.bank-import-preview__footer{align-items:center;background:var(--surface-subtle, #f8fafc);display:flex;gap:16px;justify-content:space-between;padding:14px 16px}.bank-import-preview__title>div{display:grid;gap:3px}.bank-import-preview__title span,.bank-import-preview__footer>span{color:var(--text-muted);font-size:13px}.bank-import-preview .action-error{border-radius:0;margin:0}.bank-import-preview .action-error span{display:block}.bank-import-table-wrap{overflow:auto}.bank-import-table{border-collapse:collapse;min-width:1040px;width:100%}.bank-import-table th,.bank-import-table td{border-bottom:1px solid var(--border);padding:12px;text-align:left;vertical-align:middle}.bank-import-table th{color:var(--text-muted);font-size:12px;font-weight:700;text-transform:uppercase}.bank-import-table td>strong,.bank-import-table td>small{display:block}.bank-import-table td>small{color:var(--text-muted);font-size:12px;margin-top:4px;max-width:260px}.bank-import-table .field{min-width:190px}.bank-import-table tr.has-error{background:#fff7f7}.bank-row-error{color:var(--danger, #b42318)!important}.bank-history{border-top:1px solid var(--border);padding-top:20px}.bank-history .section-heading h3{font-size:20px;margin:2px 0 0}.bank-history__list{display:grid}.bank-history__list article{align-items:center;border-bottom:1px solid var(--border);display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto auto;padding:13px 2px}.bank-history__list article:last-child{border-bottom:0}.bank-history__list article>svg{color:var(--primary)}.bank-history__list article>span{display:grid;gap:3px}.bank-history__list article small{color:var(--text-muted)}@media(max-width:800px){.bank-reconciliation__metrics{grid-template-columns:1fr}.bank-reconciliation__heading,.bank-import-preview__title,.bank-import-preview__footer{align-items:stretch;flex-direction:column}.bank-history__list article{grid-template-columns:auto minmax(0,1fr) auto}.bank-history__list .badge{grid-column:2/4;justify-self:start}}.financial-period{display:grid;gap:20px}.financial-period__heading{align-items:flex-start}.financial-period__heading p{color:var(--muted);margin:6px 0 0;max-width:650px}.financial-period__controls{align-items:end;display:flex;gap:10px}.financial-period__controls .field{min-width:180px}.financial-period__reviewed{align-items:center;background:#ecfdf3;border:1px solid #abefc6;border-radius:14px;color:#067647;display:flex;gap:12px;padding:13px 15px}.financial-period__reviewed>span{display:grid;gap:2px}.financial-period__reviewed small{color:#39866b}.financial-period__reviewed .badge{margin-left:auto}.financial-period__reviewed.is-closed{background:#eef4ff;border-color:#c7d7fe;color:#3538cd}.financial-period__reviewed.is-closed small{color:#6172f3}.financial-period__metrics{display:grid;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr))}.financial-period__metrics>span{background:#f8fafc;border:1px solid var(--border);border-radius:14px;display:grid;gap:5px;grid-template-columns:auto 1fr;padding:14px}.financial-period__metrics svg{color:var(--green);grid-row:1/3}.financial-period__metrics small,.financial-period__metrics em{color:var(--muted);font-size:12px;font-style:normal}.financial-period__metrics strong{font:800 1.3rem Manrope,sans-serif}.financial-period__metrics .has-attention{background:#fff7ed;border-color:#fed7aa}.financial-period__metrics .has-attention svg{color:#c2410c}.financial-period__metrics .is-ready{background:#f0fdf4;border-color:#bbf7d0}.financial-period__result{align-items:center;border:1px solid;border-radius:15px;display:flex;gap:18px;justify-content:space-between;padding:16px}.financial-period__result.is-ready{background:#f0fdf4;border-color:#bbf7d0}.financial-period__result.has-blockers{background:#fff7ed;border-color:#fed7aa}.financial-period__result p{color:var(--muted);margin:4px 0 0}.financial-period__result>div:last-child{display:flex;gap:10px}.financial-period__issues{border:1px solid var(--border);border-radius:14px;overflow:hidden}.financial-period__issues article{align-items:center;border-bottom:1px solid var(--border);display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto auto;padding:13px 15px}.financial-period__issues article:last-child{border-bottom:0}.financial-period__issues article>svg{color:#b54708}.financial-period__issues article>span{display:grid;gap:3px}.financial-period__issues small{color:var(--muted)}.financial-period__issues code{background:#f2f4f7;border-radius:7px;color:#475467;font-size:11px;max-width:170px;overflow:hidden;padding:5px 7px;text-overflow:ellipsis}.financial-period__issue-identity{min-width:230px}.financial-period__issue-identity>strong{font-size:13px}.financial-period__issue-identity code{justify-self:start;margin-top:2px;max-width:230px}.financial-period__empty{align-items:center;border:1px dashed #d0d5dd;border-radius:14px;color:var(--muted);display:grid;gap:7px;justify-items:center;padding:28px;text-align:center}.financial-period__empty strong{color:#344054}.financial-period__empty p{margin:0}.period-close{border-top:1px solid var(--border);display:grid;gap:16px;padding-top:20px}.period-close .section-heading{margin:0}.period-close__checklist{display:grid;gap:10px;grid-template-columns:repeat(5,minmax(0,1fr))}.period-close__checklist article{align-items:start;border:1px solid;border-radius:13px;display:grid;gap:9px;grid-template-columns:auto 1fr;padding:13px}.period-close__checklist article>span{display:grid;gap:4px}.period-close__checklist article strong{font-size:13px;line-height:1.3}.period-close__checklist article small{color:var(--muted);font-size:11px;line-height:1.4}.period-close__checklist article .badge{grid-column:2;justify-self:start}.period-close__checklist .is-ready{background:#f0fdf4;border-color:#bbf7d0}.period-close__checklist .is-ready>svg{color:#079455}.period-close__checklist .has-blocker{background:#fff7ed;border-color:#fed7aa}.period-close__checklist .has-blocker>svg{color:#c2410c}.period-close__totals{background:var(--border);border:1px solid var(--border);border-radius:14px;display:grid;gap:1px;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden}.period-close__totals>span{background:#fff;display:grid;gap:4px;grid-template-columns:auto 1fr;padding:14px}.period-close__totals svg{color:var(--green);grid-row:1/4}.period-close__totals small,.period-close__totals em{color:var(--muted);font-size:11px;font-style:normal}.period-close__totals strong{font:800 1.15rem Manrope,sans-serif}.period-close__actions{align-items:center;background:#f8fafc;border:1px solid var(--border);border-radius:14px;display:flex;gap:16px;justify-content:space-between;padding:15px}.period-close__actions.is-closed{background:#eef4ff;border-color:#c7d7fe}.period-close__actions>div{align-items:center;display:flex;gap:10px}.period-close__actions>div:first-child>svg{color:var(--green);flex:0 0 auto}.period-close__actions span{display:grid;gap:3px}.period-close__actions small{color:var(--muted)}.period-close__form{display:grid;gap:16px}.period-close__form .form-hint{margin:0}@media(max-width:900px){.financial-period__heading,.financial-period__result{align-items:stretch;flex-direction:column}.financial-period__controls{align-items:stretch}.financial-period__metrics,.period-close__checklist,.period-close__totals{grid-template-columns:1fr 1fr}.period-close__actions{align-items:stretch;flex-direction:column}.period-close__actions>div:last-child{flex-wrap:wrap}}@media(max-width:560px){.financial-period__controls,.financial-period__result>div:last-child{flex-direction:column}.financial-period__controls .field{min-width:0}.financial-period__metrics,.period-close__checklist,.period-close__totals{grid-template-columns:1fr}.period-close__actions>div:last-child{align-items:stretch;flex-direction:column}.financial-period__issues article{align-items:start;grid-template-columns:auto 1fr}.financial-period__issues .badge{grid-column:2;justify-self:start}.financial-period__issue-identity{grid-column:2;min-width:0}.financial-period__issue-identity code{grid-column:auto}}.financial-analytics{display:grid;gap:22px}.financial-analytics__heading{align-items:end}.financial-analytics__controls{display:flex;align-items:end;gap:10px}.financial-analytics__controls .field{min-width:190px}.financial-analytics__metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.financial-analytics__metrics>span{display:grid;grid-template-columns:auto 1fr;gap:5px 9px;padding:18px;border:1px solid var(--border);border-radius:16px;background:#f8fafc}.financial-analytics__metrics svg{grid-row:1 / span 3;color:var(--green)}.financial-analytics__metrics small,.financial-analytics__metrics em{color:var(--muted);font-style:normal}.financial-analytics__metrics strong{font-size:1.35rem}.financial-analytics__metrics .is-negative strong{color:var(--danger)}.financial-analytics__metrics .is-positive strong{color:#067647}.analytics-forecast{display:grid;grid-template-columns:minmax(240px,1fr) minmax(220px,2fr) auto;align-items:center;gap:18px;padding:18px;border-radius:16px;background:#f8fafc;border:1px solid var(--border)}.analytics-forecast>div:first-child{display:grid;gap:4px}.analytics-forecast>div:first-child>strong{font-size:1.2rem}.analytics-forecast small{color:var(--muted)}.analytics-forecast__progress{height:10px;overflow:hidden;border-radius:999px;background:var(--border)}.analytics-forecast__progress span{display:block;height:100%;border-radius:inherit;background:var(--green)}.analytics-columns{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:18px}.analytics-columns>section,.analytics-trend{min-width:0;padding:18px;border:1px solid var(--border);border-radius:18px}.analytics-columns h3,.analytics-trend h3{margin:3px 0 0}.aged-debt-buckets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0}.aged-debt-buckets article{display:grid;gap:4px;padding:12px;border-radius:13px;background:#f8fafc}.aged-debt-buckets small,.aged-debt-buckets em{color:var(--muted);font-style:normal}.analytics-table-wrap{overflow-x:auto}.analytics-table{width:100%;border-collapse:collapse}.analytics-table th,.analytics-table td{padding:11px 10px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}.analytics-table th{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.analytics-table td small{display:block;margin-top:2px;color:var(--muted)}.analytics-table td:last-child{text-align:right}.analytics-breakdown{display:grid;gap:2px;margin-top:14px}.analytics-breakdown article{display:flex;justify-content:space-between;gap:14px;padding:12px 2px;border-bottom:1px solid var(--border)}.analytics-breakdown span{display:grid;gap:3px}.analytics-breakdown small,.analytics-empty,.financial-analytics__empty{color:var(--muted)}.financial-analytics__empty{display:grid;justify-items:center;gap:7px;padding:30px;text-align:center;border:1px dashed var(--border);border-radius:16px}.analytics-method{display:flex;align-items:flex-start;gap:8px}@media(max-width:1100px){.financial-analytics__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-columns{grid-template-columns:1fr}}@media(max-width:720px){.financial-analytics__heading,.financial-analytics__controls,.analytics-forecast{display:grid;grid-template-columns:1fr}.financial-analytics__controls .field{min-width:0}.financial-analytics__metrics,.aged-debt-buckets{grid-template-columns:1fr 1fr}}@media(max-width:430px){.financial-analytics__metrics,.aged-debt-buckets{grid-template-columns:1fr}}.advance-management{display:grid;gap:20px}.advance-management .section-heading p{color:var(--muted);margin:6px 0 0;max-width:720px}.advance-management__metrics{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.advance-management__metrics>span{align-items:center;background:#f8fafc;border:1px solid var(--border);border-radius:14px;color:var(--muted);display:flex;gap:9px;padding:14px}.advance-management__metrics svg{color:var(--green)}.advance-management__metrics strong{color:#162033;margin-left:auto}.advance-list{display:grid}.advance-list article{align-items:center;border-bottom:1px solid var(--border);display:grid;gap:13px;grid-template-columns:auto minmax(0,1fr) auto auto;padding:14px 2px}.advance-list article:last-child{border-bottom:0}.advance-list article>svg{color:var(--green)}.advance-list article>span{display:grid;gap:3px}.advance-list article small{color:var(--muted)}.advance-list article>b{font-size:1.05rem}.advance-list article>div{display:flex;gap:8px}.refund-history{border-top:1px solid var(--border);display:grid;gap:0;padding-top:17px}.refund-history>div{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:11px 2px}.refund-history>div>span{display:grid;gap:3px}.refund-history small{color:var(--muted)}.advance-context{align-items:center;background:#f8fafc;border:1px solid var(--border);border-radius:12px;display:flex;justify-content:space-between;padding:13px}@media(max-width:800px){.advance-management__metrics{grid-template-columns:1fr}.advance-list article{align-items:start;grid-template-columns:auto minmax(0,1fr) auto}.advance-list article>div{grid-column:2/4;flex-wrap:wrap}}@media(max-width:520px){.advance-list article{grid-template-columns:auto 1fr}.advance-list article>b,.advance-list article>div{grid-column:2}.advance-list article>div .button{flex:1}.advance-context{align-items:flex-start;flex-direction:column;gap:5px}}.finance-page{max-width:1500px}.finance-page>.page-header{margin-bottom:18px}.finance-page .metric-grid{margin-bottom:14px}.finance-attention{align-items:center;border-color:#f7d9a6;background:linear-gradient(135deg,#fffaf0,#fff 72%);display:flex;justify-content:space-between;gap:18px;margin:0 0 16px;padding:14px 16px}.finance-attention>div{align-items:flex-start;display:flex;gap:10px;min-width:0}.finance-attention>div>svg{color:#b7791f;flex:0 0 auto;margin-top:2px}.finance-attention span{display:grid;gap:3px}.finance-attention small{color:var(--muted);line-height:1.45}.finance-quicknav-heading{align-items:end;display:flex;justify-content:space-between;gap:20px;margin-bottom:14px}.finance-quicknav-heading>div{display:grid;gap:4px}.finance-quicknav-heading strong{color:var(--navy);font-size:1.02rem}.finance-quicknav-heading>span{color:var(--muted);font-size:.78rem;text-align:right}.page-content[data-active-finance-section]>#tunniarvestus,.page-content[data-active-finance-section]>#pangauhildus,.page-content[data-active-finance-section]>#avansid,.page-content[data-active-finance-section]>#perioodid,.page-content[data-active-finance-section]>#audit,.page-content[data-active-finance-section]>#numeratsioon,.page-content[data-active-finance-section]>#tuluprognoos,.page-content[data-active-finance-section]>#arved{display:none}.page-content[data-active-finance-section=tunniarvestus]>#tunniarvestus,.page-content[data-active-finance-section=pangauhildus]>#pangauhildus,.page-content[data-active-finance-section=avansid]>#avansid,.page-content[data-active-finance-section=perioodid]>#perioodid,.page-content[data-active-finance-section=audit]>#audit,.page-content[data-active-finance-section=numeratsioon]>#numeratsioon,.page-content[data-active-finance-section=tuluprognoos]>#tuluprognoos,.page-content[data-active-finance-section=arved]>#arved{display:block}.finance-quicknav a.is-active{background:var(--navy);border-color:var(--navy);color:#fff}.finance-quicknav-card{margin:18px 0;padding:18px}.finance-quicknav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0}.finance-quicknav a{display:grid;gap:3px;border:1px solid var(--border);border-radius:13px;padding:11px 12px;color:var(--navy);background:#fff;text-decoration:none;min-width:0;transition:border-color .15s ease,background .15s ease,transform .15s ease}.finance-quicknav a strong{font-size:.79rem;line-height:1.2}.finance-quicknav a small{color:var(--muted);font-size:.68rem;line-height:1.3}.finance-quicknav a:hover{border-color:var(--green);transform:translateY(-1px)}.finance-quicknav a.is-active{background:linear-gradient(145deg,var(--navy),#263d52);border-color:var(--navy);box-shadow:0 8px 18px #1c2b3a24;color:#fff}.finance-quicknav a.is-active small{color:#ffffffb8}#tunniarvestus,#pangauhildus,#avansid,#perioodid,#audit,#numeratsioon,#tuluprognoos,#arved{scroll-margin-top:16px}@media(max-width:980px){.finance-quicknav{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.finance-attention{align-items:stretch;flex-direction:column}.finance-attention .button{width:100%}.finance-quicknav-heading{align-items:flex-start;flex-direction:column;gap:6px}.finance-quicknav-heading>span{text-align:left}.finance-quicknav{grid-template-columns:1fr}}.invoice-lines{display:grid;gap:8px;border-top:1px solid var(--border);padding-top:20px}.invoice-lines .section-heading{align-items:center}.invoice-lines .section-heading h2{font-size:1rem}.invoice-lines>div:last-child{display:grid;border:1px solid var(--border);border-radius:13px;overflow:hidden}.invoice-lines article{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:11px 13px}.invoice-lines article+article{border-top:1px solid var(--border)}.invoice-lines article>svg{color:var(--green)}.invoice-lines article>span{display:grid;gap:2px}.invoice-lines article small{color:var(--muted)}.invoice-lines article .button{min-height:34px;padding:0 10px;font-size:.75rem}.invoice-lines article.is-corrected{opacity:.58;background:#f8fafc}.invoice-lines article.is-corrected b{text-decoration:line-through}.payment-list__actions{align-items:flex-end;display:flex!important;gap:6px!important}.payment-list__actions .button{font-size:.72rem;min-height:32px;padding:0 9px}.payment-list__actions label.button{cursor:pointer;font-size:.72rem;min-height:32px;padding:0 9px}.payment-list__actions label.is-loading{cursor:wait;opacity:.65}.payment-documents{display:flex!important;flex-wrap:wrap;gap:6px!important;margin-top:6px}.payment-documents button{max-width:260px;border:1px solid #c7dfd8;border-radius:8px;background:#f1f8f5;color:var(--green);padding:6px 8px;display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-credit-notes{display:grid;gap:8px;border-top:1px solid var(--border);padding-top:20px}.invoice-credit-notes .section-heading{align-items:center}.invoice-credit-notes .section-heading h2{font-size:1rem}.invoice-credit-notes>div:last-child{border:1px solid var(--border);border-radius:13px;overflow:hidden}.invoice-credit-notes article{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:9px;padding:11px 13px}.invoice-credit-notes article+article{border-top:1px solid var(--border)}.invoice-credit-notes article>svg{color:var(--green)}.invoice-credit-notes article>span{min-width:0;display:grid;gap:2px}.invoice-credit-notes article small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-credit-notes article .button{min-height:32px;padding:0 9px;font-size:.72rem}.financial-audit-card,.invoice-numbering-card{margin-bottom:18px}.invoice-numbering-card>.section-heading{align-items:center}.invoice-numbering-card>.section-heading p{margin:5px 0 0;color:var(--muted)}.numbering-ok,.numbering-warning{display:flex;align-items:flex-start;gap:11px;border-radius:12px;padding:14px}.numbering-ok{border:1px solid #a6f4c5;background:#ecfdf3;color:#067647}.numbering-warning{border:1px solid #fedf89;background:#fffaeb;color:#92400e}.numbering-ok>div,.numbering-warning>div{display:grid;gap:4px}.numbering-ok span,.numbering-warning span{font-size:.78rem}.numbering-review{display:grid;gap:14px}.numbering-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.numbering-groups section{border:1px solid var(--border);border-radius:12px;padding:13px;display:grid;gap:9px}.numbering-groups header{display:flex;align-items:center;gap:7px}.numbering-groups header svg{color:var(--green)}.numbering-groups header .badge{margin-left:auto}.numbering-groups section>p{margin:0;color:var(--muted);font-size:.75rem}.numbering-groups section>div{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #eef0f3;padding-top:9px}.numbering-groups section>div>span{min-width:0;display:grid;gap:3px}.numbering-groups section small{color:var(--muted)}.numbering-review>.textarea-field{max-width:720px}.numbering-confirmation{max-width:820px;display:flex;align-items:flex-start;gap:9px;color:var(--muted);font-size:.8rem;line-height:1.45}.numbering-confirmation input{width:17px;height:17px;margin-top:1px;accent-color:var(--green);flex:0 0 auto}.numbering-review>.button{justify-self:start}.corrected-delivery-queue{margin-top:14px;border:1px solid #fedf89;border-radius:12px;overflow:hidden}.corrected-delivery-queue>div,.corrected-delivery-queue article{display:flex;align-items:center;gap:10px;padding:11px 13px}.corrected-delivery-queue>div{background:#fffaeb;color:#92400e}.corrected-delivery-queue>div>span,.corrected-delivery-queue article>span{min-width:0;display:grid;gap:3px}.corrected-delivery-queue small{font-size:.74rem;color:var(--muted)}.corrected-delivery-queue article{justify-content:space-between;border-top:1px solid #fde7bd}.corrected-delivery-queue article .button{min-height:34px;padding:0 10px}.invoice-numbering-note{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;border:1px solid #fedf89;border-radius:12px;background:#fffaeb;color:#92400e}.invoice-numbering-note>span{display:grid;gap:3px}.invoice-numbering-note small{color:#b54708}.financial-audit-card>.section-heading p{margin:5px 0 0;color:var(--muted)}.financial-audit-filters{display:grid;grid-template-columns:minmax(260px,1fr) 230px 170px;gap:10px;margin-bottom:12px}.financial-audit-filters .search-field,.financial-audit-filters select,.audit-month-input{min-height:42px}.audit-month-input{width:100%;border:1px solid #d0d5dd;border-radius:10px;background:#fff;padding:0 11px;color:var(--navy)}.financial-audit-list{display:grid;border:1px solid var(--border);border-radius:13px;overflow:hidden}.financial-audit-list article{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(180px,auto);align-items:center;gap:12px;padding:12px 14px}.financial-audit-list article+article{border-top:1px solid #eef0f3}.financial-audit-list article>i{width:36px;height:36px;border-radius:10px;background:#f1f8f5;color:var(--green);display:grid;place-items:center}.financial-audit-list article>div:nth-child(2),.financial-audit-list__meta{min-width:0;display:grid;gap:3px}.financial-audit-list article span,.financial-audit-list article small{color:var(--muted);font-size:.74rem;overflow-wrap:anywhere}.financial-audit-list__meta{justify-items:end;text-align:right}.financial-audit-list__meta strong{font-family:Manrope,sans-serif}.financial-audit-more{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;color:var(--muted);font-size:.78rem}.financial-audit-more .button{min-height:36px}.modal--financial-document{width:min(1100px,100%)}.modal--financial-document .modal__body{padding:0;background:#eef1f4}.financial-document-preview{min-height:min(72vh,820px);display:grid;place-items:center}.financial-document-preview iframe{width:100%;height:min(72vh,820px);border:0;background:#fff}.financial-document-preview img{max-width:100%;max-height:min(72vh,820px);object-fit:contain}.document-loading{min-height:320px;display:grid;place-content:center;justify-items:center;gap:10px;color:var(--muted)}@media(max-width:560px){.invoice-lines article{grid-template-columns:auto minmax(0,1fr) auto}.invoice-lines article .button,.invoice-lines article .badge{grid-column:2 / -1;justify-self:start}.invoice-credit-notes article{grid-template-columns:auto minmax(0,1fr) auto}.invoice-credit-notes article .button{grid-column:2 / -1;width:100%}.payment-list__actions{align-items:stretch;grid-column:2 / -1;flex-wrap:wrap}.payment-list__actions .button,.payment-list__actions label.button{flex:1}.financial-audit-filters,.financial-audit-list article{grid-template-columns:1fr}.financial-audit-list article>i{display:none}.financial-audit-list__meta{justify-items:start;text-align:left}.financial-audit-more{align-items:stretch;flex-direction:column}.invoice-numbering-card>.section-heading{align-items:stretch}.invoice-numbering-card>.section-heading .button,.numbering-review>.button{width:100%}.numbering-groups{grid-template-columns:1fr}.corrected-delivery-queue article{align-items:stretch;flex-direction:column}.corrected-delivery-queue article .button{width:100%}.modal--financial-document .modal__body,.financial-document-preview,.financial-document-preview iframe{min-height:0;height:calc(100vh - 150px)}}.monthly-invoices{display:grid;gap:16px}.monthly-invoices__controls{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.monthly-invoices__controls .field{min-width:180px}.monthly-invoices__modes{display:inline-flex;gap:4px;padding:4px;border-radius:12px;background:var(--surface-subtle, #f2f4f7);margin-left:auto}.monthly-invoices__modes button{border:0;background:transparent;padding:8px 12px;border-radius:9px;font-weight:700;color:#475467;cursor:pointer}.monthly-invoices__modes button.is-active{background:#fff;color:#101828;box-shadow:0 1px 3px #1018281f}.monthly-invoices__table{overflow-x:auto}.monthly-invoices__head,.monthly-invoices__row{display:grid;grid-template-columns:32px minmax(200px,2fr) 70px 110px 110px 110px minmax(140px,1fr);gap:12px;align-items:center;min-width:820px;padding:12px 8px}.monthly-invoices__head{color:var(--text-muted, #667085);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-color, #e5e7eb)}.monthly-invoices__group{border-bottom:1px solid var(--border-color, #eaecf0)}.monthly-invoices__row small{display:block;color:var(--text-muted, #667085);font-size:.8rem}.monthly-invoices__detail{margin:0 8px 12px 52px;padding:12px 14px;border-radius:12px;background:var(--surface-subtle, #f8fafc);min-width:0}.monthly-invoices__detail p{margin:0 0 6px}.monthly-invoices__detail ul{margin:0;padding-left:0;list-style:none;display:grid;gap:4px}.monthly-invoices__detail label{display:flex;gap:8px;align-items:center}.linklike{border:0;background:none;padding:0;color:#175cd3;font-weight:700;text-decoration:underline;cursor:pointer}.monthly-invoices__footer{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.monthly-invoices__footer>div{display:flex;gap:8px}.monthly-invoices__warn{display:inline-flex;gap:6px;align-items:center;color:#b54708}.monthly-invoices__done{display:flex;gap:6px;align-items:center;margin:0;color:#087443;font-weight:700}@media(max-width:640px){.monthly-invoices__modes{margin-left:0}.monthly-invoices__footer>div{width:100%;flex-direction:column}}.finance-tabs{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start;margin:0 0 18px;padding:5px;border-radius:14px;background:var(--surface-subtle, #f2f4f7)}.finance-tabs>button,.finance-tabs summary{border:0;background:transparent;padding:10px 16px;border-radius:10px;color:#475467;cursor:pointer;font:inherit;font-weight:700}.finance-tabs>button.is-active{background:#fff;color:#101828;box-shadow:0 1px 3px #1018281f}.finance-tabs__more{margin-left:auto;position:relative}.finance-tabs summary{list-style:none;display:inline-flex;gap:4px;align-items:center}.finance-tabs summary::-webkit-details-marker{display:none}.finance-tabs summary.is-active{color:#101828}.finance-tabs__more>div{position:absolute;right:0;top:calc(100% + 6px);z-index:20;display:grid;min-width:240px;padding:6px;border-radius:12px;background:#fff;border:1px solid var(--border-color, #eaecf0);box-shadow:0 12px 30px #10182824}.finance-tabs__more>div button{border:0;background:transparent;text-align:left;padding:9px 12px;border-radius:8px;font:inherit;cursor:pointer;color:#344054}.finance-tabs__more>div button:hover,.finance-tabs__more>div button.is-active{background:var(--surface-subtle, #f2f4f7);font-weight:700}@media(max-width:640px){.finance-tabs>button{flex:1 1 auto}.finance-tabs__more{margin-left:0}}.finance-workspace-actions{display:flex;justify-content:flex-end;margin:0 0 16px}.finance-workspace-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;padding:12px 14px;border:1px solid var(--border-color, #d9dfdc);border-radius:12px;background:var(--surface, #fff)}.finance-workspace-notice button{border:0;background:transparent;cursor:pointer;font:inherit}@media(max-width:720px){.finance-workspace-actions{justify-content:stretch}.finance-workspace-actions>*{width:100%}}.price-privacy-banner{display:flex;gap:14px;align-items:center;margin:0 0 16px;padding:14px 18px;border:1px solid #fec84b;background:#fffaeb;border-radius:14px;color:#7a2e0e}.price-privacy-banner p{margin:4px 0 0}.price-privacy-banner>div{flex:1}@media(max-width:700px){.price-privacy-banner{flex-direction:column;align-items:stretch}}.expenses-page{max-width:1500px}.expenses-page .back-link{margin-bottom:10px}.expenses-page>.page-header{margin-bottom:18px}.expenses-page .metric-grid{margin-bottom:16px}.expenses-toolbar{align-items:center;background:linear-gradient(135deg,#fff,#f7faf9);border-color:#dce8e4;display:grid;gap:14px;grid-template-columns:minmax(260px,1fr) 190px;margin-bottom:18px;padding:14px}.expenses-toolbar .field{margin:0}.expenses-toolbar .search-field{background:#fff;border-radius:11px;min-height:44px}.expenses-card{overflow:hidden;padding:0;box-shadow:0 10px 30px #1c2b3a0f}.expense-table thead{background:#f7f9fa}.expense-table th{color:#667085;font-size:.7rem;letter-spacing:.025em;text-transform:uppercase}.expense-table td{min-width:110px;vertical-align:top}.expense-table tbody tr{transition:background .15s ease}.expense-table tbody tr:hover{background:#fbfdfc}.expense-table td:nth-child(2){min-width:240px}.expense-table td:nth-child(6){min-width:190px}.expense-table strong{display:block;color:var(--navy)}.expense-table td>span{color:var(--muted);display:block;font-size:.74rem;line-height:1.4;margin-top:4px}.expense-row--inactive{background:#f8fafc;opacity:.72}.expense-documents,.expense-actions{align-items:flex-start;display:flex;flex-wrap:wrap;gap:7px}.expense-documents .button,.expense-actions .button,.expense-upload{font-size:.76rem;max-width:190px;min-height:34px;overflow:hidden;padding:7px 9px;text-overflow:ellipsis;white-space:nowrap}.expense-documents .button{background:#f5faf8;border-color:#d5e7e0}.expense-upload{cursor:pointer;display:inline-flex}.expense-upload input{height:1px;opacity:0;position:absolute;width:1px}.expense-upload.is-disabled{cursor:wait;opacity:.55}.expense-form{display:grid;gap:18px}.expense-form .form-hint{margin:0}.expense-error{align-items:center;background:#fef3f2;border:1px solid #fecdca;border-radius:12px;color:#b42318;display:flex;font-size:.86rem;font-weight:600;justify-content:space-between;margin:0 0 18px;padding:11px 14px}.expense-error button{background:transparent;border:0;color:inherit;font-size:1.1rem}@media(max-width:800px){.expenses-toolbar{grid-template-columns:1fr}.expense-table-wrap{display:block!important}.expenses-page .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.expenses-page .metric-grid{grid-template-columns:1fr}.expenses-page>.page-header .page-header__actions,.expenses-page>.page-header .button{width:100%}}.people-overview{position:relative;display:grid;grid-template-columns:minmax(230px,.72fr) minmax(560px,1.7fr);gap:28px;align-items:center;overflow:hidden;margin-bottom:18px;padding:24px 26px;border:1px solid rgba(255,255,255,.1);border-radius:22px;color:#fff;background:radial-gradient(circle at 90% 0,rgba(85,211,168,.28),transparent 34%),linear-gradient(125deg,#102f42,#153d4b 58%,#19584b);box-shadow:0 18px 45px #102f4226}.people-overview:after{content:"";position:absolute;width:210px;height:210px;right:-75px;bottom:-145px;border:32px solid rgba(255,255,255,.055);border-radius:50%;pointer-events:none}.people-overview__intro,.people-overview__metrics{position:relative;z-index:1}.people-overview__intro{display:grid;gap:5px}.people-overview__intro .eyebrow{color:#8ae4c2}.people-overview__intro h2{margin:0;color:#fff;font-size:1.28rem}.people-overview__intro p{margin:0;color:#ffffffa8;font-size:.8rem;line-height:1.5}.people-overview__metrics{display:grid;grid-template-columns:repeat(4,minmax(115px,1fr));gap:10px}.people-overview__metrics>div{display:flex;align-items:center;gap:10px;min-height:76px;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:15px;background:#ffffff12;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.people-overview__metrics i{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:11px;color:#9ae8cb;background:#62daad1f}.people-overview__metrics span{display:grid;gap:2px;min-width:0}.people-overview__metrics small{color:#ffffffa8;font-size:.66rem}.people-overview__metrics strong{font:750 1.22rem/1 Manrope,sans-serif}.people-overview__metrics em{overflow:hidden;color:#ffffff80;font-size:.6rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.people-directory-toolbar{border-radius:16px;background:#ffffffe0;box-shadow:0 10px 28px #102f420f}.group-card,.teacher-card-link .teacher-card,.parent-card{border-radius:18px;box-shadow:0 10px 30px #102f420e}.group-card,.parent-card{content-visibility:auto;contain-intrinsic-size:430px}.teacher-card-link:focus-visible{outline:3px solid rgba(32,128,97,.24);outline-offset:3px;border-radius:20px}@media(max-width:1050px){.people-overview{grid-template-columns:1fr;gap:18px}}@media(max-width:700px){.people-overview{padding:20px}.people-overview__metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:420px){.people-overview__metrics{grid-template-columns:1fr}.people-overview__metrics>div{min-height:60px}}.ws-root{--ks-navy: #0b2a4f;--ks-navy-2: #173a63;--ks-green: #267743;--ks-green-2: #2f7d4c;--ks-brown: #7f582a;--ks-ink: #1f2d3d;--ks-muted: #52606d;--ks-line: #9aa7b4;--notice: #fff4d6;--ok: #1f8a4c;--bad: #c2412d;--radius: 4mm;--font-head: "Nunito", "Arial Rounded MT Bold", system-ui, sans-serif;--font-body: "Nunito Sans", system-ui, sans-serif;--font-hand: "Caveat", "Bradley Hand", cursive;display:flex;flex-direction:column;align-items:center;gap:10mm}.ws-measure{position:absolute;left:-99999px;top:0;visibility:hidden;width:270mm;padding:0 9mm;box-sizing:border-box}.ws-page{width:270mm;height:381.86mm;background:#fff;color:var(--ks-ink);box-sizing:border-box;padding:11mm 9mm 9mm;box-shadow:0 6px 30px #0000002e;display:flex;flex-direction:column;gap:4mm;font-family:var(--font-body);font-size:12.6pt;line-height:1.35;position:relative;overflow:hidden}.ws-page *,.ws-measure *{box-sizing:border-box}.ws-flow,.ws-measure{display:flex;flex-direction:column;gap:4mm}.ws-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:4mm;align-items:stretch}.ws-hdr{display:grid;grid-template-columns:1fr 84mm 33mm;gap:4mm;align-items:stretch}.ws-brand{display:flex;align-items:flex-start;gap:6mm}.ws-logo{font:900 28pt/1 var(--font-head);color:var(--ks-green);letter-spacing:-.3pt}.ws-logo small{display:block;font:800 11pt var(--font-head);color:var(--ks-navy);margin-top:.8mm;letter-spacing:0}.ws-slogan{font:700 19pt/1.05 var(--font-hand);color:var(--ks-navy);transform:rotate(-4deg);max-width:45mm;margin-top:1mm}.ws-hbox{background:#edf5fd;border-radius:var(--radius);padding:3.5mm 4.5mm}.ws-hbox b{display:block;font:800 13pt var(--font-head);color:var(--ks-navy)}.ws-mod{font-size:11pt;color:var(--ks-muted);margin-bottom:2mm}.ws-cando{display:flex;gap:2.5mm;align-items:center;font-size:11pt}.ws-target{width:10mm;height:10mm;flex:none}.ws-lvl{background:#ddedd4;border-radius:var(--radius);text-align:center;padding:3mm 2mm;color:var(--ks-navy)}.ws-big{font:900 23pt/1 var(--font-head)}.ws-t{font:800 8pt/1.25 var(--font-head);text-transform:uppercase;margin-top:1.5mm}.ws-title h2{font:900 35pt/1.02 var(--font-head);color:var(--ks-navy);margin:0;letter-spacing:-.5pt}.ws-title p{margin:1.2mm 0 0;font-size:14.5pt}.ws-runhead{display:flex;justify-content:space-between;font:800 10pt var(--font-head);color:var(--ks-muted);text-transform:uppercase;letter-spacing:.6pt;border-bottom:2px solid var(--ks-green);padding-bottom:2mm}.ws-card{border-radius:var(--radius);padding:4mm 4.6mm 4.6mm;position:relative;min-width:0}.ws-card.plain{padding:0;background:transparent}.ws-ch{display:grid;grid-template-columns:11.5mm 1fr;gap:3mm;align-items:start;margin-bottom:3mm}.ws-num{width:11.5mm;height:11.5mm;border-radius:50%;display:grid;place-items:center;color:#fff;font:900 16pt var(--font-head)}.ws-ch h3{margin:0;font:900 15.5pt/1.15 var(--font-head);color:var(--ks-navy)}.ws-ch h3 span{font-weight:800;font-size:13.5pt}.ws-ch p{margin:.8mm 0 0;font-size:12pt}.ws-photo{position:relative;width:100%;border-radius:2.5mm;overflow:hidden;background:#e7e3da}.ws-photo img{width:100%;height:100%;object-fit:cover;display:block}.ws-photo-empty{position:absolute;inset:0;display:grid;place-items:center;color:#9a9384;font:700 11pt var(--font-body)}.ws-line{border:0;border-bottom:1px solid var(--ks-line);background:transparent;font:700 16pt var(--font-hand);color:#1b4a8a;min-width:18mm;padding:0 1mm;outline:none;border-radius:0}.ws-line:focus{border-bottom-color:var(--ks-navy);background:#173a630d}.is-ok{box-shadow:inset 0 -2px 0 var(--ok)!important;color:var(--ok)!important}.is-bad{box-shadow:inset 0 -2px 0 var(--bad)!important;color:var(--bad)!important}.ws-bubble{position:absolute;top:2mm;right:2mm;background:#fff;border:1.3px solid var(--ks-navy);border-radius:50%;padding:3mm 3.5mm;font:700 14pt/1 var(--font-hand);color:var(--ks-navy);transform:rotate(-4deg);text-align:center;max-width:34mm}.ws-pill{border-radius:999px;padding:.6mm 2.6mm;background:#ffffffd9;border:1px solid rgba(23,58,99,.15);font-size:10.5pt}.ws-pill.ok{border-color:var(--ok);color:var(--ok)}.ws-pill.warn{color:var(--ks-brown)}.ws-hint{font-size:10pt;color:var(--ks-muted);margin-bottom:1.5mm}.ws-textblock h4{margin:0 0 1.5mm;font:900 14pt var(--font-head);color:var(--ks-navy)}.ws-textblock p{margin:0 0 2mm}.ws-notice{background:var(--notice);border-radius:3.5mm;padding:3mm 3.5mm;font-size:11.5pt;height:100%}.ws-notice b{display:flex;gap:1.8mm;align-items:center;font:800 12.5pt var(--font-head);color:var(--ks-navy);margin-bottom:1.4mm}.ws-notice div{margin-bottom:1mm}.ws-tip{display:flex;gap:2.4mm;background:#ffffffbf;border-radius:3.5mm;padding:2.4mm 3mm;font-size:11pt;margin-top:2mm}.ws-tip b{color:var(--ks-navy)}.ws-figure{margin:0}.ws-figure figcaption{font-size:10.5pt;color:var(--ks-muted);text-align:center;margin-top:1.2mm}.ws-vocab h4{margin:0 0 2mm;font:900 14pt var(--font-head);color:var(--ks-navy)}.ws-vocab-cols{column-gap:8mm;font-size:12pt}.ws-vocab-cols div{break-inside:avoid;padding:.5mm 0}.ws-bank{background:#ffffffb3;border-radius:3.5mm;padding:2mm 4mm;display:flex;flex-wrap:wrap;justify-content:center;gap:1.2mm 5mm;margin-bottom:2.5mm}.ws-bank-w{font:700 12pt var(--font-body);color:var(--ks-navy);border-radius:999px;padding:.3mm 2mm}.mode-interactive .ws-bank-w{cursor:pointer}.mode-interactive .ws-bank-w:hover{background:#173a6317}.ws-gaps,.ws-choice{margin:0;padding-left:6.5mm}.ws-gaps li{padding:.8mm 0}.ws-gapline{margin:0 1mm}.ws-choice li{margin-bottom:2.4mm}.ws-q{font-weight:700;margin-bottom:1mm}.ws-opts{display:flex;flex-direction:column;gap:.8mm}.ws-opt{display:flex;gap:2mm;align-items:center;border:0;background:transparent;font:inherit;color:inherit;text-align:left;padding:.4mm 1mm;border-radius:2mm}.mode-interactive .ws-opt{cursor:pointer}.mode-interactive .ws-opt:hover{background:#173a630f}.ws-dot,.ws-box{width:4mm;height:4mm;border:1.3px solid var(--ks-navy);flex:none;background:#fff}.ws-dot{border-radius:50%}.ws-box{border-radius:1mm}.ws-opt.on .ws-dot,.ws-opt.on .ws-box{background:var(--ks-green-2);border-color:var(--ks-green-2);box-shadow:inset 0 0 0 1mm #fff}.ws-opt.is-ok{color:var(--ok)!important;box-shadow:none!important}.ws-opt.is-bad{color:var(--bad)!important;box-shadow:none!important}.ws-tf-head,.ws-tf-row{display:grid;grid-template-columns:1fr 9mm 9mm;gap:2mm;align-items:center}.ws-tf-head b{text-align:center;font:900 11pt var(--font-head);color:var(--ks-navy)}.ws-tf-row{padding:1.2mm 0;border-bottom:1px solid rgba(23,58,99,.1)}.ws-tfbox{width:6mm;height:6mm;border:1.3px solid var(--ks-navy);border-radius:1.2mm;background:#fff;justify-self:center;padding:0}.mode-interactive .ws-tfbox{cursor:pointer}.ws-tfbox.on{background:var(--ks-green-2);border-color:var(--ks-green-2)}.ws-tfbox.is-bad{background:var(--bad);border-color:var(--bad);box-shadow:none!important}.ws-tfbox.is-ok{box-shadow:none!important}.ws-match,.ws-many{display:grid;grid-template-columns:1.3fr 1fr;gap:3mm}.ws-many .ws-hint{grid-column:1 / -1}.ws-match ol,.ws-many ol{margin:0;padding-left:6mm}.ws-match ul,.ws-many ul{margin:0;padding-left:5mm;list-style:disc}.ws-match ul{list-style:none;padding-left:0}.ws-match li,.ws-many li{padding:.8mm 0}.ws-match ol li{display:flex;justify-content:space-between;gap:2mm;align-items:center}.ws-letterbox{width:8mm;height:6.5mm;border-bottom:1px solid var(--ks-line);flex:none;text-align:center;font-weight:700}.ws-sel{font:700 12pt var(--font-body);border:1px solid rgba(23,58,99,.3);border-radius:2mm;background:#fff;color:var(--ks-navy)}.ws-many li.pick{cursor:pointer;border-radius:1.5mm}.ws-many li.pick:hover{background:#173a6312}.ws-many li.sel{background:#2f7d4c24;outline:1px solid var(--ks-green-2)}.ws-tags{display:block;font:700 14pt/1 var(--font-hand);color:var(--ks-green-2)}.ws-pics{display:grid;gap:2.5mm}.ws-pic{display:flex;flex-direction:column;gap:1mm;align-items:stretch}.ws-cap{font-size:10.5pt;text-align:center;line-height:1.15}.ws-circ{position:absolute;left:1.2mm;bottom:1.2mm;width:8.5mm;height:8.5mm;border-radius:50%;background:#fff;border:1.4px solid var(--ks-navy);text-align:center;font:800 12pt var(--font-head);color:var(--ks-navy);padding:0;outline:none}.ws-circ.is-ok{background:#e7f5ec;border-color:var(--ok);box-shadow:none!important}.ws-circ.is-bad{background:#fbe9e6;border-color:var(--bad);box-shadow:none!important}.ws-clocks{display:grid;gap:2.5mm 4mm}.ws-clockitem{display:flex;flex-direction:column;align-items:center;gap:1mm}.ws-clock{width:100%;max-width:27mm}.ws-clockrow{display:flex;gap:1.5mm;align-items:center;width:100%;font:800 12pt var(--font-head)}.ws-speak{display:grid;grid-template-columns:1fr;gap:3mm}.ws-speak.has-img{grid-template-columns:1fr 42%;align-items:start}.ws-bullets{margin:0;padding-left:5mm}.ws-bullets li{padding:.7mm 0}.ws-rec{display:flex;gap:2mm;align-items:center;flex-wrap:wrap;margin-top:2.5mm}.ws-rec audio{height:9mm;max-width:100%}.ws-recbtn{font:800 11pt var(--font-body);border:0;border-radius:999px;padding:1.6mm 4mm;background:var(--bad);color:#fff;cursor:pointer}.ws-recbtn.on{background:var(--ks-navy)}.ws-write{position:relative}.ws-ruled{width:100%;border:0;resize:none;outline:none;font:700 15.5pt/7.4mm var(--font-hand);color:#1b4a8a;padding:0 1mm;display:block;background:transparent repeating-linear-gradient(to bottom,transparent 0,transparent 6.9mm,var(--ks-line) 6.9mm,var(--ks-line) 7.4mm)}.ws-note-img{position:absolute;right:-1mm;bottom:-1mm;width:36%;transform:rotate(3deg);border-radius:2mm;pointer-events:none}.ws-counters{display:flex;gap:2mm;flex-wrap:wrap;margin-top:2mm}.ws-self{display:grid;grid-template-columns:1fr 44mm;gap:3mm 5mm;align-items:center}.ws-self-items{display:grid;grid-template-columns:1fr 1fr;gap:1.6mm 5mm;font-size:11.3pt}.ws-self label{display:flex;gap:2mm;align-items:flex-start}.ws-self input{width:4.5mm;height:4.5mm;margin:.6mm 0 0;accent-color:var(--ks-green);flex:none}.ws-stamp{background:#d8ecd0;border-radius:3.5mm;transform:rotate(-5deg);padding:2.5mm;text-align:center;font:700 16pt/1.05 var(--font-hand);color:var(--ks-navy);display:flex;gap:2mm;align-items:center;justify-content:center}.ws-stamp svg{width:9mm;height:9mm;flex:none}.ws-dialog{display:flex;flex-direction:column;gap:2.2mm}.ws-say{display:grid;grid-template-columns:17mm 1fr;gap:2mm;align-items:start}.ws-say.b{grid-template-columns:1fr 17mm}.ws-say.b .ws-who{order:2;text-align:left}.ws-who{font:800 10.5pt var(--font-head);color:var(--ks-navy);text-align:right;padding-top:1.6mm}.ws-sayb{background:#fff;border:1.2px solid rgba(23,58,99,.25);border-radius:4mm;padding:1.8mm 3mm}.ws-say.a .ws-sayb{border-top-left-radius:1mm}.ws-say.b .ws-sayb{border-top-right-radius:1mm;background:#f7fbf5}.ws-reading{display:grid;grid-template-columns:1.15fr 1fr;gap:5mm}.ws-passage{background:#ffffffbf;border-radius:3.5mm;padding:3mm 4mm;font-size:12.2pt;line-height:1.5}.ws-passage h4{margin:0 0 1.5mm;font:900 13.5pt var(--font-head);color:var(--ks-navy)}.ws-passage p{margin:0 0 2mm}.ws-rq{margin:0;padding-left:6mm}.ws-rq li{margin-bottom:2.6mm}.ws-listen audio{width:100%;margin-bottom:2mm}.ws-qr{background:#ffffffbf;border-radius:3mm;padding:2mm 3mm;font-size:11pt;margin-bottom:2mm}.ws-table{width:100%;border-collapse:collapse;font-size:12pt;background:#ffffffb3;border-radius:3mm;overflow:hidden}.ws-table th{background:#173a6314;font:800 11.5pt var(--font-head);color:var(--ks-navy);text-align:left;padding:2mm 3mm}.ws-table td{padding:1.6mm 3mm;border-top:1px solid rgba(23,58,99,.1)}.ws-table .ws-line{width:100%}.ws-bank-w.sel{background:var(--ks-green-2);color:#fff}.ws-bank-w.placed{opacity:.35}.ws-cat-groups{display:grid;gap:3mm}.ws-cat-g{background:#ffffffbf;border-radius:3.5mm;padding:2.4mm 3mm;min-height:22mm}.mode-interactive .ws-cat-g{cursor:pointer}.ws-cat-g b{display:block;font:900 12pt var(--font-head);color:var(--ks-navy);margin-bottom:1.2mm}.ws-cat-list{display:flex;flex-wrap:wrap;gap:1.2mm}.ws-cat-item{font:700 14pt/1.2 var(--font-hand);color:#1b4a8a}.ws-cat-line{width:100%;height:6.5mm;border-bottom:1px solid var(--ks-line)}.ed-err{color:#c2412d}.ws-order{margin:0;padding-left:6mm}.ws-order li{margin-bottom:2.6mm}.ws-chips{display:flex;flex-wrap:wrap;gap:1.2mm;margin-bottom:1mm}.ws-chip{border:1px solid rgba(23,58,99,.3);background:#fff;border-radius:2mm;padding:.4mm 2mm;font-size:11.5pt;color:var(--ks-navy)}.ws-ftr{margin-top:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;font-size:11pt}.ws-fl{font:900 13.5pt var(--font-head);color:var(--ks-green)}.ws-fl small{font:800 11pt var(--font-head);color:var(--ks-navy)}.ws-ftr em{color:var(--ks-muted)}.ws-url{text-align:right;color:var(--ks-navy)}.mode-edit .ws-card{cursor:pointer;outline:2px solid transparent;outline-offset:1.5mm;transition:outline-color .15s}.mode-edit .ws-card:hover{outline-color:#2f7d4c59}.mode-edit .ws-card.selected{outline-color:var(--ks-green-2)}.mode-edit .ws-line,.mode-edit .ws-ruled,.mode-edit .ws-circ{pointer-events:none}.ws-empty{border:2px dashed #cfc8b8;border-radius:var(--radius);padding:20mm;text-align:center;color:#9a9384;font-size:14pt}.ws-card.focused{outline:1.2mm solid #f5b301;outline-offset:1mm}.ws-card.pickable{cursor:pointer}@page worksheet{size:A4;margin:0}.ws-page{page:worksheet}@media print{.ws-root{gap:0;display:block}.ws-page{zoom:.7776;box-shadow:none;break-after:page}.ws-page:last-child{break-after:auto}.mode-edit .ws-card{outline:none!important}}.ws-resize{position:absolute;z-index:3;background:transparent}.ws-resize-x{top:2mm;bottom:2mm;right:-2.2mm;width:3mm;cursor:ew-resize}.ws-resize-y{left:2mm;right:2mm;bottom:-2.2mm;height:3mm;cursor:ns-resize}.ws-resize:after{content:"";position:absolute;border-radius:99px;background:var(--ks-green-2, #2f7d4c);opacity:.85}.ws-resize-x:after{top:50%;left:50%;width:1.2mm;height:9mm;transform:translate(-50%,-50%)}.ws-resize-y:after{left:50%;top:50%;height:1.2mm;width:9mm;transform:translate(-50%,-50%)}@media print{.ws-resize{display:none}}.ws-card[data-cols="2"] :is(.ws-gaps,.ws-choice,.ws-order,.ws-rq,.ws-self-items){columns:2;column-gap:6mm}.ws-card[data-cols="3"] :is(.ws-gaps,.ws-choice,.ws-order,.ws-rq,.ws-self-items){columns:3;column-gap:5mm}.ws-card[data-cols] :is(.ws-gaps,.ws-choice,.ws-order,.ws-rq,.ws-self-items)>*{break-inside:avoid}.ws-card[data-cols="2"] .ws-tf{display:grid;grid-template-columns:1fr 1fr;column-gap:6mm}.ws-card[data-cols="3"] .ws-tf{display:grid;grid-template-columns:1fr 1fr 1fr;column-gap:5mm}.ws-card[data-cols] .ws-tf-head{display:none}.ws-card[data-size=small]>:not(.ws-resize){zoom:.88}.ws-card[data-size=large]>:not(.ws-resize){zoom:1.18}.ws-card.has-example :is(.ws-gaps,.ws-choice,.ws-order,.ws-rq)>li:first-child,.ws-card.has-example .ws-tf-row:first-of-type,.ws-card.has-example .ws-clockitem:first-child,.ws-card.has-example .ws-dialog>.ws-say:first-child{opacity:.85}.ws-card.has-example :is(.ws-gaps,.ws-choice,.ws-order,.ws-rq)>li:first-child:before,.ws-card.has-example .ws-tf-row:first-of-type>span:first-child:before,.ws-card.has-example .ws-clockitem:first-child .ws-clockrow:before,.ws-card.has-example .ws-dialog>.ws-say:first-child .ws-who:after{content:"Näide";display:inline-block;vertical-align:.3mm;margin:0 1.5mm 0 0;font:700 2.3mm/1 inherit;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:#2f7d4c;border-radius:1mm;padding:.6mm 1.2mm}.ws-card.has-example .ws-dialog>.ws-say:first-child .ws-who:after{margin:0 0 0 1.5mm}.ws-card.is-tall{display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr)}.ws-card.is-tall:not(:has(>.ws-ch)){grid-template-rows:1fr auto}.ws-card.is-tall>.ws-body{display:flex;flex-direction:column;min-height:0}.ws-card.is-tall>.ws-body>*{flex:0 0 auto}.ws-card.is-tall>.ws-body>:last-child{flex:1 1 auto}.ws-card.is-tall .ws-pics{grid-auto-rows:1fr}.ws-card.is-tall .ws-pic>.ws-photo{flex:1 1 0;min-height:14mm;aspect-ratio:auto!important}.ws-card.is-tall .ws-clocks{align-content:space-evenly}.ws-card.is-tall:not([data-cols]) :is(.ws-gaps,.ws-choice,.ws-order,.ws-rq,.ws-tf,.ws-self-items,.ws-dialog){display:flex;flex-direction:column;justify-content:space-evenly}.ws-card.is-tall:not([data-cols]) :is(.ws-gaps,.ws-choice,.ws-order,.ws-rq)>li{display:list-item}.ws-card.is-tall :is(.ws-match,.ws-many)>*{display:flex;flex-direction:column;justify-content:space-evenly}.ws-card.is-tall :is(.ws-match,.ws-many) li{display:list-item}.ws-card.is-tall .ws-write{display:flex;flex-direction:column}.ws-card.is-tall .ws-ruled{flex:1 1 auto}.ws-add{justify-self:start;margin-top:2mm;border:1.5px dashed var(--ks-green-2);background:#2f7d4c0f;color:var(--ks-green-2);font:800 10pt var(--font-body);border-radius:2mm;padding:1.2mm 3mm;cursor:pointer}.ws-add:hover{background:#2f7d4c24}@media print{.ws-add{display:none}}.ws-studio{--st-bg: #e9e5dc;--st-panel: #fbfaf7;--st-ink: #1f2d3d;--st-muted: #6b7680;--st-line: rgba(31,45,61,.14);--st-accent: #2f7d4c;--st-navy: #0b2a4f;--st-danger: #c2412d}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .ws-studio{--st-bg: #17191e;--st-panel: #22252c;--st-ink: #e8e6e1;--st-muted: #a4acb5;--st-line: rgba(255,255,255,.12)}}.ws-studio .st-back{display:inline-flex;gap:6px;align-items:center;font:700 13px inherit;color:var(--st-ink);text-decoration:none;padding:6px 10px;border-radius:999px;border:1px solid var(--st-line)}.ws-studio .st-banner{padding:8px 14px;font-size:13px;background:#fff4d6;color:#5a4310;border-bottom:1px solid var(--st-line)}.ws-studio .st-banner.error{background:#fbe9e6;color:#8a2a1c}.ws-studio .st-banner.ok{background:#e7f5ec;color:#1f5f39}.ws-studio .st-btn:disabled{opacity:.5;cursor:default}.ws-studio-error{padding:16px;border-radius:12px;background:#fbe9e6;color:#8a2a1c}.ws-studio-loading{padding:24px}@media print{html:has(body.ws-studio-open),body.ws-studio-open{background:#fff!important}body.ws-studio-open *{visibility:hidden}.ws-studio .ws-root,.ws-studio .ws-root *{visibility:visible}.ws-studio .ws-root{position:absolute;left:0;top:0}}.ws-studio{display:flex;flex-direction:column;height:calc(100dvh - 96px);min-height:560px;color:var(--st-ink);background:var(--st-bg);border-radius:16px;overflow:hidden;font-family:Nunito Sans,system-ui,sans-serif;font-size:14px}.ws-studio .st-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:8px 14px;border-bottom:1px solid var(--st-line);background:var(--st-panel)}.ws-studio .st-title{display:flex;flex-direction:column;margin-right:8px;min-width:0}.ws-studio .st-title b{font:800 14px Nunito,sans-serif}.st-title span{font-size:12px;color:var(--st-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.ws-studio .st-seg{display:flex;background:var(--st-bg);border-radius:999px;padding:3px}.ws-studio .st-seg button{border:0;background:transparent;color:var(--st-ink);font:700 13px inherit;padding:6px 12px;border-radius:999px;cursor:pointer}.ws-studio .st-seg button[aria-pressed=true]{background:var(--st-navy);color:#fff}.ws-studio .st-actions{display:flex;gap:6px;margin-left:auto;align-items:center;flex-wrap:wrap}.ws-studio .st-btn{font:700 13px inherit;border:1px solid var(--st-line);background:var(--st-panel);color:var(--st-ink);padding:6px 11px;border-radius:999px;cursor:pointer;list-style:none}.ws-studio .st-btn.primary{background:var(--st-accent);border-color:var(--st-accent);color:#fff}.ws-studio .st-more{position:relative}.st-more summary::-webkit-details-marker{display:none}.ws-studio .st-menu{position:absolute;right:0;top:36px;z-index:30;background:var(--st-panel);border:1px solid var(--st-line);border-radius:12px;padding:6px;display:flex;flex-direction:column;min-width:220px;box-shadow:0 10px 30px #0000002e}.ws-studio .st-menu button{text-align:left;border:0;background:transparent;color:var(--st-ink);font:600 13px inherit;padding:8px 10px;border-radius:8px;cursor:pointer}.ws-studio .st-menu button:hover{background:var(--st-bg)}.ws-studio .st-body{flex:1;display:grid;grid-template-columns:240px 1fr 330px;min-height:0}.ws-studio.mode-interactive .st-body,.ws-studio.mode-print .st-body{grid-template-columns:1fr}.ws-studio .st-palette,.ws-studio .st-inspector{background:var(--st-panel);overflow-y:auto;padding:10px}.ws-studio .st-palette{border-right:1px solid var(--st-line)}.st-inspector{border-left:1px solid var(--st-line)}.ws-studio .st-group{margin-bottom:12px}.ws-studio .st-group-title{font:800 11px Nunito,sans-serif;text-transform:uppercase;letter-spacing:.6px;color:var(--st-muted);margin:4px 4px 6px}.ws-studio .st-block{width:100%;display:flex;gap:8px;align-items:center;border:1px solid var(--st-line);background:var(--st-bg);color:var(--st-ink);border-radius:10px;padding:8px 9px;margin-bottom:5px;cursor:pointer;font:600 13px inherit;text-align:left}.ws-studio .st-block:hover{border-color:var(--st-accent)}.ws-studio .st-block em{margin-left:auto;font-style:normal;font-size:10px;color:var(--st-accent);font-weight:800}.ws-studio .st-canvas{overflow:auto;padding:16px}.ws-studio .st-zoom{width:fit-content;margin:0 auto}.ws-studio .st-evidence{max-width:800px;margin:16px auto 40px;background:var(--st-panel);border-radius:14px;padding:14px 16px}.ws-studio .st-evidence h4{margin:0 0 8px;font:800 15px Nunito,sans-serif}.ws-studio .st-ev{display:grid;grid-template-columns:1fr auto;gap:12px;padding:6px 0;border-top:1px solid var(--st-line)}.ws-studio .ed-inspector-head{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.ws-studio .ed-inspector-head b{font:800 15px Nunito,sans-serif}.ws-studio .ed-section{border-top:1px solid var(--st-line);padding:10px 0;display:flex;flex-direction:column;gap:8px}.ws-studio .ed-field{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.ws-studio .ed-label{font:700 12px inherit;color:var(--st-muted)}.ws-studio .ed-hint{font-size:11.5px;color:var(--st-muted)}.ws-studio .ed-input{width:100%;font:500 13.5px inherit;color:var(--st-ink);background:var(--st-bg);border:1px solid var(--st-line);border-radius:8px;padding:7px 8px}.ws-studio .ed-input.small{width:auto;flex:none}textarea.ed-input{resize:vertical}.ws-studio .ed-row{display:flex;gap:6px;align-items:flex-end;flex-wrap:wrap}.ws-studio .ed-row>.ed-input{flex:1;min-width:0}.ws-studio .ed-btn{font:700 12.5px inherit;border:1px solid var(--st-accent);background:var(--st-accent);color:#fff;border-radius:999px;padding:5px 10px;cursor:pointer}.ws-studio .ed-btn.ghost{background:transparent;color:var(--st-ink);border-color:var(--st-line)}.ws-studio .ed-btn.danger{background:transparent;color:var(--st-danger);border-color:var(--st-danger)}.ws-studio .ed-seg{display:flex;gap:4px}.ws-studio .ed-seg button{flex:1;border:1px solid var(--st-line);background:var(--st-bg);color:var(--st-ink);border-radius:8px;padding:6px;font:700 12.5px inherit;cursor:pointer}.ws-studio .ed-seg button.on{background:var(--st-navy);color:#fff;border-color:var(--st-navy)}.ws-studio .ed-tones{display:flex;gap:6px}.ws-studio .ed-tones button{width:28px;height:28px;border-radius:50%;border:2px solid var(--st-line);cursor:pointer}.ws-studio .ed-tones button.on{border-color:var(--st-navy);box-shadow:0 0 0 2px var(--st-panel),0 0 0 4px var(--st-accent)}.ws-studio .ed-img{position:relative;border-radius:8px;overflow:hidden;background:var(--st-bg);border:1px dashed var(--st-line);cursor:crosshair}.ws-studio .ed-img img{width:100%;display:block;object-fit:cover}.ws-studio .ed-img-empty{display:grid;place-items:center;height:70px;color:var(--st-muted);font-size:12px}.ws-studio .ed-focus{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 2px var(--st-accent);pointer-events:none}.ws-studio .ed-rows{display:flex;flex-direction:column;gap:6px}.ws-studio .ed-rowitem{display:grid;grid-template-columns:18px 1fr auto;gap:6px;align-items:start;background:var(--st-bg);border-radius:8px;padding:6px}.ws-studio .ed-rownum{font:800 12px Nunito,sans-serif;color:var(--st-muted);padding-top:6px}.ws-studio .ed-rowbody{display:flex;flex-direction:column;gap:4px;min-width:0}.ws-studio .ed-rowbody .ed-input{background:var(--st-panel)}.ws-studio .ed-rowtools{display:flex;flex-direction:column;gap:2px}.ws-studio .ed-rowtools button{border:0;background:transparent;color:var(--st-muted);cursor:pointer;font-size:13px;padding:1px 4px}@media(max-width:1000px){.ws-studio .st-body{grid-template-columns:1fr}.ws-studio .st-palette{max-height:180px;border-right:0;border-bottom:1px solid var(--st-line)}.ws-studio .st-inspector{border-left:0;border-top:1px solid var(--st-line)}}@media print{.ws-studio .st-bar,.ws-studio .st-palette,.ws-studio .st-inspector,.ws-studio .st-evidence{display:none!important}.ws-studio .st-body{display:block}.ws-studio .st-canvas{padding:0;overflow:visible}.ws-studio .st-zoom{zoom:1!important}.ws-studio{height:auto;background:#fff;border-radius:0}}.ws-doc-player .st-canvas{background:var(--st-bg);border-radius:12px;padding:12px;margin:14px 20px;overflow:auto}.submission-review .ws-doc-player .st-canvas{margin:8px 0}.ws-doc-player .st-evidence{margin:0 20px 16px;max-width:none}.submission-review .ws-doc-player .st-evidence{margin:0}.modal.modal--worksheet-doc{width:min(1120px,96vw);max-width:96vw}.ws-studio .st-palette.is-original{width:380px}.ws-studio .st-body:has(.st-palette.is-original){grid-template-columns:380px 1fr 330px}.ws-studio .st-lefttabs{display:flex;gap:4px;margin-bottom:10px}.ws-studio .st-lefttabs button,.ws-studio .st-original-tabs button{flex:1;padding:6px 8px;border:1px solid var(--st-line);border-radius:8px;background:transparent;color:var(--st-ink);font:700 12px inherit;cursor:pointer}.ws-studio .st-lefttabs button[aria-pressed=true],.ws-studio .st-original-tabs button[aria-pressed=true]{background:var(--st-navy);color:#fff;border-color:var(--st-navy)}.ws-studio .st-original{display:grid;gap:8px}.ws-studio .st-original-tabs{display:flex;gap:4px}.ws-studio .st-original-img{position:relative;cursor:crosshair;-webkit-user-select:none;user-select:none;border:1px solid var(--st-line);border-radius:8px;overflow:hidden;background:#fff}.ws-studio .st-original-img img{display:block;width:100%;height:auto;pointer-events:none}.ws-studio .st-crop{position:absolute;border:2px dashed var(--st-accent);background:#2f7d4c24;pointer-events:none}.ws-studio .st-hint{margin:0;font-size:12px;color:var(--st-muted)}.ws-studio .st-hint.error{color:var(--st-danger)}@media(max-width:1100px){.ws-studio .st-body:has(.st-palette.is-original){grid-template-columns:1fr}.ws-studio .st-palette.is-original{width:auto;max-height:none}}.ws-convert-stats{display:grid;grid-template-columns:auto 1fr;gap:10px 18px;align-items:center;padding:16px 18px;margin-bottom:14px}.ws-convert-stats>div:first-child{display:grid}.ws-convert-stats b{font:800 1.8rem Manrope,sans-serif}.ws-convert-stats span{color:var(--muted);font-size:.8rem}.ws-convert-bar{height:10px;border-radius:99px;background:#eef0f3;overflow:hidden}.ws-convert-bar i{display:block;height:100%;background:#12b76a}.ws-convert-stats ul{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:14px;margin:0;padding:0;list-style:none;font-size:.85rem}.ws-convert-filters{display:grid;grid-template-columns:200px 160px 1fr;gap:12px;margin-bottom:14px}.ws-convert-list{padding:0;overflow:hidden}.ws-convert-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:10px 16px;border-bottom:1px solid #eef0f3;color:inherit;text-decoration:none}.ws-convert-row:hover{background:#f8fafc}.ws-convert-row img,.ws-convert-ico{width:64px;height:46px;object-fit:cover;border-radius:6px;background:#f2f4f7;display:grid;place-items:center;color:var(--muted)}.ws-convert-row>span:nth-child(2){display:grid;gap:3px;min-width:0}.ws-convert-row strong,.ws-convert-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-convert-row small{color:var(--muted);font-size:.75rem}.ws-convert-go{display:inline-flex;gap:4px;align-items:center;font-weight:700;color:#175cd3;font-size:.85rem}@media(max-width:700px){.ws-convert-filters{grid-template-columns:1fr}.ws-convert-row{grid-template-columns:48px minmax(0,1fr)}.ws-convert-row>.badge,.ws-convert-go{grid-column:2}}.ws-book-studio .st-body{grid-template-columns:320px 1fr}.ws-book-side{display:flex;flex-direction:column;gap:8px}.ws-book-order{margin:0;padding:0;list-style:none;display:grid;gap:4px}.ws-book-order li{display:grid;grid-template-columns:1fr auto auto auto;gap:2px;align-items:center;padding:5px 6px;border:1px solid var(--st-line);border-radius:8px;font-size:12.5px}.ws-book-order li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-book-order button{border:0;background:transparent;color:var(--st-muted);cursor:pointer;padding:3px;border-radius:6px}.ws-book-order button:hover{background:var(--st-bg);color:var(--st-ink)}.ws-book{display:flex;flex-direction:column;align-items:center;gap:10mm}.ws-book-cover{justify-content:space-between;padding:22mm 20mm;background:linear-gradient(160deg,#edf5fd,#fff 55%,#fff4d6)}.ws-book-cover-title .ws-big{display:inline-block;font:900 40pt/1 var(--font-head);color:#fff;background:var(--ks-green);border-radius:4mm;padding:3mm 7mm;margin-bottom:8mm}.ws-book-cover-title h1{font:900 44pt/1.05 var(--font-head);color:var(--ks-navy);margin:0 0 5mm}.ws-book-cover-title p{font-size:18pt;color:var(--ks-muted);margin:0}.ws-book-cover-foot{font:800 14pt var(--font-head);color:var(--ks-navy)}.ws-book-toc ol{list-style:none;margin:6mm 0 0;padding:0;display:grid;gap:3mm;font-size:14pt}.ws-book-toc li{display:grid;grid-template-columns:auto 1fr auto;gap:3mm;align-items:baseline}.ws-book-toc li i{border-bottom:1.5px dotted var(--ks-line)}.ws-book-toc li b{font-family:var(--font-head);color:var(--ks-navy)}@media print{body.ws-studio-open .ws-book,body.ws-studio-open .ws-book *{visibility:visible}.ws-book{position:absolute;left:0;top:0;display:block;zoom:1!important}.ws-book .ws-root{position:static!important}.ws-book .ws-page{break-after:page}.ws-book>.ws-root:last-child .ws-page:last-child{break-after:auto}.ws-book-studio .st-palette{display:none!important}}@media(max-width:1100px){.ws-book-studio .st-body{grid-template-columns:1fr}}.ws-live .st-body{grid-template-columns:1fr}.ws-live-stats{display:flex;gap:10px;align-items:center;font-size:13px;color:var(--st-muted)}.ws-live-stats b{color:var(--st-ink)}.ws-live-dot{width:10px;height:10px;border-radius:50%;background:#12b76a;box-shadow:0 0 #12b76a80;animation:ws-live-pulse 1.6s infinite}.ws-live-dot.done{background:var(--st-navy);animation:none}@keyframes ws-live-pulse{70%{box-shadow:0 0 0 8px #12b76a00}to{box-shadow:0 0 #12b76a00}}@media(prefers-reduced-motion:reduce){.ws-live-dot{animation:none}}.ws-live .st-evidence{margin:12px auto 24px}.assign-live-links a{margin-left:6px;font-weight:700}.live-room-worksheet{display:grid;gap:12px;margin-top:16px}.live-room-worksheet__head{display:flex;gap:10px;align-items:flex-start}.live-room-worksheet__head>div{display:grid;gap:2px}.live-room-worksheet__head small{color:var(--muted)}.live-room-worksheet__pick{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.ws-live.is-embedded{height:auto;min-height:0;border-radius:12px}.ws-live.is-embedded .st-canvas{max-height:75vh}.ws-inline-player{display:grid;gap:8px}.ws-inline-player>h3{margin:0;font:800 1rem Manrope,sans-serif}.ws-doc-player.is-inline .st-canvas{max-height:75vh;margin:8px 0}.ws-inline-footer{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.ws-inline-footer .worksheet-progress{margin-right:auto}@media(max-width:700px){.live-room-worksheet__pick{grid-template-columns:1fr}}.ws-studio .ed-label small{font-weight:500;color:var(--st-muted, #667085)}.ws-studio .ed-seg--spans button{font-size:14px}.ws-studio .ed-height{display:flex;gap:8px;align-items:center}.ws-studio .ed-height .ed-btn.on{background:var(--st-navy);color:#fff}.ws-studio .ed-height label{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--st-ink)}.ws-studio .ed-height input{width:70px;border:1px solid var(--st-line);border-radius:8px;padding:5px 7px}.ws-studio .ed-opt{display:grid;grid-template-columns:90px 1fr;align-items:center;gap:8px;margin:6px 0;font-size:12.5px;color:var(--st-ink)}.ws-studio .ed-check{display:flex;align-items:center;gap:8px;margin:8px 0 0;font-size:12.5px;color:var(--st-ink);cursor:pointer}.sa-wrap{position:relative}.sa-wrap.is-editable .ws-page{cursor:text}.sa-layer{position:absolute;inset:0;pointer-events:none;z-index:5}.sa-layer>div>*{pointer-events:auto}::highlight(ks-anno-error){background-color:#f0443838;text-decoration:underline wavy #d92d20;text-decoration-thickness:1.5px}::highlight(ks-anno-note){background-color:#f7b50052}.sa-box{position:absolute;border-radius:6px;pointer-events:none!important}.sa-box.is-error{box-shadow:0 0 0 2px #d92d20;background:#f0443814}.sa-box.is-note{box-shadow:0 0 0 2px #e5a100;background:#f7b5001a}.sa-pin{position:absolute;width:20px;height:20px;border-radius:50%;border:2px solid #fff;color:#fff;font:800 11px/1 system-ui,sans-serif;display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 6px #00000040;padding:0}.sa-pin.is-error{background:#d92d20}.sa-pin.is-note{background:#e5a100}.sa-pop,.sa-composer{position:absolute;z-index:6;width:280px;background:#fff;border:1px solid #e4e8ee;border-radius:12px;box-shadow:0 14px 34px #10233933;padding:10px 12px;font:400 13px/1.45 system-ui,sans-serif;color:#14243a;pointer-events:auto}.sa-pop header{display:flex;align-items:center;gap:6px;margin-bottom:4px}.sa-pop.is-error header{color:#b42318}.sa-pop.is-note header{color:#a15c00}.sa-pop header button{margin-left:auto;border:0;background:none;cursor:pointer;color:#667085}.sa-pop p,.sa-composer p{margin:4px 0}.sa-quote{color:#475467;font-style:italic}.sa-fix b{color:#087e6b}.sa-remove{margin-top:6px;display:inline-flex;align-items:center;gap:4px;border:0;background:#fdecea;color:#b42318;border-radius:8px;padding:4px 8px;cursor:pointer;font-weight:700}.sa-colors{display:flex;gap:4px;padding:3px;background:#eef1f4;border-radius:9px}.sa-colors button{flex:1;border:0;background:transparent;border-radius:7px;padding:5px;font-weight:700;cursor:pointer;color:#42536a}.sa-colors button.on.is-error{background:#d92d20;color:#fff}.sa-colors button.on.is-note{background:#e5a100;color:#fff}.sa-composer input,.sa-composer textarea{width:100%;box-sizing:border-box;border:1.5px solid #d6dde5;border-radius:8px;padding:6px 8px;font:inherit;margin-top:6px}.sa-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}.sa-actions button{border:1px solid #d6dde5;background:#fff;border-radius:8px;padding:6px 10px;font-weight:700;cursor:pointer}.sa-actions button.primary{background:#14243a;border-color:#14243a;color:#fff}.sa-error{color:#b42318;font-weight:600}@media print{.sa-layer,.sa-composer{display:none}}.sa-hint{margin:0 0 8px;color:#475467;font-size:13px}.homework-overview,.settings-grid>.card{border-radius:18px;box-shadow:0 10px 30px #102f420e}.homework-grid>.card{border-radius:20px;box-shadow:0 14px 34px #102f4211}.homework-grid .task-row,.submission-row{content-visibility:auto;contain-intrinsic-size:74px}.submission-row:focus-visible,.task-check:focus-visible,.task-preview-button:focus-visible{position:relative;z-index:1;outline:3px solid rgba(32,128,97,.24);outline-offset:-3px}.settings-grid>.card{position:relative;overflow:hidden}.settings-grid>.card:after{content:"";position:absolute;width:90px;height:90px;top:-56px;right:-54px;border:18px solid rgba(32,128,97,.055);border-radius:50%;pointer-events:none}.settings-icon{box-shadow:inset 0 0 0 1px #20806114}@media(max-width:650px){.homework-grid>.card,.settings-grid>.card{border-radius:16px}}.library-page{max-width:1500px}.library-page>.page-header{margin-bottom:18px}.library-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.library-stat{display:grid;gap:5px;min-height:116px;padding:16px 18px}.library-stat span{color:var(--muted);font-size:.75rem;font-weight:700}.library-stat strong{color:var(--navy);font-family:Manrope,sans-serif;font-size:1.85rem;line-height:1}.library-stat small{color:var(--muted);font-size:.71rem;line-height:1.4}.library-toolbar{align-items:center;background:linear-gradient(135deg,#fff,#f7faf9);border-color:#dce8e4;display:grid;grid-template-columns:minmax(420px,2fr) 210px auto;gap:12px;margin-bottom:14px;padding:14px}.library-toolbar .search-field{background:#fff;min-height:44px;width:100%;cursor:text}.library-toolbar .search-field input{flex:1;width:100%;min-width:0;height:42px;background:transparent}.library-toolbar .field{margin:0}.library-toolbar__summary{display:grid;justify-items:end;min-width:120px}.library-toolbar__summary strong{color:var(--navy);font-size:.82rem}.library-toolbar__summary small{color:var(--muted);font-size:.68rem}.library-breadcrumbs{align-items:center;display:flex;flex-wrap:wrap;gap:5px;margin:0 0 16px}.library-breadcrumbs span{align-items:center;display:inline-flex;gap:5px}.library-breadcrumbs button{background:transparent;border:0;border-radius:8px;color:var(--muted);cursor:pointer;font-size:.76rem;font-weight:700;padding:6px 8px}.library-breadcrumbs button:hover{background:#f2f7f5;color:var(--green)}.library-breadcrumbs button[aria-current=page]{background:#eef7f4;color:var(--green)}.library-folder-grid,.library-item-grid{display:grid;gap:13px}.library-folder-grid,.library-item-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.library-folder,.library-item{background:#fff;border:1px solid var(--border);border-radius:15px;color:inherit;cursor:pointer;min-width:0;text-align:left;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.library-folder:hover,.library-item:hover{border-color:#c7ded7;box-shadow:0 10px 24px #1c2b3a12;transform:translateY(-1px)}.library-folder{align-items:center;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto;min-height:94px;padding:15px}.library-folder>i,.library-item__head>i{align-items:center;background:#edf7f4;border-radius:11px;color:var(--green);display:inline-flex;height:40px;justify-content:center;width:40px}.library-folder>span{display:grid;gap:3px;min-width:0}.library-folder strong{color:var(--navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-folder small{color:var(--muted);font-size:.72rem}.library-folder>svg{color:#98a2b3}.library-item{display:grid;gap:10px;min-height:210px;padding:16px}.library-item__head{align-items:center;display:flex;justify-content:space-between;gap:10px}.library-item>strong{color:var(--navy);font-size:.95rem}.library-item>p{color:var(--muted);font-size:.76rem;line-height:1.5;margin:0}.library-item__meta{align-self:end;border-top:1px solid #eef1f2;display:flex;flex-wrap:wrap;gap:6px 12px;padding-top:10px}.library-item__meta span{color:var(--muted);font-size:.69rem;font-weight:700}.library-detail{display:grid;gap:16px}.library-detail>p{color:var(--muted);line-height:1.55;margin:0}.library-detail dl{border:1px solid var(--border);border-radius:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;overflow:hidden}.library-detail dl>div{display:grid;gap:3px;padding:12px 14px}.library-detail dl>div:nth-child(2n){border-left:1px solid var(--border)}.library-detail dl>div:nth-child(n+3){border-top:1px solid var(--border)}.library-detail dt{color:var(--muted);font-size:.68rem;font-weight:700;text-transform:uppercase}.library-detail dd{color:var(--navy);font-weight:700;margin:0}@media(max-width:1100px){.library-toolbar{grid-template-columns:minmax(0,1fr) 210px}.library-toolbar .search-field{grid-column:1 / -1}.library-toolbar__summary{justify-items:start}.library-overview,.library-folder-grid,.library-item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.library-toolbar{grid-template-columns:1fr}.library-toolbar__summary{justify-items:start}.library-folder-grid,.library-item-grid{grid-template-columns:1fr}}@media(max-width:520px){.library-overview{grid-template-columns:1fr 1fr}.library-stat{min-height:96px;padding:13px}.library-stat strong{font-size:1.5rem}.library-page>.page-header .page-header__actions,.library-page>.page-header .button{width:100%}.library-detail dl{grid-template-columns:1fr}.library-detail dl>div:nth-child(2n){border-left:0}.library-detail dl>div+div{border-top:1px solid var(--border)}}.lib2-search{display:flex;align-items:center;gap:12px;background:#fff;border:1.5px solid #d6dde5;border-radius:16px;padding:0 16px;min-height:58px;box-shadow:0 8px 24px #1023390f;margin:4px 0 14px}.lib2-search:focus-within{border-color:#087e6b;box-shadow:0 0 0 4px #087e6b1f}.lib2-search>svg{color:#667085;flex:none}.lib2-search input{flex:1;border:0;outline:0;background:transparent;font-size:1.05rem;min-width:0;height:54px}.lib2-search kbd{border:1px solid #d0d5dd;border-radius:6px;padding:1px 7px;color:#667085;font-size:.8rem;background:#f8fafc}.lib2-clear{border:0;background:#eef1f4;border-radius:999px;width:28px;height:28px;display:grid;place-items:center;cursor:pointer;color:#42536a}.lib2-levels,.lib2-chips{display:flex;gap:8px;flex-wrap:wrap}.lib2-levels{margin-bottom:16px}.lib2-levels button,.lib2-chips button{display:inline-flex;align-items:center;gap:6px;border:1.5px solid #d6dde5;background:#fff;border-radius:999px;padding:7px 14px;font-weight:700;color:#344054;cursor:pointer;font-size:.9rem}.lib2-levels button{font-size:1rem;padding:9px 18px}.lib2-levels button span,.lib2-chips button span{font-weight:600;color:#667085;font-size:.8rem}.lib2-levels button.is-active,.lib2-chips button.is-active{background:#14243a;border-color:#14243a;color:#fff}.lib2-levels button.is-active span,.lib2-chips button.is-active span{color:#c5d5e2}.lib2-body{display:grid;grid-template-columns:280px minmax(0,1fr);gap:22px;align-items:start}.lib2-toc{position:sticky;top:14px;max-height:calc(100vh - 28px);overflow:auto;background:#fff;border:1px solid #e4e8ee;border-radius:16px;padding:10px}.lib2-toc ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}.lib2-toc li button{width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:baseline;text-align:left;border:0;background:transparent;border-radius:10px;padding:8px 10px;cursor:pointer;color:#344054;font-size:.88rem;line-height:1.35}.lib2-toc li button:hover{background:#f2f5f8}.lib2-toc li button.is-active{background:#e7f5f1;color:#0b5c4d;font-weight:700}.lib2-toc li button b{font-size:.72rem;color:#087e6b}.lib2-toc li button small{color:#98a2b3}.lib2-toc-select{display:none}.lib2-filters{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.lib2-sort{display:flex;align-items:center;gap:8px;font-size:.85rem;color:#667085}.lib2-sort select,.lib2-toc-select select{border:1.5px solid #d6dde5;border-radius:10px;padding:7px 10px;background:#fff;font-weight:600;color:#344054}.lib2-count{margin:12px 0 8px;color:#667085;font-size:.88rem}.lib2-count button{border:0;background:none;color:#087e6b;font-weight:700;cursor:pointer;padding:0}.lib2-section h3{display:flex;align-items:center;gap:10px;margin:18px 0 8px;font:800 1rem Manrope,sans-serif;color:#14243a}.lib2-section h3 span{font-size:.72rem;background:#e7f5f1;color:#0b5c4d;border-radius:6px;padding:2px 7px}.lib2-section h3 small{color:#98a2b3;font-weight:600}.lib2-list{list-style:none;margin:0;padding:0;background:#fff;border:1px solid #e4e8ee;border-radius:14px;overflow:hidden}.lib2-row{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:10px 14px;border-top:1px solid #eef1f4}.lib2-row:first-child{border-top:0}.lib2-row:hover{background:#fafbfc}.lib2-star{border:0;background:transparent;color:#c4ccd6;cursor:pointer;padding:4px;display:grid}.lib2-star.is-on{color:#e0a526}.lib2-star.is-on svg{fill:currentColor}.lib2-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#eef4ff;color:#3559c7}.lib2-icon.tone-success{background:#e7f5f1;color:#0b5c4d}.lib2-icon.tone-danger{background:#fdecea;color:#b42318}.lib2-icon.tone-neutral{background:#f2f4f7;color:#475467}.lib2-main{display:grid;gap:2px;text-align:left;border:0;background:transparent;cursor:pointer;min-width:0;padding:2px 0}.lib2-main strong{font-size:.97rem;color:#14243a;overflow-wrap:anywhere}.lib2-num{color:#98a2b3;font-weight:700;margin-right:6px}.lib2-main small{color:#667085;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib2-snippet{font-style:normal;font-size:.8rem;color:#475467;background:#fff8e6;border-radius:6px;padding:3px 7px;margin-top:3px}.lib2-meta{display:flex;gap:10px;align-items:center;color:#98a2b3;font-size:.78rem;white-space:nowrap}.lib2-meta span{display:inline-flex;align-items:center;gap:3px}.lib2-actions{display:flex;gap:6px}.lib2-actions .button{min-height:34px;padding:0 12px;font-size:.84rem}.lib2-more{display:flex;justify-content:center;margin-top:16px}@media(max-width:1100px){.lib2-meta time{display:none}}@media(max-width:900px){.lib2-body{grid-template-columns:1fr}.lib2-toc{position:static;max-height:none;padding:0;border:0;background:transparent}.lib2-toc ul{display:none}.lib2-toc-select{display:grid;gap:4px;font-size:.8rem;color:#667085;font-weight:700}.lib2-toc-select select{width:100%}}@media(max-width:640px){.lib2-row{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"star main main" "star actions actions"}.lib2-row .lib2-icon,.lib2-row .lib2-meta{display:none}.lib2-star{grid-area:star}.lib2-main{grid-area:main}.lib2-actions{grid-area:actions}.lib2-actions .button{flex:1}.lib2-levels button{padding:8px 14px}}.lib2-search input::-webkit-search-cancel-button,.lib2-search input::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none}@media(max-width:640px){.lib2 .page-header__actions{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding-bottom:4px;scrollbar-width:none}.lib2 .page-header__actions .button{width:auto;flex:none;min-height:38px;padding:0 12px;font-size:.85rem;white-space:nowrap}.lib2 .page-header p{display:none}.lib2-levels,.lib2-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.lib2-levels button,.lib2-chips button{flex:none}.lib2-filters{display:grid;gap:10px}.lib2-section h3{font-size:.95rem}}.rec-panel{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 14px;margin-top:12px;border-radius:14px;border:1px solid var(--border, #e4e7ec);background:#fff}.rec-panel.is-on{border-color:#f04438;background:#fef3f2}.rec-panel.is-off{color:var(--muted);font-size:.85rem}.rec-panel strong{color:#b42318;font-variant-numeric:tabular-nums}.rec-meta{color:var(--muted);font-size:.82rem;margin-right:auto}.rec-dot{width:11px;height:11px;border-radius:50%;background:#f04438;box-shadow:0 0 #f0443880;animation:rec-pulse 1.4s infinite;display:inline-block}@keyframes rec-pulse{70%{box-shadow:0 0 0 8px #f0443800}to{box-shadow:0 0 #f0443800}}@media(prefers-reduced-motion:reduce){.rec-dot{animation:none}}.rec-indicator{display:inline-flex;gap:8px;align-items:center;margin-top:10px;padding:6px 12px;border-radius:999px;background:#fef3f2;color:#b42318;font-weight:800;font-size:.85rem}.modal.modal--transcript{width:min(900px,96vw)}.transcript{display:grid;gap:12px}.transcript__tools{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.transcript__tools .field{flex:1 1 220px}.transcript__who{display:flex;gap:4px}.transcript__who button{border:1px solid var(--border, #d0d5dd);background:#fff;border-radius:999px;padding:6px 12px;font-weight:700;cursor:pointer}.transcript__who button[aria-pressed=true]{background:#0b2a4f;color:#fff;border-color:#0b2a4f}.transcript__stat{color:var(--muted);font-size:.82rem}.transcript__lines{list-style:none;margin:0;padding:0;display:grid;gap:6px;max-height:60vh;overflow:auto}.transcript__lines li{display:grid;grid-template-columns:48px 70px minmax(0,1fr);gap:8px;padding:8px 10px;border-radius:10px;background:#f8fafc}.transcript__lines li.is-student{background:#ecfdf3}.transcript__lines time{color:var(--muted);font-size:.78rem;font-variant-numeric:tabular-nums}.transcript__lines b{font-size:.8rem}.transcript__lines p{margin:0;line-height:1.45}@media(max-width:560px){.transcript__lines li{grid-template-columns:1fr;gap:2px}}.messages-page{max-width:1500px}.messages-page>.page-header{margin-bottom:18px}.message-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.message-metric{display:grid;gap:5px;min-height:116px;padding:16px 18px}.message-metric span{color:var(--muted);font-size:.76rem;font-weight:700}.message-metric strong{color:var(--navy);font-family:Manrope,sans-serif;font-size:1.85rem;line-height:1}.message-metric small{color:var(--muted);font-size:.72rem}.messages-shell{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);min-height:660px;overflow:hidden;padding:0}.conversation-list{background:#f8fafb;border-right:1px solid var(--border);display:flex;flex-direction:column;min-width:0;padding:16px}.conversation-list__top{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.conversation-list__top>div{display:grid;gap:3px}.conversation-list__top strong{color:var(--navy);font-size:1rem}.conversation-list__top>svg{color:var(--green)}.conversation-list .search-field{background:#fff;margin-bottom:10px}.channel-filter{display:flex;gap:6px;margin-bottom:10px;overflow-x:auto;padding-bottom:1px}.channel-filter button{background:#fff;border:1px solid var(--border);border-radius:999px;color:var(--muted);cursor:pointer;flex:0 0 auto;font-size:.69rem;font-weight:700;padding:6px 9px}.channel-filter button:hover{border-color:#b9d9cf;color:var(--green)}.channel-filter button.is-active{background:var(--navy);border-color:var(--navy);color:#fff}.new-conversation{background:#fff;border:1px solid var(--border);border-radius:10px;color:var(--navy);min-height:40px;margin-bottom:12px;padding:0 10px;width:100%}.conversation-list__items{display:grid;gap:5px;min-height:0;overflow-y:auto;padding-right:2px}.conversation{align-items:center;background:transparent;border:1px solid transparent;border-radius:12px;cursor:pointer;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;min-height:66px;padding:9px 10px;text-align:left;width:100%}.conversation:hover{background:#fff;border-color:#e3ebe8}.conversation.active{background:#fff;border-color:#cfe2dc;box-shadow:0 5px 14px #19344112}.conversation-avatar{align-items:center;background:linear-gradient(145deg,#e7f4f0,#d7eee7);border:1px solid #cae5dd;border-radius:11px;color:var(--green);display:inline-flex;flex:0 0 auto;font-size:.74rem;font-weight:800;height:38px;justify-content:center;width:38px}.conversation>div{min-width:0}.conversation strong{color:var(--navy);display:block;font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation small,.chat-panel header small{align-items:center;color:var(--muted);display:flex;font-size:.69rem;gap:5px;margin-top:3px;min-width:0}.conversation small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation b{align-items:center;background:var(--green);border-radius:999px;color:#fff;display:inline-flex;font-size:.67rem;height:22px;justify-content:center;min-width:22px;padding:0 6px}.channel-dot{border-radius:999px;display:inline-block;flex:0 0 auto;height:7px;width:7px}.channel-dot--internal{background:#17936f}.channel-dot--facebook{background:#1877f2}.channel-dot--instagram{background:#c13584}.conversation-empty{color:var(--muted);font-size:.78rem;padding:20px 10px;text-align:center}.chat-panel{background:#fff;display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0}.chat-panel>header{align-items:center;border-bottom:1px solid var(--border);display:grid;gap:11px;grid-template-columns:auto minmax(0,1fr) auto;min-height:72px;padding:14px 18px}.chat-panel>header>div{min-width:0}.chat-panel>header strong{color:var(--navy);display:block}.message-stream{background:linear-gradient(#f7faf9e6,#f7faf9e6),radial-gradient(circle at 20% 10%,rgba(24,147,111,.08),transparent 30%);display:flex;flex-direction:column;gap:10px;overflow-y:auto;padding:20px}.message{align-self:flex-start;background:#fff;border:1px solid #e1e8e5;border-radius:14px 14px 14px 4px;box-shadow:0 4px 12px #1934410d;max-width:min(72%,680px);padding:10px 12px}.message.own{align-self:flex-end;background:#eaf6f2;border-color:#cfe6de;border-radius:14px 14px 4px}.message>span{color:var(--green);display:block;font-size:.68rem;font-weight:800;margin-bottom:4px}.message p{color:var(--navy);font-size:.84rem;line-height:1.48;margin:0;white-space:pre-wrap}.message time{color:var(--muted);display:block;font-size:.63rem;margin-top:6px;text-align:right}.message-composer{align-items:flex-end;background:#fff;border-top:1px solid var(--border);display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;padding:14px 16px}.message-composer textarea{border:1px solid #d0d5dd;border-radius:11px;font:inherit;min-height:48px;padding:10px 12px;resize:vertical;width:100%}.message-composer textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #17936f1c;outline:0}.message-composer>div{align-items:center;display:flex;gap:8px}.message-composer>div>small,.message-composer>small{color:var(--muted);font-size:.68rem}@media(max-width:1000px){.message-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.messages-shell{grid-template-columns:320px minmax(0,1fr)}}@media(max-width:760px){.messages-shell{grid-template-columns:1fr;min-height:0}.conversation-list{border-bottom:1px solid var(--border);border-right:0;max-height:360px}.chat-panel{min-height:560px}.message{max-width:86%}}@media(max-width:520px){.message-metric-grid{grid-template-columns:1fr 1fr}.message-metric{min-height:96px;padding:13px}.message-metric strong{font-size:1.5rem}.conversation-list{padding:12px}.chat-panel>header{padding:12px}.message-stream{padding:14px 12px}.message-composer{grid-template-columns:1fr}.message-composer>div{justify-content:space-between}}.payroll-page{max-width:1500px}.payroll-toolbar{align-items:center;display:grid;gap:14px;grid-template-columns:minmax(260px,1fr) 190px auto}.payroll-toolbar .field{margin:0}.payroll-staff-list{display:grid;gap:18px}.payroll-staff{overflow:hidden;padding:0}.payroll-staff>header{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:14px;padding:20px 22px}.payroll-staff>header>span{display:grid;gap:3px;min-width:0}.payroll-staff>header>span strong{font-size:1.05rem}.payroll-staff>header>span small{color:var(--muted);overflow:hidden;text-overflow:ellipsis}.payroll-staff>header>div:last-child{align-items:center;display:flex;gap:10px;margin-left:auto}.payroll-staff-summary{background:var(--border);border-bottom:1px solid var(--border);display:grid;gap:1px;grid-template-columns:repeat(4,minmax(0,1fr))}.payroll-staff-summary>span{background:var(--surface);display:grid;gap:4px;padding:16px 22px}.payroll-staff-summary small,.payroll-reason{color:var(--muted)}.payroll-table th,.payroll-table td{white-space:nowrap}.payroll-actions{display:flex;flex-wrap:wrap;gap:8px}.payroll-actions .button{font-size:.78rem;padding:8px 10px}.payroll-reason{display:block;margin-top:4px;max-width:220px;white-space:normal}.payroll-review-form{display:grid;gap:16px}.payroll-review-form dl{display:grid;gap:10px;grid-template-columns:repeat(3,1fr);margin:0}.payroll-review-form dl div{background:#f8fafc;border-radius:12px;display:grid;gap:4px;padding:12px}.payroll-review-form dt{color:var(--muted);font-size:.75rem}.payroll-review-form dd{font-weight:700;margin:0}@media(max-width:900px){.payroll-toolbar{grid-template-columns:1fr}.payroll-staff-summary{grid-template-columns:repeat(2,1fr)}.payroll-staff>header{align-items:flex-start;flex-wrap:wrap}.payroll-staff>header>div:last-child{justify-content:space-between;margin-left:0;width:100%}.payroll-review-form dl{grid-template-columns:1fr}}@media(max-width:540px){.payroll-staff-summary{grid-template-columns:1fr 1fr}.payroll-staff>header>div:last-child,.payroll-actions{align-items:stretch;flex-direction:column}}.student-finance-panel{display:grid;gap:22px}.student-finance-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.student-finance-metrics>div{padding:18px;border:1px solid var(--border-color, #e5e7eb);border-radius:16px;background:var(--surface-subtle, #f8fafc)}.student-finance-metrics span{display:flex;align-items:center;gap:8px;color:var(--text-muted, #667085);font-size:.85rem}.student-finance-metrics strong{display:block;margin-top:10px;font-size:1.35rem}.student-finance-metrics small{color:var(--text-muted, #667085)}.student-invoice-history{overflow-x:auto}.student-invoice-history>div{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 1fr;gap:16px;align-items:center;min-width:720px;padding:13px 8px;border-bottom:1px solid var(--border-color, #e5e7eb)}.student-invoice-history__head{color:var(--text-muted, #667085);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.student-finance-panel__footer{display:flex;justify-content:space-between;gap:16px;align-items:center}.student-finance-panel__footer small{color:var(--text-muted, #667085)}@media(max-width:900px){.student-finance-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.student-finance-metrics{grid-template-columns:1fr}.student-finance-panel__footer{align-items:stretch;flex-direction:column}}.billing-settings{display:grid;gap:16px}.billing-settings .eyebrow{display:inline-flex;align-items:center;gap:6px}.billing-settings__price{font-size:1.25rem}.billing-settings__missing{color:#b42318;font-weight:700}.billing-settings__form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 16px;align-items:end}.billing-settings__check{grid-column:1 / -1;display:flex;gap:8px;align-items:center}.billing-settings__actions{grid-column:1 / -1;display:flex;justify-content:flex-end;align-items:center;gap:12px;color:#087443}.billing-settings__actions span{display:inline-flex;align-items:center;gap:6px}.billing-settings__history summary{cursor:pointer;color:var(--text-muted, #667085)}.billing-settings__history ul{margin:8px 0 0;padding-left:18px}@media(max-width:760px){.billing-settings__form{grid-template-columns:1fr}}.duplicate-manual__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.duplicate-permanent{display:flex;gap:8px;align-items:flex-start;margin:10px 0;font-weight:600;color:#b42318}@media(max-width:640px){.duplicate-manual__row{grid-template-columns:1fr}}.student-profile-tabs{display:flex;gap:8px;margin:20px 0;padding:6px;overflow-x:auto;border:1px solid var(--border-color, #e5e7eb);border-radius:16px;background:var(--surface-subtle, #f8fafc)}.student-profile-tabs button{flex:0 0 auto;min-height:42px;padding:10px 16px;border:0;border-radius:12px;color:var(--text-muted, #667085);background:transparent;font:inherit;font-weight:700;cursor:pointer}.student-profile-tabs button:hover{color:var(--text-primary, #182230);background:color-mix(in srgb,var(--color-primary, #3157d5) 7%,white)}.student-profile-tabs button.is-active{color:var(--color-primary, #3157d5);background:var(--surface-raised, #fff);box-shadow:0 6px 18px #20305c14}.student-profile-tabs button:focus-visible{outline:3px solid color-mix(in srgb,var(--color-primary, #3157d5) 30%,transparent);outline-offset:2px}.student-profile-tab-panel{min-width:0}@media(max-width:640px){.student-profile-tabs{margin-inline:-4px;border-radius:14px}.student-profile-tabs button{padding-inline:14px}}.accounts-tabs{display:inline-flex;gap:4px;padding:4px;border-radius:12px;background:#eef1f4;margin:4px 0 16px}.accounts-tabs button{border:0;background:transparent;padding:8px 16px;border-radius:9px;font-weight:700;color:#42536a;cursor:pointer}.accounts-tabs button.is-active{background:#14243a;color:#fff}.accounts-notice{margin:0 0 14px;padding:12px 14px;border-radius:10px;background:#e7f5f1;color:#0b5c4d;font-weight:600}.accounts-list{display:grid;gap:12px}.account-row{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:18px 20px}.account-row__main{display:grid;gap:4px;min-width:0}.account-row__head{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.account-row__main>span{color:var(--muted);font-size:.9rem;overflow-wrap:anywhere}.account-row dl{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;margin:6px 0 0;font-size:.86rem}.account-row dt{color:var(--muted)}.account-row dd{margin:0;font-weight:600}.account-row__actions{display:flex;gap:8px;align-items:center}.account-row__rejected{color:#b42318}@media(max-width:640px){.account-row__actions{width:100%}.account-row__actions .button{flex:1}}:root{font-family:DM Sans,system-ui,sans-serif;color:#162033;background:#f4f6f8;font-synthesis:none;text-rendering:optimizeLegibility;--navy:#111827;--green:#226b5a;--green-dark:#185447;--amber:#d89a3d;--surface:#fff;--muted:#667085;--border:#e5e7eb;--danger:#b42318;--shadow:0 12px 34px rgba(15,23,42,.07)}*{box-sizing:border-box}body{margin:0;background:#f4f6f8}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{min-height:100vh;display:flex}.sidebar{position:fixed;inset:0 auto 0 0;width:272px;background:linear-gradient(180deg,#111827,#172033);color:#fff;padding:22px 16px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:12px;padding:2px 8px 24px}.brand-mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--amber),#edb861);display:grid;place-items:center}.brand strong{display:block;font:800 1.05rem Manrope,sans-serif}.brand span{display:block;color:#98a2b3;font-size:.78rem;margin-top:2px}.sidebar nav{display:grid;gap:6px;min-height:0;overflow-y:auto;padding-right:2px}.nav-item{text-decoration:none;border:0;background:transparent;color:#cbd5e1;min-height:46px;padding:0 14px;border-radius:12px;display:flex;align-items:center;gap:12px;font-weight:600}.nav-item:hover{background:#ffffff12;color:#fff}.nav-item.active{background:#fff;color:#111827}.sidebar-footer{margin-top:auto;display:grid;gap:12px}.profile-chip{display:flex;align-items:center;gap:10px;padding:14px 4px 2px;border-top:1px solid rgba(255,255,255,.08)}.profile-chip__text{min-width:0;flex:1}.profile-chip strong,.profile-chip span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-chip strong{font-size:.86rem}.profile-chip span{color:#98a2b3;font-size:.73rem;margin-top:2px}.profile-chip__logout{background:transparent!important;border-color:#ffffff1f!important;color:#fff}.avatar{width:38px;height:38px;border-radius:12px;background:#2f6658;display:grid;place-items:center;font-weight:700}.main-area{margin-left:272px;min-width:0;flex:1}.topbar{height:76px;background:#fffffff0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:16px;padding:0 30px;position:sticky;top:0;z-index:10}.search-box{max-width:520px;flex:1;display:flex;align-items:center;gap:10px;background:#f8fafc;border:1px solid var(--border);border-radius:12px;padding:0 14px}.search-box input{height:42px;flex:1;border:0;outline:0;background:transparent}.topbar-actions{margin-left:auto}.mobile-only,.backdrop{display:none}.page-content{padding:34px 32px 48px;max-width:1500px;margin:0 auto}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}.page-header h1{font:800 clamp(2rem,4vw,3.2rem) Manrope,sans-serif;letter-spacing:-.04em;margin:6px 0 8px}.page-header p{margin:0;color:var(--muted)}.page-header__actions{display:flex;gap:10px}.eyebrow{display:block;color:var(--green);font-weight:800;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:22px;box-shadow:var(--shadow)}.card h2{font:800 1.25rem Manrope,sans-serif;margin:0 0 18px}.data-notice,.success-notice{margin:0 0 18px;padding:11px 14px;border-radius:12px;font-size:.86rem;font-weight:600}.data-notice{border:1px solid #fedf89;background:#fffaeb;color:#92400e}.success-notice{border:1px solid #a6f4c5;background:#ecfdf3;color:#067647;display:flex;justify-content:space-between}.success-notice button{border:0;background:transparent;color:inherit;font-size:1.1rem}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.metric-card{box-shadow:0 3px 10px #0f172a08}.metric-card>span,.metric-card small{color:var(--muted)}.metric-card strong{display:block;font:800 2rem Manrope,sans-serif;margin:10px 0 6px}.content-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.7fr);gap:18px}.button{min-height:42px;border-radius:11px;padding:0 16px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;border:1px solid transparent}.button--primary{background:var(--navy);color:#fff}.button--primary:hover{background:#283548}.button--secondary{background:#fff;border-color:var(--border);color:#162033}.button--secondary:hover{background:#f8fafc}.button--danger{background:#fff;border-color:#fecdca;color:var(--danger)}.button--danger:hover{background:#fef3f2}.button:focus-visible,.icon-button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid rgba(34,107,90,.25);outline-offset:2px}.button__spinner,.state-spinner{width:17px;height:17px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}.icon-button{width:42px;height:42px;border-radius:11px;border:1px solid var(--border);background:#fff;display:inline-grid;place-items:center;position:relative;text-decoration:none}.icon-button:hover{background:#f8fafc}.badge{display:inline-flex;align-items:center;min-height:26px;padding:3px 9px;border-radius:999px;font-size:.75rem;font-weight:700;white-space:nowrap}.badge--neutral{background:#f2f4f7;color:#475467}.badge--info{background:#eff8ff;color:#175cd3}.badge--success{background:#ecfdf3;color:#067647}.badge--danger{background:#fef3f2;color:#b42318}.field{display:grid;gap:6px}.field__label{font-size:.8rem;font-weight:700;color:#344054}.field input,.field select,.filters-card select{width:100%;min-height:42px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;padding:0 12px;color:#162033}.field input.is-invalid,.field select.is-invalid{border-color:#f04438}.field__error,.form-error{color:var(--danger);font-size:.78rem;margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid__wide{grid-column:1/-1}.state-view{min-height:220px;display:grid;place-content:center;justify-items:center;text-align:center;padding:30px}.state-view strong{font:800 1.08rem Manrope,sans-serif}.state-view p{max-width:540px;color:var(--muted);margin:8px auto 16px}.state-view--error{color:var(--danger)}.state-view--error p{color:#7a271a}.standalone-state{min-height:100vh;display:grid;place-items:center;padding:20px}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#eef4f1,#f7f2e9)}.login-card{width:min(430px,100%);padding:32px}.login-card h1{font:800 2rem Manrope,sans-serif;margin:8px 0}.login-card>p{color:var(--muted);margin:0 0 24px}.login-card form{display:grid;gap:16px}.login-card .button{width:100%;margin-top:4px}.filters-card{display:grid;grid-template-columns:minmax(260px,1.6fr) repeat(4,minmax(140px,.65fr));gap:12px;margin-bottom:18px;padding:16px;box-shadow:none}.search-field{display:flex;align-items:center;gap:8px;border:1px solid #d0d5dd;border-radius:10px;padding:0 10px}.search-field .field{flex:1}.search-field input{border:0;padding:0;outline:0}.students-card{padding:0;overflow:hidden}.students-table-wrap{overflow-x:auto}.students-table{width:100%;border-collapse:collapse}.students-table th{padding:13px 16px;background:#f8fafc;border-bottom:1px solid var(--border);text-align:left;color:#667085;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.students-table td{padding:14px 16px;border-bottom:1px solid #eef0f3;vertical-align:middle}.students-table tbody tr:hover{background:#fcfcfd}.students-table td a:not(.icon-button){display:grid;gap:3px;text-decoration:none}.students-table td span{display:block;color:var(--muted);font-size:.8rem}.row-actions{display:flex;justify-content:flex-end;gap:6px}.row-actions .icon-button{width:36px;height:36px}.students-mobile-list{display:none}.load-more{display:flex;justify-content:center;padding:18px}.back-link{display:inline-flex;align-items:center;gap:6px;color:var(--green);font-weight:700;text-decoration:none;margin-bottom:18px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.profile-wide{grid-column:1/-1}.detail-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0}.detail-list div{border-bottom:1px solid #eef0f3;padding-bottom:10px}.detail-list dt{font-size:.75rem;color:var(--muted)}.detail-list dd{font-weight:700;margin:4px 0 0}.financial-summary strong{display:block;font:800 2rem Manrope,sans-serif}.financial-summary span{color:var(--muted)}.simple-list{display:grid}.simple-list>div{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #eef0f3}.simple-list strong,.simple-list span{display:block}.simple-list span{color:var(--muted);font-size:.82rem;margin-top:3px}.progress-list{display:grid;gap:12px}.progress-list>div{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(160px,1fr) 46px;gap:12px;align-items:center}.progress-list>div>div{height:8px;background:#eef2f6;border-radius:99px;overflow:hidden}.progress-list i{display:block;height:100%;background:var(--green);border-radius:inherit}.filters-card--teacher{grid-template-columns:minmax(260px,1.6fr) repeat(3,minmax(140px,.65fr))}.modal-backdrop{position:fixed;inset:0;background:#0f172a8c;display:grid;place-items:center;padding:20px;z-index:100}.modal{width:min(720px,100%);max-height:calc(100vh - 40px);display:flex;flex-direction:column;background:#fff;border-radius:18px;box-shadow:0 28px 80px #0f172a4d}.modal__header,.modal__footer{padding:18px 22px;display:flex;align-items:center;gap:10px}.modal__header{justify-content:space-between;border-bottom:1px solid var(--border)}.modal__header h2{font:800 1.25rem Manrope,sans-serif;margin:0}.modal__body{padding:22px;overflow:auto}.modal__footer{justify-content:flex-end;border-top:1px solid var(--border)}.action-error{margin:0 0 18px;padding:11px 14px;border-radius:12px;font-size:.86rem;font-weight:600;border:1px solid #fecdca;background:#fef3f2;color:var(--danger);display:flex;justify-content:space-between;align-items:center}.action-error button{border:0;background:transparent;color:inherit;font-size:1.1rem}.metric-card{position:relative;overflow:hidden}.metric-card:after{content:"";position:absolute;right:-25px;bottom:-35px;width:110px;height:110px;border-radius:50%;background:currentColor;opacity:.035}.metric-card__top{display:flex;align-items:center;justify-content:space-between}.metric-card__top i{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#f2f4f7;color:#475467}.metric-card--green .metric-card__top i{background:#ecfdf3;color:#067647}.metric-card--blue .metric-card__top i{background:#eff8ff;color:#175cd3}.metric-card--amber .metric-card__top i{background:#fffaeb;color:#b54708}.metric-card--purple .metric-card__top i{background:#f4f3ff;color:#5925dc}.metric-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.section-heading h2{margin:4px 0 0}.section-heading>a{color:var(--green);font-weight:700;text-decoration:none;font-size:.85rem}.agenda-list{display:grid}.agenda-item{display:grid;grid-template-columns:80px 1fr auto;gap:15px;align-items:center;padding:15px 0;border-bottom:1px solid #eef0f3}.agenda-item time,.agenda-item>div{display:grid;gap:3px}.agenda-item time{border-right:1px solid var(--border)}.agenda-item span,.agenda-item small,.attention-list small{color:var(--muted);font-size:.78rem}.attention-list{display:grid}.attention-list a{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:12px;text-decoration:none;padding:15px 0;border-bottom:1px solid #eef0f3}.attention-list a:hover strong{color:var(--green)}.attention-list div{display:grid;gap:3px}.attention-dot{width:9px;height:9px;border-radius:50%}.attention-dot--danger{background:#f04438}.attention-dot--amber{background:#f79009}.attention-dot--green{background:#12b76a}.calendar-card{padding:0;overflow:hidden}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--border)}.calendar-toolbar>div{display:flex;gap:7px}.calendar-toolbar .button{padding:0 12px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(125px,1fr));min-height:520px;overflow-x:auto}.week-grid>section{border-right:1px solid var(--border);background:#fcfcfd}.week-grid>section.is-today{background:#f1f8f5}.week-grid header{height:76px;display:grid;place-items:center;border-bottom:1px solid var(--border);text-transform:capitalize}.week-grid header span{color:var(--muted);font-size:.75rem;text-transform:uppercase}.week-grid header strong{font-size:1.15rem}.week-grid section>div{padding:8px;display:grid;gap:8px}.lesson-chip{border:0;border-left:3px solid var(--green);border-radius:9px;background:#eaf5f1;color:#174c40;padding:10px;text-align:left;display:grid;gap:3px}.lesson-chip:hover{background:#d9ede6}.lesson-chip time{font-weight:800;font-size:.78rem}.lesson-chip strong{font-size:.82rem}.lesson-chip small{opacity:.72;font-size:.69rem}.day-empty{padding:20px;text-align:center;color:#d0d5dd}.list-card{padding:0;overflow:hidden}.list-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) 190px;gap:12px;padding:16px;border-bottom:1px solid var(--border)}.list-toolbar>.field{display:block}.list-toolbar select,.new-conversation{width:100%;height:42px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;padding:0 12px}.teacher-search{box-shadow:none;padding:14px;margin-bottom:18px}.teacher-grid{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:18px}.teacher-card__head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.teacher-card__head h2{margin:0 0 6px}.teacher-avatar,.conversation-avatar{flex:0 0 auto;width:52px;height:52px;border-radius:15px;background:linear-gradient(135deg,#226b5a,#3f8b78);color:#fff;display:grid;place-items:center;font:800 1rem Manrope,sans-serif}.teacher-card>a{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.84rem;text-decoration:none;overflow:hidden;text-overflow:ellipsis}.teacher-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.teacher-stats>div{border-radius:12px;background:#f8fafc;padding:12px;display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:center}.teacher-stats svg{grid-row:1/3;color:var(--green)}.teacher-stats strong{font-size:1.1rem}.teacher-stats span{font-size:.72rem;color:var(--muted)}.task-list{display:grid}.task-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 20px;border-bottom:1px solid #eef0f3}.task-row.is-done{opacity:.68}.task-row.is-done>div>strong{text-decoration:line-through}.task-check{border:0;background:transparent;color:var(--green);padding:0;display:grid}.task-row>div{display:grid;gap:4px}.task-row>div>span{font-size:.78rem;color:var(--muted)}.task-due{display:flex!important;grid-auto-flow:column;align-items:center;gap:10px!important}.task-preview-button{min-height:32px;padding:0 10px;border:1px solid #c7dfd8;border-radius:9px;background:#f1f8f5;color:var(--green);display:inline-flex;align-items:center;gap:6px;font-size:.76rem;font-weight:800}.task-preview-button:hover{background:#e4f1ed}.task-preview-button .button__spinner{width:14px;height:14px}.text-button{border:0;background:transparent;color:var(--muted);padding:6px}.text-button.danger:hover{color:var(--danger)}.homework-overview{padding:0;margin-bottom:18px;overflow:hidden;box-shadow:none}.homework-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:18px;align-items:start}.homework-card-heading{min-height:82px;padding:17px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:14px}.homework-card-heading h2{margin:4px 0 0}.homework-card-heading>.field{min-width:175px}.submission-list{display:grid}.submission-row{width:100%;border:0;border-bottom:1px solid #eef0f3;background:#fff;padding:15px 18px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:12px;text-align:left}.submission-row:hover{background:#f8fafc}.submission-row>i{width:40px;height:40px;border-radius:11px;background:#ecfdf3;color:var(--green);display:grid;place-items:center}.submission-row__main{min-width:0;display:grid;gap:4px}.submission-row__main strong,.submission-row__main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.submission-row__main small{color:var(--muted);font-size:.75rem}.submission-row__score{display:grid;text-align:right;gap:2px}.submission-row__score b{font:800 1rem Manrope,sans-serif}.submission-row__score small{color:var(--muted);font-size:.7rem}.submission-row>svg{color:var(--muted)}.modal--review{width:min(820px,100%)}.submission-review{display:grid;gap:24px}.submission-review h3{font:800 .9rem Manrope,sans-serif;margin:0 0 11px}.submission-review__hero{padding:18px;border-radius:15px;background:linear-gradient(135deg,#f1f8f5,#f8fafc);display:flex;align-items:center;justify-content:space-between;gap:18px}.submission-review__hero>div{display:grid;gap:4px}.submission-review__hero>div:last-child{text-align:right;justify-items:end}.submission-review__hero strong{font:800 1.2rem Manrope,sans-serif}.submission-review__hero b{font:800 2rem Manrope,sans-serif;color:var(--green)}.submission-review__hero small{color:var(--muted)}.submission-self,.returned-feedback,.submission-waiting{padding:14px;border-radius:12px;background:#f8fafc}.submission-self p,.returned-feedback p,.submission-waiting p{margin:6px 0 0;line-height:1.55}.submission-answers{display:grid;border:1px solid var(--border);border-radius:12px;overflow:hidden}.submission-answers>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;padding:11px 13px;border-bottom:1px solid #eef0f3}.submission-answers>div:last-child{border-bottom:0}.submission-answers span{color:var(--muted);font-size:.76rem}.submission-answers strong{font-size:.84rem;overflow-wrap:anywhere}.submission-empty-answer{color:var(--muted);margin:0}.submission-errors{display:grid;gap:6px}.submission-errors p{margin:0;padding:10px 12px;border-radius:9px;background:#fef3f2;color:#912018;font-size:.82rem}.submission-feedback{display:grid;gap:14px;padding-top:20px;border-top:1px solid var(--border)}.submission-feedback h3{margin:0}.submission-grade{display:grid;grid-template-columns:minmax(150px,220px) auto;align-items:end;gap:10px}.submission-grade>svg{margin-bottom:10px;color:var(--amber)}.returned-feedback{background:#ecfdf3;border:1px solid #a6f4c5}.returned-feedback>div{display:flex;align-items:center;gap:8px;color:#067647}.returned-feedback>div .badge{margin-left:auto}.returned-feedback small{color:#417569}.submission-waiting{display:flex;align-items:flex-start;gap:9px;color:var(--muted)}.submission-waiting p{margin:0}@media(max-width:1050px){.homework-grid{grid-template-columns:1fr}.submission-card{order:-1}}@media(max-width:650px){.homework-overview .list-toolbar{grid-template-columns:1fr}.homework-card-heading{align-items:flex-start;flex-direction:column}.homework-card-heading>.field{width:100%}.submission-row{grid-template-columns:auto minmax(0,1fr) auto}.submission-row__score{display:none}.submission-row>.badge{grid-column:2}.submission-row>svg{grid-column:3;grid-row:1/3}.submission-review__hero{align-items:flex-start}.submission-answers>div{grid-template-columns:1fr}.task-row{grid-template-columns:auto minmax(0,1fr)}.task-due{grid-column:2;justify-content:flex-start}.modal--review .modal__body{padding:16px}}.annotation-editor{display:grid;gap:14px;padding-top:20px;border-top:1px solid var(--border)}.annotation-editor>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.annotation-editor>header>div{display:flex;align-items:flex-start;gap:10px}.annotation-editor>header svg{color:var(--green);flex:0 0 auto}.annotation-editor>header h3{margin:0}.annotation-editor>header p{margin:4px 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}.annotation-editor>header>span{padding:5px 9px;border-radius:99px;background:#ecfdf3;color:#067647;font-size:.72rem;font-weight:800;white-space:nowrap}.annotation-fields{display:grid;gap:13px}.annotation-field{padding:15px;border:1px solid var(--border);border-radius:13px;background:#fff}.annotation-field>strong{display:block;margin-bottom:9px;font:800 .78rem Manrope,sans-serif;color:var(--green)}.annotation-source-text{margin:0;padding:14px;border-radius:10px;background:#f8fafc;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text}.annotation-editor.is-editable .annotation-source-text{cursor:text}.annotation-source-text mark{padding:2px 1px;border-bottom:2px solid #f79009;background:#fef0c7;color:inherit;border-radius:2px}.annotation-list{display:grid;gap:8px;margin-top:11px}.annotation-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:flex-start;padding:11px;border:1px solid #fedf89;border-radius:10px;background:#fffaeb}.annotation-card>span{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#f79009;color:#fff;font-size:.68rem;font-weight:800}.annotation-card>div{display:grid;gap:5px}.annotation-card small{color:#92400e}.annotation-card p{margin:0;font-size:.8rem;line-height:1.45}.annotation-card>button{width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:#b42318;display:grid;place-items:center}.annotation-card>button:hover{background:#fee4e2}.annotation-card>svg{color:#b54708}.annotation-draft{position:sticky;bottom:0;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:15px;border:1px solid #84caff;border-radius:13px;background:#eff8ff;box-shadow:0 14px 35px #10182824}.annotation-draft>header{grid-column:1/-1;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.annotation-draft>header>div{display:grid;gap:3px}.annotation-draft>header span,.annotation-draft label>span{font-size:.73rem;font-weight:800;color:#344054}.annotation-draft>header strong{font-size:.85rem}.annotation-draft>header button{border:0;background:transparent;color:var(--muted)}.annotation-draft label{display:grid;gap:6px}.annotation-draft input,.annotation-draft textarea{width:100%;border:1px solid #b2ddff;border-radius:9px;background:#fff;padding:9px 10px;font:inherit;resize:vertical}.annotation-draft>div:last-child{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}.annotation-message{display:flex;align-items:center;gap:7px;padding:9px 11px;border-radius:9px;background:#ecfdf3;color:#067647;font-size:.78rem;font-weight:700}@media(max-width:650px){.annotation-editor>header{flex-direction:column}.annotation-draft{grid-template-columns:1fr}.annotation-draft>header,.annotation-draft>div:last-child{grid-column:auto}.annotation-draft>div:last-child{display:grid;grid-template-columns:1fr 1fr}.annotation-card{grid-template-columns:auto minmax(0,1fr)}.annotation-card>button,.annotation-card>svg{grid-column:2;justify-self:end}}.assigned-worksheet-card{margin-bottom:18px}.assigned-worksheet-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.assigned-worksheet-list>button{border:0;border-right:1px solid #eef0f3;border-bottom:1px solid #eef0f3;background:#fff;padding:16px 18px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;text-align:left}.assigned-worksheet-list>button:hover{background:#f8fafc}.assigned-worksheet-list>button>i{width:42px;height:42px;border-radius:12px;background:#eff8ff;color:#175cd3;display:grid;place-items:center}.assigned-worksheet-list>button>span{min-width:0;display:grid;gap:4px}.assigned-worksheet-list strong,.assigned-worksheet-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assigned-worksheet-list small{font-size:.75rem;color:var(--muted)}.assigned-worksheet-list>button>svg{color:var(--muted)}.modal--worksheet{width:min(900px,100%)}.modal--worksheet .modal__body{padding:0;background:#f4f6f8}.modal--worksheet .modal__footer{position:relative}.worksheet-progress{margin-right:auto;color:var(--muted);font-size:.8rem;font-weight:700}.worksheet-player{display:grid}.worksheet-player>header{padding:16px 22px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:16px}.worksheet-player>header p{margin:5px 0 0;color:var(--muted)}.worksheet-note{margin:16px 20px 0;padding:12px 14px;border:1px solid #fedf89;border-radius:11px;background:#fffaeb}.worksheet-note p{margin:4px 0 0;color:#92400e}.worksheet-result{margin:16px 20px 0;padding:14px;border:1px solid #a6f4c5;border-radius:12px;background:#ecfdf3;color:#067647;display:flex;align-items:center;gap:11px}.worksheet-result div{display:grid;gap:3px}.worksheet-result strong{font:800 1rem Manrope,sans-serif}.worksheet-result span{font-size:.78rem}.worksheet-player>.action-error{margin:16px 20px 0}.worksheet-blocks{display:grid;gap:14px;padding:18px 20px}.worksheet-block{padding:19px;border:1px solid var(--border);border-radius:15px;background:#fff}.worksheet-block>header{display:flex;align-items:flex-start;gap:10px;margin-bottom:16px}.worksheet-block>header>span{width:24px;height:24px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:.7rem;font-weight:800;flex:0 0 auto}.worksheet-block>header>div{display:grid;gap:3px}.worksheet-block>header strong{font:800 .82rem Manrope,sans-serif;text-transform:uppercase;letter-spacing:.04em;color:var(--green)}.worksheet-block>header small{color:var(--muted)}.worksheet-copy,.worksheet-task{white-space:pre-wrap;line-height:1.65}.worksheet-block figure{margin:0;text-align:center}.worksheet-block figure img{max-width:100%;max-height:480px;border-radius:10px}.worksheet-block figcaption{margin-top:8px;color:var(--muted);font-size:.8rem}.worksheet-fill{line-height:2.8;margin:0}.worksheet-fill label{display:inline-flex;align-items:center;gap:5px}.worksheet-fill input{width:120px;border:0;border-bottom:2px solid var(--green);padding:3px 7px;background:#f8fafc;text-align:center}.worksheet-fill small,.worksheet-correction,.worksheet-match label>small,.worksheet-repeat label>small{color:#067647;font-weight:700}.worksheet-questions{display:grid;gap:18px}.worksheet-question{display:grid;gap:9px}.worksheet-question>div{display:grid;gap:7px}.worksheet-question button{border:1px solid var(--border);border-radius:10px;background:#fff;padding:10px 12px;text-align:left}.worksheet-question button:hover:not(:disabled),.worksheet-question button.is-selected{border-color:var(--green);background:#f1f8f5}.worksheet-question button.is-correct{border-color:#12b76a;background:#ecfdf3;color:#067647}.worksheet-question button.is-wrong{border-color:#f04438;background:#fef3f2;color:#b42318}.worksheet-passage,.worksheet-example{padding:14px;border-radius:11px;background:#f8fafc;white-space:pre-wrap;line-height:1.65}.worksheet-match,.worksheet-repeat{display:grid;gap:11px}.worksheet-match label,.worksheet-repeat label{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(180px,1.2fr);align-items:center;gap:10px}.worksheet-match label>.field{display:block}.worksheet-match select,.worksheet-long-input,.worksheet-repeat input,.worksheet-dialogue input{width:100%;min-height:40px;border:1px solid #d0d5dd;border-radius:9px;background:#fff;padding:0 10px}.worksheet-block>textarea{width:100%;border:1px solid #d0d5dd;border-radius:10px;padding:11px 12px;font:inherit;line-height:1.55;resize:vertical}.worksheet-words{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}.worksheet-words span{padding:7px 10px;border:1px solid var(--border);border-radius:8px;background:#f8fafc}.worksheet-table-wrap{overflow-x:auto}.worksheet-table-wrap table{width:100%;border-collapse:collapse}.worksheet-table-wrap th,.worksheet-table-wrap td{border:1px solid var(--border);padding:7px}.worksheet-table-wrap th{background:#f8fafc;text-align:left}.worksheet-table-wrap input{min-width:120px;width:100%;border:0;padding:5px}.worksheet-dialogue{display:grid;border:1px solid var(--border);border-radius:11px;overflow:hidden}.worksheet-dialogue p{display:flex;align-items:center;gap:7px;margin:0;padding:10px 12px}.worksheet-dialogue p:nth-child(odd){background:#f8fafc}.worksheet-dialogue p>strong{min-width:75px}.worksheet-dialogue input{display:inline-block;min-height:32px;width:120px;margin:0 4px;border-radius:6px}.worksheet-repeat label>span{line-height:1.45}.worksheet-assessment{display:grid;gap:14px;margin:0 20px 20px;padding:17px;border:1px solid var(--border);border-radius:14px;background:#fff}.worksheet-assessment>div:first-child{display:flex;align-items:center;gap:10px}.worksheet-assessment>div:first-child>svg{color:var(--amber)}.worksheet-assessment>div:first-child>div{display:grid;gap:3px}.worksheet-assessment>div:first-child span{color:var(--muted);font-size:.78rem}.worksheet-assessment>p,.worksheet-readonly{display:flex;align-items:center;gap:8px;color:#067647}.worksheet-empty,.worksheet-readonly{margin:20px;padding:30px;border:1px dashed #98a2b3;border-radius:12px;text-align:center;color:var(--muted)}.worksheet-readonly{justify-content:center;padding:14px}.worksheet-readonly p{margin:0}@media(max-width:700px){.assigned-worksheet-list{grid-template-columns:1fr}.assigned-worksheet-list>button{grid-template-columns:auto minmax(0,1fr) auto}.assigned-worksheet-list>button>.badge{grid-column:2}.assigned-worksheet-list>button>svg{grid-column:3;grid-row:1/3}.modal--worksheet{height:100%;max-height:100vh;border-radius:0}.modal--worksheet .modal__header{padding:14px 16px}.modal--worksheet .modal__body{padding:0}.modal--worksheet .modal__footer{padding:12px;display:grid;grid-template-columns:1fr 1fr}.modal--worksheet .modal__footer .worksheet-progress{grid-column:1/-1}.worksheet-player>header{padding:14px 16px}.worksheet-blocks{padding:14px}.worksheet-block{padding:15px}.worksheet-note,.worksheet-result,.worksheet-player>.action-error{margin:14px 14px 0}.worksheet-match label,.worksheet-repeat label{grid-template-columns:1fr}.worksheet-assessment{margin:0 14px 14px}.worksheet-fill input{width:95px}.worksheet-dialogue p{align-items:flex-start;flex-wrap:wrap}.worksheet-dialogue p>strong{min-width:55px}.worksheet-dialogue input{width:100%}}.visual-worksheet-pages{display:grid;gap:22px;padding:18px 20px}.visual-worksheet-page{width:min(100%,1040px);margin:0 auto;background:#fff;border:1px solid #d0d5dd;border-radius:14px;overflow:hidden;box-shadow:0 10px 28px #0f172a17}.visual-worksheet-canvas{position:relative;width:100%;background:#fff}.visual-worksheet-canvas>img{display:block;width:100%;height:auto;-webkit-user-select:none;user-select:none}.visual-worksheet-layer{position:absolute;inset:0}.visual-worksheet-control,.visual-worksheet-word{position:absolute;z-index:2;margin:0;border:1.5px solid rgba(34,107,90,.58);border-radius:6px;background:#ffffffeb;color:#162033;box-shadow:0 1px 4px #0f172a14;font:600 clamp(10px,1.35vw,17px) "DM Sans",system-ui,sans-serif;outline:0}.visual-worksheet-control:focus{border-color:#175cd3;box-shadow:0 0 0 3px #175cd326;background:#fff}.visual-worksheet-input,.visual-worksheet-choice{padding:2px 6px}.visual-worksheet-textarea{padding:4px 6px;resize:none;line-height:1.25}.visual-worksheet-checkbox{display:grid;place-items:center;padding:0;background:#ffffffd6}.visual-worksheet-checkbox input{width:min(70%,26px);height:min(70%,26px);accent-color:var(--green)}.visual-worksheet-control:disabled{opacity:1;color:#162033;-webkit-text-fill-color:#162033}.visual-worksheet-control.is-correct{border-color:#12b76a;background:#ecfdf3f0}.visual-worksheet-control.is-wrong{border-color:#f04438;background:#fef3f2f0}.visual-worksheet-word{border:1px dashed rgba(23,92,211,.34);background:#eff8ff1f;box-shadow:none;cursor:help}.visual-worksheet-word:hover,.visual-worksheet-word:focus{background:#eff8ff6b;border-color:#175cd3}.visual-word-tip{position:absolute;left:0;top:calc(100% + 6px);z-index:8;min-width:150px;max-width:260px;padding:8px 10px;border-radius:9px;background:#162033;color:#fff;font-size:12px;font-weight:700;line-height:1.35;text-align:left;white-space:normal;box-shadow:0 8px 24px #0f172a33}.visual-worksheet-page figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;border-top:1px solid #eef0f3;background:#f8fafc;color:var(--muted);font-size:.74rem}.visual-worksheet-page figcaption strong{color:#344054}.visual-worksheet-page figcaption span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.visual-worksheet-pages+.worksheet-blocks{padding-top:0}.visual-worksheet-pages--review{padding:0;gap:16px}.visual-worksheet-pages--review .visual-worksheet-page{width:100%;box-shadow:none}@media(max-width:700px){.visual-worksheet-pages{padding:14px;gap:16px}.visual-worksheet-page{border-radius:10px}.visual-worksheet-control,.visual-worksheet-word{border-radius:4px;font-size:clamp(8px,2.7vw,13px)}.visual-worksheet-input,.visual-worksheet-choice,.visual-worksheet-textarea{padding:1px 3px}.visual-word-tip{min-width:120px;max-width:210px;font-size:11px}.visual-worksheet-page figcaption{padding:8px 10px}}.exercise-launch{color:#175cd3}.modal--exercise{width:min(760px,100%)}.modal--exercise .modal__body{padding:0}.exercise-player>header{padding:17px 22px;border-bottom:1px solid var(--border);display:grid;gap:9px}.exercise-player>header>div{display:flex;align-items:center;gap:9px}.exercise-player>header>div>span{font-size:.78rem;color:var(--muted)}.exercise-player>header p{margin:0;color:var(--muted);line-height:1.5}.exercise-result{margin:18px 22px 0;padding:14px;border:1px solid #a6f4c5;border-radius:12px;background:#ecfdf3;color:#067647;display:flex;align-items:center;gap:11px}.exercise-result div{display:grid;gap:3px}.exercise-result strong{font:800 1rem Manrope,sans-serif}.exercise-result span{font-size:.78rem}.exercise-player>.action-error{margin:18px 22px 0}.exercise-stage{padding:22px;display:grid;gap:17px}.exercise-stage>textarea{width:100%;border:1px solid #d0d5dd;border-radius:11px;padding:12px 13px;font:inherit;line-height:1.6;resize:vertical}.exercise-word-count{color:var(--muted);text-align:right}.exercise-order{display:grid;gap:14px}.exercise-order__answer{min-height:70px;padding:12px;border:1px dashed #98a2b3;border-radius:12px;display:flex;align-content:flex-start;flex-wrap:wrap;gap:7px}.exercise-order__answer>span{margin:auto;color:var(--muted)}.exercise-order__answer button,.exercise-order .worksheet-words button{border:1px solid #a7c8bf;border-radius:8px;background:#ecfdf3;color:var(--green);padding:7px 10px;font-weight:700}.exercise-order .worksheet-words button{background:#fff}.exercise-unsupported{padding:22px;border:1px dashed #98a2b3;border-radius:12px;color:var(--muted);text-align:center}.exercise-unsupported p{white-space:pre-wrap;line-height:1.6}@media(max-width:650px){.modal--exercise{height:100%;max-height:100vh;border-radius:0}.modal--exercise .modal__header{padding:14px 16px}.modal--exercise .modal__footer{padding:12px;display:grid;grid-template-columns:1fr 1fr}.modal--exercise .modal__footer .worksheet-progress{grid-column:1/-1}.exercise-player>header,.exercise-stage{padding:15px}.exercise-result,.exercise-player>.action-error{margin:15px 15px 0}}.messages-shell{height:calc(100vh - 215px);min-height:570px;padding:0;display:grid;grid-template-columns:330px minmax(0,1fr);overflow:hidden}.conversation-list{border-right:1px solid var(--border);overflow:auto}.conversation-list>.search-field{margin:14px}.new-conversation{width:calc(100% - 28px);margin:0 14px 8px}.conversation{width:100%;border:0;border-top:1px solid #eef0f3;background:#fff;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 14px;text-align:left}.conversation:hover,.conversation.active{background:#f1f8f5}.conversation-avatar{width:40px;height:40px;border-radius:12px}.conversation div{min-width:0;display:grid;gap:3px}.conversation small{color:var(--muted);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.conversation>b{width:22px;height:22px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-size:.7rem}.chat-panel{display:flex;min-width:0;flex-direction:column;background:#f8fafc}.chat-panel>header{height:70px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:11px;padding:0 20px}.chat-panel>header div{display:grid}.chat-panel>header small{color:var(--muted)}.message-stream{flex:1;overflow:auto;padding:20px;display:flex;flex-direction:column;gap:10px}.message{max-width:70%;align-self:flex-start}.message.own{align-self:flex-end}.message p{margin:0;padding:11px 14px;border-radius:5px 15px 15px;background:#fff;border:1px solid var(--border);line-height:1.45}.message.own p{background:var(--green);color:#fff;border-color:var(--green);border-radius:15px 5px 15px 15px}.message time{display:block;color:var(--muted);font-size:.68rem;margin-top:4px;text-align:right}.message-composer{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px;background:#fff;border-top:1px solid var(--border)}.message-composer textarea{resize:none;border:1px solid #d0d5dd;border-radius:11px;padding:10px 12px;font:inherit}.conversation-avatar{display:grid;place-items:center;background:#ecfdf3;color:var(--green);font-size:.78rem;font-weight:800;flex:0 0 auto}.conversation-read{color:#98a2b3}.conversation-empty{margin:18px 14px;padding:18px;border:1px dashed #d0d5dd;border-radius:11px;color:var(--muted);font-size:.8rem;text-align:center}.message>span{display:block;margin:0 7px 4px;color:var(--muted);font-size:.68rem;font-weight:700}.message.own>span{text-align:right}.message p{white-space:pre-wrap;overflow-wrap:anywhere}.message-stream>.state-view{margin:auto}.message-composer>div{display:flex;align-items:center;gap:9px}.message-composer>div>small{color:var(--muted);font-size:.68rem}.message-composer .button{width:42px;min-height:42px;padding:0}.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.settings-icon{width:44px;height:44px;border-radius:13px;background:#ecfdf3;color:var(--green);display:grid;place-items:center;margin-bottom:18px}.settings-grid .detail-list{grid-template-columns:1fr}.settings-grid .detail-list dd{overflow-wrap:anywhere}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.integration-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid #eef0f3}.integration-row div{display:grid;gap:3px}.integration-row span,.settings-copy{color:var(--muted);font-size:.82rem;line-height:1.6}.settings-profile-card{grid-row:span 2}.settings-profile-form{display:grid;gap:14px}.settings-profile-form .form-hint{margin:0}.settings-profile-form .button{justify-self:start}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1150px){.filters-card{grid-template-columns:repeat(2,1fr)}.filters-card>.search-field{grid-column:1/-1}.metric-grid,.teacher-grid{grid-template-columns:repeat(2,1fr)}.settings-grid{grid-template-columns:1fr 1fr}}@media(max-width:800px){.mobile-only{display:inline-grid}.sidebar{transform:translate(-100%);transition:transform .2s}.sidebar.is-open{transform:translate(0)}.backdrop.is-open{display:block;position:fixed;inset:0;border:0;background:#0f172a73;z-index:15}.sidebar-close{margin-left:auto;background:transparent;color:#fff;border-color:#ffffff1f}.main-area{margin-left:0}.topbar{padding:0 16px}.search-box{display:none}.page-content{padding:24px 16px 36px}.page-header{align-items:flex-start;flex-direction:column}.content-grid,.profile-grid{grid-template-columns:1fr}.profile-wide{grid-column:auto}.students-table-wrap{display:none}.students-mobile-list{display:grid;padding:12px;gap:10px}.student-mobile-card{border:1px solid var(--border);border-radius:14px;padding:14px}.student-mobile-card>a{display:flex;justify-content:space-between;align-items:center;text-decoration:none}.student-mobile-card strong,.student-mobile-card span{display:block}.student-mobile-card span{font-size:.8rem;color:var(--muted);margin-top:3px}.student-mobile-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0}.student-mobile-card .row-actions .button{flex:1}.detail-list{grid-template-columns:1fr}.progress-list>div{grid-template-columns:1fr 42px}.progress-list>div>div{grid-column:1/-1;grid-row:2}.form-grid,.teacher-grid,.settings-grid{grid-template-columns:1fr}.messages-shell{grid-template-columns:260px 1fr}.week-grid{min-height:440px}}@media(max-width:560px){.metric-grid,.filters-card{grid-template-columns:1fr}.filters-card>.search-field{grid-column:auto}.page-header h1{font-size:2rem}.card{padding:17px}.calendar-card,.list-card,.messages-shell,.modal-backdrop{padding:0}.modal{max-height:100vh;height:100vh;border-radius:0}.modal__body{flex:1}.topbar{height:64px}.agenda-item{grid-template-columns:65px 1fr}.agenda-item>.badge{display:none}.list-toolbar{grid-template-columns:1fr}.task-row{padding:14px 12px}.task-due>.badge{display:none}.messages-shell{height:auto;min-height:650px;grid-template-columns:1fr}.conversation-list{max-height:240px;border-right:0;border-bottom:1px solid var(--border)}.chat-panel{min-height:470px}.message{max-width:86%}.calendar-toolbar{align-items:flex-start;flex-direction:column-reverse;gap:12px}}.icon-button.mobile-only{display:none}@media(max-width:800px){.icon-button.mobile-only{display:inline-grid}}.calendar-filters{display:grid;grid-template-columns:minmax(260px,1fr) 220px 220px;gap:12px;padding:14px;margin-bottom:18px;box-shadow:none}.calendar-filters>.field{display:block}.calendar-filters select{width:100%;height:42px;border:1px solid #d0d5dd;border-radius:10px;padding:0 12px;background:#fff}.calendar-toolbar{display:grid;grid-template-columns:1fr auto 1fr}.calendar-toolbar__nav{display:flex;gap:7px}.view-switcher{justify-self:end;display:flex!important;gap:3px!important;background:#f2f4f7;padding:3px;border-radius:11px}.view-switcher button{border:0;background:transparent;padding:8px 12px;border-radius:8px;font-weight:700;color:var(--muted)}.view-switcher button.active{background:#fff;color:var(--navy);box-shadow:0 1px 4px #0f172a1f}.day-agenda{padding:22px}.day-agenda>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.day-agenda h2{margin:4px 0 0}.agenda-lesson{width:100%;display:grid;grid-template-columns:75px 1fr auto auto;gap:16px;align-items:center;padding:16px 10px;border:0;border-bottom:1px solid #eef0f3;background:#fff;text-align:left}.agenda-lesson:hover{background:#f8fafc}.agenda-lesson time{font:800 1rem Manrope,sans-serif}.agenda-lesson>div{display:grid;gap:3px}.agenda-lesson span{color:var(--muted);font-size:.78rem}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(125px,1fr));min-height:690px;overflow-x:auto}.month-grid>section{min-height:115px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:7px;background:#fff}.month-grid>section.is-outside{background:#f8fafc;opacity:.58}.month-grid>section.is-today{background:#f1f8f5}.month-day{border:0;background:transparent;width:30px;height:30px;border-radius:50%;font-weight:800}.is-today>.month-day{background:var(--green);color:#fff}.month-grid section>div{display:grid;gap:4px}.lesson-chip--compact{padding:5px 7px;display:flex;gap:5px;align-items:center;white-space:nowrap;overflow:hidden}.lesson-chip--compact time{font-size:.65rem}.lesson-chip--compact strong{overflow:hidden;text-overflow:ellipsis}.more-lessons{border:0;background:transparent;color:var(--green);font-size:.7rem;font-weight:800;text-align:left}.day-empty{width:100%;border:1px dashed #d0d5dd;background:transparent;border-radius:9px;color:#98a2b3}.day-empty:hover{border-color:var(--green);color:var(--green);background:#f1f8f5}.modal__footer-spacer{flex:1}.checkbox-field{display:flex;align-items:center;gap:9px;font-weight:700;font-size:.85rem;padding-top:25px}.checkbox-field input{width:18px;height:18px;accent-color:var(--green)}.form-hint{margin:0;color:var(--muted);font-size:.78rem}@media(max-width:900px){.calendar-filters{grid-template-columns:1fr 1fr}.calendar-filters>.search-field{grid-column:1/-1}.calendar-toolbar{grid-template-columns:1fr auto}.calendar-toolbar>strong{grid-row:2;grid-column:1/-1;margin-top:12px}.view-switcher{grid-column:2}.month-grid{min-height:620px}}@media(max-width:560px){.calendar-filters{grid-template-columns:1fr}.calendar-filters>.search-field{grid-column:auto}.calendar-toolbar{display:flex}.view-switcher{width:100%;justify-content:stretch}.view-switcher button{flex:1}.day-agenda{padding:14px}.day-agenda>header{align-items:flex-start;gap:12px;flex-direction:column}.agenda-lesson{grid-template-columns:55px 1fr auto;gap:10px}.agenda-lesson>.badge{display:none}.month-grid{min-height:520px}.modal__footer-spacer{display:none}.modal__footer{flex-wrap:wrap}.modal__footer .button--danger{margin-right:auto}}.teacher-card-link{text-decoration:none;display:block}.teacher-card-link .teacher-card{height:100%;transition:transform .18s,border-color .18s,box-shadow .18s}.teacher-card-link:hover .teacher-card{transform:translateY(-3px);border-color:#a7c8bf;box-shadow:0 16px 40px #0f172a1a}.teacher-email{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.84rem;overflow:hidden;text-overflow:ellipsis}.teacher-profile-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:18px}.teacher-profile-head{display:flex;align-items:center;gap:16px;margin-bottom:22px}.teacher-profile-head h2{margin:0 0 7px}.teacher-avatar--large{width:64px;height:64px;border-radius:18px;font-size:1.2rem}.profile-facts{display:grid;gap:3px}.profile-facts>div{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:center;padding:13px 0;border-bottom:1px solid #eef0f3}.profile-facts svg{grid-row:1/3;color:var(--green)}.profile-facts span{color:var(--muted);font-size:.75rem}.profile-facts strong{font-size:.88rem}.teacher-notes{margin-top:22px;padding:14px;border-radius:12px;background:#f8fafc}.teacher-notes p{color:var(--muted);line-height:1.55;margin:7px 0 0;white-space:pre-wrap}.teacher-profile-form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.teacher-profile-form>label{display:grid;gap:6px}.teacher-profile-form>label>span{font-size:.8rem;font-weight:700;color:#344054}.teacher-profile-form input,.teacher-profile-form textarea{width:100%;border:1px solid #d0d5dd;border-radius:10px;padding:10px 12px;font:inherit}.teacher-profile-form textarea{resize:vertical}.form-actions{display:flex;justify-content:flex-end;gap:9px}.teacher-student-list{display:grid}.teacher-student-list>a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid #eef0f3;text-decoration:none}.teacher-student-list>a:hover strong{color:var(--green)}.teacher-student-list div{display:grid;gap:3px}.teacher-student-list small{color:var(--muted)}.student-mini-avatar{width:38px;height:38px;border-radius:11px;background:#ecfdf3;color:var(--green);font-weight:800;display:grid;place-items:center}.month-input{height:40px;border:1px solid #d0d5dd;border-radius:10px;padding:0 10px}.worktime-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.worktime-summary>div{padding:14px;border-radius:12px;background:#f8fafc;display:grid;gap:5px}.worktime-summary span{color:var(--muted);font-size:.76rem}.worktime-summary strong{font:800 1.1rem Manrope,sans-serif}@media(max-width:900px){.teacher-profile-grid{grid-template-columns:1fr}.teacher-profile-grid>.profile-wide{grid-column:auto}.teacher-profile-form{grid-template-columns:1fr}}@media(max-width:560px){.worktime-summary{grid-template-columns:1fr}.teacher-profile-grid .card{padding:16px}.section-heading:has(.month-input){align-items:stretch;flex-direction:column}.month-input{width:100%}}.library-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) 220px auto;align-items:center;gap:12px;padding:14px;margin-bottom:14px;box-shadow:none}.library-toolbar>.field{display:block}.library-toolbar>strong{color:var(--muted);font-size:.82rem;white-space:nowrap}.library-breadcrumbs{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin:0 0 16px}.library-breadcrumbs span{display:flex;align-items:center;gap:5px}.library-breadcrumbs button{border:0;background:transparent;color:var(--green);padding:4px;font-weight:700}.library-breadcrumbs button[aria-current=page]{color:var(--navy)}.library-folder-grid,.library-item-grid{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:15px}.library-folder,.library-item{border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:0 6px 20px #0f172a0a;text-align:left}.library-folder{min-height:92px;padding:17px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px}.library-folder:hover,.library-item:hover{border-color:#a7c8bf;box-shadow:0 14px 34px #0f172a14;transform:translateY(-2px)}.library-folder>i,.library-item__head>i{width:44px;height:44px;border-radius:12px;background:#ecfdf3;color:var(--green);display:grid;place-items:center}.library-folder span{display:grid;gap:4px}.library-folder small{color:var(--muted)}.library-item{padding:18px;display:flex;min-height:230px;flex-direction:column;transition:.18s}.library-item__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.library-item>strong{font:800 1rem Manrope,sans-serif}.library-item>p{color:var(--muted);font-size:.8rem;line-height:1.5;margin:8px 0 18px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.library-item__meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:12px;border-top:1px solid #eef0f3;color:var(--muted);font-size:.72rem}.library-detail>p{color:var(--muted);line-height:1.65}.library-detail dl{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0 0}.library-detail dl>div{padding:12px;border-radius:11px;background:#f8fafc}.library-detail dt{color:var(--muted);font-size:.72rem}.library-detail dd{margin:4px 0 0;font-weight:700}@media(max-width:1050px){.library-folder-grid,.library-item-grid{grid-template-columns:repeat(2,minmax(230px,1fr))}}@media(max-width:700px){.library-toolbar{grid-template-columns:1fr}.library-toolbar>strong{white-space:normal}.library-folder-grid,.library-item-grid,.library-detail dl{grid-template-columns:1fr}.page-header__actions,.page-header__actions .button{width:100%}}.assignment-form{display:grid;gap:15px}.assignment-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.assignment-list-head .button{min-height:36px;padding:0 12px}.assignment-students{max-height:310px;overflow:auto;border:1px solid var(--border);border-radius:12px;padding:6px;display:grid;gap:3px}.assignment-students>label{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid transparent;border-radius:9px}.assignment-students>label:hover,.assignment-students>label.is-selected{background:#f1f8f5;border-color:#c7dfd8}.assignment-students input{width:17px;height:17px;accent-color:var(--green)}.assignment-students span{display:grid;gap:3px}.assignment-students small{color:var(--muted)}.assignment-students .state-view{min-height:130px}.assignment-options{display:grid;grid-template-columns:180px 1fr;gap:12px}@media(max-width:560px){.assignment-list-head{align-items:flex-start;flex-direction:column}.assignment-options{grid-template-columns:1fr}.assignment-students{max-height:45vh}}.modal--editor{width:min(860px,100%)}.material-editor{display:grid;gap:26px}.textarea-field{display:grid;gap:6px}.textarea-field>span,.textarea-field>label{font-size:.8rem;font-weight:700;color:#344054}.textarea-field>small{color:var(--muted);font-size:.74rem}.textarea-field textarea{width:100%;border:1px solid #d0d5dd;border-radius:10px;padding:11px 12px;font:inherit;line-height:1.5;resize:vertical}.textarea-field textarea.is-invalid{border-color:#f04438}.textarea-field textarea:focus-visible{outline:3px solid rgba(34,107,90,.25);outline-offset:2px}.material-attachments{display:grid;gap:12px;padding-top:22px;border-top:1px solid var(--border)}.material-attachments .section-heading{align-items:center;margin:0}.material-attachments .section-heading>small{color:var(--muted)}.material-upload{width:100%;min-height:92px;border:1px dashed #98a2b3;border-radius:13px;background:#f8fafc;color:var(--green);display:flex;align-items:center;justify-content:center;gap:12px}.material-upload:hover{background:#f1f8f5;border-color:var(--green)}.material-upload span{display:grid;gap:4px;text-align:left}.material-upload small{color:var(--muted);font-weight:500}.upload-progress{height:7px;border-radius:99px;background:#eef2f6;overflow:hidden}.upload-progress i{display:block;height:100%;border-radius:inherit;background:var(--green);transition:width .18s}.material-file-list{display:grid;border:1px solid var(--border);border-radius:13px;padding:0 12px}.material-file-list>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;padding:11px 0;border-bottom:1px solid #eef0f3}.material-file-list>div:last-child{border-bottom:0}.material-file-list>div>svg{color:var(--green)}.material-file-list span{min-width:0;display:grid;gap:3px}.material-file-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-file-list small{color:var(--muted);font-size:.72rem}.material-file-list .button{width:36px;min-height:36px;padding:0}.material-block-list{display:grid;gap:13px;padding-top:22px;border-top:1px solid var(--border)}.material-block-list .section-heading{align-items:center;margin:0}.material-block-editor{display:grid;grid-template-columns:180px 1fr;gap:13px;padding:17px;border:1px solid var(--border);border-radius:14px;background:#f8fafc}.material-block-editor>header{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px}.material-block-editor>header .button{min-height:34px;padding:0 10px}.material-block-editor>.textarea-field,.material-block-editor>.form-hint{grid-column:1/-1}.material-block-empty{min-height:90px;border:1px dashed #98a2b3;border-radius:13px;background:#fff;color:var(--green);font-weight:800;display:flex;align-items:center;justify-content:center;gap:8px}.material-block-empty:hover{background:#f1f8f5;border-color:var(--green)}.exercise-content-editor{display:grid;gap:14px;padding-top:22px;border-top:1px solid var(--border)}.exercise-content-editor>.section-heading{margin:0}.exercise-repeat-list{display:grid;gap:12px}.exercise-repeat-list>.button{justify-self:start}.exercise-row-editor{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px;border:1px solid var(--border);border-radius:14px;background:#f8fafc}.exercise-row-editor>header{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}.exercise-row-editor>header .button,.exercise-pair-editor>.button{width:36px;min-height:36px;padding:0}.exercise-row-editor>.form-grid__wide{grid-column:1/-1}.exercise-pair-editor{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;padding:13px;border:1px solid var(--border);border-radius:12px;background:#f8fafc}@media(max-width:560px){.material-block-editor,.exercise-row-editor,.exercise-pair-editor{grid-template-columns:1fr}.material-block-editor>header,.material-block-editor>.textarea-field,.material-block-editor>.form-hint,.exercise-row-editor>header,.exercise-row-editor>.form-grid__wide{grid-column:auto}.exercise-pair-editor>.button{width:100%}.modal--editor .modal__body{padding:16px}}.modal--preview{width:min(1040px,100%)}.material-preview{display:grid;gap:22px}.material-preview>header{display:flex;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--border)}.material-preview>header h2{margin:12px 0 6px}.material-preview>header p{margin:0;color:var(--muted)}.material-preview>header>svg{color:var(--green)}.preview-blocks{display:grid;gap:15px}.preview-block{border:1px solid var(--border);border-radius:14px;padding:18px;background:#fff}.preview-block h3{font:800 .78rem Manrope,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:var(--green);margin:0 0 12px}.preview-block p{line-height:1.7;white-space:pre-wrap}.preview-block img,.preview-file img{display:block;max-width:100%;max-height:620px;margin:auto;border-radius:10px}.preview-fill span{display:inline-block;border-bottom:2px solid var(--green);padding:0 7px;color:var(--green);font-weight:700}.preview-questions{display:grid;gap:16px}.preview-questions section>strong{display:block;margin-bottom:8px}.preview-questions ol{display:grid;gap:5px;margin:0;padding-left:30px}.preview-questions li{padding:5px 8px;border-radius:7px}.preview-questions li.is-correct{display:flex;align-items:center;gap:7px;background:#ecfdf3;color:#067647;font-weight:700}.preview-passage{padding:15px;background:#f8fafc;border-radius:10px}.preview-writing-lines{display:grid;gap:15px;margin-top:18px}.preview-writing-lines i{border-bottom:1px solid #cbd5e1}.preview-pairs{display:grid;gap:8px}.preview-pairs>div{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}.preview-pairs span,.preview-words span{padding:8px 11px;border:1px solid var(--border);border-radius:8px;background:#f8fafc}.preview-pairs b{color:var(--green)}.preview-words{display:flex;flex-wrap:wrap;gap:8px}.preview-table-wrap{overflow-x:auto}.preview-table-wrap table{width:100%;border-collapse:collapse}.preview-table-wrap th,.preview-table-wrap td{min-width:120px;padding:9px;border:1px solid var(--border);text-align:left}.preview-table-wrap th{background:#f8fafc}.preview-dialogue{display:grid;gap:3px}.preview-dialogue p{margin:0;padding:9px 12px;border-radius:8px}.preview-dialogue p:nth-child(odd){background:#f8fafc}.preview-files{display:grid;gap:15px}.preview-files>h2{margin:0}.preview-file{margin:0;border:1px solid var(--border);border-radius:14px;padding:14px}.preview-file figcaption{margin-top:10px;color:var(--muted);text-align:center}.preview-file--pdf{display:grid;gap:10px}.preview-file--pdf iframe{width:100%;height:min(70vh,760px);border:0;border-radius:9px;background:#f2f4f7}.preview-unsupported{display:flex;align-items:center;gap:12px;padding:15px;border:1px dashed #d0d5dd;border-radius:12px}.preview-unsupported div{display:grid;gap:4px}.preview-unsupported span{color:var(--muted);font-size:.8rem}@media(max-width:560px){.modal--preview .modal__body,.preview-block{padding:14px}.preview-file--pdf iframe{height:60vh}.preview-pairs>div{grid-template-columns:1fr}.preview-pairs b{display:none}}.group-toolbar{display:flex;align-items:center;gap:14px;padding:14px;margin-bottom:18px;box-shadow:none}.group-toolbar>.search-field{flex:1}.group-toolbar>strong{color:var(--muted);font-size:.82rem;white-space:nowrap}.group-grid{display:grid;grid-template-columns:repeat(3,minmax(290px,1fr));gap:18px;align-items:start}.group-card{display:grid;gap:19px}.group-card>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center}.group-card>header>i{width:44px;height:44px;border-radius:13px;background:#ecfdf3;color:var(--green);display:grid;place-items:center}.group-card>header h2{margin:0 0 4px;font-size:1.05rem}.group-card>header span{color:var(--muted);font-size:.76rem}.group-card__stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.group-card__stats>div{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:7px;padding:11px;border-radius:11px;background:#f8fafc}.group-card__stats svg{color:var(--green)}.group-card__stats strong{font:800 1.05rem Manrope,sans-serif}.group-card__stats span{color:var(--muted);font-size:.72rem}.group-card>dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.group-card>dl>div{padding-bottom:9px;border-bottom:1px solid #eef0f3}.group-card dt{color:var(--muted);font-size:.7rem}.group-card dd{margin:4px 0 0;font-size:.82rem;font-weight:700}.group-lessons,.group-members{display:grid;gap:9px}.group-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.group-section-head>strong{font:800 .78rem Manrope,sans-serif;text-transform:uppercase;letter-spacing:.05em}.group-section-head>button{border:0;background:transparent;color:var(--green);padding:4px;display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:800}.group-lessons>div:not(.group-section-head){display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:9px 11px;border-radius:10px;background:#f8fafc}.group-lessons>div>span{display:grid;gap:2px}.group-lessons>div b{font-size:.78rem}.group-lessons>div small,.group-lessons>p,.group-members>p{color:var(--muted);font-size:.7rem;margin:0}.group-lessons>div>strong{font-size:.82rem}.group-lessons>div>button{border:0;background:transparent;color:var(--muted);font-size:1rem}.group-members>div:not(.group-section-head){display:grid}.group-members a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #eef0f3;text-decoration:none;font-size:.82rem;font-weight:700}.group-members a:hover span{color:var(--green)}.group-members>div>small{padding-top:8px;color:var(--muted)}.modal--group-members{width:min(820px,100%)}.group-member-manager{display:grid;gap:14px}.group-member-manager>div:last-child{display:grid;gap:8px}.group-member-manager>div>section{padding:11px 12px;border:1px solid var(--border);border-radius:11px}.group-member-manager>div>section.is-member{border-color:#c7dfd8;background:#f8fcfa}.group-member-manager section>label{display:flex;align-items:center;gap:10px}.group-member-manager input{width:17px;height:17px;accent-color:var(--green)}.group-member-manager section>label>span{display:grid;gap:3px}.group-member-manager section>label small{color:var(--muted);font-size:.72rem}.group-member-manager section>div{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0 27px}.group-member-manager section>div>label{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid #c7dfd8;border-radius:999px;background:#fff;color:var(--green);font-size:.7rem;font-weight:800}@media(max-width:1150px){.group-grid{grid-template-columns:repeat(2,minmax(280px,1fr))}}@media(max-width:700px){.group-toolbar{align-items:stretch;flex-direction:column}.group-grid{grid-template-columns:1fr}.group-card{padding:17px}.group-card>dl{grid-template-columns:1fr}.group-member-manager section>div{margin-left:0}.modal--group-members .modal__body{padding:14px}}.modal--attendance{width:min(820px,100%)}.attendance-sheet{display:grid;gap:18px}.attendance-sheet>header{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:15px;border-radius:13px;background:#f1f8f5}.attendance-sheet>header>div{display:grid;gap:4px}.attendance-sheet>header span{color:var(--muted);font-size:.72rem}.attendance-sheet>div{display:grid}.attendance-sheet section{display:grid;grid-template-columns:minmax(150px,1fr) auto;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid #eef0f3}.attendance-sheet section>div:first-child{display:grid;gap:3px}.attendance-sheet section small{color:var(--muted)}.attendance-sheet section>div:last-child{display:flex;gap:7px}.attendance-sheet section .button{min-height:36px;padding:0 11px;font-size:.76rem}@media(max-width:620px){.attendance-sheet>header{grid-template-columns:1fr}.attendance-sheet section{grid-template-columns:1fr}.attendance-sheet section>div:last-child{display:grid;grid-template-columns:1fr 1fr}.attendance-sheet section>div:last-child .button:last-child{grid-column:1/-1}}.parent-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) 210px;gap:12px;padding:14px;margin:18px 0;box-shadow:none}.parent-review-queue{display:grid;gap:0;margin-top:18px;border-color:#fecdca}.parent-review-queue>.section-heading{margin-bottom:8px}.parent-review-queue>div:not(.section-heading){display:grid;grid-template-columns:minmax(0,1fr) repeat(3,auto);align-items:center;gap:9px;padding:11px 0;border-top:1px solid #fee4e2}.parent-review-queue>div>div{display:grid;gap:3px}.parent-review-queue span{color:var(--muted);font-size:.76rem}.parent-review-queue .button{min-height:36px;padding:0 11px}.parent-duplicate-queue{display:grid;gap:0;margin-top:18px;border-color:#f7b955}.parent-duplicate-queue>.section-heading{margin-bottom:5px}.parent-duplicate-queue>.form-hint{display:flex;align-items:center;gap:7px;margin:0 0 8px}.parent-duplicate-queue>div:not(.section-heading){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #fde7bd}.parent-duplicate-queue>div>div{display:grid;gap:3px}.parent-duplicate-queue span{color:var(--muted);font-size:.76rem}.parent-duplicate-queue .button{min-height:36px}.parent-grid{display:grid;grid-template-columns:repeat(3,minmax(300px,1fr));gap:18px;align-items:start}.parent-card{display:grid;gap:17px}.parent-card.is-due{border-color:#f7b955}.parent-card>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}.parent-avatar{width:46px;height:46px;border-radius:14px;background:#eef4f1;color:var(--green);display:grid;place-items:center;font:800 .9rem Manrope,sans-serif}.parent-card>header h2{font-size:1rem;margin:0 0 4px}.parent-card>header span{display:block;color:var(--muted);font-size:.76rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parent-contact-links{display:flex;flex-wrap:wrap;gap:8px}.parent-contact-links a,.parent-contact-links>span{display:inline-flex;align-items:center;gap:6px;color:var(--green);font-size:.76rem;text-decoration:none}.parent-contact-links>span{color:var(--muted)}.parent-card>dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.parent-card>dl>div{padding:9px;border-radius:10px;background:#f8fafc}.parent-card dt{color:var(--muted);font-size:.68rem}.parent-card dd{margin:4px 0 0;font-size:.78rem;font-weight:700}.parent-card>section{display:grid;gap:7px}.parent-section-head{display:flex;align-items:center;justify-content:space-between}.parent-section-head>strong{font:800 .76rem Manrope,sans-serif;text-transform:uppercase;letter-spacing:.05em}.parent-card>section>a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #eef0f3;text-decoration:none}.parent-card>section>a>span{display:grid;gap:3px}.parent-card>section>a strong{font-size:.82rem}.parent-card>section>a small,.parent-card>section>p{color:var(--muted);font-size:.72rem;margin:0}.parent-notes{margin:0;padding:11px;border:1px solid var(--border);border-radius:10px;color:var(--muted);font-size:.76rem;line-height:1.5}.parent-notes strong{color:var(--navy)}.parent-card>footer{display:flex;flex-wrap:wrap;gap:7px;padding-top:2px}.parent-card>footer .button{min-height:36px;padding:0 10px;font-size:.76rem}.modal--parent-link{width:min(820px,100%)}.parent-link-manager{display:grid;gap:14px}.parent-link-manager>p{margin:0}.parent-link-manager>div:last-child{display:grid;max-height:470px;overflow:auto}.parent-link-manager section{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 2px;border-bottom:1px solid #eef0f3}.parent-link-manager section>span{display:grid;gap:3px}.parent-link-manager section small{color:var(--muted);font-size:.72rem}.parent-link-manager section .button{min-height:36px}@media(max-width:1150px){.parent-grid{grid-template-columns:repeat(2,minmax(290px,1fr))}}@media(max-width:700px){.parent-toolbar,.parent-grid{grid-template-columns:1fr}.parent-card{padding:17px}.parent-review-queue>div:not(.section-heading){grid-template-columns:1fr 1fr}.parent-review-queue>div>div{grid-column:1/-1}.parent-duplicate-queue>div:not(.section-heading){grid-template-columns:1fr}.parent-duplicate-queue .button{width:100%}.parent-card>dl{grid-template-columns:1fr}.parent-link-manager section{align-items:flex-start;grid-template-columns:1fr}.parent-link-manager section .button{width:100%}}.parent-link-manager__heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.parent-link-manager__heading>div{display:grid;gap:3px}.parent-link-manager__heading span{color:var(--muted);font-size:.74rem}.parent-linked-children{display:grid;gap:10px;padding:14px;border:1px solid #abefc6;border-radius:14px;background:#f6fef9}.parent-linked-children__list{display:grid}.parent-linked-children__list>a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #d1fadf;color:var(--navy);text-decoration:none}.parent-linked-children__list>a>span{display:grid;gap:3px}.parent-linked-children__list small{color:var(--muted);font-size:.72rem}.parent-link-manager__results{display:grid;max-height:390px;overflow:auto}@media(max-width:700px){.parent-link-manager__heading{align-items:stretch;flex-direction:column}.parent-link-manager__heading .button{width:100%}}.parent-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.parent-home-students{display:grid}.parent-home-students>article{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid #eef0f3}.parent-home-students>article>span{display:grid;gap:3px}.parent-home-students small{color:var(--muted);font-size:.74rem}.parent-home-lessons>div{gap:12px}.parent-quick-links{display:grid}.parent-quick-links>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #eef0f3;text-decoration:none}.parent-quick-links>a>svg:first-child{color:var(--green)}.parent-quick-links>a>span{display:grid;gap:3px}.parent-quick-links small{color:var(--muted)}@media(max-width:900px){.parent-home-grid{grid-template-columns:1fr}}.student-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.student-home-profiles{display:grid}.student-home-profiles>article{display:grid;gap:14px;padding:12px 0;border-bottom:1px solid #eef0f3}.student-home-profile-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px}.student-home-profile-head>span{display:grid;gap:3px}.student-home-profile-head small{color:var(--muted);font-size:.74rem}.student-home-skills{display:grid;gap:8px}.student-home-skills>div{display:grid;grid-template-columns:minmax(100px,.7fr) minmax(100px,1fr) auto;align-items:center;gap:9px;font-size:.72rem}.student-home-skills>div>div{height:7px;border-radius:99px;background:#eef2f6;overflow:hidden}.student-home-skills i{display:block;height:100%;border-radius:inherit;background:var(--green)}.student-home-skills strong{font-size:.7rem}.student-home-lessons>div{gap:12px}.student-home-feedback{display:grid}.student-home-feedback>article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid #eef0f3}.student-home-feedback>article>i{width:36px;height:36px;border-radius:10px;background:#fffaeb;color:#f79009;display:grid;place-items:center}.student-home-feedback>article>span{display:grid;gap:3px}.student-home-feedback small{color:var(--muted);font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:900px){.student-home-grid{grid-template-columns:1fr}}@media(max-width:560px){.student-home-feedback>article{grid-template-columns:auto minmax(0,1fr)}.student-home-feedback .badge{grid-column:2;justify-self:start}.student-home-skills>div{grid-template-columns:90px minmax(80px,1fr) auto}}.finance-table tbody tr{cursor:pointer}.finance-table tbody tr:focus-within{background:#f1f8f5}.invoice-link{border:0;background:transparent;padding:4px 0;color:var(--green);font-weight:800;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px}.invoice-link:hover{text-decoration-color:currentColor}.finance-mobile-card{width:100%;border:1px solid var(--border);border-radius:14px;background:#fff;padding:15px;text-align:left}.finance-mobile-card>div{display:flex;justify-content:space-between;align-items:center;gap:12px}.finance-mobile-card>span{display:block;color:var(--muted);margin-top:5px}.finance-mobile-card dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 0}.finance-mobile-card dl>div{background:#f8fafc;border-radius:10px;padding:10px}.finance-mobile-card dt{color:var(--muted);font-size:.7rem}.finance-mobile-card dd{font-weight:800;margin:4px 0 0}.invoice-detail{display:grid;gap:22px}.invoice-detail__hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px;border-radius:15px;background:linear-gradient(135deg,#f1f8f5,#f8fafc)}.invoice-detail__hero strong{display:block;font:800 2rem Manrope,sans-serif;margin:8px 0 3px}.invoice-detail__hero small{color:var(--muted)}.invoice-detail__facts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0}.invoice-detail__facts>div{padding-bottom:11px;border-bottom:1px solid #eef0f3}.invoice-detail__facts dt{font-size:.72rem;color:var(--muted)}.invoice-detail__facts dd{margin:4px 0 0;font-weight:700;overflow-wrap:anywhere}.invoice-detail__facts a{display:inline-flex;align-items:center;gap:5px;color:var(--green);text-decoration:none}.invoice-description{padding:14px;border-radius:12px;background:#f8fafc}.invoice-description span{font-size:.75rem;font-weight:700;color:var(--muted)}.invoice-description p{margin:6px 0 0;white-space:pre-wrap}.payment-history{border-top:1px solid var(--border);padding-top:20px}.payment-history .section-heading{align-items:center}.payment-history .section-heading h2{font-size:1rem;margin-top:3px}.payment-history .section-heading>strong{font:800 1.1rem Manrope,sans-serif}.payment-list{display:grid}.payment-list>div{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;padding:12px 0;border-bottom:1px solid #eef0f3}.payment-list>div>svg{color:var(--green)}.payment-list>div>div{display:grid;gap:2px}.payment-list span,.payment-list small{color:var(--muted);font-size:.75rem}.payment-list .is-voided{opacity:.58}.payment-list .is-voided strong{text-decoration:line-through}.payment-form{display:grid;gap:18px}.payment-context{display:flex;justify-content:space-between;gap:12px;padding:14px;border-radius:12px;background:#f1f8f5}.payment-context span{color:var(--muted)}.payment-context strong{font-family:Manrope,sans-serif}.payment-form textarea{width:100%;border:1px solid #d0d5dd;border-radius:10px;padding:10px 12px;font:inherit;resize:vertical}.payment-warning,.payment-confirmation{margin:0;padding:12px 14px;border-radius:11px;font-size:.8rem;line-height:1.5}.payment-warning{background:#fffaeb;border:1px solid #fedf89;color:#92400e}.payment-confirmation{background:#f8fafc;color:var(--muted)}.revenue-forecast-card{margin-bottom:18px}.revenue-forecast-card>.form-hint{margin:0 0 15px}.forecast-totals{display:flex;flex-wrap:wrap;gap:8px}.forecast-totals span{padding:7px 10px;border-radius:9px;background:#f1f8f5;color:var(--muted);font-size:.75rem}.forecast-totals strong{color:var(--green);margin-left:4px}.forecast-table-wrap{overflow-x:auto}.forecast-table{width:100%;border-collapse:collapse}.forecast-table th,.forecast-table td{padding:11px 12px;border-top:1px solid #eef0f3;text-align:left;white-space:nowrap}.forecast-table th{color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.04em}.forecast-table td{font-size:.82rem}.forecast-table .button{min-height:34px;padding:0 10px}.student-profile-link{display:inline-flex;align-items:center;gap:5px;color:var(--green);font-weight:700;text-decoration:none}.student-profile-link:hover{text-decoration:underline}.finance-mobile-card{padding:0;overflow:hidden}.finance-mobile-card__open{display:block;width:100%;border:0;background:#fff;padding:15px;text-align:left}.finance-mobile-card__open>div{display:flex;justify-content:space-between;align-items:center;gap:12px}.finance-mobile-card__open>span{display:block;color:var(--muted);margin-top:5px}.finance-mobile-card__student-link{justify-content:center;padding:11px 15px;border-top:1px solid var(--border);background:#f8fafc}@media(max-width:560px){.invoice-detail__facts{grid-template-columns:1fr}.invoice-detail__hero{align-items:flex-start;flex-direction:column-reverse}.payment-context{display:grid}.finance-mobile-card dl{grid-template-columns:1fr 1fr}}.lesson-accounting-card{display:grid;gap:18px;margin-bottom:18px}.billing-student-list{display:grid;gap:10px}.billing-student-list>section{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid var(--border);border-radius:16px;background:#f8fafc}.billing-student-main,.billing-student-summary{display:flex;align-items:center;gap:12px}.billing-student-main span{display:grid;gap:3px}.billing-student-main small,.billing-attention small,.invoice-lesson-picker small{color:var(--muted)}.billing-student-summary>strong{min-width:90px;text-align:right}.billing-attention{display:grid;gap:10px;padding-top:16px;border-top:1px solid var(--border)}.billing-attention>div:not(.section-heading){display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:#fef3f2}.billing-attention>div>span{display:grid;gap:2px}.invoice-builder{display:grid;gap:18px}.invoice-builder-summary{display:flex;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:14px;background:#f8fafc}.invoice-lesson-picker{display:grid;max-height:300px;overflow:auto;border:1px solid var(--border);border-radius:14px}.invoice-lesson-picker label{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;cursor:pointer}.invoice-lesson-picker label+label{border-top:1px solid var(--border)}.invoice-lesson-picker label>span{display:grid;gap:2px}@media(max-width:720px){.billing-student-list>section{align-items:stretch;flex-direction:column}.billing-student-summary{justify-content:space-between;flex-wrap:wrap}.billing-student-summary>strong{min-width:0}.billing-attention>div:not(.section-heading){grid-template-columns:auto minmax(0,1fr)}.billing-attention>div:not(.section-heading) .button{grid-column:1/-1}}:root{--navy:#132238;--navy-soft:#1d314d;--green:#087e6b;--green-dark:#056454;--green-soft:#e8f6f2;--amber:#e7a93f;--ink:#17253a;--muted:#627087;--surface:#fff;--surface-soft:#f6f8fb;--border:#dfe5ec;--danger:#b42318;--shadow-sm:0 1px 2px rgba(16,35,57,.04),0 5px 14px rgba(16,35,57,.045);--shadow:0 18px 44px rgba(16,35,57,.075);color:var(--ink);background:#edf2f6}body{min-width:320px;background:linear-gradient(135deg,#f5f8fa,#edf3f6 52%,#f7f9fb);color:var(--ink);font-size:16px;line-height:1.5}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 88% 8%,rgba(8,126,107,.075),transparent 28rem),radial-gradient(circle at 18% 88%,rgba(231,169,63,.06),transparent 24rem);z-index:-1}::selection{background:#bce8de;color:#0b443b}.sidebar{width:284px;padding:24px 18px;background:linear-gradient(165deg,#101e32,#172b45 58%,#0e2633);box-shadow:18px 0 42px #0a1b2f1f}.brand{padding:0 8px 28px;gap:13px}.brand-mark{width:44px;height:44px;border-radius:15px;background:linear-gradient(145deg,#ffd680,#e9a638);color:#18253a;box-shadow:0 10px 24px #e7a93f3d}.brand strong{font-size:1.08rem;letter-spacing:-.02em}.brand span{color:#9fb0c5;font-size:.75rem;letter-spacing:.03em}.sidebar nav{gap:5px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}.nav-item{min-height:45px;padding:0 13px;border-radius:12px;color:#b9c7d8;font-size:.92rem;transition:background .16s ease,color .16s ease,transform .16s ease}.nav-item svg{opacity:.86}.nav-item:hover{background:#ffffff13;transform:translate(2px)}.nav-item.active{background:linear-gradient(135deg,#eefbf7,#fff);color:#075f51;box-shadow:0 8px 22px #04142438}.nav-item.active svg{opacity:1}.sidebar-footer{gap:14px}.profile-chip{padding:16px 4px 0;border-top-color:#ffffff1a}.avatar{width:40px;height:40px;border-radius:13px;background:linear-gradient(145deg,#15957f,#08715f);box-shadow:inset 0 0 0 1px #ffffff21}.main-area{margin-left:284px}.topbar{height:72px;padding:0 34px;background:#f9fbfcdb;border-bottom-color:#c7d1dcb8;-webkit-backdrop-filter:blur(20px) saturate(150%);backdrop-filter:blur(20px) saturate(150%)}.search-box{max-width:600px;min-height:44px;border-radius:14px;background:#ffffffdb;border-color:#dce3eb;box-shadow:0 2px 9px #10233909;transition:border-color .16s ease,box-shadow .16s ease}.search-box:focus-within{border-color:#65b9a9;box-shadow:0 0 0 4px #087e6b17}.page-content{max-width:1540px;padding:36px 38px 56px}.page-header{align-items:flex-start;margin-bottom:27px}.page-header>div:first-child{max-width:780px}.page-header h1{font-size:clamp(2rem,3vw,2.65rem);line-height:1.08;letter-spacing:-.045em;margin:7px 0 10px;color:#14243a}.page-header p{max-width:720px;font-size:1rem;line-height:1.6}.eyebrow{color:#08715f;font-size:.75rem;letter-spacing:.105em}.card{border-color:#d4dde6e6;border-radius:20px;padding:23px;background:#fffffff0;box-shadow:var(--shadow-sm);transition:border-color .18s ease,box-shadow .18s ease}.card:hover{border-color:#ccd7e1}.metric-card:hover{box-shadow:0 12px 28px #10233913;transform:translateY(-1px)}.metric-card{transition:transform .18s ease,box-shadow .18s ease}.metric-card strong{color:#12243a;letter-spacing:-.035em}.metric-card__top i{border-radius:13px}.content-grid,.profile-grid{gap:20px}.metric-grid{gap:18px;margin-bottom:20px}.button{min-height:44px;border-radius:12px;padding:0 17px;font-size:.91rem;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.button:not(:disabled):active{transform:translateY(1px)}.button--primary{background:linear-gradient(135deg,#087e6b,#056454);box-shadow:0 7px 16px #087e6b2e}.button--primary:hover{background:linear-gradient(135deg,#0a8d78,#075e50);box-shadow:0 10px 22px #087e6b3d}.button--secondary{background:#fff;border-color:#d7dfe8;color:#203047}.button--secondary:hover{background:#f6f9fb;border-color:#c4d0dc}.icon-button{border-color:#d9e1e9;border-radius:12px;box-shadow:0 2px 7px #10233909}.badge{min-height:28px;padding:4px 10px;font-size:.76rem}.badge--neutral{background:#edf1f5;color:#44536a}.badge--info{background:#eaf3ff;color:#175da7}.badge--success{background:#e7f8f2;color:#06705c}.badge--danger{background:#fff0ee;color:#a9281f}.field{gap:7px}.field__label{font-size:.83rem;color:#34445a}.field input,.field select,.filters-card select,.list-toolbar select,.new-conversation{min-height:44px;border-color:#d6dee7;border-radius:12px;color:#17253a;transition:border-color .15s ease,box-shadow .15s ease}.field input:hover,.field select:hover,.filters-card select:hover{border-color:#bdc9d5}.field input:focus,.field select:focus,.filters-card select:focus{border-color:#55ae9d;box-shadow:0 0 0 4px #087e6b16}.filters-card,.list-toolbar{background:#fffc}.search-field{min-height:44px;border-color:#d6dee7;border-radius:12px;background:#fff}.students-table th{padding:14px 17px;background:#f4f7f9;color:#5e6d82;font-size:.74rem}.students-table td{padding:15px 17px;border-bottom-color:#e9edf2}.students-table tbody tr{transition:background .12s ease}.students-table tbody tr:hover{background:#f5faf8}.modal-backdrop{background:#091626a3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal{border:1px solid rgba(255,255,255,.62);border-radius:22px;box-shadow:0 32px 90px #09162657}.modal__header,.modal__footer{padding:19px 24px}.modal__body{padding:24px}.state-view{min-height:240px}.state-view strong{font-size:1.12rem}.state-spinner{color:var(--green)}.login-page{background:radial-gradient(circle at 18% 12%,rgba(8,126,107,.17),transparent 28rem),linear-gradient(145deg,#f3f8f6,#e8eef4)}.login-shell{width:min(1040px,100%);min-height:610px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr);border:1px solid rgba(255,255,255,.72);border-radius:30px;overflow:hidden;background:#fff;box-shadow:0 38px 100px #1023392b}.login-intro{position:relative;display:flex;flex-direction:column;padding:50px;background:linear-gradient(155deg,#11223a,#183651 62%,#0a584e 130%);color:#fff;overflow:hidden}.login-intro:after{content:"";position:absolute;width:410px;height:410px;border:1px solid rgba(255,255,255,.09);border-radius:50%;right:-185px;bottom:-205px;box-shadow:0 0 0 55px #ffffff06,0 0 0 110px #ffffff05}.login-brand{display:flex;align-items:center;gap:12px;font:800 1.08rem Manrope,sans-serif;letter-spacing:-.02em}.login-brand>span{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#ffd680,#e9a638);color:#17253a;box-shadow:0 12px 28px #e7a93f38}.login-intro__copy{max-width:540px;margin:auto 0}.login-intro .eyebrow{color:#7ed6c4}.login-intro h1{font:800 clamp(2.35rem,4vw,3.65rem)/1.04 Manrope,sans-serif;letter-spacing:-.055em;margin:14px 0 20px}.login-intro p{max-width:500px;margin:0;color:#c5d5e2;font-size:1.05rem;line-height:1.7}.login-benefits{display:grid;gap:11px;margin-top:auto}.login-benefits span{display:flex;align-items:center;gap:10px;color:#dfeaf1;font-weight:600;font-size:.88rem}.login-benefits svg{color:#70cfbb}.login-intro>small{margin-top:28px;color:#8fa7ba}.login-card{align-self:center;width:calc(100% - 64px);margin:32px;padding:36px;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.login-card h2{font:800 2rem Manrope,sans-serif;letter-spacing:-.04em;margin:8px 0;color:#14243a}.login-card>p{color:var(--muted);margin:0 0 28px}.login-card form{display:grid;gap:17px}.login-card .button{width:100%;margin:0}.login-divider{display:flex;align-items:center;gap:12px;color:#8995a7;font-size:.75rem}.login-divider:before,.login-divider:after{content:"";height:1px;background:#e0e6ec;flex:1}@media(max-width:1100px){.sidebar{width:264px}.main-area{margin-left:264px}.page-content{padding-left:28px;padding-right:28px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.sidebar{width:min(310px,88vw)}.main-area{margin-left:0}.topbar{height:66px;padding:0 17px}.page-content{padding:27px 17px 44px}.page-header{gap:18px}.page-header h1{font-size:2rem}.page-header__actions{width:100%;flex-wrap:wrap}.page-header__actions .button{flex:1}.card{border-radius:17px;padding:18px}.metric-grid{gap:12px}.content-grid{gap:14px}}@media(max-width:850px){.login-page{padding:18px}.login-shell{min-height:0;grid-template-columns:1fr;border-radius:24px}.login-intro{padding:28px}.login-intro__copy{margin:38px 0 26px}.login-intro h1{font-size:2.35rem}.login-intro p{font-size:.98rem}.login-benefits,.login-intro>small{display:none}.login-card{width:auto;margin:0;padding:30px 28px 34px}.login-card h2{font-size:1.8rem}}@media(max-width:560px){body{font-size:15px}.page-header h1{font-size:1.8rem}.metric-grid{grid-template-columns:1fr}.page-header__actions{display:grid;grid-template-columns:1fr}.modal-backdrop{padding:10px}.modal{max-height:calc(100vh - 20px);border-radius:18px}.modal__header,.modal__body,.modal__footer{padding:16px}.modal__footer{flex-wrap:wrap}.modal__footer .button{flex:1}.form-grid{grid-template-columns:1fr}.form-grid__wide{grid-column:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.dashboard-welcome{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:30px;min-height:230px;margin-bottom:20px;padding:34px 36px;border-radius:24px;overflow:hidden;color:#fff;background:linear-gradient(130deg,#11223a,#17324d 58%,#096b5d 135%);box-shadow:0 22px 48px #10233929}.dashboard-welcome:before{content:"";position:absolute;inset:auto -90px -180px auto;width:390px;height:390px;border:1px solid rgba(255,255,255,.09);border-radius:50%;box-shadow:0 0 0 52px #ffffff07,0 0 0 104px #ffffff05}.dashboard-welcome>div,.dashboard-welcome__action{position:relative;z-index:1}.dashboard-welcome .eyebrow{color:#80dbc8}.dashboard-welcome h1{font:800 clamp(2.35rem,4vw,3.65rem)/1.04 Manrope,sans-serif;letter-spacing:-.055em;margin:12px 0 10px}.dashboard-welcome p{max-width:650px;margin:0;color:#c8d7e3;font-size:1rem}.dashboard-welcome__action{min-width:270px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:15px 16px;border:1px solid rgba(255,255,255,.15);border-radius:16px;background:#ffffff1a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-decoration:none;transition:background .16s ease,transform .16s ease}.dashboard-welcome__action:hover{background:#ffffff29;transform:translateY(-2px)}.dashboard-welcome__action>span{display:grid;gap:2px}.dashboard-welcome__action small{color:#a9bdcc;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}.dashboard-welcome__action strong{font-size:.87rem}.dashboard-quick-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;margin:0 0 20px}.dashboard-quick-actions>a{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:14px;border:1px solid #dce4eb;border-radius:16px;background:#ffffffdb;box-shadow:var(--shadow-sm);text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.dashboard-quick-actions>a:hover{border-color:#a9cec5;box-shadow:0 12px 26px #10233914;transform:translateY(-2px)}.dashboard-quick-actions i{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--green-soft);color:var(--green)}.dashboard-quick-actions span{min-width:0;display:grid;gap:2px}.dashboard-quick-actions strong,.dashboard-quick-actions small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-quick-actions strong{font-size:.85rem}.dashboard-quick-actions small{color:var(--muted);font-size:.7rem}.dashboard-quick-actions>a>svg{color:#8a98aa}.agenda-item{border-radius:12px;padding-left:10px;padding-right:10px}.agenda-item:hover{background:#f6faf9}.attention-list a{margin:0 -8px;padding-left:8px;padding-right:8px;border-radius:12px}.attention-list a:hover{background:#f6faf9}.attention-list b{color:#8b98aa}@media(max-width:1250px){.dashboard-quick-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.dashboard-welcome{align-items:flex-start;flex-direction:column;min-height:0;padding:28px}.dashboard-welcome__action{width:100%;min-width:0}.dashboard-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.dashboard-welcome{padding:24px 20px;border-radius:19px}.dashboard-welcome h1{font-size:2.25rem}.dashboard-welcome p{font-size:.92rem}.dashboard-quick-actions{grid-template-columns:1fr}.dashboard-quick-actions>a{padding:13px}.agenda-item{grid-template-columns:68px minmax(0,1fr)}.agenda-item .badge{grid-column:2;justify-self:start}}.student-directory-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.student-directory-summary>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border:1px solid var(--border);border-radius:15px;background:#ffffffd1;box-shadow:var(--shadow-sm)}.student-directory-summary span{color:var(--muted);font-size:.78rem;font-weight:700}.student-directory-summary strong{font:800 1.25rem Manrope,sans-serif}.student-directory-summary .needs-attention{border-color:#f0c36f;background:#fffaf0}.student-directory-summary .needs-attention strong{color:#a15c00}.student-identity{display:flex!important;grid-template-columns:none!important;align-items:center;gap:11px}.student-identity>i,.student-avatar{flex:0 0 auto;width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,#dff4ee,#edf7f4);color:#08715f;font:800 .78rem Manrope,sans-serif;font-style:normal}.student-identity>span{min-width:0;display:grid;gap:2px}.student-identity small{color:var(--muted);font-size:.75rem}.student-mobile-card>a{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important}.student-profile-hero{position:relative;display:grid;grid-template-columns:minmax(300px,1fr) auto auto;align-items:center;gap:28px;margin-bottom:18px;padding:26px 28px;border:1px solid #d8e2e9;border-radius:22px;background:linear-gradient(125deg,#fff,#f4faf8);box-shadow:var(--shadow-sm);overflow:hidden}.student-profile-hero:after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;right:-105px;bottom:-145px;background:#087e6b0e}.student-profile-hero__identity{display:flex;align-items:center;gap:16px}.student-profile-hero__identity>i{width:68px;height:68px;flex:0 0 auto;border-radius:20px;display:grid;place-items:center;background:linear-gradient(145deg,#0b8c77,#075f51);color:#fff;font:800 1.2rem Manrope,sans-serif;font-style:normal;box-shadow:0 12px 25px #087e6b33}.student-profile-hero__identity>span{min-width:0}.student-profile-hero h1{font:800 clamp(1.8rem,3vw,2.55rem)/1.1 Manrope,sans-serif;letter-spacing:-.045em;margin:7px 0 5px}.student-profile-hero p{margin:0;color:var(--muted)}.student-profile-hero__stats{display:flex;gap:9px}.student-profile-hero__stats>div{min-width:92px;display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #dce7e3;border-radius:13px;background:#ffffffb8;color:var(--green)}.student-profile-hero__stats span{display:grid}.student-profile-hero__stats strong{font:800 1rem Manrope,sans-serif;color:var(--ink)}.student-profile-hero__stats small{font-size:.68rem;color:var(--muted)}.student-profile-hero>.button{position:relative;z-index:1}@media(max-width:1050px){.student-profile-hero{grid-template-columns:1fr auto}.student-profile-hero__stats{grid-column:1/-1}.student-directory-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.student-profile-hero{grid-template-columns:1fr;padding:20px}.student-profile-hero__identity{align-items:flex-start}.student-profile-hero__identity>i{width:56px;height:56px;border-radius:17px}.student-profile-hero__stats{grid-column:auto;display:grid;grid-template-columns:repeat(3,1fr)}.student-profile-hero__stats>div{min-width:0}.student-profile-hero>.button{width:100%}.student-directory-summary{grid-template-columns:1fr 1fr}.student-directory-summary>div{padding:11px 13px}}.preview-banner{position:sticky;top:0;z-index:12;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 30px;border-bottom:1px solid #f2c86b;background:#fff7df;color:#674500}.preview-banner>span{display:grid;gap:2px}.preview-banner strong{font-size:.84rem}.preview-banner small{font-size:.72rem;color:#8a6a20}.preview-banner button{min-height:34px;padding:0 12px;border:1px solid #d6a73a;border-radius:9px;background:#fff;color:#674500;font-weight:800}.preview-surface--readonly .button,.preview-surface--readonly button{cursor:not-allowed}.preview-surface--readonly form{position:relative}@media(max-width:800px){.preview-banner{position:relative;padding:10px 17px;align-items:flex-start;flex-direction:column}.preview-banner button{width:100%}}.students-table--people th:nth-child(1){width:26%}.students-table--people th:nth-child(2){width:auto}.students-table--people th:nth-child(3){width:120px}.student-enrollments{display:grid;gap:8px}.student-enrollments--compact{gap:6px}.student-enrollment-row{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(220px,1.3fr);gap:10px;align-items:center;padding:8px 10px;border:1px solid #e4ebe8;border-radius:10px;background:#f8fbfa}.student-enrollment-row strong{font-size:.82rem;color:#173b34}.student-enrollment-row span{font-size:.78rem;color:var(--muted)}.student-enrollment-empty{color:var(--muted);font-size:.8rem}.students-table--people .student-identity small{margin-top:3px}.parent-child-card{display:grid;gap:12px!important;padding:14px 0!important}.parent-child-card__head{display:flex;align-items:center;gap:12px}.parent-child-card__head>div:last-child{display:grid;gap:2px}.parent-child-card__head strong{font-size:.95rem}.parent-child-card__head small{color:var(--muted);font-size:.74rem}.parent-child-enrollments{display:grid;gap:7px;padding-left:50px}.parent-child-enrollments>div{display:grid;grid-template-columns:minmax(110px,.8fr) minmax(90px,.55fr) minmax(140px,1fr);gap:10px;align-items:center;padding:8px 10px;border-radius:10px;background:#f8fafc;border:1px solid #edf0f2}.parent-child-enrollments strong{font-size:.8rem;color:#173b34}.parent-child-enrollments span,.parent-child-enrollments small{font-size:.75rem;color:var(--muted)}.parent-child-enrollments small{text-align:right}@media(max-width:900px){.students-table--people .student-enrollment-row{grid-template-columns:1fr}.parent-child-enrollments{padding-left:0}.parent-child-enrollments>div{grid-template-columns:1fr 1fr}.parent-child-enrollments small{grid-column:1/-1;text-align:left}}@media(max-width:650px){.student-enrollment-row{grid-template-columns:1fr}.parent-child-enrollments>div{grid-template-columns:1fr}.parent-child-enrollments small{grid-column:auto}}.modal--enrollments{width:min(980px,100%)}.enrollment-manager{display:grid;gap:18px}.enrollment-manager>.form-hint{margin:0}.enrollment-manager__list{display:grid;gap:14px}.enrollment-editor{border:1px solid var(--border);border-radius:14px;padding:16px;background:#fff}.enrollment-editor--new{background:#f8fbfa;border-style:dashed}.enrollment-editor__title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.enrollment-editor__title strong{font:800 .95rem Manrope,sans-serif}.enrollment-editor__grid{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(190px,1fr) repeat(3,minmax(130px,.7fr));gap:12px}.enrollment-editor__actions{display:flex;justify-content:flex-end;margin-top:14px}@media(max-width:900px){.enrollment-editor__grid{grid-template-columns:1fr 1fr}.enrollment-editor__grid>.field:first-child{grid-column:1/-1}}@media(max-width:620px){.modal--enrollments .modal__body{padding:16px}.enrollment-editor__grid{grid-template-columns:1fr}.enrollment-editor__grid>.field:first-child{grid-column:auto}.enrollment-editor__actions .button{width:100%}}.login-roles{display:flex;gap:4px;padding:4px;border-radius:12px;background:#eef1f4}.login-roles button{flex:1;min-height:38px;border:0;border-radius:9px;background:transparent;color:#42536a;font-weight:700;cursor:pointer}.login-roles button.is-active{background:#14243a;color:#fff}.login-terms{display:flex;gap:10px;align-items:flex-start;font-size:.84rem;color:#344054;line-height:1.45}.login-terms input{margin-top:3px;width:17px;height:17px;flex:none}.login-terms a,.login-legal a{color:#087e6b;font-weight:700}.form-info{color:#087e6b;font-size:.82rem;margin:0}.login-links{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.login-links button{border:0;background:none;padding:4px 0;color:#087e6b;font-weight:700;cursor:pointer;font-size:.85rem}.login-legal{text-align:center;color:#8995a7}@media(max-width:850px){.login-intro{padding:18px 22px}.login-intro__copy{margin:14px 0 0}.login-intro h1{font-size:1.45rem;margin:6px 0 0}.login-intro__copy p,.login-intro .eyebrow{display:none}.login-card{padding:24px 22px 30px}}.pending-card{width:min(560px,100%);padding:36px;display:grid;gap:14px;text-align:center;justify-items:center}.pending-card__brand{color:#14243a}.pending-card__icon{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:#fff4dc;color:#a96e1a}.pending-card__icon.is-rejected{background:#fdecea;color:#b42318}.pending-card h1{font:800 1.8rem Manrope,sans-serif;letter-spacing:-.03em;margin:0;color:#14243a}.pending-card p{margin:0;color:#42536a;line-height:1.6}.pending-card__ru{font-size:.9rem;color:#667085!important}.pending-card a{color:#087e6b;font-weight:700}.pending-card__actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:6px}.parent-home-note{display:block;margin-top:2px;color:#475467;font-size:.82rem;white-space:normal}
