:root{--brand-blue:#010cb5;--brand-blue-deep:#000a8f;--brand-blue-soft:#eaebff;--brand-orange:#fb5607;--orange-text:#b84400;--surface-page:#faf9f6;--surface-card:#fff;--surface-sunken:#f1efe9;--ink:#1c2130;--ink-soft:#6b6f7e;--ink-on-blue:#fff;--border:#ece8e0;--border-input:#8a8578;--selected:#eaebff;--status-done-bg:#dcf1e3;--status-done-text:#1f6b3f;--status-done-chip:#b9e4c7;--status-student-cancel-bg:#eef6d8;--status-student-cancel-text:#5f7112;--status-student-cancel-chip:#ddefa9;--status-teacher-cancel-bg:#fbe4e1;--status-teacher-cancel-text:#b3261e;--status-teacher-cancel-chip:#f6c4be;--status-holiday-bg:#e9eaef;--status-holiday-text:#5a6072;--status-holiday-chip:#d6d9e0;--status-moved-bg:#dff0f7;--status-moved-text:#0e6e8c;--status-moved-chip:#bae6fd;--success:#1f6b3f;--success-bg:#dcf1e3;--danger:#b3261e;--danger-bg:#fbe4e1;--warning-bg:#fff4e0;--warning-text:#8a5a00;--info-bg:#dff0f7;--info-text:#0e6e8c;--target-amuta-bg:#eaebff;--target-amuta-text:#010cb5;--target-private-bg:#fff0e6;--target-private-text:#b84400;--target-cash-bg:#f1efe9;--target-cash-text:#5a6072;--staff-line:#010cb517;--scrim-top:#10142e3d;--scrim-bottom:#10142ed1;--inst-violin-bg:#e7e9ff;--inst-violin-ink:#2b2fa8;--inst-cello-bg:#d7f0ec;--inst-cello-ink:#14685c;--inst-guitar-bg:#ffedd0;--inst-guitar-ink:#8a5a00;--inst-piano-bg:#fde3e7;--inst-piano-ink:#a32647;--inst-clarinet-bg:#dcf1e3;--inst-clarinet-ink:#1f6b3f;--inst-sax-bg:#daecfa;--inst-sax-ink:#0e5e8c;--inst-trumpet-bg:#ffe4d6;--inst-trumpet-ink:#b84400;--inst-flute-bg:#eee2f7;--inst-flute-ink:#6b2e9e;--font-display:"Varela Round", "Heebo", "Segoe UI", sans-serif;--font-body:"Heebo", "Segoe UI", sans-serif;--font-system:system-ui, "Segoe UI", sans-serif;--fs-hero:26px;--fs-title:22px;--fs-section:17px;--fs-body:15px;--fs-small:13px;--fs-tiny:12px;--fs-money-hero:32px;--radius-card:16px;--radius-btn:12px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--shadow-card:0 2px 8px #12123f0f;--shadow-sheet:0 -8px 30px #12123f2e;--touch:48px;--tabbar-h:64px;--content-max:560px;--content-max-admin:720px;--content-max-wide:1120px;--rail-w:232px;--frame-canvas:#10142e;--frame-canvas-glow:#010cb547;--frame-bezel:#23283f}
@font-face{font-family:Varela Round;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/varela-round-hebrew-400.woff2)format("woff2");unicode-range:U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Varela Round;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/varela-round-latin-400.woff2)format("woff2")}@font-face{font-family:Heebo;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/heebo-hebrew-400.woff2)format("woff2");unicode-range:U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Heebo;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/heebo-latin-400.woff2)format("woff2")}@font-face{font-family:Heebo;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/heebo-hebrew-500.woff2)format("woff2");unicode-range:U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Heebo;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/heebo-latin-500.woff2)format("woff2")}@font-face{font-family:Heebo;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/heebo-hebrew-700.woff2)format("woff2");unicode-range:U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Heebo;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/heebo-latin-700.woff2)format("woff2")}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-body);font-size:var(--fs-body);color:var(--ink);background:var(--surface-page);-webkit-font-smoothing:antialiased;line-height:1.55}h1,h2,h3{margin:0;font-weight:700;line-height:1.3}h1{font-family:var(--font-display);font-weight:400;font-size:var(--fs-title)}h2{font-size:var(--fs-section)}p{margin:0}a{color:var(--brand-blue);text-decoration:none}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none;padding:0}img,svg{max-width:100%;display:block}ul,ol{margin:0;padding:0;list-style:none}input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px;border-radius:4px}.ltr-nums{direction:ltr;unicode-bidi:isolate}.tnums{font-variant-numeric:tabular-nums}.u-soft{color:var(--ink-soft)}.u-small{font-size:var(--fs-small)}.u-center{text-align:center}
.c-body{padding:var(--space-4);padding-bottom:calc(var(--tabbar-h) + var(--space-5));gap:var(--space-4);flex-direction:column;flex:1;display:flex}.c-body--plain{padding-bottom:var(--space-5)}.c-appbar{z-index:20;background:var(--brand-blue);color:var(--ink-on-blue);padding:calc(env(safe-area-inset-top,0px) + var(--space-4)) var(--space-4) var(--space-4);gap:var(--space-3);flex-direction:column;display:flex;position:sticky;top:0}.c-appbar__row{align-items:center;gap:var(--space-3);display:flex}.c-appbar__logo{flex:none;width:28px;height:28px}.c-appbar__title{font-family:var(--font-display);font-weight:400;font-size:var(--fs-title);color:var(--ink-on-blue)}.c-appbar__sub{font-size:var(--fs-small);color:#ffffffbf}.c-appbar__spacer{margin-inline-start:auto}.c-appbar a{color:var(--ink-on-blue)}.c-appbar__action{font-size:var(--fs-small);border-radius:var(--radius-pill);background:#ffffff24;align-items:center;gap:6px;min-height:32px;padding:6px 12px;font-weight:500;display:inline-flex}.c-string{align-items:center;gap:var(--space-3);display:flex}.c-string__track{background:#ffffff40;border-radius:2px;flex:1;height:4px;position:relative}.c-string__fill{inset-inline-start:0;background:var(--brand-orange);border-radius:2px;position:absolute;top:0;bottom:0}.c-string__note{top:50%;background:var(--brand-orange);border-radius:50%;width:14px;height:14px;position:absolute;inset-inline-end:-4px;transform:translateY(-50%);box-shadow:0 0 0 3px #fb560747}.c-string__count{font-family:var(--font-display);font-size:var(--fs-section);color:var(--ink-on-blue);white-space:nowrap}.w-0{width:0}.w-13{width:13%}.w-25{width:25%}.w-38{width:38%}.w-50{width:50%}.w-63{width:63%}.w-75{width:75%}.w-88{width:88%}.w-100{width:100%}.c-tabbar{z-index:20;background:var(--surface-card);border-top:1px solid var(--border);min-height:var(--tabbar-h);padding-bottom:env(safe-area-inset-bottom,0px);grid-template-columns:repeat(4,1fr);margin-top:auto;display:grid;position:sticky;bottom:0}.c-tabbar__item{padding:var(--space-2) 0;color:var(--ink-soft);font-size:var(--fs-tiny);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-weight:500;display:flex}.c-tabbar__item svg{width:24px;height:24px}.c-tabbar__item.is-active{color:var(--brand-blue)}.c-tabbar__item.is-active:before{content:"";background:var(--brand-orange);border-radius:0 0 3px 3px;width:32px;height:3px;position:absolute;top:0}.c-tabbar__item{position:relative}.c-tabbar__badge{top:6px;border-radius:var(--radius-pill);background:var(--brand-orange);color:#fff;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;inset-inline-end:calc(50% - 22px)}.c-tabbar__badge--danger{background:var(--danger)}.c-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--touch);padding:0 var(--space-5);border-radius:var(--radius-pill);font-weight:500;font-size:var(--fs-body);text-align:center;display:inline-flex}.c-btn--primary{background:var(--brand-blue);color:var(--ink-on-blue)}.c-btn--primary:active{background:var(--brand-blue-deep)}.c-btn--ghost{border:1.5px solid var(--border-input);color:var(--ink);background:var(--surface-card)}.c-btn--danger{background:var(--danger);color:#fff}.c-btn--soft{background:var(--brand-blue-soft);color:var(--brand-blue)}.c-btn--block{width:100%;display:flex}.c-btn--small{min-height:36px;padding:0 var(--space-4);font-size:var(--fs-small)}.c-btn[disabled],.c-btn.is-disabled{opacity:.45;pointer-events:none}.c-btn.is-loading{color:#0000;pointer-events:none;position:relative}.c-btn.is-loading:after{content:"";border:2.5px solid #fff6;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite c-spin;position:absolute}.c-btn--ghost.is-loading:after{border-color:#1c213040;border-top-color:var(--ink)}@keyframes c-spin{to{transform:rotate(360deg)}}.c-card{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--space-4)}.c-card--flush{padding:0;overflow:hidden}.c-card__title{font-size:var(--fs-small);color:var(--ink-soft);margin-bottom:var(--space-3);font-weight:700}.c-list>*{border-bottom:1px solid var(--border)}.c-list>:last-child{border-bottom:none}.c-list-item{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);min-height:var(--touch);color:inherit;display:flex}.c-list-item__main{flex:1;min-width:0}.c-list-item__title{font-weight:500}.c-list-item__sub{font-size:var(--fs-small);color:var(--ink-soft)}.c-list-item__end{text-align:left;flex:none;margin-inline-start:auto}.c-list-item.is-selected{background:var(--selected)}.c-kv{justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;display:flex}.c-kv dt{color:var(--ink-soft)}.c-kv dd{margin:0;font-weight:500}.c-divider{border:none;border-top:1px solid var(--border);margin:var(--space-3) 0}.c-avatar{background:var(--brand-blue-soft);width:40px;height:40px;color:var(--brand-blue);font-weight:700;font-size:var(--fs-small);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.c-chip{border-radius:var(--radius-pill);font-size:var(--fs-tiny);white-space:nowrap;align-items:center;gap:4px;padding:3px 10px;font-weight:500;display:inline-flex}.c-chip--done{background:var(--status-done-bg);color:var(--status-done-text)}.c-chip--student-cancel{background:var(--status-student-cancel-bg);color:var(--status-student-cancel-text)}.c-chip--teacher-cancel{background:var(--status-teacher-cancel-bg);color:var(--status-teacher-cancel-text)}.c-chip--holiday{background:var(--status-holiday-bg);color:var(--status-holiday-text)}.c-chip--moved{background:var(--status-moved-bg);color:var(--status-moved-text)}.c-chip--amuta{background:var(--target-amuta-bg);color:var(--target-amuta-text)}.c-chip--private{background:var(--target-private-bg);color:var(--target-private-text)}.c-chip--cash{background:var(--target-cash-bg);color:var(--target-cash-text)}.c-chip--neutral{background:var(--surface-sunken);color:var(--ink-soft)}.c-chip--success{background:var(--success-bg);color:var(--success)}.c-chip--danger{background:var(--danger-bg);color:var(--danger)}.c-lesson{gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface-card);text-align:start;flex-direction:column;width:100%;display:flex}.c-lesson__row{align-items:center;gap:var(--space-3);min-height:40px;display:flex}.c-lesson__time{font-family:var(--font-display);font-size:var(--fs-section);font-variant-numeric:tabular-nums;min-width:48px}.c-lesson__main{flex:1;min-width:0}.c-lesson__name{font-weight:500;display:block}.c-lesson__meta{font-size:var(--fs-tiny);color:var(--ink-soft);gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.c-lesson__more{color:var(--status-moved-text);font-size:var(--fs-small);flex:none;align-items:center;min-height:40px;margin-inline-start:auto;font-weight:500;display:inline-flex}.c-report{gap:var(--space-2);grid-template-columns:repeat(4,1fr);display:grid}.c-report__btn{min-height:var(--touch);border-radius:var(--radius-pill);font-size:var(--fs-small);flex-direction:column;justify-content:center;align-items:center;padding:4px 2px;font-weight:500;line-height:1.15;display:inline-flex}.c-report__btn small{opacity:.75;font-size:10px;font-weight:700}.c-report__btn--done{background:var(--status-done-chip);color:var(--status-done-text)}.c-report__btn--student-cancel{background:var(--status-student-cancel-chip);color:var(--status-student-cancel-text)}.c-report__btn--teacher-cancel{background:var(--status-teacher-cancel-chip);color:var(--status-teacher-cancel-text)}.c-report__btn--holiday{background:var(--status-holiday-chip);color:var(--status-holiday-text)}.c-lesson__status{align-items:center;gap:var(--space-2);font-size:var(--fs-small);font-weight:700;display:none}.c-lesson__status svg{width:18px;height:18px}.c-lesson__change{font-weight:500;font-size:var(--fs-small);color:var(--brand-blue);margin-inline-start:auto}.c-lesson[data-status] .c-report,.c-lesson[data-status] .c-lesson__more{display:none}.c-lesson[data-status] .c-lesson__status{display:flex}.c-lesson[data-status=done]{background:var(--status-done-bg)}.c-lesson[data-status=done] .c-lesson__status{color:var(--status-done-text)}.c-lesson[data-status=done] .c-lesson__status:before{content:"בוצע"}.c-lesson[data-status=student-cancel]{background:var(--status-student-cancel-bg)}.c-lesson[data-status=student-cancel] .c-lesson__status{color:var(--status-student-cancel-text)}.c-lesson[data-status=student-cancel] .c-lesson__status:before{content:"התלמיד ביטל · חיוב מלא"}.c-lesson[data-status=teacher-cancel]{background:var(--status-teacher-cancel-bg)}.c-lesson[data-status=teacher-cancel] .c-lesson__status{color:var(--status-teacher-cancel-text)}.c-lesson[data-status=teacher-cancel] .c-lesson__status:before{content:"אתה ביטלת · יקוזז בסיכום החודש"}.c-lesson[data-status=holiday]{background:var(--status-holiday-bg)}.c-lesson[data-status=holiday] .c-lesson__status{color:var(--status-holiday-text)}.c-lesson[data-status=holiday] .c-lesson__status:before{content:"חג / מלחמה · לא נספר"}.c-lesson[data-status=moved]{background:var(--status-moved-bg)}.c-lesson[data-status=moved] .c-lesson__status{color:var(--status-moved-text)}.c-lesson[data-status=moved] .c-lesson__status:before{content:"הוזז · ממתין להכרעה"}.c-lesson--compact .c-report,.c-lesson--compact .c-lesson__more{display:none}.c-layer{z-index:40;display:none;position:absolute;inset:0}.c-layer.is-open{display:block}.c-backdrop{background:#10142e73;position:absolute;inset:0}.c-sheet{bottom:0;background:var(--surface-card);border-radius:var(--radius-card) var(--radius-card) 0 0;box-shadow:var(--shadow-sheet);padding:var(--space-3) var(--space-4) calc(var(--space-5) + env(safe-area-inset-bottom,0px));gap:var(--space-3);flex-direction:column;display:flex;position:absolute;inset-inline:0}.c-sheet__handle{background:var(--border);border-radius:2px;width:36px;height:4px;margin:0 auto}.c-sheet__title{font-size:var(--fs-section);font-weight:700}.c-modal{top:50%;inset-inline:var(--space-4);background:var(--surface-card);border-radius:var(--radius-card);box-shadow:var(--shadow-sheet);padding:var(--space-5);gap:var(--space-4);flex-direction:column;display:flex;position:absolute;transform:translateY(-50%)}.c-statusbtn{align-items:center;gap:var(--space-3);width:100%;min-height:56px;padding:0 var(--space-4);border-radius:var(--radius-btn);font-size:var(--fs-body);text-align:start;font-weight:500;display:flex}.c-statusbtn small{font-size:var(--fs-tiny);opacity:.85;margin-inline-start:auto;font-weight:400}.c-statusbtn--done{background:var(--status-done-bg);color:var(--status-done-text)}.c-statusbtn--student-cancel{background:var(--status-student-cancel-bg);color:var(--status-student-cancel-text)}.c-statusbtn--teacher-cancel{background:var(--status-teacher-cancel-bg);color:var(--status-teacher-cancel-text)}.c-statusbtn--holiday{background:var(--status-holiday-bg);color:var(--status-holiday-text)}.c-statusbtn--moved{border:1.5px dashed var(--status-moved-text);color:var(--status-moved-text);min-height:var(--touch);background:0 0}.c-toast{bottom:calc(var(--tabbar-h) + var(--space-4));inset-inline:var(--space-4);z-index:60;background:var(--ink);color:#fff;border-radius:var(--radius-btn);padding:var(--space-3) var(--space-4);font-size:var(--fs-small);align-items:center;gap:var(--space-3);opacity:0;transition:opacity .2s,transform .2s;display:flex;position:absolute;transform:translateY(8px)}.c-toast.is-visible{opacity:1;transform:none}.c-toast a,.c-toast button{color:#ffb38a;margin-inline-start:auto;font-weight:700}.c-banner{gap:var(--space-3);border-radius:var(--radius-btn);padding:var(--space-3) var(--space-4);font-size:var(--fs-small);align-items:flex-start;display:flex}.c-banner svg{flex:none;width:20px;height:20px;margin-top:2px}.c-banner--info{background:var(--info-bg);color:var(--info-text)}.c-banner--success{background:var(--success-bg);color:var(--success)}.c-banner--warning{background:var(--warning-bg);color:var(--warning-text)}.c-banner--danger{background:var(--danger-bg);color:var(--danger)}.c-banner__action{white-space:nowrap;align-self:center;margin-inline-start:auto;font-weight:700}.c-tabs{gap:var(--space-1);background:var(--surface-sunken);border-radius:var(--radius-pill);padding:var(--space-1);display:flex}.c-tabs__tab{border-radius:var(--radius-pill);min-height:38px;font-size:var(--fs-small);color:var(--ink-soft);flex:1;justify-content:center;align-items:center;font-weight:500;display:inline-flex}.c-tabs__tab.is-active{background:var(--surface-card);color:var(--brand-blue);box-shadow:var(--shadow-card);font-weight:700}.c-tabpanel{display:none}.c-tabpanel.is-active{display:block}.c-field{gap:var(--space-1);flex-direction:column;display:flex}.c-field__label{font-size:var(--fs-small);font-weight:500}.c-field__hint{font-size:var(--fs-tiny);color:var(--ink-soft)}.c-field input,.c-field select,.c-field textarea{min-height:var(--touch);border:1.5px solid var(--border-input);border-radius:var(--radius-btn);padding:0 var(--space-3);background:var(--surface-card);width:100%;font-size:16px}.c-field textarea{padding:var(--space-3)}.c-check{gap:var(--space-3);font-size:var(--fs-small);align-items:flex-start;display:flex}.c-check input{width:20px;height:20px;accent-color:var(--brand-blue);flex:none;margin-top:2px}.c-choice{gap:var(--space-2);display:flex}.c-choice__opt{min-height:var(--touch);border:1.5px solid var(--border-input);border-radius:var(--radius-btn);font-size:var(--fs-small);flex:1;justify-content:center;align-items:center;font-weight:500;display:inline-flex}.c-choice__opt.is-active{border-color:var(--brand-blue);background:var(--brand-blue-soft);color:var(--brand-blue);font-weight:700}.c-toggle{flex:none;width:46px;height:28px;display:inline-block;position:relative}.c-toggle input{opacity:0;width:0;height:0}.c-toggle span{border-radius:var(--radius-pill);background:var(--border);transition:background .15s;position:absolute;inset:0}.c-toggle span:before{content:"";top:3px;background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .15s;position:absolute;inset-inline-start:3px;box-shadow:0 1px 3px #00000040}.c-toggle input:checked+span{background:var(--brand-blue)}.c-toggle input:checked+span:before{transform:translate(-18px)}.c-search{position:relative}.c-search input{width:100%;min-height:var(--touch);border:1.5px solid var(--border-input);border-radius:var(--radius-pill);padding:0 44px 0 var(--space-4);background:var(--surface-card)}.c-search svg{top:50%;width:20px;height:20px;color:var(--ink-soft);position:absolute;inset-inline-end:14px;transform:translateY(-50%)}.c-progress{background:var(--surface-sunken);border-radius:4px;height:8px;overflow:hidden}.c-progress__fill{background:var(--brand-orange);border-radius:4px;height:100%}.c-progress--blue .c-progress__fill{background:var(--brand-blue)}.c-money{font-variant-numeric:tabular-nums;white-space:nowrap;unicode-bidi:isolate;font-weight:700}.c-money--hero{font-size:var(--fs-money-hero);line-height:1.1}.c-money--pos{color:var(--success)}.c-money--neg{color:var(--danger)}.c-stat{flex-direction:column;gap:2px;display:flex}.c-stat__label{font-size:var(--fs-tiny);color:var(--ink-soft);font-weight:500}.c-stat__value{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:24px}.c-stat__sub{font-size:var(--fs-tiny);color:var(--ink-soft)}.c-bars{align-items:flex-end;gap:var(--space-2);height:120px;display:flex}.c-bars__col{align-items:center;gap:var(--space-1);flex-direction:column;flex:1;justify-content:flex-end;height:100%;display:flex}.c-bars__stack{border-radius:4px 4px 0 0;flex-direction:column-reverse;width:100%;max-width:26px;display:flex;overflow:hidden}.c-bars__seg{width:100%}.c-bars__seg--a{background:var(--brand-blue)}.c-bars__seg--b{background:var(--brand-orange)}.c-bars__seg--c{background:#8a93e8}.c-bars__label{font-size:var(--fs-tiny);color:var(--ink-soft)}.h-5{height:5%}.h-10{height:10%}.h-15{height:15%}.h-20{height:20%}.h-25{height:25%}.h-30{height:30%}.h-35{height:35%}.h-40{height:40%}.h-45{height:45%}.h-50{height:50%}.h-55{height:55%}.h-60{height:60%}.h-65{height:65%}.h-70{height:70%}.h-75{height:75%}.h-80{height:80%}.h-85{height:85%}.h-90{height:90%}.h-95{height:95%}.h-100{height:100%}.c-legend{gap:var(--space-4);font-size:var(--fs-tiny);color:var(--ink-soft);flex-wrap:wrap;display:flex}.c-legend__item{align-items:center;gap:6px;display:inline-flex}.c-legend__dot{border-radius:3px;flex:none;width:10px;height:10px}.c-empty{justify-content:center;align-items:center;gap:var(--space-4);text-align:center;padding:var(--space-6) var(--space-5);flex-direction:column;flex:1;display:flex}.c-empty svg{width:160px;height:auto}.c-empty__text{color:var(--ink-soft);max-width:260px}.c-step{gap:var(--space-3);padding:var(--space-3) 0;align-items:flex-start;display:flex}.c-step__num{background:var(--brand-blue);color:#fff;width:28px;height:28px;font-weight:700;font-size:var(--fs-small);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.c-wa{background:#e5ddd5;flex-direction:column;flex:1;display:flex}.c-wa__header{color:#fff;padding:calc(env(safe-area-inset-top,0px) + var(--space-3)) var(--space-4) var(--space-3);align-items:center;gap:var(--space-3);z-index:20;background:#075e54;display:flex;position:sticky;top:0}.c-wa__header .c-avatar{background:#fff}.c-wa__name{font-weight:700}.c-wa__status{font-size:var(--fs-tiny);opacity:.8}.c-wa__day{margin:var(--space-3) 0;color:var(--ink-soft);font-size:var(--fs-tiny);border-radius:var(--radius-pill);background:#ffffffd9;align-self:center;padding:4px 12px}.c-wa__body{padding:var(--space-3) var(--space-4);gap:var(--space-3);flex-direction:column;flex:1;display:flex}.c-wa__bubble{padding:var(--space-2) var(--space-3);max-width:85%;font-size:var(--fs-small);white-space:pre-line;background:#fff;border-radius:10px;align-self:flex-start;line-height:1.5;box-shadow:0 1px 1px #00000014}.c-wa__bubble--out{background:#dcf8c6;align-self:flex-end}.c-wa__time{text-align:left;color:var(--ink-soft);margin-top:4px;font-size:10px;display:block}.c-wa__btn{margin-top:var(--space-2);padding-top:var(--space-2);color:#1b8cff;text-align:center;border-top:1px solid #00000014;font-weight:500;display:block}.c-table{overflow-x:auto}.c-table table{border-collapse:collapse;width:100%;font-family:var(--font-system);font-size:var(--fs-tiny)}.c-table th,.c-table td{text-align:right;white-space:nowrap;border:1px solid #d5d2ca;padding:4px 8px}.c-table th{background:var(--surface-sunken);font-weight:700}.c-table .cell--done{background:var(--status-done-bg)}.c-table .cell--student-cancel{background:var(--status-student-cancel-bg)}.c-table .cell--teacher-cancel{background:var(--status-teacher-cancel-bg)}.c-table .cell--holiday{background:var(--status-holiday-bg)}.c-table .cell--moved{background:var(--status-moved-bg)}.c-pubhead{align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4) var(--space-4);text-align:center;flex-direction:column;display:flex}.c-pubhead img{width:130px}.c-ribbon{z-index:30;background:var(--warning-bg);color:var(--warning-text);font-size:var(--fs-tiny);letter-spacing:.04em;text-align:center;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);flex:none;font-weight:700;display:block}.c-stub{justify-content:center;align-items:center;gap:var(--space-3);text-align:center;padding:var(--space-5);flex-direction:column;flex:1;display:flex}.c-stub h1{font-size:var(--fs-title)}.c-stub__id{color:var(--ink-soft);font-size:var(--fs-small)}.c-btn--google{background:var(--surface-card);border:1.5px solid var(--border-input);color:var(--ink);gap:var(--space-3);font-weight:700}.c-btn--google img{flex:none;width:20px;height:20px}.c-gacct{align-items:center;gap:var(--space-3);width:100%;min-height:var(--touch);padding:var(--space-3);border-radius:var(--radius-btn);border:1.5px solid var(--border);background:var(--surface-card);text-align:start;display:flex}.c-gacct:hover{border-color:var(--brand-blue)}.c-gacct__av{background:var(--brand-blue-soft);width:38px;height:38px;color:var(--brand-blue);font-weight:700;font-size:var(--fs-small);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.c-gacct__body{flex:1;min-width:0}.c-gacct__name{font-weight:500}.c-gacct__mail{font-size:var(--fs-small);color:var(--ink-soft)}.c-instpick{gap:var(--space-2);grid-template-columns:repeat(4,1fr);display:grid}.c-instpick__opt{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-1);border-radius:var(--radius-btn);background:var(--surface-sunken);min-height:72px;font-size:var(--fs-tiny);color:var(--ink-soft);border:2px solid #0000;flex-direction:column;font-weight:500;display:flex}.c-instpick__opt svg{flex:none}.c-instpick__opt.is-active{border-color:var(--brand-blue);box-shadow:var(--shadow-card);font-weight:700}.c-instpick__opt.is-muted{opacity:.55}.c-instbadge{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-card);display:flex}.c-instbadge__art{border-radius:var(--radius-btn);background:var(--surface-card);flex:none;justify-content:center;align-items:center;width:60px;height:60px;display:inline-flex}.c-instbadge__body{min-width:0}.c-instbadge__name{font-family:var(--font-display);font-size:var(--fs-section)}.c-instbadge__sub{font-size:var(--fs-small);opacity:.85}.i-violin{background:var(--inst-violin-bg);color:var(--inst-violin-ink)}.i-cello{background:var(--inst-cello-bg);color:var(--inst-cello-ink)}.i-guitar{background:var(--inst-guitar-bg);color:var(--inst-guitar-ink)}.i-piano{background:var(--inst-piano-bg);color:var(--inst-piano-ink)}.i-clarinet{background:var(--inst-clarinet-bg);color:var(--inst-clarinet-ink)}.i-sax{background:var(--inst-sax-bg);color:var(--inst-sax-ink)}.i-trumpet{background:var(--inst-trumpet-bg);color:var(--inst-trumpet-ink)}.i-flute{background:var(--inst-flute-bg);color:var(--inst-flute-ink)}.screen.c-bg--notes{background-color:var(--surface-page);background-image:linear-gradient(to bottom, var(--staff-line) 0 1.5px, transparent 1.5px 11px, var(--staff-line) 11px 12.5px, transparent 12.5px 22px, var(--staff-line) 22px 23.5px, transparent 23.5px 33px, var(--staff-line) 33px 34.5px, transparent 34.5px 44px, var(--staff-line) 44px 45.5px, transparent 45.5px 88px);background-repeat:repeat-y;background-size:100% 88px}.c-poster{background:var(--brand-blue);color:var(--ink-on-blue);padding:var(--space-5) var(--space-4) var(--space-6);gap:var(--space-2);flex-direction:column;flex:none;display:flex;position:relative;overflow:hidden}.c-poster__logo{width:150px}.c-poster h1{font-family:var(--font-display);font-size:var(--fs-hero);font-weight:400;line-height:1.25}.c-poster p{font-size:var(--fs-small);opacity:.86;max-width:26ch}.c-poster__note{inset-inline-end:-18px;color:var(--brand-orange);opacity:.9;pointer-events:none;position:absolute;top:-10px}.c-poster__rule{background:var(--brand-orange);flex:none;height:4px}.c-photo{background:var(--brand-blue-deep);flex:none;height:210px;position:relative;overflow:hidden}.c-photo__ph{z-index:2;pointer-events:none;justify-content:center;align-items:center;gap:var(--space-2);padding-bottom:var(--space-6);text-align:center;color:var(--ink-on-blue);flex-direction:column;display:flex;position:absolute;inset:0}.c-photo__ph:after{content:"";inset:var(--space-3);border-radius:var(--radius-btn);opacity:.45;border:1.5px dashed;position:absolute}.c-photo__scrim{background:linear-gradient(to bottom, var(--scrim-top), var(--scrim-bottom));position:absolute;inset:0}.c-photo__text{inset-inline:0;padding:var(--space-4);color:var(--ink-on-blue);gap:var(--space-1);flex-direction:column;display:flex;position:absolute;bottom:0}.c-photo__text h1{font-family:var(--font-display);font-size:var(--fs-hero);font-weight:400;line-height:1.25}.c-photo__text p{font-size:var(--fs-small);opacity:.9}.c-photo__logo{top:var(--space-4);width:118px;position:absolute;inset-inline-start:var(--space-4)}.c-photo__tag{top:var(--space-4);background:var(--warning-bg);color:var(--warning-text);font-size:var(--fs-tiny);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-weight:700;position:absolute;inset-inline-end:var(--space-4)}.c-lift{margin-top:calc(var(--space-5) * -1)}@media (min-width:640px){.c-body{width:100%;max-width:var(--content-max);padding-inline:var(--space-5);margin-inline:auto}.screen:has(>.c-tabbar) .c-body{max-width:var(--content-max-admin)}.c-btn--block{max-width:var(--content-max)}.c-poster,.c-pubhead{padding-inline:max(var(--space-4), calc((100% - var(--content-max)) / 2 + var(--space-5)))}.c-poster p{max-width:none}}@media (min-width:1024px){.screen:has(>.c-tabbar){grid-template-columns:var(--rail-w) minmax(0, 1fr);grid-template-rows:auto minmax(0,1fr);display:grid}.screen:has(>.c-tabbar)>.c-appbar{padding-inline:max(var(--space-5), calc((100% - var(--content-max-wide)) / 2 + var(--space-5)));grid-area:1/2}.screen:has(>.c-tabbar)>.c-tabbar{align-self:start;gap:var(--space-1);height:100dvh;padding:var(--space-4) var(--space-3);border-top:none;border-inline-end:1px solid var(--border);flex-direction:column;grid-area:1/1/-1;margin-top:0;display:flex;position:sticky;top:0}.screen:has(>.c-tabbar)>.c-tabbar .c-tabbar__item{justify-content:flex-start;gap:var(--space-3);min-height:var(--touch);padding:var(--space-2) var(--space-3);font-size:var(--fs-body);border-radius:var(--radius-btn);flex-direction:row}.screen:has(>.c-tabbar)>.c-tabbar .c-tabbar__item.is-active:before{top:var(--space-2);bottom:var(--space-2);border-radius:3px;width:3px;height:auto;inset-inline-start:0}.screen:has(>.c-tabbar)>.c-tabbar .c-tabbar__badge{top:50%;inset-inline-end:var(--space-3);transform:translateY(-50%)}.screen:has(>.c-tabbar) .c-body{max-width:var(--content-max-wide);padding-bottom:var(--space-6);grid-area:2/2;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));align-content:start;align-items:start;display:grid}.screen:has(>.c-tabbar) .c-body>.c-banner{grid-column:1/-1}.screen:has(>.c-tabbar) .c-body>.c-toast{grid-column:1/-1}.screen:has(>.c-tabbar) .c-body>.f-sechead{grid-column:1/-1}.screen:has(>.c-tabbar) .c-body>.c-btn{grid-column:1/-1}.screen:has(>.c-tabbar) .c-body>p{grid-column:1/-1}:is(.screen:has(>.c-tabbar) .c-body:has(>form),.screen:has(>.c-tabbar) .c-body:has(>.c-empty)){grid-template-columns:none;align-items:stretch;display:flex}:is(.screen:has(>.c-tabbar) .c-body>form,.screen:has(>.c-tabbar) .c-body:has(>form)>p){max-width:var(--content-max)}}
