html[data-app-theme]{color-scheme:light;--teach-green-deep: var(--teach-action-soft-text);--teach-green-dark: var(--teach-action-soft-text)}html[data-app-theme=bloomli]{--action-control-bg: #e1efe5;--action-control-text: #236c58;--action-control-border: #c3ddca;--action-control-hover-bg: #d5e7dc;--selection-control-bg: #38816c;--selection-control-text: #fffdf8;--selection-control-border: #38816c;--bg: #f7efe2;--panel: rgba(255, 253, 248, .9);--panel-strong: #fffdf8;--line: rgba(23, 60, 51, .14);--text: #173c33;--muted: #607068;--blue: #3f7f91;--green: #2e8068;--rose: #d85f4b;--body-glow-a: rgba(240, 111, 88, .09);--body-glow-b: rgba(46, 128, 104, .11);--surface-page: rgba(247, 239, 226, .94);--surface-panel: rgba(255, 253, 248, .82);--surface-panel-strong: rgba(255, 253, 248, .97);--surface-card: rgba(255, 253, 248, .91);--surface-input: rgba(255, 254, 251, .96);--surface-grid: rgba(233, 242, 235, .72);--surface-slot: rgba(255, 253, 248, .66);--surface-popover: rgba(255, 253, 248, .99);--surface-muted-band: rgba(46, 128, 104, .07);--surface-sheet: #fffdf8;--surface-sheet-muted: #f4ecdf;--shadow-panel: 0 2px 8px rgba(36, 64, 54, .1);--shadow: var(--shadow-panel);--mgmt-blue: #3f7f91;--mgmt-blue-soft: #e3f0f2;--mgmt-blue-mid: #c3dfe4;--teach-green: #2e8068;--teach-green-soft: #e1efe5;--teach-green-mid: #c3ddca;--teach-action-solid-text: #fffdf8;--teach-action-soft-text: #236c58;--app-action-text: #185d4e;--app-success-text: #236c48;--app-action-icon-bg: rgba(46, 128, 104, .11);--app-brand-shadow: 0 2px 8px rgba(24, 93, 78, .18);--overview-blue-bg: linear-gradient(145deg, #edf7f8, #fffdf8);--overview-green-bg: linear-gradient(145deg, #edf7ef, #fffdf8);--overview-rose-bg: linear-gradient(145deg, #fff0eb, #fffdf8);--overview-indigo-bg: linear-gradient(145deg, #f4f2fa, #fffdf8);--overview-rose-border: rgba(240, 111, 88, .22);--overview-indigo-border: rgba(93, 95, 154, .16);--app-sidebar-bg: linear-gradient(180deg, #f3eadb, #eadfce);--app-sidebar-border: rgba(23, 60, 51, .14);--app-sidebar-text: #173c33;--nav-text: #3f5b52;--nav-hover-bg: rgba(255, 253, 248, .76);--nav-management-bg: linear-gradient(180deg, rgba(227, 240, 242, .76), rgba(255, 253, 248, .48));--nav-teaching-bg: linear-gradient(180deg, rgba(225, 239, 229, .82), rgba(255, 253, 248, .48));--home-hero-bg: linear-gradient(118deg, #fffdf8 0%, #fffaf1 55%, #f1e5d3 100%);--home-flower-opacity: .58}html[data-app-theme=default]{--bg: #f5f5f7;--panel: rgba(255, 255, 255, .76);--panel-strong: rgba(255, 255, 255, .96);--line: rgba(29, 29, 31, .1);--text: #1d1d1f;--muted: #6e6e73;--blue: #0a84ff;--green: #16843f;--rose: #c73752;--body-glow-a: rgba(10, 132, 255, .14);--body-glow-b: rgba(47, 97, 122, .12);--surface-page: rgba(245, 245, 247, .86);--surface-panel: rgba(255, 255, 255, .84);--surface-panel-strong: rgba(255, 255, 255, .96);--surface-card: rgba(255, 255, 255, .9);--surface-input: rgba(255, 255, 255, .92);--surface-grid: rgba(255, 255, 255, .82);--surface-slot: rgba(255, 255, 255, .62);--surface-popover: rgba(255, 255, 255, .97);--surface-muted-band: rgba(47, 97, 122, .06);--surface-sheet: #ffffff;--surface-sheet-muted: #f8fafc;--shadow-panel: 0 2px 8px rgba(30, 42, 58, .08);--shadow: var(--shadow-panel);--mgmt-blue: #0868c7;--mgmt-blue-soft: #eaf4ff;--mgmt-blue-mid: #cfe6ff;--teach-green: #2f617a;--teach-green-soft: #e7f0f4;--teach-green-mid: #c6d8e1;--teach-action-solid-text: #ffffff;--teach-action-soft-text: #26566d;--app-action-text: #0757ad;--app-success-text: #14743a;--app-action-icon-bg: rgba(10, 132, 255, .1);--app-brand-shadow: 0 2px 8px rgba(10, 132, 255, .18);--overview-blue-bg: linear-gradient(145deg, #f2f8ff, #ffffff);--overview-green-bg: linear-gradient(145deg, #f1fbf5, #ffffff);--overview-rose-bg: linear-gradient(145deg, #fff1f4, #ffffff);--overview-indigo-bg: linear-gradient(145deg, #f3f5ff, #ffffff);--overview-rose-border: rgba(199, 55, 82, .18);--overview-indigo-border: rgba(99, 102, 241, .18);--app-sidebar-bg: rgba(255, 255, 255, .84);--app-sidebar-border: var(--line);--app-sidebar-text: var(--text);--nav-text: #40546a;--nav-hover-bg: rgba(255, 255, 255, .72);--nav-management-bg: linear-gradient(180deg, rgba(234, 244, 255, .9), rgba(255, 255, 255, .6));--nav-teaching-bg: linear-gradient(180deg, rgba(231, 240, 244, .94), rgba(255, 255, 255, .62));--home-hero-bg: linear-gradient(118deg, #ffffff 0%, #f8fbfd 58%, #eaf4ff 100%);--home-flower-opacity: .56}html[data-app-theme=warm-paper]{--bg: #f3eee6;--panel: rgba(255, 253, 248, .82);--panel-strong: rgba(255, 253, 248, .97);--line: rgba(83, 62, 38, .13);--text: #2d2720;--muted: #74695d;--blue: #2f66d0;--green: #237a57;--rose: #b6415a;--body-glow-a: rgba(155, 91, 23, .1);--body-glow-b: rgba(35, 122, 87, .1);--surface-page: rgba(243, 235, 223, .9);--surface-panel: rgba(255, 251, 244, .78);--surface-panel-strong: rgba(255, 250, 241, .94);--surface-card: rgba(255, 249, 239, .88);--surface-input: rgba(255, 252, 247, .9);--surface-grid: rgba(250, 242, 230, .74);--surface-slot: rgba(255, 250, 242, .54);--surface-popover: rgba(255, 252, 247, .98);--surface-muted-band: rgba(117, 86, 49, .06);--surface-sheet: #fffaf1;--surface-sheet-muted: #f2ead7;--shadow-panel: 0 2px 8px rgba(54, 44, 34, .09);--shadow: var(--shadow-panel);--mgmt-blue: #2f66d0;--mgmt-blue-soft: #e8efff;--mgmt-blue-mid: #cbd9ff;--teach-green: #6b5a32;--teach-green-soft: #f2ead7;--teach-green-mid: #dacda9;--teach-action-solid-text: #fffdf8;--teach-action-soft-text: #5f4e2a;--app-action-text: #255bbf;--app-success-text: #237a57;--app-action-icon-bg: rgba(47, 102, 208, .1);--app-brand-shadow: 0 2px 8px rgba(47, 102, 208, .16);--overview-blue-bg: linear-gradient(145deg, #f3f7ff, #fffdf8);--overview-green-bg: linear-gradient(145deg, #f1faf4, #fffdf8);--overview-rose-bg: linear-gradient(145deg, #fff1f4, #fffdf8);--overview-indigo-bg: linear-gradient(145deg, #f7f4ff, #fffdf8);--overview-rose-border: rgba(182, 65, 90, .18);--overview-indigo-border: rgba(47, 102, 208, .18);--app-sidebar-bg: linear-gradient(180deg, #eee4d3, #eadfce);--app-sidebar-border: rgba(100, 75, 43, .16);--app-sidebar-text: #2d2720;--nav-text: #584c40;--nav-hover-bg: rgba(255, 253, 248, .72);--nav-management-bg: linear-gradient(180deg, rgba(232, 239, 255, .58), rgba(255, 253, 248, .42));--nav-teaching-bg: linear-gradient(180deg, rgba(232, 244, 236, .68), rgba(255, 253, 248, .42));--home-hero-bg: linear-gradient(118deg, #fffaf1 0%, #fff7eb 58%, #eee3d3 100%);--home-flower-opacity: .56}html[data-app-theme=sand-teal]{--bg: #deebe4;--panel: rgba(248, 253, 250, .9);--panel-strong: #f7fcf9;--line: rgba(20, 76, 58, .16);--text: #173f32;--muted: #5b746a;--blue: #287b78;--green: #216c49;--rose: #ad4f5d;--body-glow-a: rgba(40, 123, 120, .12);--body-glow-b: rgba(64, 137, 91, .14);--surface-page: rgba(222, 235, 228, .94);--surface-panel: rgba(247, 252, 249, .86);--surface-panel-strong: rgba(249, 253, 251, .98);--surface-card: rgba(250, 254, 252, .94);--surface-input: rgba(253, 255, 254, .98);--surface-grid: rgba(220, 239, 228, .76);--surface-slot: rgba(247, 252, 249, .74);--surface-popover: #f9fdfb;--surface-muted-band: rgba(33, 108, 73, .08);--surface-sheet: #f7fcf9;--surface-sheet-muted: #e8f3ed;--shadow-panel: 0 2px 8px rgba(24, 74, 58, .11);--shadow: var(--shadow-panel);--mgmt-blue: #287b78;--mgmt-blue-soft: #dff1ee;--mgmt-blue-mid: #b9ddd7;--teach-green: #216c63;--teach-green-soft: #dff0ec;--teach-green-mid: #b9ddd7;--teach-action-solid-text: #f9fdfb;--teach-action-soft-text: #1d5e57;--app-action-text: #216965;--app-success-text: #1d6543;--app-action-icon-bg: rgba(40, 123, 120, .12);--app-brand-shadow: 0 2px 8px rgba(24, 94, 70, .18);--overview-blue-bg: linear-gradient(145deg, #e4f3f1, #fbfffd);--overview-green-bg: linear-gradient(145deg, #e5f3e9, #fbfffd);--overview-rose-bg: linear-gradient(145deg, #f9ebec, #fbfffd);--overview-indigo-bg: linear-gradient(145deg, #e9f1ef, #fbfffd);--overview-rose-border: rgba(175, 73, 84, .18);--overview-indigo-border: rgba(40, 123, 120, .16);--app-sidebar-bg: linear-gradient(180deg, #bad7c6, #a8c9b5);--app-sidebar-border: rgba(20, 76, 58, .2);--app-sidebar-text: #173f32;--nav-text: #315e4d;--nav-hover-bg: rgba(248, 253, 250, .72);--nav-management-bg: linear-gradient(180deg, rgba(214, 238, 234, .8), rgba(248, 253, 250, .44));--nav-teaching-bg: linear-gradient(180deg, rgba(216, 239, 224, .86), rgba(248, 253, 250, .44));--home-hero-bg: linear-gradient(118deg, #f9fdfb 0%, #eef8f2 58%, #c9e1d2 100%);--home-flower-opacity: .62}html[data-app-theme=rose-quartz]{--bg: #f7eef0;--panel: rgba(255, 255, 255, .84);--panel-strong: rgba(255, 255, 255, .97);--line: rgba(94, 48, 61, .12);--text: #30242a;--muted: #776770;--blue: #4666c8;--green: #2d7b61;--rose: #b54062;--body-glow-a: rgba(181, 64, 98, .11);--body-glow-b: rgba(70, 102, 200, .1);--surface-page: rgba(247, 236, 240, .9);--surface-panel: rgba(255, 248, 251, .78);--surface-panel-strong: rgba(255, 248, 251, .94);--surface-card: rgba(255, 249, 252, .88);--surface-input: rgba(255, 251, 253, .9);--surface-grid: rgba(249, 238, 244, .74);--surface-slot: rgba(255, 250, 253, .52);--surface-popover: rgba(255, 251, 253, .98);--surface-muted-band: rgba(181, 64, 98, .06);--surface-sheet: #fff8fb;--surface-sheet-muted: #f5e5ec;--shadow-panel: 0 2px 8px rgba(67, 37, 48, .09);--shadow: var(--shadow-panel);--mgmt-blue: #4666c8;--mgmt-blue-soft: #e9edff;--mgmt-blue-mid: #cfd7ff;--teach-green: #914461;--teach-green-soft: #f5e5ec;--teach-green-mid: #e3bfd0;--teach-action-solid-text: #fff9fc;--teach-action-soft-text: #7c3853;--app-action-text: #3f5fc1;--app-success-text: #2d7b61;--app-action-icon-bg: rgba(70, 102, 200, .1);--app-brand-shadow: 0 2px 8px rgba(181, 64, 98, .14);--overview-blue-bg: linear-gradient(145deg, #f4f6ff, #ffffff);--overview-green-bg: linear-gradient(145deg, #f3fbf7, #ffffff);--overview-rose-bg: linear-gradient(145deg, #fff4f7, #ffffff);--overview-indigo-bg: linear-gradient(145deg, #f8f5ff, #ffffff);--overview-rose-border: rgba(181, 64, 98, .17);--overview-indigo-border: rgba(70, 102, 200, .16);--app-sidebar-bg: linear-gradient(180deg, #f1dbe1, #efd5db);--app-sidebar-border: rgba(119, 55, 72, .16);--app-sidebar-text: #30242a;--nav-text: #604653;--nav-hover-bg: rgba(255, 255, 255, .74);--nav-management-bg: linear-gradient(180deg, rgba(233, 237, 255, .62), rgba(255, 255, 255, .42));--nav-teaching-bg: linear-gradient(180deg, rgba(228, 243, 237, .66), rgba(255, 255, 255, .42));--home-hero-bg: linear-gradient(118deg, #fff8fb 0%, #fff3f8 58%, #ead8e0 100%);--home-flower-opacity: .58}html[data-app-theme=lavender-bloom]{--bg: #eeeaf7;--panel: rgba(251, 249, 255, .9);--panel-strong: #fbf9ff;--line: rgba(67, 55, 104, .15);--text: #332d49;--muted: #746d86;--blue: #6067b8;--green: #34745b;--rose: #ad4f77;--body-glow-a: rgba(128, 95, 177, .13);--body-glow-b: rgba(52, 116, 91, .1);--surface-page: rgba(238, 234, 247, .94);--surface-panel: rgba(250, 248, 254, .88);--surface-panel-strong: rgba(252, 250, 255, .98);--surface-card: rgba(253, 251, 255, .94);--surface-input: rgba(255, 253, 255, .98);--surface-grid: rgba(239, 235, 248, .78);--surface-slot: rgba(251, 248, 255, .72);--surface-popover: #fcfaff;--surface-muted-band: rgba(96, 103, 184, .07);--surface-sheet: #fbf9ff;--surface-sheet-muted: #f0ebf8;--shadow-panel: 0 2px 8px rgba(60, 48, 92, .11);--shadow: var(--shadow-panel);--mgmt-blue: #555fad;--mgmt-blue-soft: #e7e8f8;--mgmt-blue-mid: #cdd0ed;--teach-green: #5f5798;--teach-green-soft: #ece9f7;--teach-green-mid: #d0cae9;--teach-action-solid-text: #fcfaff;--teach-action-soft-text: #514987;--app-action-text: #4e579f;--app-success-text: #2c684f;--app-action-icon-bg: rgba(85, 95, 173, .11);--app-brand-shadow: 0 2px 8px rgba(85, 95, 173, .16);--overview-blue-bg: linear-gradient(145deg, #ececfa, #fdfbff);--overview-green-bg: linear-gradient(145deg, #eaf4ef, #fdfbff);--overview-rose-bg: linear-gradient(145deg, #faedf3, #fdfbff);--overview-indigo-bg: linear-gradient(145deg, #eeeafa, #fdfbff);--overview-rose-border: rgba(173, 79, 119, .18);--overview-indigo-border: rgba(85, 95, 173, .18);--app-sidebar-bg: linear-gradient(180deg, #ddd5ec, #d3c8e5);--app-sidebar-border: rgba(67, 55, 104, .16);--app-sidebar-text: #332d49;--nav-text: #5e5574;--nav-hover-bg: rgba(252, 250, 255, .72);--nav-management-bg: linear-gradient(180deg, rgba(231, 232, 248, .76), rgba(252, 250, 255, .44));--nav-teaching-bg: linear-gradient(180deg, rgba(226, 240, 233, .76), rgba(252, 250, 255, .44));--home-hero-bg: linear-gradient(118deg, #fcfaff 0%, #f4effb 58%, #ddd1ec 100%);--home-flower-opacity: .58}html[data-app-theme=sky-blue]{--bg: #e5f0f6;--panel: rgba(248, 252, 255, .91);--panel-strong: #f8fcff;--line: rgba(30, 79, 104, .15);--text: #183b4a;--muted: #58727e;--blue: #286f9d;--green: #2f765f;--rose: #b7525e;--body-glow-a: rgba(40, 111, 157, .14);--body-glow-b: rgba(47, 118, 95, .1);--surface-page: rgba(229, 240, 246, .94);--surface-panel: rgba(248, 252, 255, .88);--surface-panel-strong: rgba(250, 253, 255, .98);--surface-card: rgba(251, 254, 255, .95);--surface-input: rgba(253, 255, 255, .98);--surface-grid: rgba(226, 240, 247, .8);--surface-slot: rgba(248, 252, 255, .74);--surface-popover: #fafdff;--surface-muted-band: rgba(40, 111, 157, .07);--surface-sheet: #f8fcff;--surface-sheet-muted: #e8f3f8;--shadow-panel: 0 2px 8px rgba(29, 72, 94, .11);--shadow: var(--shadow-panel);--mgmt-blue: #286f9d;--mgmt-blue-soft: #dceef7;--mgmt-blue-mid: #b9dbe9;--teach-green: #286f9d;--teach-green-soft: #e1eff6;--teach-green-mid: #bddbe9;--teach-action-solid-text: #fafdff;--teach-action-soft-text: #245f86;--app-action-text: #245f86;--app-success-text: #286a54;--app-action-icon-bg: rgba(40, 111, 157, .11);--app-brand-shadow: 0 2px 8px rgba(40, 111, 157, .17);--overview-blue-bg: linear-gradient(145deg, #e4f2f9, #fbfeff);--overview-green-bg: linear-gradient(145deg, #e7f4ee, #fbfeff);--overview-rose-bg: linear-gradient(145deg, #f9edef, #fbfeff);--overview-indigo-bg: linear-gradient(145deg, #e8eff8, #fbfeff);--overview-rose-border: rgba(183, 82, 94, .18);--overview-indigo-border: rgba(40, 111, 157, .18);--app-sidebar-bg: linear-gradient(180deg, #c9dfea, #bdd5e2);--app-sidebar-border: rgba(30, 79, 104, .17);--app-sidebar-text: #183b4a;--nav-text: #496a79;--nav-hover-bg: rgba(250, 253, 255, .74);--nav-management-bg: linear-gradient(180deg, rgba(220, 238, 247, .82), rgba(250, 253, 255, .46));--nav-teaching-bg: linear-gradient(180deg, rgba(224, 240, 233, .74), rgba(250, 253, 255, .46));--home-hero-bg: linear-gradient(118deg, #fafdff 0%, #edf7fb 58%, #cbdfea 100%);--home-flower-opacity: .58}html[data-app-theme=midnight-garden]{color-scheme:dark;--bg: #0e1714;--panel: rgba(23, 36, 31, .94);--panel-strong: #17231f;--line: rgba(199, 225, 214, .16);--text: #eff6f2;--muted: #a8bbb3;--blue: #75aebe;--green: #69a98b;--rose: #e17a6a;--body-glow-a: rgba(69, 132, 111, .19);--body-glow-b: rgba(70, 110, 127, .18);--surface-page: rgba(14, 23, 20, .97);--surface-panel: rgba(23, 36, 31, .96);--surface-panel-strong: rgba(27, 42, 36, .99);--surface-card: rgba(31, 47, 41, .98);--surface-input: #22332d;--surface-grid: rgba(31, 50, 43, .96);--surface-slot: rgba(28, 44, 38, .96);--surface-popover: #1b2a24;--surface-muted-band: rgba(105, 169, 139, .1);--surface-sheet: #17231f;--surface-sheet-muted: #203029;--shadow-panel: 0 2px 8px rgba(0, 0, 0, .34);--shadow: var(--shadow-panel);--mgmt-blue: #3b8194;--mgmt-blue-soft: #203b42;--mgmt-blue-mid: #315864;--teach-green: #2f795c;--teach-green-soft: #203c31;--teach-green-mid: #315e4d;--teach-action-solid-text: #eff6f2;--teach-action-soft-text: #b5dfc9;--app-action-text: #a8d9e4;--app-success-text: #b5dfc9;--app-action-icon-bg: rgba(117, 174, 190, .15);--app-brand-shadow: 0 2px 8px rgba(0, 0, 0, .34);--overview-blue-bg: linear-gradient(145deg, #1b3138, #1d2b27);--overview-green-bg: linear-gradient(145deg, #1b3429, #1d2b27);--overview-rose-bg: linear-gradient(145deg, #392725, #1d2b27);--overview-indigo-bg: linear-gradient(145deg, #252b3b, #1d2b27);--overview-rose-border: rgba(225, 122, 106, .3);--overview-indigo-border: rgba(117, 174, 190, .24);--app-sidebar-bg: linear-gradient(180deg, #111d19, #14251f);--app-sidebar-border: rgba(199, 225, 214, .14);--app-sidebar-text: #eff6f2;--nav-text: #b8cbc3;--nav-hover-bg: rgba(255, 255, 255, .07);--nav-management-bg: linear-gradient(180deg, rgba(59, 129, 148, .2), rgba(23, 36, 31, .58));--nav-teaching-bg: linear-gradient(180deg, rgba(47, 121, 92, .24), rgba(23, 36, 31, .58));--home-hero-bg: linear-gradient(118deg, #17231f 0%, #1c2e27 58%, #243d32 100%);--home-flower-opacity: .78}:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:15px;background:var(--bg);color:var(--text);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #f5f5f7;--panel: rgba(255, 255, 255, .76);--panel-strong: rgba(255, 255, 255, .96);--line: rgba(29, 29, 31, .1);--text: #1d1d1f;--muted: #6e6e73;--blue: #0a84ff;--green: #22c55e;--rose: #f43f5e;--app-error-text: color-mix(in srgb, var(--rose) 88%, var(--text));--body-glow-a: rgba(10, 132, 255, .14);--body-glow-b: rgba(34, 197, 94, .13);--surface-page: rgba(245, 245, 247, .86);--surface-panel: rgba(255, 255, 255, .84);--surface-panel-strong: rgba(255, 255, 255, .96);--surface-card: rgba(255, 255, 255, .9);--surface-input: rgba(255, 255, 255, .92);--surface-grid: rgba(255, 255, 255, .82);--surface-slot: rgba(255, 255, 255, .62);--surface-popover: rgba(255, 255, 255, .97);--surface-muted-band: rgba(29, 29, 31, .04);--shadow-soft: 0 1px 2px rgba(0, 0, 0, .05);--shadow-panel: 0 2px 8px rgba(30, 42, 58, .08);--shadow: var(--shadow-panel);--font-xs: 12px;--font-sm: 12px;--font-md: 16px;--font-work-title: 31px;--font-home-title: 59px;--radius-card: 8px;--radius-home: 22px;--button-compact-h: 30px}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}html{scrollbar-gutter:stable}.app-skip-link{position:fixed;inset-block-start:10px;inset-inline-start:10px;z-index:10000;padding:10px 14px;border-radius:var(--radius-control);color:#fff;background:#173c33;box-shadow:0 4px 16px #173c333d;font-size:var(--font-sm);font-weight:var(--font-weight-heading, 700);text-decoration:none;transform:translateY(calc(-100% - 20px));transition:transform .16s ease}.app-skip-link:focus-visible{outline:3px solid #f06f58;outline-offset:3px;transform:translateY(0)}.app-main:focus-visible{outline:3px solid #f06f58;outline-offset:-3px}.training-data-reminder{position:relative;width:min(760px,calc(100% - 24px));margin:12px auto 0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--teach-green) 38%,var(--line));border-radius:var(--radius-panel);color:var(--text);background:color-mix(in srgb,var(--surface-panel-strong) 94%,var(--teach-green-soft));box-shadow:var(--shadow-floating)}.training-data-reminder-collapsed{position:relative;width:min(520px,calc(100% - 24px));margin:12px auto 0;display:flex;align-items:center;gap:6px;padding:5px 6px;border:1px solid color-mix(in srgb,var(--teach-green) 48%,var(--line));border-radius:var(--radius-control);color:var(--teach-action-soft-text);background:color-mix(in srgb,var(--surface-panel-strong) 90%,var(--teach-green-soft));box-shadow:var(--shadow-floating)}.training-data-reminder-summary{min-width:0;min-height:36px;display:flex;flex:1 1 auto;align-items:center;gap:7px;padding:0 7px;border:0;border-radius:7px;color:inherit;background:transparent;font:inherit;font-size:12px;font-weight:var(--font-weight-emphasis, 600);text-align:start;cursor:pointer}.training-data-reminder-summary span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.training-data-reminder-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;color:var(--teach-action-soft-text);background:var(--teach-green-soft)}.training-data-reminder>span:nth-child(2){min-width:0;display:grid;gap:1px}.training-data-reminder strong{font-size:13px}.training-data-reminder small{color:var(--muted);font-size:11px;line-height:1.35}.training-data-reminder-switch{min-height:36px;padding:0 11px;border:1px solid var(--teach-green);border-radius:var(--radius-control);color:var(--teach-action-soft-text);background:var(--teach-green-soft);font:inherit;font-size:12px;font-weight:var(--font-weight-emphasis, 600);cursor:pointer;white-space:nowrap}.training-data-reminder-hide{position:absolute;inset-block-start:-8px;inset-inline-end:-8px;width:32px;height:32px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--surface-panel-strong);box-shadow:var(--shadow-action-compact);cursor:pointer}.training-data-reminder-summary:focus-visible,.training-data-reminder-hide:focus-visible,.training-data-reminder-switch:focus-visible{outline:none;box-shadow:var(--focus-ring)}@media(max-width:760px){.app-shell[data-layout-mode=phone] .training-data-reminder,.app-shell[data-layout-mode=phone] .training-data-reminder-collapsed{position:relative;inset:auto;z-index:auto;width:calc(100% - 24px);margin:0 auto 8px;box-shadow:var(--shadow-panel)}.app-shell[data-layout-mode=phone] .training-data-reminder{grid-template-columns:auto minmax(0,1fr)}.app-shell[data-layout-mode=phone] .training-data-reminder>.training-data-reminder-switch{grid-column:1 / -1}.app-shell[data-layout-mode=phone] .training-data-reminder-switch{min-height:44px}.app-shell[data-layout-mode=phone] .training-data-reminder-hide{width:44px;height:44px}.app-shell[data-layout-mode=phone] .training-data-reminder-collapsed{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:4px 6px}.app-shell[data-layout-mode=phone] .training-data-reminder-summary{min-height:44px}}@media(prefers-reduced-motion:reduce){.app-skip-link{transition:none}}@supports not (scrollbar-gutter: stable){html{overflow-y:scroll}}body{min-width:320px;overflow-x:hidden;background:radial-gradient(circle at 12% 0%,var(--body-glow-a),transparent 36rem),radial-gradient(circle at 86% 16%,var(--body-glow-b),transparent 32rem),var(--bg)}button{font:inherit}.app{min-height:100vh}.screen{min-height:100vh;min-height:100svh;padding:22px clamp(18px,4vw,48px) 34px}.top-bar>div:first-child,.account-button{display:inline-flex;align-items:center;gap:10px}.brand-mark,.avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.brand-mark{width:36px;height:36px;border-radius:8px;background:#1d1d1f;color:#fff;font-size:12px;font-weight:var(--font-weight-label, 500)}.brand-name{font-weight:var(--font-weight-label, 500)}.account-button{min-height:42px;border:1px solid var(--line);border-radius:12px;padding:5px 12px 5px 6px;background:var(--surface-card);color:var(--text);cursor:pointer;box-shadow:var(--shadow-soft)}.avatar{width:34px;height:34px;border-radius:12px;background:linear-gradient(145deg,#0a84ff,#4fb3ff);color:#fff;font-weight:var(--font-weight-label, 500)}.account-picture{object-fit:cover;background:#eef4fb}.account-copy{display:grid;gap:1px;line-height:1.05}.account-copy strong{font-size:14px}.account-copy small{color:var(--muted);font-size:12px;font-weight:600;text-transform:uppercase}.account-save-status{display:inline-flex;align-items:center;gap:5px}.account-save-dot{width:6px;height:6px;flex:0 0 auto;border-radius:999px;background:currentColor}.account-save-status.tone-saved{color:var(--app-success-text, var(--teach-green))}.account-save-status.tone-working{color:var(--app-action-text, var(--mgmt-blue))}.account-save-status.tone-error{color:var(--rose)}.account-button>svg{margin-inline-start:auto;color:var(--muted)}.app-shell .account-button.active{border-color:var(--mgmt-blue-mid);background:var(--mgmt-blue-soft);color:var(--app-action-text)}.primary-button,.quiet-button,.danger-button{min-height:var(--button-primary-h);border:0;border-radius:8px;padding:0 14px;background:#1d1d1f;color:#fff;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.login-gate{min-height:calc(100svh - 40px);display:grid;place-items:center}.legacy-app-migration-page{min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:24px}.legacy-app-migration-card{width:min(600px,100%);display:grid;gap:16px;padding:clamp(24px,4vw,40px);border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel-strong);box-shadow:var(--shadow-panel)}.legacy-app-migration-brand{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}.legacy-app-migration-brand>img{width:48px;height:48px;border-radius:var(--radius-control)}.legacy-app-migration-brand>div{min-width:0;display:grid;gap:2px}.legacy-app-migration-brand strong{font-size:15px;font-weight:600}.legacy-app-migration-brand span,.legacy-app-migration-actions small{color:var(--muted);font-size:13px;line-height:1.45}.legacy-app-migration-icon{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--teach-green-mid);border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.legacy-app-migration-copy{display:grid;gap:12px}.legacy-app-migration-copy .eyebrow,.legacy-app-migration-copy h1,.legacy-app-migration-copy p,.legacy-app-migration-actions p{margin:0}body:not([data-app-layout-mode=phone]) .legacy-app-migration-copy h1,body[data-app-layout-mode=phone] .legacy-app-migration-copy h1{font-size:32px;line-height:1.15;letter-spacing:0}.legacy-app-migration-copy>p:last-child,.legacy-app-migration-actions p{color:var(--muted);font-size:15px;line-height:1.55}.legacy-app-migration-location{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card);color:var(--app-action-text)}.legacy-app-migration-location>span{display:grid;gap:2px}.legacy-app-migration-location strong{color:var(--text);font-size:13px;font-weight:500}.legacy-app-migration-location small{color:var(--muted);font-size:13px;unicode-bidi:isolate}.legacy-app-migration-card .language-selector.is-compact{margin-block-end:0}.legacy-app-migration-actions{display:grid;gap:8px}.legacy-app-migration-action{width:100%;min-height:44px;gap:8px}html[dir=rtl] .legacy-app-migration-action svg{transform:scaleX(-1)}@media(max-width:640px){.legacy-app-migration-page{place-items:stretch;padding:0}.legacy-app-migration-card{min-height:100svh;align-content:center;padding:max(24px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom));border:0;border-radius:0;box-shadow:none}}.login-card{width:min(620px,100%);display:grid;gap:16px;padding:clamp(24px,4vw,42px);border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:var(--shadow-panel)}.login-card h1{margin:0;font-size:clamp(38px,5vw,58px)}.login-actions{display:grid;align-items:start;gap:10px}.approval-gate-card{max-width:760px}.approval-status-icon{width:48px;height:48px;display:grid;place-items:center;color:var(--app-action);background:color-mix(in srgb,var(--app-action) 12%,var(--surface-card));border:1px solid color-mix(in srgb,var(--app-action) 28%,var(--line));border-radius:var(--radius-panel)}.approval-account{display:grid;gap:4px;padding:16px;background:var(--surface-card);border:1px solid var(--line);border-radius:var(--radius-panel)}.approval-account strong{font-size:15px;font-weight:var(--font-weight-heading, 700)}.approval-account span,.approval-account small,.approval-note{color:var(--muted);font-size:13px;line-height:1.5}.approval-account small{color:var(--app-success-text);font-weight:var(--font-weight-label, 500)}.approval-subscription{display:grid;gap:12px;padding:16px;border:1px solid color-mix(in srgb,var(--app-action) 24%,var(--line));border-radius:var(--radius-panel);background:color-mix(in srgb,var(--app-action) 4%,var(--surface-card))}.approval-subscription-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.approval-subscription-heading>div:first-child{min-width:0;display:grid;gap:3px}.approval-subscription-heading strong{font-size:15px}.approval-subscription-heading span{color:var(--muted);font-size:12px;line-height:1.45}.approval-cadence{display:grid;grid-auto-flow:column;gap:3px;padding:3px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-muted-band, var(--surface-card))}.approval-cadence button{min-height:34px;padding:0 10px;border:0;border-radius:calc(var(--radius-control) - 3px);color:var(--muted);background:transparent;font:inherit;font-size:11px;font-weight:var(--font-weight-label);cursor:pointer}.approval-cadence button.active{color:var(--selection-control-text, var(--teach-action-solid-text));background:var(--selection-control-bg, var(--teach-green))}.approval-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.approval-plan-grid>button{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:13px;border:1px solid var(--line);border-radius:var(--radius-panel);color:var(--text);background:var(--surface-card);text-align:start;cursor:pointer}.approval-plan-grid>button:hover:not(:disabled){border-color:var(--teach-green);box-shadow:inset 0 0 0 1px var(--teach-green)}.approval-plan-grid>button:disabled{opacity:.58;cursor:default}.approval-plan-grid>button>span{min-width:0;display:grid;gap:2px}.approval-plan-grid>button>span:nth-child(2){justify-items:end}.approval-plan-grid strong,.approval-plan-grid b{font-size:15px}.approval-plan-grid small{color:var(--muted);font-size:10px;line-height:1.35}.approval-plan-grid em{grid-column:1 / -1;min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius-control);color:#fff;background:#1673c9;font-size:12px;font-style:normal;font-weight:var(--font-weight-emphasis)}.approval-paypal-setup{color:#7b5d18;font-size:11px;line-height:1.45}.approval-payment-note{display:grid;grid-template-columns:17px minmax(0,1fr);gap:7px;margin:0;color:var(--muted);font-size:11px;line-height:1.45}.approval-payment-note svg{color:var(--app-success-text)}.approval-payment-message{margin:0;padding:9px 11px;border-radius:var(--radius-control);color:var(--app-success-text);background:color-mix(in srgb,var(--green) 8%,var(--surface-card));font-size:12px;line-height:1.45}.approval-actions{display:flex;flex-wrap:wrap;gap:8px}.approval-actions button{min-height:40px}.approval-note{margin:0}@media(max-width:680px){.approval-subscription-heading{flex-direction:column}.approval-cadence{width:100%;grid-auto-flow:row;grid-template-columns:1fr 1fr}.approval-cadence button{min-height:44px}.approval-plan-grid{grid-template-columns:1fr}.approval-plan-grid em{min-height:44px}}.auth-choice-divider{width:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;color:var(--muted);font-size:11px;font-weight:var(--font-weight-heading, 700);text-transform:uppercase;letter-spacing:.08em}.auth-choice-divider:before,.auth-choice-divider:after{height:1px;background:var(--line);content:""}.email-auth-panel{width:100%;display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel) 86%,var(--canvas))}.email-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;border-radius:9px;background:color-mix(in srgb,var(--canvas) 88%,var(--line))}.email-auth-tabs button{min-height:34px;padding:6px 9px;border:0;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:12px;font-weight:var(--font-weight-heading, 700);cursor:pointer}.email-auth-tabs button.active{background:var(--panel);color:var(--text);box-shadow:0 1px 5px #1e251f17}.email-auth-form{display:grid;gap:10px}.email-auth-form label{display:grid;gap:5px;color:var(--text);font-size:12px;font-weight:var(--font-weight-heading, 700)}.email-auth-form input{width:100%;min-height:42px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font:inherit;font-size:14px}.email-auth-form input:focus-visible{border-color:var(--app-action);outline:3px solid color-mix(in srgb,var(--app-action) 18%,transparent)}.email-password-help{margin-top:-4px;color:var(--muted);font-size:11px;line-height:1.4}.email-auth-submit{width:100%;min-height:42px;justify-content:center}.email-auth-link{justify-self:center;border:0;padding:2px 4px;background:transparent;color:var(--app-action);font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.email-auth-link:hover{color:var(--text)}.email-auth-notice{margin:0;padding:9px 10px;border-radius:8px;font-size:12px;line-height:1.45}.email-auth-notice.success{background:#2484551c;color:#236047}.email-auth-notice.warning{background:#be83181c;color:#795b16}.email-auth-confirmation{display:grid;grid-template-columns:auto 1fr;gap:8px 10px;align-items:start;color:var(--text)}.email-auth-confirmation svg{color:var(--app-action)}.email-auth-confirmation div{display:grid;gap:4px}.email-auth-confirmation p,.email-auth-confirmation small{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.email-auth-confirmation .quiet-button{grid-column:1 / -1;justify-self:start}.email-auth-panel.compact{gap:9px;padding:10px}.email-auth-panel.compact .email-auth-form{gap:8px}.email-auth-panel.compact .email-auth-form input,.email-auth-panel.compact .email-auth-submit{min-height:38px}.keep-signed-in-choice{flex-basis:100%;display:flex;align-items:flex-start;gap:9px;color:var(--text);cursor:pointer}.keep-signed-in-choice input{width:16px;height:16px;margin:2px 0 0;accent-color:var(--app-action)}.keep-signed-in-choice>span{display:grid;gap:2px}.keep-signed-in-choice strong{font-size:13px;font-weight:var(--font-weight-label, 500)}.keep-signed-in-choice small{color:var(--muted);font-size:12px;line-height:1.35}.account-login-button{border:1px solid #dadce0;background:#fff;color:#3c4043;box-shadow:none}.tester-login-button{min-height:var(--button-standard-h);border:1px solid var(--mgmt-blue-mid);border-radius:8px;padding:0 14px;background:var(--mgmt-blue-soft);color:var(--app-action-text);font-weight:var(--font-weight-label, 500);cursor:pointer}.account-login-button:disabled{cursor:not-allowed;opacity:.68}.google-login-slot{min-height:44px;display:inline-flex;align-items:center;max-width:100%}.google-login-slot>div{max-width:100%}.google-login-slot iframe{max-width:100%}.google-login-slot.compact{min-height:40px}.google-login-fallback{gap:8px}.login-setup-note{margin:0;border:1px solid rgba(217,119,6,.24);border-radius:8px;padding:10px 12px;background:#fff7ed;color:#9a3412;font-size:13px;font-weight:600}.login-setup-note code{color:inherit}body[data-app-layout-mode=phone] .app-sidebar .deploy-stamp{display:none}body[data-app-layout-mode=phone] .app-sidebar .account-button{width:44px;min-width:44px;height:44px;min-height:44px;padding:3px;justify-content:center;gap:0}body[data-app-layout-mode=phone] .app-sidebar .account-button .account-copy{display:none}.eyebrow{margin:0 0 10px;color:var(--app-action-text);font-size:12px;font-weight:var(--font-weight-label, 500);letter-spacing:.08em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:12px;font-size:clamp(34px,6vw,72px);line-height:.98;letter-spacing:0}h2{margin-bottom:8px;font-size:clamp(22px,3vw,34px);letter-spacing:0}.hero-copy{margin:0 auto;max-width:650px;color:var(--muted);font-size:clamp(16px,2vw,20px);line-height:1.45}.soft-pill{min-height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--surface-card);color:var(--muted);font-weight:var(--font-weight-label, 500)}.workspace-nav{width:100%;margin:0;display:flex;flex-direction:column;gap:6px;padding:10px 8px;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-soft);align-self:start;position:sticky;top:18px}.workspace-nav button{width:100%;min-height:56px;border:0;border-radius:8px;padding:8px 4px;background:transparent;color:var(--muted);text-align:center;white-space:nowrap;cursor:pointer;flex-direction:column;justify-content:center;font-size:.7rem}.workspace-nav .active{background:#1d1d1f;color:#fff}.management-main,.side-panel,.tool-page{border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.management-main,.tool-page{padding:clamp(16px,2.4vw,24px)}.payment-header-actions{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.week-calendar{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.day-column{min-height:420px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#ffffff9e}.day-column header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:12px}.day-column header span{font-weight:var(--font-weight-label, 500)}.day-column header small,.calendar-chip small,.mini-card small,.payer-card small,.contact-card small{color:var(--muted)}.day-items,.hour-slots{display:grid;gap:8px}.hour-slots{gap:6px}.hour-slot{min-height:48px;display:grid;grid-template-columns:48px 30px minmax(0,1fr);gap:7px;align-items:stretch;padding:4px;border:1px dashed rgba(29,29,31,.1);border-radius:12px;background:#ffffff70}.drag-week-calendar .hour-slot{grid-template-columns:48px minmax(0,1fr)}.drag-week-calendar .calendar-chip{cursor:grab}.drag-week-calendar .calendar-chip:active{cursor:grabbing}.hour-slot:hover{border-color:#0a84ff5c;background:#eef6ff9e}.hour-slot.drop-target-active{border-color:#0a84ffb8;background:linear-gradient(135deg,#0a84ff29,#30d1581a);box-shadow:inset 0 0 0 1px #0a84ff38}body.calendar-dragging .hour-slot{border-color:#0a84ff42}.today-calendar{display:grid;gap:12px}.today-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid rgba(29,29,31,.08);border-radius:8px;background:#ffffffbd}.today-calendar-head h2{margin:2px 0 0;font-size:22px;line-height:1.1}.today-calendar-head small{display:block;margin-top:4px;color:var(--muted);font-size:13px;font-weight:600}.today-timeline{display:grid;gap:8px}.today-slot{min-height:62px;display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px;align-items:stretch;padding:8px;border:1px dashed rgba(29,29,31,.12);border-radius:8px;background:#ffffff8f}.today-slot:hover{border-color:#0a84ff57;background:#eef6ffa3}.today-slot.drop-target-active{border-color:#0a84ffb8;background:linear-gradient(135deg,#0a84ff29,#30d1581a);box-shadow:inset 0 0 0 1px #0a84ff38}body.calendar-dragging .today-slot{border-color:#0a84ff4d}.today-slot-time{align-self:start;padding-top:8px;color:var(--muted);font-size:13px;font-weight:var(--font-weight-label, 500)}.today-slot-body{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start}.today-slot-empty{min-height:38px;display:flex;align-items:center;color:#6e6e73b8;font-size:13px;font-weight:600}.today-calendar .calendar-chip{cursor:grab}.today-calendar .calendar-chip:active{cursor:grabbing}.today-calendar .show-full-student-names .student-lesson-card strong{font-size:14px}.slot-items{display:grid;gap:5px;min-width:0}.slot-add-button{width:30px;min-height:30px;align-self:start;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:var(--mgmt-blue-soft);color:var(--app-action-text);cursor:pointer}.calendar-chip{display:grid;gap:4px;width:100%;border-radius:8px;border:1px solid rgba(255,255,255,.52);background:#fff;color:var(--text);text-align:start;box-shadow:var(--shadow-soft);cursor:pointer}.calendar-chip .chip-grip{position:absolute;inset-inline-start:6px;top:7px;width:16px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;color:#1d1d1f6b;cursor:grab}.calendar-chip .chip-grip:active{cursor:grabbing}.calendar-chip .chip-grip:hover{background:#1d1d1f0f;color:#1d1d1fb8}.student-color-dot{width:9px;height:9px;border-radius:999px;background:var(--student-color, #0a84ff);box-shadow:0 0 0 3px color-mix(in srgb,var(--student-color, #0a84ff) 16%,transparent)}.calendar-chip span{color:var(--muted);font-size:12px;font-weight:600}.calendar-chip strong{font-size:13px;line-height:1.2}.calendar-chip.blue{background:#eef6ff}.calendar-chip.green{background:#effaf3}.calendar-chip.rose{background:#fff1f3}.calendar-chip.gray{background:#f3f3f5;cursor:default}.status-card{padding:16px;border-radius:12px;background:var(--panel-strong)}.status-card p:last-child{margin-bottom:0;color:var(--muted);line-height:1.45}.status-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tool-page{width:100%;margin:0}.finance-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.finance-summary div,.payer-card,.contact-card{border-radius:12px;background:var(--panel-strong)}.finance-summary div{display:grid;gap:8px;padding:14px}.finance-summary span{color:var(--muted)}.finance-summary strong{font-size:26px}.payments-table-panel,.payment-detail-panel{border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:16px}.payment-list{display:grid;gap:5px}.payment-debt-card{display:grid;gap:4px;border-radius:8px}.payment-row{width:100%;min-height:40px;color:var(--text);text-align:start}.payment-debt-summary{grid-template-columns:minmax(0,1fr) auto;border-color:color-mix(in srgb,var(--student-color, #0a84ff) 38%,var(--line));background:color-mix(in srgb,var(--student-color, #0a84ff) 30%,var(--surface-card, white));box-shadow:inset 4px 0 0 var(--student-color, #0a84ff);transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.payment-debt-card:not(.is-expandable) .payment-debt-summary,.payment-debt-card:not(.is-expandable) .payment-debt-static{cursor:default}.payment-debt-toggle{min-width:0;min-height:44px;align-self:stretch;display:grid;grid-template-columns:minmax(180px,1fr) 80px 90px;align-items:center;gap:8px;border:0;padding:0;background:transparent;color:inherit;font:inherit;text-align:start;cursor:pointer}.payment-summary-pay{min-width:58px;justify-content:center}.payment-charge-count{justify-self:start;border:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 26%,transparent);background:color-mix(in srgb,var(--student-color, #0a84ff) 16%,var(--surface-card));color:var(--text);white-space:nowrap}.payment-debt-detail{display:grid;gap:4px;margin-inline-start:24px;padding:6px;border:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 36%,white);border-radius:8px}.payment-debt-line{min-height:34px;display:grid;grid-template-columns:minmax(150px,1fr) 120px 86px auto;align-items:center;gap:8px;padding:5px 7px;border-radius:8px;background:color-mix(in srgb,var(--student-color, #0a84ff) 8%,white)}.payment-debt-line small{color:var(--muted);font-weight:var(--font-weight-label, 500)}.payment-debt-line-description{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;min-width:0}.payment-debt-line-source{display:block;margin-block-start:3px;font-size:12px}.payment-debt-line .quiet-button{min-height:28px;padding-inline:10px}.payment-row:not(.payment-header){cursor:pointer}.payment-row.selected{border-color:color-mix(in srgb,var(--student-color, #0a84ff) 34%,white);background:color-mix(in srgb,var(--student-color, #0a84ff) 12%,white)}.payment-header{min-height:28px;background:transparent;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);text-transform:uppercase}.payment-student{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:8px}.payment-student small{grid-column:2;color:var(--muted)}.payment-row b{justify-self:end}.payer-list,.contact-list{display:grid;gap:10px}.payer-card,.contact-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px}.payer-card div,.contact-card div{display:grid;gap:4px}.payer-card span,.contact-card span{color:var(--muted)}.payer-card b{font-size:18px}.negative{color:var(--rose)}.positive{color:#14883d}.contacts-page{display:grid;grid-template-columns:248px minmax(0,1fr);gap:16px}.calendar-management-page{display:grid;grid-template-columns:minmax(0,1fr) 248px;gap:16px}.calendar-roster,.contacts-roster{border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:14px;align-self:start}.calendar-roster h2,.contacts-roster h2{margin-bottom:14px;font-size:22px}.roster-list{display:grid;gap:10px}.brand-mark img{width:100%;height:100%;display:block;border-radius:inherit}.student-group-create input{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px 10px;background:#fff;color:var(--text);font:inherit}.student-group-pick-list{display:flex;flex-wrap:wrap;gap:6px}.student-group-pick-list button{min-height:30px;display:inline-flex;align-items:center;gap:5px;border:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 24%,var(--line));border-radius:8px;padding:0 8px;background:color-mix(in srgb,var(--student-color, #0a84ff) 6%,white);color:var(--text);font-size:12px;font-weight:var(--font-weight-label, 500);cursor:pointer}.student-group-pick-list button.selected{border-color:color-mix(in srgb,var(--student-color, #0a84ff) 58%,var(--line));background:color-mix(in srgb,var(--student-color, #0a84ff) 18%,white)}.student-drag-card{display:grid;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;color:var(--text);text-align:start;cursor:grab}.student-drag-card:active{cursor:grabbing}.student-drag-card.inactive{border-color:#d7dce4;background:#f2f4f7;color:#667085;opacity:1}.student-drag-card.inactive .avatar{background:#98a2b3;filter:grayscale(1)}.student-drag-card.inactive strong,.student-drag-card.inactive small{color:#667085}.inactive-students-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin:6px 0 2px;color:#667085;font-size:12px;font-weight:var(--font-weight-label, 500);letter-spacing:0;text-transform:uppercase}.inactive-students-divider:before,.inactive-students-divider:after{content:"";height:1px;background:#d7dce4}.student-drag-card .avatar{background:var(--student-color, #0a84ff);color:#fff;box-shadow:inset 0 1px #ffffff42}.student-drag-card strong,.student-drag-card small{display:block}.student-drag-card small{margin-top:3px;color:var(--muted)}.calendar-tool .week-calendar{min-height:0}.calendar-view-toggle,.calendar-day-tabs{display:flex;gap:8px}.calendar-view-toggle{padding:4px;border-radius:999px;background:#1d1d1f12}.calendar-view-toggle button{min-height:34px;border:0;border-radius:999px;padding:0 14px;background:transparent;color:var(--muted);font-weight:var(--font-weight-label, 500);cursor:pointer}.calendar-view-toggle button.active{background:#1d1d1f;color:#fff}.month-calendar{display:grid;gap:8px}.month-weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.month-weekdays span{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);text-align:center;text-transform:uppercase}.month-cell{min-height:92px;display:grid;align-content:start;gap:4px;border:1px solid var(--line);border-radius:12px;padding:9px;background:#ffffffb3;color:var(--app-sidebar-text);text-align:start}button.month-cell{cursor:pointer}button.month-cell:hover{border-color:#0a84ff57;background:#eef6ffbd}.month-cell.active{border-color:#0a84ff6b;background:#eef6ff}.month-cell[data-load="1"]{background:#eef6ffc7}.month-cell[data-load="2"]{background:#d1e8ffd1}.month-cell[data-load="3"],.month-cell[data-load="4"]{background:#b8dcffe0}.month-cell.disabled{color:#6e6e736b;background:#ffffff5c}.month-cell span{font-weight:var(--font-weight-label, 500)}.month-cell-date{justify-self:start;font-weight:var(--font-weight-label, 500)}.month-cell strong{font-size:13px}.month-cell small{color:var(--muted);font-size:12px;font-weight:600}.compact-month-calendar .month-weekdays,.compact-month-calendar .month-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.compact-month-calendar .month-cell{min-height:118px;align-content:space-between;gap:6px;border-radius:8px;padding:10px;text-align:center}.compact-month-calendar .month-cell.disabled{visibility:hidden}.compact-month-calendar .month-cell[data-load="1"]{background:#eef6ffc7}.compact-month-calendar .month-cell[data-load="2"]{background:#d1e8ffd1}.compact-month-calendar .month-cell[data-load="3"],.compact-month-calendar .month-cell[data-load="4"]{background:#b8dcffe0}.calendar-management-page .section-title{margin-bottom:12px}.calendar-management-page .section-title h1{max-width:680px;font-size:clamp(30px,4vw,42px);line-height:1.02}.calendar-management-page .day-column{min-height:auto;padding:8px;border-radius:20px}.calendar-management-page .calendar-chip{min-height:38px;padding:6px 28px 6px 27px;border-radius:12px}.calendar-management-page .student-lesson-card{min-height:30px;padding:4px 5px}.calendar-management-page .hour-slot{min-height:42px;grid-template-columns:42px 28px minmax(0,1fr);gap:5px;padding:3px;border-radius:12px}.calendar-management-page .drag-week-calendar .hour-slot{grid-template-columns:42px minmax(0,1fr)}.calendar-management-page .drag-week-calendar .day-column{min-width:0}.calendar-management-page .slot-add-button{width:28px;min-height:28px;border-radius:8px}.calendar-management-page .calendar-chip strong,.calendar-management-page .calendar-chip small,.calendar-management-page .calendar-chip span{font-size:12px}.calendar-management-page .drag-week-calendar .chip-grip{display:inline-flex;top:5px}.calendar-management-page .desktop-week-calendar{--calendar-slot-height: 34px;display:block;overflow-x:auto;border:1px solid rgba(29,29,31,.1);border-radius:18px;background:#ffffffb8;box-shadow:inset 0 1px #ffffffb3}.calendar-management-page .week-grid{width:100%;min-width:0;display:grid;grid-template-columns:44px repeat(6,minmax(0,1fr));grid-template-rows:42px auto}.calendar-management-page .time-rail-header,.calendar-management-page .week-day-header{min-width:0;min-height:42px;display:grid;align-content:center;border-bottom:1px solid rgba(29,29,31,.1);background:#f8f8faeb}.calendar-management-page .time-rail-header{padding:0 5px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);text-align:center;text-transform:uppercase}.calendar-management-page .week-day-header{gap:2px;overflow:hidden;padding:0 6px;border-inline-start:1px solid rgba(29,29,31,.08)}.calendar-management-page .week-day-header span{overflow:hidden;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.calendar-management-page .week-day-header small{overflow:hidden;color:var(--muted);font-weight:var(--font-weight-label, 500);line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.calendar-management-page .time-rail{display:grid;grid-template-rows:repeat(var(--calendar-slot-count, 27),var(--calendar-slot-height));background:#f8f8fab3}.calendar-management-page .time-rail-slot{min-height:var(--calendar-slot-height);display:flex;justify-content:center;padding:6px 0 0;border-bottom:1px solid rgba(29,29,31,.08);color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);line-height:1}.calendar-management-page .week-day-lane{min-height:auto;min-width:0;padding:0;border:0;border-inline-start:1px solid rgba(29,29,31,.08);border-radius:0;background:transparent}.calendar-management-page .desktop-week-calendar .day-column[data-active=true]:after{display:none}.calendar-management-page .desktop-week-calendar .hour-slots{gap:0;display:grid;grid-template-rows:repeat(var(--calendar-slot-count, 27),var(--calendar-slot-height))}.calendar-management-page .desktop-week-calendar .hour-slot{position:relative;min-height:0;height:var(--calendar-slot-height);display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:0;padding:3px;border:0;border-bottom:1px solid rgba(29,29,31,.08);border-radius:0;background:#ffffff42;overflow:visible}.calendar-management-page .desktop-week-calendar .hour-slot:hover{background:#eef6ff9e}.calendar-management-page .desktop-week-calendar .hour-slot.drop-target-active{background:linear-gradient(135deg,#0a84ff29,#30d1581a);box-shadow:inset 0 0 0 1px #0a84ff3d}.calendar-management-page .desktop-week-calendar .slot-items{align-content:start;gap:2px;min-height:0}.calendar-management-page .desktop-week-calendar .week-slot-add-button{height:calc(var(--calendar-slot-height) - 7px);min-height:0}.calendar-management-page .desktop-week-calendar .hour-slot:has(.week-slot-add-button):hover:not(:has(.week-slot-add-button:hover)){background:var(--surface-slot)}.calendar-management-page .desktop-week-calendar .calendar-chip{position:absolute;top:calc(var(--chip-start-offset, 0) * var(--calendar-slot-height) + 1px);inset-inline-start:calc(var(--chip-column-start, 0%) + 3px);width:calc(var(--chip-column-width, 100%) - 6px);gap:1px;padding:4px 22px 4px 7px;border-radius:8px;border-color:#1d1d1f0a;box-shadow:none;align-content:start;z-index:1}.calendar-management-page .desktop-week-calendar .calendar-chip:before{inset:5px auto 5px 0;width:3px}.calendar-management-page .desktop-week-calendar .chip-time,.calendar-management-page .desktop-week-calendar .chip-grip,.calendar-management-page .desktop-week-calendar .student-lesson-card small{display:none}.calendar-management-page .desktop-week-calendar .lesson-student-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2px}.calendar-management-page .desktop-week-calendar .student-lesson-row{min-height:22px;min-width:0;gap:2px}.calendar-management-page .desktop-week-calendar .student-lesson-card{min-height:22px;gap:4px;padding:2px 4px;border:0;border-radius:6px}.calendar-management-page .desktop-week-calendar .student-lesson-card strong{overflow:hidden;font-size:clamp(11px,.72vw,13px);line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.calendar-management-page .desktop-week-calendar .student-color-dot{width:8px;height:8px;box-shadow:0 0 0 2px color-mix(in srgb,var(--student-color, #0a84ff) 16%,transparent)}.calendar-management-page .desktop-week-calendar .student-card-remove{width:16px;height:16px;opacity:.78}.contact-detail{min-height:600px}.contact-toolbar{display:flex;gap:8px;justify-content:flex-end}.contact-add-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.contacts-roster .contact-add-row button{min-width:0}.student-color-options{position:absolute;top:calc(100% + 6px);inset-inline-end:0;z-index:320;width:min(280px,80vw);display:grid;grid-template-columns:repeat(6,30px);gap:7px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow-dropdown)}.student-color-options button{width:30px;height:30px;min-height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:999px;padding:0;background:transparent;cursor:pointer}.student-color-options button.selected{border-color:#1d1d1f}.student-color-options input[type=color]{width:30px;min-width:30px;height:30px;padding:0}@media(max-width:860px){.student-color-options{inset-inline-start:0;inset-inline-end:auto;max-width:calc(100vw - 32px)}}:root{--surface-sheet: #ffffff;--surface-sheet-muted: #f8fafc}.sidebar-desktop-nav{width:100%;min-width:0;display:grid;gap:12px}.mobile-primary-nav,.mobile-more-backdrop{display:none}.calendar-day-nav{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;width:min(100%,520px)}.calendar-day-nav .cal-arrow{width:44px;min-width:44px;height:44px}.calendar-day-nav .day-label{min-width:0;text-align:center;white-space:normal}body[data-app-layout-mode=phone] .sidebar-desktop-nav{display:none}body[data-app-layout-mode=phone] .mobile-primary-nav{order:4;width:100%;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}body[data-app-layout-mode=phone] .mobile-primary-nav .nav-item{min-height:48px;flex-direction:column;gap:2px;padding:4px 2px;font-size:10.5px;line-height:1;white-space:nowrap}body[data-app-layout-mode=phone] .mobile-primary-nav .nav-item span{overflow:hidden;overflow-wrap:normal;text-overflow:ellipsis;white-space:nowrap}body[data-app-layout-mode=phone] .student-color-options{inset-inline-start:0;inset-inline-end:auto;max-width:calc(100vw - 32px)}.contact-checkbox-grid.compact{display:grid;grid-template-columns:1fr;gap:5px;align-self:end}.contact-checkbox-grid.compact input{width:14px;height:14px}.contact-add-row button{min-height:40px;border:0;border-radius:12px;padding:0 10px;background:#1d1d1f14;color:var(--text);font-weight:var(--font-weight-label, 500);display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}.student-profile-grid{display:grid;gap:12px}.info-card{display:grid;gap:8px;padding:16px;border-radius:12px;background:var(--panel-strong)}.info-card span{color:var(--muted);font-size:13px;font-weight:600;text-transform:uppercase}.info-card button{justify-self:start;min-height:36px;border:0;border-radius:999px;padding:0 12px;background:#1d1d1f14;color:var(--text);cursor:pointer}.editable-card label,.contact-edit-grid label{display:grid;gap:5px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.editable-card input,.editable-card textarea,.contact-edit-grid input,.contact-edit-grid select{width:100%;min-height:36px;border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:var(--surface-input);color:var(--text);font:inherit;font-size:14px}.editable-card textarea{min-height:76px;resize:vertical}.editable-card input:disabled,.editable-card textarea:disabled,.contact-edit-grid input:disabled,.contact-edit-grid select:disabled{background:var(--surface-sheet-muted);color:var(--text);opacity:1}.student-color-picker{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.student-color-picker button{width:28px;height:28px;border:2px solid transparent;border-radius:999px;padding:0;background:var(--student-color, #0a84ff);cursor:pointer}.student-color-picker button.selected{border-color:#1d1d1f}.student-color-picker input[type=color]{width:32px;height:32px;min-height:32px;padding:2px;border-radius:999px}.contact-history-panel{display:grid;gap:10px;padding:14px;border-radius:20px;background:var(--panel-strong)}.history-tabs{display:flex;flex-wrap:nowrap;gap:4px;width:100%}.history-tabs button{flex:1 1 0;min-width:0;min-height:34px;border:0;border-radius:999px;padding:0 12px;background:#1d1d1f14;color:var(--text);font-weight:var(--font-weight-label, 500);cursor:pointer}.history-tabs button.active{background:#1d1d1f;color:#fff}.history-list{display:grid;gap:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.history-list h3{margin:0;font-size:15px}.history-list article{min-height:38px;display:grid;grid-template-columns:108px 64px minmax(0,1fr) 82px;align-items:center;gap:8px;padding:6px 8px;border-radius:12px;background:#ffffffa8}.history-list article span,.history-list article small{color:var(--muted)}.history-list article b{justify-self:end}.history-list>:not(:first-child){border-top:1px solid var(--line)}.history-list .contact-history-lesson-row,.history-list .contact-history-payment-row{width:100%;min-height:44px;margin:0;border:0;border-radius:0;background:transparent;color:var(--text);font:inherit;font-variant-numeric:tabular-nums}.history-list .contact-history-lesson-row{display:grid;grid-template-columns:minmax(0,1fr) 20px;align-items:center;gap:12px;padding:8px 12px;text-align:start;cursor:pointer;touch-action:manipulation;transition:background-color .16s ease,color .16s ease}.history-list .contact-history-lesson-row:hover{background:var(--teach-green-soft)}.history-list .contact-history-lesson-row:active{background:var(--teach-green-mid)}.contact-history-lesson-when{display:flex;min-width:0;align-items:baseline;gap:8px;color:var(--muted)}.contact-history-lesson-when time:last-child{color:var(--text)}.history-list .contact-history-lesson-row>svg{justify-self:end;color:var(--teach-action-soft-text)}.history-list .contact-history-payment-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr) auto;align-items:center;gap:12px;padding:8px 12px}.history-list .contact-history-payment-row time{color:var(--muted)}.history-list .contact-history-payment-row span{overflow:hidden;color:var(--text);font-weight:var(--font-weight-label, 500);text-overflow:ellipsis;white-space:nowrap}.history-list .contact-history-payment-row strong{justify-self:end;font-weight:var(--font-weight-selected, 600);white-space:nowrap}.history-list>.empty-state{padding:12px}body[data-app-layout-mode=phone] .history-list .contact-history-payment-row{grid-template-columns:minmax(92px,1fr) minmax(96px,auto) auto;gap:8px;padding-inline:10px}@media(prefers-reduced-motion:reduce){.history-list .contact-history-lesson-row{transition:none}}.empty-state{margin:0;color:var(--muted)}.lesson-drawer{position:fixed;inset:0;z-index:40;display:grid;justify-items:end;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.drawer-card{width:min(390px,calc(100vw - 24px));height:100%;display:grid;align-content:start;gap:12px;padding:24px;background:#fffffff2;box-shadow:var(--shadow-drawer);overflow:auto}.drawer-close{justify-self:end;min-height:38px;border:0;border-radius:999px;padding:0 14px;background:#1d1d1f14;cursor:pointer}.segmented-actions button.active,.drawer-status button.active,.contact-methods button.active{background:#1d1d1f;color:#fff}.drawer-status button,.contact-methods button,.contact-shortcut{min-height:34px;border:0;border-radius:999px;padding:0 10px;background:#1d1d1f14;color:var(--text);cursor:pointer}.drawer-status button.danger{color:#b4233c}.drawer-status button.danger.active{background:color-mix(in srgb,var(--rose) 72%,#5b1420);color:#fff}.contact-shortcut{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:color-mix(in srgb,var(--student-color, #0a84ff) 18%,white);color:color-mix(in srgb,var(--student-color, #0a84ff) 70%,#1d1d1f);font-weight:var(--font-weight-label, 500);text-decoration:none}a.contact-shortcut:hover{background:color-mix(in srgb,var(--student-color, #0a84ff) 26%,white)}.contact-shortcut.compact{min-height:28px;padding:4px 8px;font-size:.78rem;border-radius:8px}.contact-shortcut.compact svg{flex:0 0 auto}.contact-shortcut.compact span{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-shortcut-warning{background:#f43f5e1f;color:#b4233c;border:1px dashed #f43f5e;flex-wrap:wrap}.contact-warning-label{font-weight:600;font-size:.8rem}.contact-warning-input{flex:1 1 140px;min-width:140px;border:1px solid #f43f5e;border-radius:8px;padding:4px 8px;background:#fff;font:inherit;font-size:.85rem;color:var(--text)}.attendance-panel{display:flex;flex-direction:column;gap:12px;padding:14px;border-radius:12px;background:#ffffffb8;border:1px solid var(--line)}.attendance-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.attendance-panel-heading h3,.attendance-panel-heading p{margin:0}.attendance-panel-heading h3{font-size:1rem;font-weight:var(--font-weight-label, 500);color:var(--text)}.attendance-panel-heading p{margin-top:3px;color:var(--muted);font-size:.76rem;line-height:1.35}.attendance-panel-heading>span{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:4px 8px;background:#ffffffd1;color:var(--muted);font-size:.7rem;font-weight:var(--font-weight-label, 500);white-space:nowrap}.attendance-panel-heading>span.complete{border-color:#16a34a38;background:#22c55e1a;color:#15803d}.attendance-list{display:flex;flex-direction:column;gap:10px}.attendance-row{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:12px;border-radius:12px;background:color-mix(in srgb,var(--student-color, #0a84ff) 6%,white);border:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 24%,white)}.attendance-student-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px}.attendance-student-heading strong{min-width:0;overflow:hidden;color:var(--text);font-size:.92rem;text-overflow:ellipsis;white-space:nowrap}.attendance-student-color{width:14px;height:28px;border-radius:4px;background:var(--student-color, #0a84ff);box-shadow:0 0 0 3px color-mix(in srgb,var(--student-color, #0a84ff) 14%,transparent)}.attendance-row-menu{position:relative}.attendance-row-menu>summary{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;color:var(--muted);cursor:pointer;list-style:none}.attendance-row-menu>summary::-webkit-details-marker{display:none}.attendance-row-menu>summary:hover,.attendance-row-menu[open]>summary{background:#ffffffe6;color:var(--text)}.attendance-row-menu>div{position:absolute;z-index:6;top:calc(100% + 5px);inset-inline-end:0;width:220px;display:grid;gap:6px;padding:7px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow-dropdown)}.attendance-row-menu button{min-height:34px;border:0;border-radius:7px;padding:0 9px;background:#f43f5e14;color:#b4233c;font-weight:var(--font-weight-label, 500);text-align:start;cursor:pointer}.attendance-row-menu button:disabled{cursor:not-allowed;opacity:.5}.attendance-row-menu small{padding:0 4px 3px;color:var(--muted);line-height:1.35}.attendance-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.attendance-choice-grid button{min-width:0;min-height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:1px solid var(--line);background:#fff;color:var(--text);padding:7px 5px;border-radius:8px;cursor:pointer;line-height:1.15;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease,transform .14s ease}.attendance-choice-grid button:hover:not(:disabled){border-color:color-mix(in srgb,var(--student-color, #0a84ff) 45%,var(--line));transform:translateY(-1px)}.attendance-choice-grid button:disabled{cursor:not-allowed;opacity:.68}.attendance-choice-grid button>span{display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:.72rem;font-weight:var(--font-weight-label, 500);text-align:center}.attendance-choice-grid button small{color:var(--muted);font-size:.68rem;font-weight:var(--font-weight-label, 500)}.attendance-choice-grid button.present.active{border-color:color-mix(in srgb,#15803d 68%,var(--line));background:color-mix(in srgb,#22c55e 20%,var(--surface-card));color:#116b34;box-shadow:inset 0 0 0 1px color-mix(in srgb,#15803d 24%,transparent)}.attendance-choice-grid button.late-cancel.active{border-color:color-mix(in srgb,#b45309 66%,var(--line));background:color-mix(in srgb,#f59e0b 22%,var(--surface-card));color:#854d0e;box-shadow:inset 0 0 0 1px color-mix(in srgb,#b45309 24%,transparent)}.attendance-choice-grid button.no-charge.active{border-color:color-mix(in srgb,#a16207 58%,var(--line));background:color-mix(in srgb,#facc15 18%,var(--surface-card));color:#765704;box-shadow:inset 0 0 0 1px color-mix(in srgb,#a16207 20%,transparent)}.attendance-choice-grid button.active small{color:currentColor}.attendance-result{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0;border-top:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 15%,var(--line));padding-top:9px;color:var(--muted);font-size:.72rem}.attendance-result strong{color:var(--text);font-weight:var(--font-weight-label, 500)}.attendance-result.late-cancel strong{color:#be123c}.attendance-result.present strong,.attendance-result.no-charge strong{color:#15803d}.attendance-result.locked strong,.attendance-result.warning strong{color:#a16207}.lesson-drawer-option-a.drawer-card{width:min(440px,calc(100vw - 24px));display:grid;grid-template-rows:auto minmax(0,1fr);align-content:stretch;gap:0;padding:0;overflow:hidden;background:var(--surface-sheet, #fffdf8)}.lesson-drawer-header{display:grid;gap:14px;padding:20px 22px 16px;border-bottom:1px solid var(--line)}.lesson-drawer-header .eyebrow{margin:0 0 6px}.lesson-drawer-header h2{margin:0;overflow-wrap:anywhere}.lesson-drawer-meta{display:flex;flex-wrap:wrap;align-items:center;gap:5px 12px;margin:9px 0 0;color:var(--muted);font-size:12px}.lesson-drawer-meta span{display:inline-flex;align-items:center;gap:5px}.lesson-drawer-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:16px 22px 24px}.lesson-drawer-command-row{display:grid;grid-template-columns:repeat(4,44px);gap:8px;margin-bottom:16px}.lesson-drawer-icon-action{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0;background:var(--surface-card);color:var(--text);cursor:pointer}.lesson-drawer-icon-action:hover{border-color:color-mix(in srgb,var(--teach-green) 42%,var(--line));background:var(--teach-green-soft)}.lesson-drawer-icon-action.primary{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text, white))}.lesson-drawer-icon-action.danger{color:var(--rose)}.lesson-drawer-section{display:grid;gap:10px;padding:2px 0 16px}.lesson-drawer-section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.lesson-drawer-section h3,.lesson-drawer-section p{margin:0}.lesson-drawer-section h3{font-size:16px}.lesson-drawer-section p,.lesson-drawer-section>header>span{color:var(--muted);font-size:12px}.lesson-drawer-section>header>span{flex:0 0 auto}.lesson-drawer-student-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.lesson-drawer-student-grid[data-student-count="1"]{grid-template-columns:1fr}.lesson-drawer-student-grid[data-student-count="2"],.lesson-drawer-student-grid[data-student-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-drawer-student-toggle{min-width:0;min-height:44px;display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:0 10px;background:var(--surface-card);color:var(--text);cursor:pointer;text-align:start}.lesson-drawer-student-toggle>span{width:10px;height:10px;border-radius:999px;background:var(--student-color, var(--mgmt-blue));box-shadow:0 0 0 3px color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 16%,transparent)}.lesson-drawer-student-toggle strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-drawer-student-toggle[aria-pressed=true]{border-color:var(--teach-green);background:var(--teach-green-soft)}.lesson-drawer-message-box{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-card)}.lesson-drawer-recipient-line{min-height:42px;display:flex;align-items:center;gap:8px;padding:7px 11px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}.lesson-drawer-recipient-line strong{border:1px solid var(--line);border-radius:999px;padding:3px 8px;background:var(--surface-sheet-muted);color:var(--text)}.lesson-drawer-message-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}.lesson-drawer-message-actions button{min-width:0;min-height:50px;display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:6px 10px;background:var(--surface-card);color:var(--text);cursor:pointer;text-align:start}.lesson-drawer-message-actions button:hover:not(:disabled){border-color:var(--teach-green);background:var(--teach-green-soft)}.lesson-drawer-message-actions button:disabled{cursor:not-allowed;opacity:.5}.lesson-drawer-message-actions svg{flex:0 0 auto;color:var(--teach-action-soft-text)}.lesson-drawer-message-actions span{min-width:0}.lesson-drawer-message-actions strong,.lesson-drawer-message-actions small{display:block}.lesson-drawer-message-actions strong{font-size:12px}.lesson-drawer-message-actions small{margin-top:1px;color:var(--muted);font-size:12px}.lesson-drawer-message-actions .lesson-drawer-message-action-compact{grid-column:1 / -1;justify-self:center;width:auto;min-height:36px;padding-inline:14px}.lesson-drawer-message-action-compact strong{font-size:12px}.attendance-panel.attendance-panel-compact{gap:9px;margin:0;border-width:1px 0 0;border-radius:0;padding:16px 0 0;background:transparent}.attendance-panel-compact .attendance-panel-heading{align-items:flex-start}.attendance-panel-compact .attendance-panel-heading>span{border:0;padding:1px 0;background:transparent}.attendance-progress{height:4px;display:block;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--line) 66%,transparent)}.attendance-progress>span{display:block;height:100%;border-radius:inherit;background:var(--teach-green);transition:width .18s ease}.attendance-panel-compact .attendance-list{gap:0;overflow:visible;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-card)}.attendance-compact-legend,.attendance-panel-compact .attendance-row{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,44px) 32px;gap:5px;align-items:center}.attendance-panel-compact.attendance-panel-no-remove .attendance-compact-legend,.attendance-panel-compact.attendance-panel-no-remove .attendance-row{grid-template-columns:minmax(0,1fr) repeat(3,44px)}.attendance-compact-legend{min-height:38px;padding:0 8px;border:1px solid var(--line);border-bottom:0;border-radius:var(--radius-panel, 12px) var(--radius-panel, 12px) 0 0;background:var(--surface-sheet-muted);color:var(--muted);font-size:12px;line-height:1.1}.attendance-compact-legend+.attendance-list{border-radius:0 0 var(--radius-panel, 12px) var(--radius-panel, 12px)}.attendance-compact-legend span:not(:first-child){text-align:center}.attendance-panel-compact .attendance-row{min-height:58px;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:6px 8px;background:transparent}.attendance-panel-compact .attendance-row:last-child{border-bottom:0}.attendance-panel-compact .attendance-student-heading{grid-template-columns:auto minmax(0,1fr);gap:9px}.attendance-student-copy{min-width:0}.attendance-student-copy strong,.attendance-student-copy small{display:block;min-width:0}.attendance-student-copy strong{font-size:13px}.attendance-student-copy small{margin-top:1px;color:var(--muted);font-size:11px;line-height:1.15}.attendance-panel-compact .attendance-student-color{width:10px;height:10px;border-radius:999px}.attendance-panel-compact .attendance-choice-grid{display:contents}.attendance-panel-compact .attendance-choice-grid button{width:44px;min-width:44px;min-height:44px;padding:0;border:1px solid transparent;border-radius:var(--radius-control, 8px);background:transparent;color:var(--muted)}.attendance-panel-compact .attendance-choice-grid button:hover:not(:disabled){border-color:var(--line);background:var(--surface-sheet-muted);transform:none}.attendance-panel-compact .attendance-choice-grid button.present.active{border-color:color-mix(in srgb,var(--teach-green) 50%,var(--line));background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.attendance-panel-compact .attendance-choice-grid button.late-cancel.active{border-color:color-mix(in srgb,#a16207 45%,var(--line));background:color-mix(in srgb,#f59e0b 11%,var(--surface-card));color:#a16207}.attendance-panel-compact .attendance-choice-grid button.no-charge.active{border-color:var(--line);background:var(--surface-sheet-muted);color:var(--text)}.attendance-compact-menu{justify-self:end}.attendance-compact-menu>summary{width:32px;height:44px}.attendance-compact-remove{width:44px;min-width:44px;min-height:44px;display:grid;place-items:center;justify-self:end;border:1px solid transparent;border-radius:var(--radius-control, 8px);background:transparent;color:var(--rose);cursor:pointer}.attendance-compact-remove:hover:not(:disabled){border-color:var(--line);background:var(--surface-sheet-muted)}.attendance-compact-remove:disabled{cursor:not-allowed;opacity:.42}.lesson-reminder-backdrop{position:fixed;inset:0;z-index:calc(var(--z-dialog, 1000) + 1);display:grid;place-items:center;padding:18px;background:#0f172a6b}.lesson-reminder-dialog{width:min(480px,100%);max-height:min(720px,calc(100dvh - 36px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sheet, 20px);background:var(--surface-sheet);box-shadow:var(--shadow-dialog)}.lesson-cancellation-message-dialog{width:min(520px,100%)}.lesson-reminder-dialog>header{display:grid;grid-template-columns:40px minmax(0,1fr) 44px;gap:10px;align-items:center;padding:18px 20px 14px;border-bottom:1px solid var(--line)}.lesson-reminder-dialog>header .eyebrow,.lesson-reminder-dialog>header h2{margin:0}.lesson-reminder-dialog>header h2{font-size:21px}.lesson-reminder-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.lesson-reminder-dialog>header button{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);cursor:pointer}.lesson-reminder-body{min-height:0;overflow-y:auto;display:grid;align-content:start;gap:12px;padding:18px 20px}.lesson-reminder-recipient{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;margin:0;padding:10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-sheet-muted)}.lesson-reminder-recipient span,.lesson-reminder-recipient small{color:var(--muted);font-size:12px}.lesson-reminder-body label{display:grid;gap:7px;font-weight:var(--font-weight-label, 500)}.lesson-reminder-message-field{display:grid;gap:7px}.lesson-reminder-message-field label{font-weight:var(--font-weight-label, 500)}.lesson-reminder-body textarea{width:100%;resize:vertical;border:1px solid var(--line);border-radius:var(--radius-control);padding:10px;background:var(--surface-input);color:var(--text);line-height:1.5}.lesson-reminder-body>small{color:var(--muted);font-size:12px}.lesson-reminder-dialog>footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--line);background:var(--surface-sheet-muted)}.lesson-cancellation-copy-button{display:inline-flex;min-height:44px;align-items:center;gap:7px}.lesson-cancellation-whatsapp-button{width:44px;min-width:44px;padding:0}.lesson-cancellation-copy-feedback{margin:0;color:var(--teach-green, #157360);font-size:12px;font-weight:var(--font-weight-heading, 700)}.lesson-cancellation-copy-feedback.is-error{color:var(--danger-text, #9a2f2f)}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.lesson-drawer-option-a.drawer-card{width:100%;max-width:none}.lesson-drawer-header{padding:16px 16px 14px}.lesson-drawer-scroll{padding:14px 16px 28px}.lesson-drawer-student-grid{grid-template-columns:1fr}.lesson-drawer-student-toggle{min-height:48px}.lesson-drawer-message-actions{grid-template-columns:1fr}.lesson-drawer-message-actions .lesson-drawer-message-action-compact{min-height:44px}.attendance-compact-legend,.attendance-panel-compact .attendance-row{grid-template-columns:minmax(0,1fr) repeat(3,44px) 32px}.lesson-reminder-backdrop{place-items:end center;padding:0}.lesson-reminder-dialog{width:100%;max-height:94dvh;border-radius:var(--radius-sheet) var(--radius-sheet) 0 0}.lesson-reminder-dialog>footer{padding-bottom:max(12px,env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){.attendance-progress>span{transition:none}}.payment-source{font-size:.7rem;font-weight:var(--font-weight-label, 500);padding:2px 8px;border-radius:999px;background:var(--mgmt-blue-soft);color:var(--app-action-text)}.payment-section{display:flex;flex-direction:column;gap:12px;margin-top:16px;padding:16px}.payment-section h2{margin:0;font-size:1rem;color:var(--text)}.payment-row{display:grid;grid-template-columns:minmax(180px,2fr) auto auto auto;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:#fff;border:1px solid var(--line)}.payment-row.paid{opacity:.85;background:#22c55e0f}.payment-method{font-size:.78rem;color:var(--muted)}.mark-paid-modal{position:fixed;inset:0;background:#0006;z-index:50;display:grid;place-items:center;padding:20px}.mark-paid-card{width:min(420px,100%);background:var(--surface-sheet);border-radius:var(--radius-sheet);padding:22px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-dialog)}.manual-charge-card{width:min(480px,100%)}.record-payment-card{width:min(600px,100%);max-height:calc(100dvh - 40px);overflow-y:auto}.record-payment-description{margin:0;color:var(--muted);line-height:1.45}.record-payment-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.payment-allocation-preview{display:grid;gap:10px;border:1px solid color-mix(in srgb,var(--teach-green) 34%,var(--line));border-radius:var(--radius-panel, 12px);padding:12px;background:color-mix(in srgb,var(--teach-green-soft) 68%,var(--surface-card))}.payment-allocation-preview>header,.payment-allocation-list>div,.payment-allocation-totals{display:flex;align-items:center;justify-content:space-between;gap:12px}.payment-allocation-preview>header>span,.payment-allocation-totals small{color:var(--muted);font-size:12px}.payment-allocation-preview>p,.payment-allocation-preview>small{margin:0;color:var(--muted);font-size:13px;line-height:1.4}.payment-allocation-list{display:grid;gap:6px;border-block:1px solid color-mix(in srgb,var(--teach-green) 20%,var(--line));padding-block:8px}.payment-allocation-list>div{min-height:28px;font-size:13px}.payment-allocation-list>div>span{min-width:0;display:inline-flex;align-items:center;gap:6px}.payment-allocation-list svg{flex:0 0 auto;color:var(--teach-action-soft-text)}.payment-allocation-totals{align-items:stretch}.payment-allocation-totals>span{min-width:0;display:grid;gap:2px}.payment-allocation-totals>span:last-child{text-align:end}.payment-credit-record{width:fit-content;justify-self:start}.payment-history-credit-remainder{background:color-mix(in srgb,var(--teach-green-soft) 72%,var(--surface-card))}@media(max-width:700px){.record-payment-fields{grid-template-columns:minmax(0,1fr)}.record-payment-card.mobile-focused-payment-card{max-height:none;overflow:visible}}.mark-paid-card label{display:flex;flex-direction:column;gap:4px;font-size:.85rem;font-weight:600}.mark-paid-card input{padding:8px 10px;border:1px solid var(--line);border-radius:8px;font:inherit}.payment-charge-scope{display:grid;gap:10px}.mark-paid-card .payment-charge-scope-all,.mark-paid-card .payment-charge-scope-list>label{min-height:48px;display:flex;flex-direction:row;align-items:center;gap:10px;border:1px solid var(--line);border-radius:var(--radius-control, 10px);padding:10px 12px;background:var(--surface-card);cursor:pointer}.mark-paid-card .payment-charge-scope input[type=checkbox]{width:20px;min-width:20px;height:20px;margin:0;padding:0;accent-color:var(--teach-green)}.payment-charge-scope-all>span,.payment-charge-scope-list label>span{min-width:0;display:grid;flex:1;gap:2px}.payment-charge-scope-all small,.payment-charge-scope-list small{color:var(--muted);font-size:12px;font-weight:400}.payment-charge-scope-list{min-width:0;display:grid;gap:6px;margin:0;border:0;padding:0}.payment-charge-scope-list legend{margin-bottom:6px;color:var(--muted);font-size:12px;font-weight:600}.payment-charge-scope-list label>span{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.payment-charge-scope-list label strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mark-paid-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.info-card.empty{opacity:.85}.info-card.empty .empty-state{margin:0}.drawer-student{display:grid;gap:6px;margin-top:8px;padding:14px;border-radius:18px;background:color-mix(in srgb,var(--student-color, #0a84ff) 12%,white);border:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 22%,white)}.drawer-student>div:first-child,.drawer-student-detail>div:first-child{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:7px}.drawer-student>div:first-child small,.drawer-student-detail>div:first-child small{grid-column:2}.assignment-sheet{position:fixed;inset:0;z-index:45;display:grid;place-items:center;padding:20px;background:#1d1d1f3d}.assignment-card{width:min(780px,calc(100vw - 40px));max-height:calc(100svh - 40px);display:grid;gap:12px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-sheet);background:#fffffff5;box-shadow:var(--shadow-dialog);overflow:hidden}.quick-booking-card{grid-template-rows:auto auto minmax(0,1fr) auto auto}.quick-booking-card>.assignment-list,.quick-booking-card>.assignment-inquiry-grid{min-height:0;overflow-y:auto;overscroll-behavior:contain}.assignment-card h2{margin-bottom:0;font-size:24px}.quick-booking-card .assignment-card-header{align-items:center}.quick-booking-card .assignment-card-header h2{font-size:20px;line-height:1.25}.assignment-card-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px}.assignment-card-header small{display:block;margin-top:3px;color:var(--muted);font-size:12px}.assignment-schedule-meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;margin-top:4px}.assignment-schedule-meta small{margin:0}.assignment-schedule-meta .assignment-start-time{width:132px;font-variant-numeric:tabular-nums}.assignment-close{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:#1d1d1f14;color:var(--text);cursor:pointer}.assignment-list{min-height:0;display:grid;gap:10px;overflow-y:auto;scrollbar-gutter:stable}.assignment-group-section{display:grid;border-bottom:1px solid var(--line)}.assignment-group-section>span{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);text-transform:uppercase}.assignment-group-options,.assignment-student-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.calendar-student-picker-grid.compact-calendar-student-picker{max-height:146px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-inline-end:4px}.assignment-footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:10px;background:var(--surface-panel-strong)}.assignment-footer>span{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.assignment-footer .primary-button{min-width:110px}.assignment-inquiry-grid,.assignment-confirmation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.assignment-inquiry-grid label,.assignment-confirmation-grid label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.assignment-inquiry-grid input,.assignment-confirmation-grid input,.assignment-confirmation-grid select{width:100%;min-height:36px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);padding:8px 10px}.assignment-inquiry-grid .assignment-inquiry-save-contact{grid-column:1 / -1;display:flex;align-items:center;gap:8px;color:var(--text)}.assignment-inquiry-grid .assignment-inquiry-save-contact input{width:18px;min-height:18px;margin:0}.attendance-locked-until-start{margin:0 0 12px;border-radius:var(--radius-control);padding:9px 11px;background:var(--surface-muted-band);color:var(--muted);font-size:12px}.lesson-drawer-cancelled{display:inline-flex;align-items:center;gap:5px;margin-top:5px;color:var(--rose);font-size:12px;font-weight:var(--font-weight-label, 600)}.payment-statistics-section{display:grid;gap:18px}.payment-statistics-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.payment-statistics-heading-copy{min-width:0;display:flex;align-items:center;gap:12px}.payment-statistics-heading-copy>span{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:var(--radius-panel);background:var(--mgmt-blue-soft);color:var(--app-action-text)}.payment-statistics-heading h2,.payment-statistics-heading h3,.payment-statistics-heading p{margin:0}.payment-statistics-heading p{margin-top:4px;color:var(--muted)}.payment-statistics-period-field{width:min(300px,100%);display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.payment-statistics-period{width:100%}.payment-statistics-period-field .payment-history-filter-trigger{min-height:42px}.payment-statistics-block{min-width:0;display:grid;gap:14px;padding-top:18px;border-top:1px solid var(--line)}.payment-statistics-block-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.payment-statistics-block-heading h3,.payment-statistics-block-heading p{margin:0}.payment-statistics-block-heading h3{font-size:15px}.payment-statistics-block-heading p{margin-top:3px;color:var(--muted);font-size:12px;line-height:1.45}.payment-live-debt{padding:16px;border:1px solid color-mix(in srgb,var(--rose) 18%,var(--line));border-radius:var(--radius-panel);background:color-mix(in srgb,var(--rose) 2.5%,var(--surface-card))}.payment-live-badge{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border-radius:999px;color:color-mix(in srgb,var(--rose) 78%,var(--text));background:color-mix(in srgb,var(--rose) 9%,var(--surface-card));font-size:11px;font-weight:var(--font-weight-label, 500);white-space:nowrap}.payment-statistics-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.payment-statistics-summary article{min-width:0;display:grid;align-content:start;gap:5px;border:1px solid var(--line);border-radius:var(--radius-panel);padding:14px;background:var(--surface-card)}.payment-statistics-summary span,.payment-statistics-summary small{color:var(--muted);font-size:12px}.payment-statistics-summary strong{font-size:20px;line-height:1.2}.payment-live-debt-primary{border-color:color-mix(in srgb,var(--rose) 26%,var(--line))!important;background:color-mix(in srgb,var(--rose) 5%,var(--surface-card))!important}.payment-live-debt-primary strong{color:color-mix(in srgb,var(--rose) 80%,var(--text))}.payment-debt-aging{display:grid;gap:9px}.payment-debt-aging-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.payment-debt-aging-heading strong{font-size:12px}.payment-debt-aging-heading span{color:var(--muted);font-size:11px}.payment-debt-aging-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.payment-debt-age{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:3px 10px;border:1px solid var(--line);border-radius:var(--radius-control);padding:10px 11px;background:var(--surface-card)}.payment-debt-age span{color:var(--text);font-size:12px;font-weight:var(--font-weight-label, 500)}.payment-debt-age strong{font-size:14px}.payment-debt-age small{grid-column:1 / -1;color:var(--muted);font-size:11px}.payment-debt-age-attention{border-color:color-mix(in srgb,var(--rose) 14%,var(--line));background:color-mix(in srgb,var(--rose) 3%,var(--surface-card))}.payment-debt-age-overdue{border-color:color-mix(in srgb,var(--rose) 26%,var(--line));background:color-mix(in srgb,var(--rose) 7%,var(--surface-card))}.payment-best-month{min-width:140px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 10px;border-radius:var(--radius-control);padding:9px 11px;background:var(--surface-muted-band)}.payment-best-month span,.payment-best-month small{color:var(--muted);font-size:11px}.payment-best-month small{grid-column:1 / -1}.payment-best-month strong{font-size:14px}.payment-income-chart{min-height:250px;display:grid;grid-template-columns:repeat(var(--statistics-columns, 12),minmax(42px,1fr));align-items:end;gap:8px;overflow-x:auto;padding:18px 12px 8px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.payment-income-chart article{min-width:42px;display:grid;grid-template-rows:auto 160px auto;align-items:end;gap:7px;text-align:center}.payment-income-chart strong{font-size:10px;white-space:nowrap}.payment-income-bar-track{height:160px;display:flex;align-items:flex-end;border-radius:7px;background:color-mix(in srgb,var(--mgmt-blue-soft) 55%,transparent);overflow:hidden}.payment-income-bar-track span{width:100%;min-height:3px;border-radius:7px 7px 0 0;background:var(--mgmt-blue)}.payment-income-chart small{color:var(--muted);font-size:10px;white-space:nowrap}.payment-income-chart-annual{grid-template-columns:repeat(var(--statistics-columns, 1),minmax(84px,140px));justify-content:start}.payment-income-chart-daily{position:relative;min-height:250px;grid-template-columns:repeat(var(--statistics-columns, 31),minmax(0,1fr));gap:5px;overflow:hidden;padding:24px 14px 10px}.payment-income-chart-daily:before{position:absolute;inset:24px 14px 36px;content:"";background:repeating-linear-gradient(to bottom,color-mix(in srgb,var(--line) 62%,transparent) 0 1px,transparent 1px 44px);pointer-events:none}.payment-income-chart-daily article{position:relative;z-index:1;min-width:0;grid-template-rows:176px auto;gap:8px}.payment-income-chart-daily article>strong{display:none}.payment-income-chart-daily .payment-income-bar-track{height:176px;justify-content:center;border-radius:0;background:transparent;overflow:visible}.payment-income-chart-daily .payment-income-bar-track span{width:100%;max-width:24px;border-radius:5px 5px 2px 2px;background:var(--mgmt-blue);box-shadow:0 1px 1px color-mix(in srgb,var(--mgmt-blue) 24%,transparent);transition:filter .14s ease,transform .14s ease;transform-origin:bottom}.payment-income-chart-daily article.is-negative .payment-income-bar-track span{background:var(--rose);box-shadow:0 1px 1px color-mix(in srgb,var(--rose) 24%,transparent)}.payment-income-chart-daily article.is-zero .payment-income-bar-track span{background:color-mix(in srgb,var(--line) 82%,var(--muted));box-shadow:none}.payment-income-chart-daily article:hover .payment-income-bar-track span{filter:saturate(1.12) brightness(.94);transform:scaleX(1.08)}.payment-income-chart-daily small{font-size:9px;font-variant-numeric:tabular-nums}.payment-yearly-table-wrap{min-width:0;overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-panel)}.payment-yearly-table{width:100%;min-width:620px;border-collapse:collapse;text-align:start}.payment-yearly-table th,.payment-yearly-table td{padding:11px 13px;border-bottom:1px solid var(--line);text-align:start;white-space:nowrap}.payment-yearly-table thead th{color:var(--muted);background:var(--surface-muted-band);font-size:11px;font-weight:var(--font-weight-label, 500)}.payment-yearly-table tbody th,.payment-yearly-table tbody td{font-size:12px}.payment-yearly-table tbody tr:last-child>*{border-bottom:0}.payment-yearly-table .has-open-debt{color:color-mix(in srgb,var(--rose) 78%,var(--text));font-weight:var(--font-weight-label, 500)}.payment-statistics-note{margin:0;color:var(--muted);font-size:12px;line-height:1.5}@media(max-width:700px){.payment-statistics-heading{align-items:stretch;flex-direction:column}.payment-statistics-period-field{width:100%}.payment-statistics-block-heading{align-items:flex-start}.payment-statistics-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-live-debt{padding:13px}.payment-debt-aging-heading{align-items:flex-start;flex-direction:column;gap:2px}.payment-debt-aging-grid{grid-template-columns:1fr}.payment-income-heading{align-items:stretch;flex-direction:column}.payment-best-month{width:100%}}@media(prefers-reduced-motion:reduce){.payment-income-chart-daily .payment-income-bar-track span{transition:none}}.assignment-confirmation-grid{grid-template-columns:minmax(150px,.35fr) minmax(0,1fr);padding-top:12px;border-top:1px solid var(--line)}.quick-booking-card .assignment-confirmation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-booking-card .assignment-delivery-detail{grid-column:1 / -1}.repeat-scheduler-card{display:grid;gap:12px;overflow-y:auto}.repeat-scheduler-card>.assignment-card-header{position:sticky;top:0;z-index:2;padding-bottom:8px;border-bottom:1px solid var(--line);background:var(--surface-panel-strong, #fff)}.repeat-target-toggle{display:inline-flex;width:fit-content;gap:5px;border:1px solid var(--line);border-radius:8px;padding:4px;background:#ffffffb8}.repeat-target-toggle button{min-height:32px;border:0;border-radius:8px;padding:0 12px;background:transparent;color:var(--muted);font-weight:var(--font-weight-label, 500)}.repeat-target-toggle button.active{background:var(--mgmt-blue-soft);color:var(--app-action-text)}.repeat-target-toggle button:disabled{opacity:.45;cursor:not-allowed}.assignment-student{min-height:44px;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;column-gap:7px;border:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 20%,white);border-radius:8px;padding:5px 7px;background:color-mix(in srgb,var(--student-color, #0a84ff) 10%,white);color:var(--text);text-align:start;cursor:pointer}.assignment-student.selected{border-color:color-mix(in srgb,var(--student-color, #0a84ff) 62%,var(--line));background:color-mix(in srgb,var(--student-color, #0a84ff) 30%,white);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--student-color, #0a84ff) 22%,white)}.assignment-student:disabled{opacity:.46;cursor:not-allowed}.assignment-check{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;color:color-mix(in srgb,var(--student-color, #0a84ff) 76%,#172033)}.assignment-student strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.05}.assignment-student small{grid-column:2;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.05}.lesson-student-editor-card{width:min(820px,calc(100vw - 40px));grid-template-rows:auto auto minmax(0,1fr) auto}.lesson-student-editor-counts{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.lesson-student-editor-counts strong{color:var(--text);font-weight:var(--font-weight-label, 500)}.lesson-student-editor-list{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.lesson-student-editor-footer>span{white-space:nowrap}.lesson-student-editor-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.lesson-student-confirmation-card{width:min(640px,calc(100vw - 40px));grid-template-rows:auto minmax(0,1fr) auto}.lesson-student-confirmation-body,.lesson-student-parent-message-choice{min-height:0;display:grid;gap:12px}.lesson-student-confirmation-body{overflow-y:auto;overscroll-behavior:contain}.lesson-student-change-list{display:grid;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);overflow:hidden}.lesson-student-change-row{min-height:44px;display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:10px;padding:8px 12px}.lesson-student-change-row+.lesson-student-change-row{border-top:1px solid var(--line)}.lesson-student-change-row.added{background:color-mix(in srgb,var(--success, var(--mgmt-green)) 9%,var(--surface-card));color:color-mix(in srgb,var(--success, var(--mgmt-green)) 78%,var(--text))}.lesson-student-change-row.removed{background:color-mix(in srgb,var(--muted) 9%,var(--surface-card));color:color-mix(in srgb,var(--muted) 84%,var(--text))}.lesson-student-change-row strong{color:var(--text)}.lesson-student-parent-message-choice{border-top:1px solid var(--line);padding-top:12px}.lesson-student-parent-message-choice h3,.lesson-student-parent-message-choice p{margin:0}.lesson-student-parent-message-choice h3{font-size:16px}.lesson-student-parent-message-choice p,.lesson-student-parent-message-choice>small{color:var(--muted);font-size:12px}.lesson-student-parent-message-choice .assignment-student-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:700px){.assignment-sheet{padding:10px}.assignment-card,body[data-app-layout-mode=phone] .assignment-card{width:min(620px,calc(100vw - 20px));max-height:calc(100svh - 20px);border-radius:12px;padding:12px}.assignment-group-options,.assignment-student-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-booking-card .assignment-group-options{grid-template-columns:minmax(0,1fr)}.quick-booking-card .assignment-card-header h2{font-size:17px}.quick-booking-card .assignment-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.quick-booking-card .assignment-footer>button:only-child{grid-column:1 / -1}}button,.calendar-chip,.student-drag-card,.payer-card,.contact-card,.info-card{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease}button:focus-visible{outline:3px solid rgba(10,132,255,.34);outline-offset:3px}.calendar-chip:focus-visible,.slot-add-button:focus-visible,.student-card-remove:focus-visible{outline:3px solid rgba(10,132,255,.34);outline-offset:2px}button:active{transform:scale(.985)}.account-button:hover,.workspace-nav button:hover,.calendar-chip:hover,.student-drag-card:hover,.payer-card:hover,.contact-card:hover,.info-card:hover{box-shadow:var(--shadow-panel)}.student-drag-card:hover,.calendar-chip:hover{transform:translateY(-2px)}.brand-mark{box-shadow:inset 0 1px #ffffff3d,var(--app-brand-shadow)}.account-button{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.primary-button,.quiet-button,.action-stack button,.contact-actions button,.drawer-actions button,.drawer-close{display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary-button:hover,.drawer-actions button:hover,.action-stack button:first-child:hover{background:#050506}.quiet-button{justify-self:start;background:#1d1d1f14;color:var(--text)}.workspace-nav{background:linear-gradient(180deg,#ffffffd1,#ffffff8f);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.workspace-nav button{display:inline-flex;align-items:center;gap:10px;font-weight:var(--font-weight-label, 500)}.workspace-nav button:not(.active):hover{background:#1d1d1f0f;color:var(--text)}.workspace-nav .active{box-shadow:none}.management-main,.side-panel,.tool-page,.calendar-roster,.contacts-roster{background:var(--surface-panel)}.soft-pill{padding:0 14px;box-shadow:inset 0 1px 0 var(--line)}.day-column{position:relative;overflow:hidden}.day-column:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 1px #ffffffbf}.calendar-chip{position:relative;min-height:58px;padding:8px 30px 8px 12px;overflow:hidden}.calendar-chip:before{content:"";position:absolute;inset:8px auto 8px 0;width:4px;border-radius:999px;background:#0a84ff8c}.calendar-chip.green:before{background:#22c55e94}.calendar-chip.rose:before{background:#f43f5e8c}.calendar-chip.gray:before{background:#6e6e736b}.calendar-chip.google-external-chip{pointer-events:none;border-style:dashed;border-color:#4285f457;background:#ffffffc7;color:#1d1d1f;cursor:default}.calendar-management-page .desktop-week-calendar .calendar-chip:not(.google-external-chip){--surface-card: var(--surface-sheet, var(--bg));z-index:2}.calendar-management-page .desktop-week-calendar .google-external-chip{inset-inline-start:var(--chip-column-start, 0%);width:var(--chip-column-width, 100%);z-index:1}.calendar-chip.google-external-chip:before{background:#4285f494}.calendar-chip.google-external-chip small{color:#4267b2;font-size:12px;font-weight:var(--font-weight-label, 500)}.month-cell-item.google{border-color:#4285f438;background:#4285f414;color:#2851a3}.chip-grip{position:absolute;top:8px;inset-inline-end:8px;color:#1d1d1f42}.calendar-chip:hover .chip-grip,.student-drag-card:hover>svg{color:#1d1d1f8a}.calendar-chip.gray:hover{transform:none;box-shadow:none}.student-drag-card{grid-template-columns:auto 1fr auto}.student-drag-card>svg{color:#1d1d1f38}.student-drag-card.selected{box-shadow:none}.finance-summary div{box-shadow:inset 0 1px #ffffffad}.info-card{min-height:164px}.inline-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.inline-actions button{min-height:34px;border:0;border-radius:999px;padding:0 10px;background:#1d1d1f12;color:var(--text);display:inline-flex;align-items:center;gap:6px;cursor:pointer}.inline-actions button:hover,.info-card button:hover,.contact-actions button:hover{background:#1d1d1f1f}.lesson-drawer{animation:fade-in .16s ease}.drawer-card{animation:slide-in .22s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in{0%{transform:translate(24px);opacity:.8}to{transform:translate(0);opacity:1}}@keyframes slide-up{0%{transform:translateY(22px);opacity:.82}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:1ms!important}}@media(max-width:860px){.screen{min-height:100svh;padding:12px 10px 18px}.brand-name{display:none}h1{font-size:clamp(34px,12vw,46px)}.hero-copy{font-size:15px}.workspace-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));flex-direction:row;position:static;width:100%;border-radius:18px;padding:5px;overflow:hidden}.workspace-nav button{width:auto;min-height:44px;padding:0 4px;font-size:12px;text-align:center;justify-content:center;gap:4px}.workspace-nav button svg{display:none}.management-layout,.calendar-management-page,.contacts-page,.payments-page{grid-template-columns:1fr;gap:12px}.calendar-sync-panel{align-items:stretch;flex-direction:column}.calendar-sync-actions{width:100%}.calendar-sync-actions button{flex:1}.management-main,.tool-page{padding:13px;border-radius:18px}.soft-pill{min-height:34px;padding:0 12px}.week-calendar{grid-template-columns:1fr;gap:8px}.status-card{padding:14px}.status-grid{grid-template-columns:1fr 1fr}.day-column{min-height:auto;border-radius:12px}.calendar-roster,.contacts-roster{padding:10px;border-radius:18px}.student-profile-grid{grid-template-columns:1fr}.payment-row{grid-template-columns:minmax(120px,1fr) 56px 46px 82px;gap:6px;padding:6px 8px}.history-list article{grid-template-columns:90px 50px minmax(0,1fr)}.history-list article b{grid-column:3;justify-self:start}.lesson-drawer{align-items:end;justify-items:stretch;background:#1d1d1f14}.drawer-card{width:100%;height:auto;max-height:88svh;padding:16px;border-radius:20px 20px 0 0;box-shadow:var(--shadow-sheet);animation:slide-up .19s ease}.drawer-actions button,.drawer-status button,.contact-methods button,.contact-shortcut,.assignment-student{min-height:44px}.assignment-card{width:min(620px,calc(100vw - 20px));max-height:calc(100svh - 20px);border-radius:12px;padding:12px}.finance-summary,.contact-actions,.contact-edit-grid{grid-template-columns:1fr}.payments-table-panel,.payment-detail-panel{border-radius:18px}.payer-card,.contact-card{align-items:flex-start}}@media(max-width:380px){.account-button{min-height:40px;padding-inline-end:8px}.account-button span:last-child{display:none}}body[data-app-layout-mode=phone]{min-width:0;display:flex;justify-content:flex-start;background:radial-gradient(circle at 10% 5%,rgba(10,132,255,.13),transparent 30rem),radial-gradient(circle at 90% 12%,rgba(34,197,94,.12),transparent 28rem),#f5f5f7}body[data-app-layout-mode=phone] #root{width:min(390px,100vw);min-height:100vh;background:var(--bg);box-shadow:0 0 0 1px #1d1d1f14,0 28px 90px #00000029;overflow-x:hidden}body.phone-preview-wide{display:block;overflow-x:hidden}body.phone-preview-wide #root{width:100%;box-shadow:none}body[data-app-layout-mode=phone] .screen{min-height:100svh;padding:12px 10px 18px;width:100%;max-width:100%;overflow-x:hidden}body[data-app-layout-mode=phone] .top-bar,body[data-app-layout-mode=phone] .management-screen,body[data-app-layout-mode=phone] .workspace-nav,body[data-app-layout-mode=phone] .calendar-management-page,body[data-app-layout-mode=phone] .calendar-tool,body[data-app-layout-mode=phone] .week-calendar,body[data-app-layout-mode=phone] .day-column,body[data-app-layout-mode=phone] .hour-slot,body[data-app-layout-mode=phone] .slot-items,body[data-app-layout-mode=phone] .calendar-chip{min-width:0;max-width:100%}body[data-app-layout-mode=phone] .account-button{max-width:122px;overflow:hidden}body[data-app-layout-mode=phone] .brand-name{display:none}body[data-app-layout-mode=phone] h1{font-size:clamp(34px,12vw,46px)}body[data-app-layout-mode=phone] .hero-copy{font-size:15px}body[data-app-layout-mode=phone] .workspace-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));flex-direction:row;position:static;width:100%;border-radius:18px;padding:5px;overflow:hidden}body[data-app-layout-mode=phone] .workspace-nav button{width:auto;min-width:0;min-height:44px;padding:0 4px;font-size:12px;text-align:center;justify-content:center;gap:4px;overflow:hidden}body[data-app-layout-mode=phone] .workspace-nav button svg{display:none}body[data-app-layout-mode=phone] .management-layout,body[data-app-layout-mode=phone] .calendar-management-page,body[data-app-layout-mode=phone] .contacts-page,body[data-app-layout-mode=phone] .payments-page{grid-template-columns:1fr;gap:12px}body[data-app-layout-mode=phone] .management-main,body[data-app-layout-mode=phone] .tool-page{padding:13px;border-radius:18px}body[data-app-layout-mode=phone] .calendar-tool .section-title{display:grid;grid-template-columns:1fr;align-items:start;gap:10px}body[data-app-layout-mode=phone] .calendar-view-toggle button{min-height:32px;padding:0 10px;font-size:12px}body[data-app-layout-mode=phone] .calendar-view-toggle{justify-self:start}body[data-app-layout-mode=phone] .account-copy strong{font-size:13px}body[data-app-layout-mode=phone] .account-copy small{font-size:12px}body[data-app-layout-mode=phone] .month-weekdays,body[data-app-layout-mode=phone] .month-grid{gap:4px}body[data-app-layout-mode=phone] .month-cell{min-height:82px;border-radius:8px;padding:6px}body[data-app-layout-mode=phone] .month-cell small{font-size:12px}body[data-app-layout-mode=phone] .soft-pill{min-height:34px;padding:0 12px}body[data-app-layout-mode=phone] .week-calendar{grid-template-columns:1fr;gap:8px}body[data-app-layout-mode=phone] .calendar-chip{overflow:hidden}body[data-app-layout-mode=phone] .status-card{padding:14px}body[data-app-layout-mode=phone] .status-grid{grid-template-columns:1fr 1fr}body[data-app-layout-mode=phone] .day-column{min-height:auto;border-radius:12px}body[data-app-layout-mode=phone] .calendar-roster,body[data-app-layout-mode=phone] .contacts-roster{padding:10px;border-radius:18px}body[data-app-layout-mode=phone] .student-profile-grid{grid-template-columns:1fr}body[data-app-layout-mode=phone] .payment-row{grid-template-columns:minmax(120px,1fr) 56px 46px 82px;gap:6px;padding:6px 8px}body[data-app-layout-mode=phone] .history-list article{grid-template-columns:90px 50px minmax(0,1fr)}body[data-app-layout-mode=phone] .history-list article b{grid-column:3;justify-self:start}body[data-app-layout-mode=phone] .lesson-drawer{align-items:end;justify-items:stretch}body[data-app-layout-mode=phone] .drawer-card{width:100%;padding:16px;box-shadow:var(--shadow-sheet);animation:slide-up .19s ease}body[data-app-layout-mode=phone] .drawer-actions button,body[data-app-layout-mode=phone] .drawer-status button,body[data-app-layout-mode=phone] .contact-methods button,body[data-app-layout-mode=phone] .contact-shortcut,body[data-app-layout-mode=phone] .assignment-student{min-height:44px}body[data-app-layout-mode=phone] .assignment-card{width:min(620px,calc(100vw - 20px));max-height:calc(100svh - 20px);border-radius:12px;padding:12px}body[data-app-layout-mode=phone] .finance-summary,body[data-app-layout-mode=phone] .contact-actions,body[data-app-layout-mode=phone] .contact-edit-grid{grid-template-columns:1fr}body[data-app-layout-mode=phone] .payments-table-panel,body[data-app-layout-mode=phone] .payment-detail-panel{border-radius:18px}body[data-app-layout-mode=phone] .payer-card,body[data-app-layout-mode=phone] .contact-card{align-items:flex-start}@media(min-width:861px){body:not([data-app-layout-mode=phone]) .screen{padding:20px clamp(18px,3vw,42px) 30px}body:not([data-app-layout-mode=phone]) .home-hero h1{font-size:clamp(42px,5vw,var(--font-home-title))}body:not([data-app-layout-mode=phone]) .workspace-nav{border-radius:var(--radius-panel);box-shadow:var(--shadow-soft)}body:not([data-app-layout-mode=phone]) .workspace-nav button{min-height:54px;border-radius:var(--radius-control);font-size:var(--font-xs)}body:not([data-app-layout-mode=phone]) .workspace-nav .active{box-shadow:none}body:not([data-app-layout-mode=phone]) .management-main,body:not([data-app-layout-mode=phone]) .side-panel,body:not([data-app-layout-mode=phone]) .tool-page,body:not([data-app-layout-mode=phone]) .calendar-roster,body:not([data-app-layout-mode=phone]) .contacts-roster,body:not([data-app-layout-mode=phone]) .payments-table-panel,body:not([data-app-layout-mode=phone]) .payment-detail-panel{border-radius:var(--radius-panel);background:var(--surface-panel);box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}body:not([data-app-layout-mode=phone]) .management-main,body:not([data-app-layout-mode=phone]) .tool-page{padding:20px}body:not([data-app-layout-mode=phone]) .section-title h1,body:not([data-app-layout-mode=phone]) .calendar-management-page .section-title h1{font-size:var(--font-work-title);line-height:1.08}body:not([data-app-layout-mode=phone]) .section-title .soft-pill{min-height:var(--button-standard-h);border-radius:var(--radius-control);font-size:var(--font-sm)}body:not([data-app-layout-mode=phone]) .calendar-management-page{grid-template-columns:minmax(0,1fr) 248px;gap:14px}body:not([data-app-layout-mode=phone]) .calendar-roster,body:not([data-app-layout-mode=phone]) .contacts-roster,body:not([data-app-layout-mode=phone]) .side-panel{padding:12px}body:not([data-app-layout-mode=phone]) .calendar-roster h2,body:not([data-app-layout-mode=phone]) .contacts-roster h2{margin-bottom:10px;font-size:var(--font-md)}body:not([data-app-layout-mode=phone]) .roster-list{gap:8px}body:not([data-app-layout-mode=phone]) .student-drag-card{min-height:48px;border-radius:var(--radius-control);padding:6px 8px;box-shadow:none}body:not([data-app-layout-mode=phone]) .calendar-management-page .desktop-week-calendar{border-radius:var(--radius-panel)}body:not([data-app-layout-mode=phone]) .calendar-chip{min-height:40px;padding:6px 24px 6px 12px;border-radius:var(--radius-control);box-shadow:none}body:not([data-app-layout-mode=phone]) .calendar-chip:hover,body:not([data-app-layout-mode=phone]) .student-drag-card:hover{transform:none;box-shadow:var(--shadow-soft)}body:not([data-app-layout-mode=phone]) .primary-button,body:not([data-app-layout-mode=phone]) .quiet-button,body:not([data-app-layout-mode=phone]) .danger-button,body:not([data-app-layout-mode=phone]) .contact-actions button,body:not([data-app-layout-mode=phone]) .action-stack button{min-height:var(--button-standard-h);border-radius:var(--radius-control);padding:0 12px;font-size:var(--font-body)}body:not([data-app-layout-mode=phone]) .payments-page{grid-template-columns:minmax(0,1fr) 340px;gap:14px}body:not([data-app-layout-mode=phone]) .payment-row{min-height:40px;border-radius:var(--radius-control)}body:not([data-app-layout-mode=phone]) .contact-add-row button,body:not([data-app-layout-mode=phone]) .contact-toolbar button{min-height:var(--button-standard-h);border-radius:var(--radius-control)}body:not([data-app-layout-mode=phone]) .info-card,body:not([data-app-layout-mode=phone]) .contact-history-panel{border-radius:var(--radius-panel)}body:not([data-app-layout-mode=phone]) .history-tabs button{min-height:32px;border-radius:var(--radius-control);padding:0 12px;font-size:var(--font-sm)}body:not([data-app-layout-mode=phone]) .history-list article{min-height:36px;border-radius:var(--radius-control)}body:not([data-app-layout-mode=phone]) .lesson-drawer{background:#1d1d1f1a;-webkit-backdrop-filter:none;backdrop-filter:none}body:not([data-app-layout-mode=phone]) .drawer-card{width:min(400px,calc(100vw - 24px));padding:20px;border-inline-start:1px solid var(--line);background:#fff;box-shadow:var(--shadow-drawer)}body:not([data-app-layout-mode=phone]) .drawer-card h2{font-size:24px;line-height:1.1}body:not([data-app-layout-mode=phone]) .drawer-close{min-width:32px;min-height:32px;border-radius:var(--radius-control);padding:0}body:not([data-app-layout-mode=phone]) .drawer-actions button,body:not([data-app-layout-mode=phone]) .segmented-actions button,body:not([data-app-layout-mode=phone]) .drawer-status button,body:not([data-app-layout-mode=phone]) .contact-methods button,body:not([data-app-layout-mode=phone]) .contact-shortcut{min-height:34px;border-radius:var(--radius-control);padding:0 10px;font-size:13px}body:not([data-app-layout-mode=phone]) .drawer-status,body:not([data-app-layout-mode=phone]) .drawer-editor,body:not([data-app-layout-mode=phone]) .drawer-student-detail,body:not([data-app-layout-mode=phone]) .drawer-students-list,body:not([data-app-layout-mode=phone]) .attendance-panel,body:not([data-app-layout-mode=phone]) .teaching-notes-preview{border-radius:var(--radius-panel);padding:12px}}:root{--mgmt-blue: #0868c7;--mgmt-blue-soft: #eaf4ff;--mgmt-blue-mid: #cfe6ff;--teach-green: #2f617a;--teach-green-soft: #e7f0f4;--teach-green-mid: #c6d8e1;--teach-action-solid-text: #ffffff;--teach-action-soft-text: #26566d;--app-action-text: #0757ad;--app-success-text: #14743a;--app-action-icon-bg: rgba(10, 132, 255, .1);--app-brand-shadow: 0 2px 8px rgba(10, 132, 255, .18);--overview-blue-bg: linear-gradient(145deg, #f2f8ff, #ffffff);--overview-green-bg: linear-gradient(145deg, #f1fbf5, #ffffff);--overview-rose-bg: linear-gradient(145deg, #fff1f4, #ffffff);--overview-indigo-bg: linear-gradient(145deg, #f3f5ff, #ffffff);--overview-rose-border: rgba(244, 63, 94, .18);--overview-indigo-border: rgba(99, 102, 241, .18);--app-sidebar-bg: rgba(255, 255, 255, .84);--app-sidebar-border: var(--line);--app-sidebar-text: var(--text);--nav-text: #40546a;--nav-hover-bg: rgba(255, 255, 255, .72);--nav-management-bg: linear-gradient(180deg, rgba(234, 244, 255, .9), rgba(255, 255, 255, .6));--nav-teaching-bg: linear-gradient(180deg, rgba(234, 250, 240, .92), rgba(255, 255, 255, .62));--home-hero-bg: linear-gradient(118deg, #ffffff 0%, #f8fbfd 58%, #eaf4ff 100%);--home-flower-opacity: .56}.app-shell{min-height:100vh;min-height:100svh;display:grid;grid-template-columns:216px minmax(0,1fr);gap:9px;padding:18px 9px}.app-sidebar{position:sticky;top:18px;height:calc(100svh - 36px);display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--app-sidebar-border);border-radius:18px;background:var(--app-sidebar-bg);color:var(--app-sidebar-text);box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-main{min-width:0}.standalone-app-backbar{display:flex;inline-size:min(100%,var(--app-canvas-max));margin:0 auto 10px}.standalone-app-backbar button{min-block-size:44px;display:inline-flex;align-items:center;gap:6px;padding:0 12px;border:1px solid var(--border-soft);border-radius:10px;background:var(--surface);color:var(--text);box-shadow:var(--shadow-soft);font:inherit;font-size:13px;font-weight:var(--font-weight-label, 600);cursor:pointer}.standalone-app-backbar button:hover{border-color:var(--accent);color:var(--accent-strong)}.calendar-permission-prompt{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding:12px 44px 12px 14px;border:1px solid var(--mgmt-blue-mid);border-radius:12px;background:#ffffffe6;box-shadow:var(--shadow-soft)}.calendar-permission-copy{display:flex;align-items:center;gap:10px;min-width:0}.calendar-permission-copy>div{display:grid;gap:2px}.calendar-permission-copy strong{color:var(--text);font-size:14px;font-weight:var(--font-weight-label, 500)}.calendar-permission-copy small{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.calendar-permission-icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:var(--radius-control, 8px);background:var(--app-action-icon-bg);color:var(--app-action-text)}.calendar-permission-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.calendar-permission-close{position:absolute;top:10px;inset-inline-end:10px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.calendar-permission-close:hover{background:#1d1d1f0f;color:var(--text)}.sidebar-brand{width:100%;display:flex;align-items:center;gap:10px;border:0;border-radius:12px;padding:9px;background:transparent;color:var(--text);text-align:start;cursor:pointer}.brand-mark,.sidebar-brand .brand-mark{background:linear-gradient(145deg,var(--mgmt-blue),var(--teach-green));box-shadow:var(--app-brand-shadow)}.nav-group{width:100%;min-width:0;display:grid;gap:6px;padding:10px;border:1px solid rgba(29,29,31,.07);border-radius:12px}.nav-group.management-group{background:var(--nav-management-bg)}.nav-group.teaching-group{background:var(--nav-teaching-bg)}.nav-group-label{padding:0 8px 4px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);letter-spacing:.08em;text-transform:uppercase}.nav-group-divider{width:calc(100% - 16px);height:1px;margin:0 8px;background:var(--line)}.nav-item{min-height:38px;display:inline-flex;align-items:center;justify-content:flex-start;gap:9px;border:0;border-radius:8px;padding:0 10px;background:transparent;color:var(--nav-text);font-weight:var(--font-weight-label, 500);cursor:pointer}.sidebar-desktop-nav .nav-item{min-width:0;white-space:nowrap}.nav-item:hover{background:var(--nav-hover-bg);color:var(--app-sidebar-text)}.nav-item.active,.nav-item.home-nav.active{color:var(--app-action-text);background:var(--mgmt-blue-soft);box-shadow:inset 0 0 0 1px var(--mgmt-blue-mid)}.nav-group.teaching-group .nav-item.active{color:var(--teach-action-soft-text);background:var(--teach-green-soft);box-shadow:inset 0 0 0 1px var(--teach-green-mid)}.sidebar-footer{position:relative;margin-top:auto;display:grid;gap:6px}.deploy-stamp{min-width:0;padding-inline:6px;color:var(--muted);font-size:12px;line-height:1.25;white-space:nowrap}.app-sidebar .account-button{width:100%;justify-content:flex-start}@media(max-height:940px){.app-shell[data-layout-mode=desktop]>.app-sidebar{gap:10px;padding:12px}.app-shell[data-layout-mode=desktop] .sidebar-brand{padding-block:6px}.app-shell[data-layout-mode=desktop] .sidebar-desktop-nav{gap:8px}.app-shell[data-layout-mode=desktop] .nav-group{gap:4px;padding:8px}.app-shell[data-layout-mode=desktop] .nav-group-label{padding-bottom:2px}}@media(max-height:860px){.app-shell[data-layout-mode=desktop]>.app-sidebar{top:10px;height:calc(100svh - 20px);min-height:0;gap:8px;padding:10px}.app-shell[data-layout-mode=desktop] .sidebar-brand{gap:8px;padding:4px 8px}.app-shell[data-layout-mode=desktop] .sidebar-brand .brand-mark{width:32px;height:32px;border-radius:var(--radius-control)}.app-shell[data-layout-mode=desktop] .sidebar-desktop-nav{min-height:0;flex:1 1 auto;gap:4px;overflow-y:auto}.app-shell[data-layout-mode=desktop] .nav-group{gap:1px;padding:6px}.app-shell[data-layout-mode=desktop] .nav-group-label{padding:0 6px 2px}.app-shell[data-layout-mode=desktop] .nav-item{min-height:30px;padding-inline:8px;font-size:14px}.app-shell[data-layout-mode=desktop] .app-sidebar .account-button{min-height:var(--button-standard-h, 36px)}}@media(max-height:760px){.app-shell[data-layout-mode=desktop] .sidebar-desktop-nav .nav-item{min-height:30px}}.primary-button,.quiet-button,.danger-button,.action-stack button,.drawer-actions button,.segmented-actions button,.history-tabs button,.attendance-toggles button,.calendar-view-toggle button,.calendar-day-tabs button,.payment-actions button,.credit-button{border:1px solid var(--mgmt-blue-mid);background:var(--mgmt-blue-soft);color:var(--app-action-text);box-shadow:none}.quiet-button{border-color:var(--line);background:#ffffffd6;color:var(--text)}.danger-button{border-color:#f43f5e33;background:#f43f5e1a;color:#b4233c}.data-mode-toggle button.active,.workspace-nav .active,.segmented-actions button.active,.calendar-view-toggle button.active,.history-tabs button.active,.attendance-toggles button.active,.calendar-day-tabs button.active{background:var(--mgmt-blue-soft);color:var(--app-action-text);box-shadow:inset 0 0 0 1px var(--mgmt-blue-mid)}.data-mode-toggle button[data-mode=real].active,.pwa-install-button,.credit-button{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.home-page{width:min(1280px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:12px}.home-hero,.home-section,.calendar-tool,.payment-section,.finance-summary,.payer-card{border:1px solid var(--line);border-radius:12px;background:#ffffffd6;box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.home-hero{grid-column:1 / -1;position:relative;display:grid;grid-template-columns:minmax(360px,1fr) minmax(320px,auto);gap:12px;align-items:center;padding:14px 16px}.home-hero h1{margin-bottom:3px;font-size:clamp(28px,3vw,40px);letter-spacing:0}.home-hero .eyebrow,.home-hero .hero-copy{margin-block:0}.credit-summary-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.overview-icon{grid-row:1 / span 2;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:var(--app-action-icon-bg);color:var(--app-action-text)}.home-section{display:grid;gap:8px;padding:12px}.home-action-queue,.home-upcoming-section{align-content:start}.home-section-head,.calendar-nav-row,.credit-balance-line,.payment-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.upcoming-list,.credit-accounts-list{display:grid;gap:5px}.upcoming-row{display:grid;grid-template-columns:92px 72px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid rgba(29,29,31,.08);border-radius:8px;padding:7px 10px;background:#fff;color:var(--text);font:inherit;text-align:start;cursor:pointer}.upcoming-date,.upcoming-time,.upcoming-pay{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.upcoming-students{font-weight:var(--font-weight-label, 500)}.home-upcoming-row{position:relative;grid-template-columns:150px minmax(0,1fr);gap:12px;padding:8px 10px}.home-upcoming-row-open-hitarea{position:absolute;z-index:0;inset:0;border:0;border-radius:inherit;background:transparent;cursor:pointer}.home-upcoming-row-open-hitarea:hover{background:color-mix(in srgb,var(--teach-green-soft) 42%,transparent)}.home-upcoming-row-open-hitarea:focus-visible{outline:3px solid color-mix(in srgb,var(--mgmt-blue-mid) 35%,transparent);outline-offset:2px}.upcoming-schedule-details{position:relative;z-index:1;pointer-events:none;min-width:0;display:grid;grid-template-columns:70px 1fr;align-items:center;gap:10px;padding:2px 4px;color:inherit;text-align:start}.home-upcoming-row .upcoming-students{position:relative;z-index:1;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:6px}.upcoming-student-chip:focus-visible{outline:3px solid color-mix(in srgb,var(--mgmt-blue-mid) 35%,transparent);outline-offset:2px}.upcoming-student-chip{min-height:32px;max-width:100%;border:1px solid color-mix(in srgb,var(--student-color, var(--teach-green)) 48%,var(--line));border-radius:8px;padding:5px 10px;background:color-mix(in srgb,var(--student-color, var(--teach-green)) 18%,var(--surface-card, #ffffff));color:color-mix(in srgb,var(--student-color, var(--teach-green)) 44%,var(--text));font:inherit;font-size:13px;font-weight:var(--font-weight-label, 500);line-height:1.15;text-align:start;cursor:pointer}.upcoming-student-chip:hover{border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 72%,var(--line));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 27%,var(--surface-card, #ffffff))}.upcoming-student-chip-neutral{--student-color: var(--teach-green)}.home-attention-student-chips{min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:5px;pointer-events:none}.home-attention-student-chip{min-height:30px;display:inline-flex;align-items:center;cursor:pointer;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease,transform .14s ease}button.home-attention-student-chip{pointer-events:auto}.home-attendance-trigger{position:relative}.home-attendance-row-open-hitarea{position:absolute;z-index:0;inset:0;border:0;border-radius:inherit;background:transparent;cursor:pointer}.home-attendance-trigger>:not(.home-attendance-row-open-hitarea){position:relative;z-index:1}.home-attendance-trigger>.upcoming-date,.home-attendance-trigger>.upcoming-time,.home-attendance-trigger>.upcoming-students,.home-attendance-trigger>.status-pill,.mobile-attention-item>time,.mobile-attention-item>span:not(.home-attention-student-chips){pointer-events:none}.home-attendance-row-open-hitarea:focus-visible{outline:3px solid color-mix(in srgb,#d99a00 24%,transparent);outline-offset:2px}.home-action-queue .upcoming-row{transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease}.home-action-queue .upcoming-row:focus-visible{border-color:color-mix(in srgb,#d99a00 72%,var(--line));outline:none;background:color-mix(in srgb,#fff4cc 72%,var(--surface-card));box-shadow:0 0 0 3px color-mix(in srgb,#d99a00 22%,transparent),0 7px 16px color-mix(in srgb,#9a6700 16%,transparent);transform:translateY(-2px)}@media(hover:hover)and (pointer:fine){.home-action-queue .upcoming-row:hover{border-color:color-mix(in srgb,#d99a00 78%,var(--line));background:color-mix(in srgb,#fff4cc 72%,var(--surface-card));box-shadow:0 0 0 2px color-mix(in srgb,#d99a00 11%,transparent),0 7px 16px color-mix(in srgb,#9a6700 16%,transparent);transform:translateY(-2px)}.home-attention-student-chip:hover{border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 86%,var(--line));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 32%,var(--surface-card, #ffffff));box-shadow:0 3px 8px color-mix(in srgb,var(--student-color, var(--teach-green)) 20%,transparent);transform:translateY(-1px) scale(1.02)}}.home-action-queue .upcoming-row:active{transform:translateY(0) scale(.995)}.home-attendance-dialog-backdrop{position:fixed;inset:0;z-index:1160;display:grid;place-items:center;padding:18px;background:color-mix(in srgb,#21161b 48%,transparent)}.home-attendance-dialog{width:min(700px,100%);max-height:min(760px,calc(100dvh - 36px));display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel);box-shadow:var(--shadow-sheet)}.home-attendance-dialog-header{min-height:72px;display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:16px;padding:14px 18px;border-bottom:1px solid var(--line);background:var(--surface-card)}.home-attendance-dialog-header>div{min-width:0;display:grid;gap:2px}.home-attendance-dialog-header p,.home-attendance-dialog-header h2,.home-attendance-dialog-header small{margin:0}.home-attendance-dialog-header h2{font-size:var(--font-section-title);line-height:var(--line-height-heading)}.home-attendance-dialog-header small{color:var(--muted);font-size:12px}.home-attendance-dialog-header>button{width:44px;min-width:44px;min-height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--muted);cursor:pointer}.home-attendance-dialog-header>button:hover,.home-attendance-dialog-header>button:focus-visible{border-color:var(--teach-green-mid);outline:none;background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.home-attendance-dialog-body{min-height:0;overflow-y:auto;padding:12px}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel{margin:0}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal{gap:0;border:0;padding:0;background:transparent}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal .attendance-list{gap:8px}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal .attendance-row{min-height:62px;grid-template-columns:minmax(112px,.85fr) minmax(360px,2.4fr);align-items:center;gap:12px;border-color:color-mix(in srgb,var(--student-color, #0a84ff) 28%,var(--line));padding:8px 10px;background:color-mix(in srgb,var(--student-color, #0a84ff) 9%,var(--surface-card))}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal .attendance-student-heading{display:block}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal .attendance-student-copy strong{font-size:.86rem}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal .attendance-choice-grid{gap:6px}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal .attendance-choice-grid button{min-height:44px;flex-direction:row;gap:5px;padding:6px 8px;background:color-mix(in srgb,var(--surface-card) 90%,transparent)}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal .attendance-choice-grid button.active{background:color-mix(in srgb,var(--attendance-state-color) var(--attendance-state-strength),var(--surface-card));border-color:color-mix(in srgb,var(--attendance-state-border) 66%,var(--line));color:var(--attendance-state-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--attendance-state-border) 24%,transparent)}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal .attendance-choice-grid button.present{--attendance-state-color: #22c55e;--attendance-state-strength: 20%;--attendance-state-border: #15803d;--attendance-state-text: #116b34}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal .attendance-choice-grid button.late-cancel{--attendance-state-color: #f59e0b;--attendance-state-strength: 22%;--attendance-state-border: #b45309;--attendance-state-text: #854d0e}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal .attendance-choice-grid button.no-charge{--attendance-state-color: #facc15;--attendance-state-strength: 18%;--attendance-state-border: #a16207;--attendance-state-text: #765704}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal .attendance-choice-grid button>span{font-size:.75rem}body:has(.home-attendance-dialog) .assistant-launcher{visibility:hidden}@media(max-width:700px){.mobile-attention-list>:is(button,.mobile-attention-item)>.home-attention-student-chips{min-height:0;display:flex;padding:0;border-radius:0;background:transparent;color:inherit}.home-attendance-dialog-backdrop{align-items:end;padding:0}.home-attendance-dialog{width:100%;max-height:calc(100dvh - 20px);border-width:1px 0 0;border-radius:var(--radius-panel) var(--radius-panel) 0 0}.home-attendance-dialog-header{padding:12px 14px}.home-attendance-dialog-body{padding:10px 10px calc(14px + env(safe-area-inset-bottom))}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal .attendance-row{min-height:94px;grid-template-columns:minmax(0,1fr);gap:7px}:is(.home-attendance-dialog,.teaching-lesson-attendance-dialog) .attendance-panel-minimal .attendance-student-heading{text-align:start}}.calendar-nav-row{margin-bottom:10px}.calendar-sync-panel{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;padding:10px 12px;border:1px solid rgba(66,133,244,.18);border-radius:8px;background:#4285f414;color:#24324a}.calendar-sync-panel>span{display:inline-flex;align-items:center;gap:8px;min-width:0;font-size:13px;font-weight:600}.calendar-sync-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.calendar-sync-actions button{min-height:32px;border:1px solid var(--mgmt-blue-mid);border-radius:8px;padding:0 10px;background:var(--surface-card);color:var(--app-action-text);font-weight:var(--font-weight-label, 500);cursor:pointer}.calendar-sync-actions button:disabled{opacity:.48;cursor:not-allowed}.calendar-range-nav{display:inline-flex;align-items:center;gap:8px}.cal-arrow,.calendar-range-nav button{width:34px;height:34px;border:1px solid var(--line);border-radius:8px;background:var(--surface-card);color:var(--text);cursor:pointer}.cal-range-label{min-width:168px;color:var(--text);font-weight:var(--font-weight-label, 500);text-align:center}.cal-range-label.day-label{min-width:0;text-align:start}.calendar-today-button{min-height:34px;border:1px solid var(--line);border-radius:8px;padding:0 12px;background:var(--surface-card);color:var(--text);font-weight:var(--font-weight-label, 500);cursor:pointer}.calendar-management-page .week-day-header span{font-size:clamp(17px,1.25vw,22px);font-weight:var(--font-weight-label, 500)}.calendar-management-page .week-day-header small{font-size:clamp(12px,.9vw,15px)}.calendar-management-page .time-rail-slot span,.calendar-management-page .hour-label{font-size:clamp(12px,.9vw,15px);font-weight:var(--font-weight-label, 500)}.month-cell-items{display:grid;gap:4px;margin-top:8px}.month-cell-item{overflow:hidden;border-radius:7px;padding:4px 6px;background:var(--mgmt-blue-soft);color:var(--app-action-text);font-size:12px;font-weight:var(--font-weight-label, 500);text-overflow:ellipsis;white-space:nowrap}.compact-month-calendar .month-cell-items{min-height:22px;display:flex;flex-wrap:wrap;justify-content:center;margin-top:2px}.compact-month-calendar .month-cell-item{border-radius:999px;padding:3px 7px}.month-cell-item.muted{background:#6e6e731a;color:var(--muted)}.payments-tabs{display:inline-flex;gap:6px;padding:4px;border:1px solid var(--line);border-radius:12px;background:#ffffffbd}.payments-page{display:grid;gap:14px;align-items:start}.payments-tabs button{min-height:34px;border:0;border-radius:8px;padding:0 14px;background:transparent;color:var(--muted);font-weight:var(--font-weight-label, 500);cursor:pointer}.payments-tabs button.active{color:var(--app-action-text);background:var(--mgmt-blue-soft)}.payment-sort-bar button.active{border-color:var(--mgmt-blue-mid);background:var(--mgmt-blue-soft);color:var(--app-action-text)}.credit-account-list{gap:6px}.credit-account-row{min-height:44px;display:grid;grid-template-columns:minmax(150px,.7fr) minmax(180px,1fr) auto 18px;align-items:center;gap:12px;padding:8px 12px;width:100%;border:1px solid var(--line);background:var(--surface-card);color:inherit;font:inherit;text-align:start;cursor:pointer}.credit-account-row:hover{border-color:var(--teach-green-mid);background:var(--teach-green-soft)}.credit-account-edit-chevron{color:var(--muted)}.credit-account-row .credit-account-name{min-width:0;color:var(--text);font-weight:var(--font-weight-label, 500);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.credit-account-row small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.credit-account-row b{justify-self:end;white-space:nowrap}@media(max-width:560px){.credit-account-row{min-height:42px;grid-template-columns:minmax(0,1fr) minmax(0,.7fr) auto 16px;gap:6px;padding:5px 7px}.credit-account-row small{grid-column:auto}}.payment-form-dropdown,.app-dropdown{position:relative;min-width:0}.payment-form-dropdown.open,.app-dropdown.open{z-index:50}.payment-form-dropdown-trigger,.app-dropdown-trigger{width:100%;min-height:42px;display:inline-flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:var(--radius-control, 10px);padding:0 11px;background:var(--surface-input, #fff);color:var(--text);font:inherit;font-weight:var(--font-weight-label, 500);text-align:start;box-shadow:0 1px 2px #0f172a0a;cursor:pointer}.payment-form-dropdown-trigger:hover,.payment-form-dropdown-trigger:focus-visible,.payment-form-dropdown.open .payment-form-dropdown-trigger,.app-dropdown-trigger:hover,.app-dropdown-trigger:focus-visible,.app-dropdown.open .app-dropdown-trigger{border-color:var(--mgmt-blue-mid);outline:3px solid color-mix(in srgb,var(--mgmt-blue-soft) 74%,transparent);outline-offset:1px}.payment-form-dropdown-trigger svg,.app-dropdown-trigger svg{flex:0 0 auto;color:var(--muted);transition:transform .15s ease}.payment-form-dropdown.open .payment-form-dropdown-trigger svg,.app-dropdown.open .app-dropdown-trigger svg{transform:rotate(180deg)}.payment-form-dropdown-menu,.app-dropdown-menu{position:fixed;top:calc(100% + 6px);inset-inline:0;z-index:calc(var(--z-dialog, 1000) + 600);max-height:240px;overflow-y:auto;display:grid;gap:4px;border:1px solid var(--line);border-radius:12px;padding:6px;background:var(--surface-card, #fff);box-shadow:var(--shadow-dropdown)}.payment-form-dropdown-menu button,.app-dropdown-menu button{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:0;border-radius:8px;padding:0 10px;background:transparent;color:var(--text);font:inherit;font-size:13px;text-align:start;cursor:pointer}.payment-form-dropdown-menu button:hover,.payment-form-dropdown-menu button:focus-visible,.app-dropdown-menu button:hover,.app-dropdown-menu button:focus-visible{background:color-mix(in srgb,var(--mgmt-blue-soft) 58%,var(--surface-card, #fff));outline:none}.payment-form-dropdown-menu button.selected,.app-dropdown-menu button.selected{background:var(--mgmt-blue-soft);color:var(--app-action-text);font-weight:var(--font-weight-label, 500)}.app-dropdown-group-label{padding:7px 10px 2px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);letter-spacing:.02em}.txn-type{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;background:var(--mgmt-blue-soft);color:var(--app-action-text);font-size:12px;font-weight:var(--font-weight-label, 500)}.txn-type-credit_added{background:color-mix(in srgb,var(--green) 5%,var(--surface-card));color:var(--app-success-text)}.txn-type-credit_consumed,.txn-type-refund{background:#fff7ed;color:#9a3412}.student-color-picker button.selected{box-shadow:0 0 0 3px var(--mgmt-blue-mid)}@container app-canvas (max-width: 920px){.home-page{grid-template-columns:1fr}.calendar-permission-prompt{align-items:stretch;flex-direction:column}.calendar-permission-actions{width:100%}.calendar-permission-actions button{flex:1}.home-hero,.home-cards,.payments-summary-grid,.credit-summary-row,.credit-add-grid,.upcoming-row{grid-template-columns:1fr}.calendar-nav-row{align-items:stretch;flex-direction:column}.calendar-range-nav,.calendar-view-toggle{width:100%}.calendar-range-nav{justify-content:space-between}.calendar-view-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-radius:12px}.calendar-view-toggle button{width:100%}.payments-summary-grid>div,.finance-summary>div{display:grid;grid-template-columns:1fr;gap:3px}.payment-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}.payment-row .payment-student{grid-column:1 / -1}.payment-row .payment-method{justify-self:start}.payment-row b{grid-column:2;grid-row:2 / span 2;align-self:end;justify-self:end;white-space:nowrap}.payment-debt-toggle{grid-template-columns:minmax(0,1fr) auto}.payment-debt-toggle .payment-student{grid-column:1 / -1;grid-row:1;grid-template-columns:minmax(0,1fr);gap:2px}.payment-debt-toggle .payment-student small{grid-column:1}.payment-debt-toggle .payment-source{grid-column:1;grid-row:2;justify-self:start}.payment-debt-toggle b{grid-column:2;grid-row:2}.payment-debt-summary{align-items:start}.payment-summary-pay{align-self:start}.payment-debt-detail{margin-inline-start:0}.payment-debt-line{grid-template-columns:1fr auto}.payment-debt-line .quiet-button{grid-column:1 / -1;width:100%}}.student-group-dropdown-menu button.selected,.student-group-pick-list button.selected{border-color:color-mix(in srgb,var(--student-color, #0a84ff) 78%,#1d1d1f);background:color-mix(in srgb,var(--student-color, #0a84ff) 56%,white);color:#111827;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--student-color, #0a84ff) 82%,#ffffff)}.calendar-management-page .desktop-week-calendar .student-lesson-card{grid-template-columns:minmax(0,1fr);background:color-mix(in srgb,var(--student-color, #0a84ff) 56%,white)}.calendar-management-page .desktop-week-calendar .student-lesson-card:hover{background:color-mix(in srgb,var(--student-color, #0a84ff) 66%,white)}.calendar-management-page .desktop-week-calendar .student-lesson-card strong{color:#101828}.week-day-header.is-today{border-color:color-mix(in srgb,var(--mgmt-blue-mid) 74%,var(--line));background:color-mix(in srgb,var(--mgmt-blue-soft) 72%,white);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--mgmt-blue-mid) 58%,transparent)}.week-day-lane.is-today:after,.month-cell.is-today,.today-calendar.is-today{border:2px solid color-mix(in srgb,var(--mgmt-blue-mid) 76%,#1d4ed8);box-shadow:inset 0 0 0 2px #ffffffc7,0 0 0 2px color-mix(in srgb,var(--mgmt-blue-mid) 14%,transparent)}.drawer-teaching-actions .danger,.attendance-toggles .danger{border:1px solid rgba(244,63,94,.24);background:#f43f5e1a;color:#b4233c}.student-group-create-options button.selected{border-color:color-mix(in srgb,var(--student-color, #0a84ff) 78%,#1d1d1f);background:color-mix(in srgb,var(--student-color, #0a84ff) 56%,var(--surface-card));color:var(--text);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--student-color, #0a84ff) 82%,var(--surface-card))}.assignment-group-section{min-width:0;gap:6px;padding-bottom:8px}.assignment-group-option{position:relative;min-width:0}.assignment-group{width:100%;min-width:0;min-height:0;grid-template-columns:30px minmax(0,1fr);gap:8px;padding:9px 58px 9px 11px;border-color:color-mix(in srgb,var(--student-color, #0a84ff) 28%,white);background:color-mix(in srgb,var(--student-color, #0a84ff) 10%,white)}[dir=rtl] .assignment-group{padding:9px 11px 9px 58px}.assignment-group-actions{position:absolute;z-index:2;inset-block-start:50%;inset-inline-end:2px;transform:translateY(-50%)}.assignment-group-actions .assignment-group-menu-trigger{width:50px;min-width:50px;height:50px;min-height:50px;border:0;border-radius:10px;background:transparent;color:var(--muted)}.assignment-group-actions .assignment-group-menu-trigger:hover,.assignment-group-actions .assignment-group-menu-trigger:focus-visible,.assignment-group-actions.open .assignment-group-menu-trigger{background:color-mix(in srgb,var(--surface-card) 76%,var(--line));color:var(--text)}.assignment-group .avatar{width:30px;height:30px;border-radius:8px}.assignment-group strong{line-height:1.1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignment-group small{min-width:0;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-lesson-card small,.calendar-management-page .student-color-dot{display:none}.calendar-chip .lesson-student-grid{gap:3px}.calendar-chip .student-lesson-row{min-height:22px}.calendar-chip .student-lesson-card{min-height:22px;grid-template-columns:auto minmax(0,1fr);padding:2px 6px;border-radius:6px;background:color-mix(in srgb,var(--student-color, #0a84ff) 24%,white);border-color:color-mix(in srgb,var(--student-color, #0a84ff) 34%,white)}.calendar-chip .lesson-student-dots{display:inline-flex;align-items:center;padding-inline-start:2px}.calendar-management-page .lesson-student-dots .student-color-dot{width:8px;height:8px;display:block;flex:0 0 auto;box-shadow:0 0 0 2px color-mix(in srgb,var(--student-color, #0a84ff) 16%,transparent)}.calendar-management-page .lesson-student-dots .student-color-dot+.student-color-dot{margin-inline-start:-2px}.calendar-chip .student-lesson-card strong{font-size:.73rem;line-height:1}.student-drag-card{min-height:42px;padding:8px 10px;border-color:color-mix(in srgb,var(--student-color, #0a84ff) 34%,var(--line));background:color-mix(in srgb,var(--student-color, #0a84ff) 22%,white)}.student-drag-card .avatar{display:none}.student-drag-card strong{font-size:.9rem;line-height:1.05}.student-drag-card.selected{border-color:color-mix(in srgb,var(--student-color, #0a84ff) 62%,var(--line));background:color-mix(in srgb,var(--student-color, #0a84ff) 34%,white)}.app-shell{background:transparent}.home-hero,.home-section,.calendar-tool,.payment-section,.finance-summary,.payer-card,.calendar-roster,.drawer-card,.contact-history-panel,.drawer-status,.drawer-editor,.drawer-student-detail,.drawer-students-list{background:var(--surface-panel)}.overview-card,.calendar-sync-panel,.calendar-permission-prompt,.student-group-dropdown-trigger,.student-group-dropdown-menu,.assignment-modal,.schedule-dialog,.drawer-status-hint,.history-list article{background:var(--surface-card)}.calendar-tool input,.calendar-tool select,.calendar-tool textarea,.payment-section input,.payment-section select,.payment-section textarea,.drawer-card input,.drawer-card select,.drawer-card textarea,.student-group-dropdown-trigger{background:var(--surface-input)}.quiet-button,.calendar-range-nav,.calendar-view-toggle{background:var(--surface-card)}.calendar-management-page .desktop-week-calendar,.month-calendar,.today-calendar{background:var(--surface-grid)}.calendar-management-page .week-grid,.calendar-management-page .week-day-lane,.calendar-management-page .time-rail,.calendar-management-page .time-rail-header,.calendar-management-page .week-day-header,.calendar-management-page .time-rail-slot,.calendar-management-page .desktop-week-calendar .hour-slot,.today-calendar .hour-slot,.compact-month-calendar .month-cell,.desktop-month-calendar .month-cell{background:var(--surface-slot)}.calendar-management-page .week-day-header,.calendar-management-page .time-rail-header,.today-calendar-head{background:var(--surface-panel-strong)}.calendar-management-page .desktop-week-calendar .hour-slot:hover,.calendar-management-page .desktop-week-calendar .hour-slot.drop-target-active,.today-calendar .hour-slot:hover,.month-cell:hover{background:color-mix(in srgb,var(--mgmt-blue-soft) 42%,var(--surface-slot))}.payments-page{width:100%}.calendar-management-page.month-only{grid-template-columns:minmax(0,1fr) 248px}.module-loading-state{min-height:220px;display:grid;place-items:center;color:var(--muted);font-weight:var(--font-weight-label, 500)}.module-error-state,.app-fatal-error{min-height:100%;display:grid;place-items:center;padding:clamp(24px,5vw,64px)}.module-error-state{align-content:center;grid-template-columns:44px minmax(0,520px);justify-content:center;place-items:initial;gap:12px 16px}.module-error-icon{align-self:start;display:grid;width:44px;height:44px;place-items:center;border-radius:14px;background:var(--danger-soft);color:var(--rose)}.module-error-copy h1,.module-error-copy p,.app-fatal-error-card h1,.app-fatal-error-card p{margin:0}.app-main .module-error-copy h1,.app-fatal-error-card h1{font-size:clamp(22px,3vw,30px);line-height:1.2}.module-error-copy p,.app-fatal-error-card p{margin-top:8px;color:var(--muted);line-height:1.6}.module-error-actions{grid-column:2;display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.module-error-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.app-fatal-error{min-height:100vh;background:var(--surface-grid)}.app-fatal-error-card{width:min(100%,560px);padding:clamp(24px,5vw,42px);border:1px solid var(--line);border-radius:24px;background:var(--surface-panel);box-shadow:var(--shadow-panel)}.app-fatal-error-card .primary-button{margin-top:22px}@media(max-width:640px){.module-error-state{grid-template-columns:1fr;justify-items:start}.module-error-actions{grid-column:1;width:100%}.module-error-actions button{flex:1 1 180px}}.home-action-queue{border-color:color-mix(in srgb,#d99a00 30%,var(--line));background:color-mix(in srgb,#fff7dc 42%,var(--surface-panel))}.home-action-queue .home-section-head>div{display:grid;gap:2px}.home-action-queue .home-section-head p,.home-action-queue .home-section-head h2{margin:0}.home-action-queue .home-action-guidance{max-width:620px;color:var(--muted);font-size:12px;line-height:1.45}.action-queue-detail{min-width:0;display:grid;gap:2px}.action-queue-detail small{overflow:hidden;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.data-safety-section .home-section-head>div:first-child{display:grid;gap:2px}.upcoming-row.needs-review{border-color:color-mix(in srgb,#d99a00 46%,var(--line));background:color-mix(in srgb,#d99a00 10%,var(--surface-card))}.status-pill.warning{justify-self:end;border-radius:999px;padding:4px 9px;background:#fff0be;color:#7a5100;font-size:.72rem;font-weight:var(--font-weight-label, 500);white-space:nowrap}.contact-roster-search{margin-bottom:12px}.payment-filter-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(150px,190px) minmax(150px,auto) auto;align-items:center;gap:8px;margin-top:10px}.payment-filter-row button{min-height:38px}.payment-history-section{container-type:inline-size;margin-top:16px}@container (max-width: 720px){.payment-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-search-field{grid-column:1 / -1}.payment-filter-row>.quiet-button{justify-self:start}}@media(max-width:700px){.payment-section{padding:12px}}.payment-history-heading{display:flex;align-items:end;justify-content:space-between;gap:16px}.payment-history-heading h2{margin:2px 0 3px}.payment-history-heading small{color:var(--muted)}.payment-history-period-field{width:min(300px,100%);display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.payment-history-period-field .payment-history-filter-trigger{min-height:42px}.payment-history-period-summary{display:flex;align-items:center;gap:24px;padding:10px 14px;border-bottom:1px solid var(--line)}.payment-history-period-summary>span{min-width:0;display:grid;gap:2px}.payment-history-period-summary small{color:var(--muted);font-size:11px}.payment-history-period-summary strong{font-size:17px;font-variant-numeric:tabular-nums;white-space:nowrap}.payment-history-filter{position:relative;min-width:0;z-index:25}.payment-history-filter-trigger{width:100%;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--line);border-radius:var(--radius-control, 10px);padding:0 10px;background:var(--surface-input, #fff);color:var(--text);font:inherit;font-size:13px;text-align:start;cursor:pointer}.payment-history-filter-trigger:hover,.payment-history-filter-trigger:focus-visible{border-color:var(--mgmt-blue-mid);outline:3px solid color-mix(in srgb,var(--mgmt-blue-soft) 74%,transparent);outline-offset:1px}.payment-history-filter-trigger.active{border-color:var(--mgmt-blue-mid);background:color-mix(in srgb,var(--mgmt-blue-soft) 68%,var(--surface-input, #fff));color:var(--app-action-text)}.payment-history-filter.open .payment-history-filter-trigger svg{transform:rotate(180deg)}.payment-history-filter-menu{position:absolute;top:calc(100% + 6px);inset-inline-start:0;z-index:40;width:max(100%,184px);max-width:min(260px,calc(100vw - 32px));max-height:260px;overflow:auto;display:grid;gap:4px;border:1px solid var(--line);border-radius:var(--radius-control, 10px);padding:6px;background:var(--surface-popover, #fff);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.payment-history-filter-menu button{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:0;border-radius:8px;padding:0 9px;background:transparent;color:var(--text);font:inherit;font-size:13px;text-align:start;cursor:pointer}.payment-history-filter-menu button:hover,.payment-history-filter-menu button:focus-visible{background:color-mix(in srgb,var(--mgmt-blue-soft) 58%,var(--surface-card, #fff));outline:none}.payment-history-filter-menu button.selected{background:var(--mgmt-blue-soft);color:var(--app-action-text);font-weight:var(--font-weight-label, 500)}.payment-history-period-picker{position:relative}.payment-history-period-picker.open{z-index:80}.payment-history-period-menu{inset-inline-start:auto;inset-inline-end:0;width:max(100%,232px);max-width:min(360px,calc(100vw - 32px));max-height:none;overflow:visible;gap:6px}.payment-history-period-menu .payment-history-period-all{min-height:38px;border-bottom:1px solid var(--line);border-radius:7px 7px 0 0}.payment-history-year-navigation{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:4px}.payment-history-period-menu .payment-history-year-navigation>button{min-height:38px;justify-content:center;padding:0;font-size:15px}.payment-history-period-menu .payment-history-year-trigger{font-variant-numeric:tabular-nums;font-weight:var(--font-weight-label, 500)}.payment-history-period-menu button:disabled{cursor:default;opacity:.38}.payment-history-period-menu button:disabled:hover{background:transparent}.payment-history-month-grid,.payment-history-year-grid{display:grid;gap:4px}.payment-history-month-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.payment-history-year-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:184px;overflow-y:auto}.payment-history-period-menu .payment-history-month-grid>button,.payment-history-period-menu .payment-history-year-grid>button{min-width:0;min-height:38px;justify-content:center;gap:3px;padding:0 4px;text-align:center;font-variant-numeric:tabular-nums}.payment-history-period-menu .payment-history-month-grid>button svg{width:13px;height:13px}.payment-load-more-button{min-height:42px;width:min(360px,100%);justify-self:center;border:1px solid var(--line);border-radius:var(--radius-control, 10px);background:var(--surface-card, #fff);color:var(--app-action-text);font-weight:var(--font-weight-label, 500);cursor:pointer}.payment-history-actions{display:inline-flex;flex-direction:row-reverse;align-items:center;justify-content:flex-start;gap:8px}.payment-history-column-head,.payment-history-parent-row,.payment-history-child-row{grid-template-columns:minmax(180px,1.2fr) minmax(160px,1fr) minmax(90px,120px) minmax(104px,116px) minmax(150px,170px);gap:12px}.payment-history-column-head{display:grid;align-items:center;padding:0 12px 2px;color:var(--muted);font-size:11px;font-weight:var(--font-weight-label, 500)}.payment-history-column-head span:last-child{text-align:end}.payment-history-list{gap:6px}.payment-history-entry{min-width:0;display:grid;gap:4px}.payment-history-parent-row{opacity:1!important;cursor:default!important;min-height:64px;padding:8px 12px}.payment-history-row-toggle{grid-column:1 / span 2;min-width:0;min-height:36px;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;border:0;padding:0;background:transparent;color:inherit;font:inherit;text-align:start;cursor:pointer}.payment-history-row-static{cursor:default}.payment-history-row-toggle .payment-student{min-width:0}.payment-history-section .payment-history-identity{min-width:0;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(140px,.8fr);align-items:center;gap:12px}.payment-history-type-stack{min-width:0;display:grid;justify-items:start;gap:3px}.payment-history-name-stack{min-width:0;display:grid;gap:2px;text-align:start}.payment-history-name-stack strong,.payment-history-name-stack small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-history-name-stack strong,.payment-history-account-meta{width:100%;text-align:start;unicode-bidi:plaintext}.payment-history-account-meta{min-width:0;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.payment-history-mobile-meta,.payment-history-mobile-expanded-meta{display:none}.payment-history-actions>b{font-size:17px;font-variant-numeric:tabular-nums;white-space:nowrap}.payment-history-child{margin-inline-start:24px}.payment-history-child-row{min-height:56px;padding:7px 12px}.payment-history-child-date{grid-column:4;color:var(--muted);font-size:12px;white-space:nowrap}.payment-history-child-actions{grid-column:5;display:inline-flex;flex-direction:row-reverse;align-items:center;justify-content:flex-start;gap:8px}.payment-history-child-row>.payment-history-identity{grid-column:1 / span 3}.payment-history-child-actions>b{font-variant-numeric:tabular-nums;white-space:nowrap}.payment-history-section .txn-type{justify-self:start}.payment-undo-button{min-height:30px;border:1px solid var(--line);border-radius:8px;padding:0 9px;background:var(--surface-card, #fff);color:var(--muted);font-size:.72rem;font-weight:var(--font-weight-label, 500);cursor:pointer}.contact-voice-dialog{width:min(620px,100%);max-height:calc(100vh - 40px);overflow-y:auto;gap:16px}.contact-voice-dialog .dialog-heading-row h2{display:inline-flex;align-items:center;gap:8px}.contact-voice-dialog .contact-create-notes textarea{min-height:220px}.contact-create-intro{max-width:62ch;margin:-4px 0 0;color:var(--muted);font-size:var(--font-supporting, 13px);line-height:1.45}.contact-create-voice>summary svg:first-child{color:var(--teach-action-soft-text)}.dialog-heading-row,.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-heading-row h2,.dialog-heading-row p{margin:0}.dialog-heading-row .icon-button{width:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line);border-radius:var(--radius-control, 10px);background:var(--surface-card, #fff);color:var(--muted)}.contact-create-parent>label,.contact-create-field,.contact-create-notes{display:grid;gap:5px;color:var(--muted);font-size:.82rem;font-weight:var(--font-weight-label, 500)}.contact-create-notes textarea{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-input);color:var(--text);font:inherit}.app-dropdown-trigger,.app-dropdown-menu button{font-size:13px;text-transform:none;letter-spacing:normal}.contact-create-notes textarea{min-height:80px;resize:vertical}.contact-create-notes .contact-create-voice-transcript{min-height:160px;line-height:1.5}.dialog-actions{justify-content:flex-end;padding-top:4px}.dialog-actions button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.week-slot-add-button{width:100%;min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px dashed transparent;border-radius:8px;background:transparent;color:color-mix(in srgb,var(--muted) 72%,transparent);font-size:.72rem;font-weight:var(--font-weight-label, 500);cursor:pointer;opacity:.62}.week-slot-add-button:hover,.week-slot-add-button:focus-visible{border-color:color-mix(in srgb,var(--mgmt-blue) 35%,var(--line));background:color-mix(in srgb,var(--mgmt-blue-soft) 46%,transparent);color:var(--app-action-text);opacity:1}@media(max-width:860px){.payment-filter-row{grid-template-columns:1fr}}html[data-app-theme=bloomli] .brand-mark{background:#173c33;box-shadow:4px 4px #f06f58b8,var(--app-brand-shadow)}html[data-app-theme] .home-hero{position:relative;isolation:isolate;overflow:hidden;min-height:290px;align-content:center;padding:24px;background:var(--home-hero-bg)}html[data-app-theme] .home-hero:after{content:"";position:absolute;z-index:-1;inset-block:10px;inset-inline-end:-18px;width:min(47%,560px);background:url(/bloomli-home-garden-cutout.webp) center / contain no-repeat;pointer-events:none}@container app-canvas (max-width: 920px){html[data-app-theme] .home-hero{grid-template-rows:auto auto;padding:18px;padding-block-end:155px}html[data-app-theme] .home-hero:after{inset:auto -12px -10px auto;width:min(58vw,230px);height:150px;opacity:.76}}@media(prefers-reduced-motion:no-preference){html[data-app-theme] .home-hero:after{animation:bloomli-garden-enter .52s cubic-bezier(.16,1,.3,1) both}}@keyframes bloomli-garden-enter{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}.inwork-branch-badge{display:inline-flex;align-items:center;justify-content:center;min-height:22px;border:1px solid #d67a27;border-radius:999px;padding:2px 7px;background:#fff2df;color:#8a3e08;font-size:12px;font-weight:var(--font-weight-label, 500);letter-spacing:.08em}.persistence-status-bar{display:flex;align-items:center;gap:10px;min-height:46px;margin-bottom:12px;border:1px solid var(--line);border-radius:var(--radius-control, 12px);padding:8px 10px;background:var(--surface-card);box-shadow:var(--shadow-soft)}.persistence-status-bar.tone-saved{border-color:#b8d7c3}.persistence-status-bar.tone-working{border-color:#a8c7df}.persistence-status-bar.tone-error{border-color:#e3a49b;background:#fff8f6}.persistence-status-icon{display:inline-flex;flex:0 0 auto;color:var(--muted)}.persistence-status-bar.tone-saved .persistence-status-icon{color:#287a4d}.persistence-status-bar.tone-working .persistence-status-icon{color:#2a6f9f}.persistence-status-bar.tone-error .persistence-status-icon{color:#a23b2e}.persistence-status-copy{min-width:0;display:grid;gap:1px}.persistence-status-copy strong{font-size:13px}.persistence-status-copy small{color:var(--muted);font-size:12px;line-height:1.35}.persistence-status-actions{margin-inline-start:auto;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.student-context-link{width:fit-content;min-height:40px;display:inline-flex;align-items:center;gap:7px;margin-block:2px 10px}.home-empty-action,.teaching-empty-action{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:var(--radius-control, 12px);padding:14px;background:var(--surface-panel)}.home-empty-action>div,.teaching-empty-action>div{min-width:0;display:grid;gap:4px}.home-empty-action span,.teaching-empty-action span{color:var(--muted);font-size:13px;line-height:1.45}.today-hours-disclosure{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:10px 12px;color:var(--muted);font-size:12px}html[data-app-theme] .home-hero{grid-template-columns:minmax(320px,.82fr) minmax(360px,1.18fr);grid-template-rows:auto}@media(max-width:720px){.persistence-status-bar,.persistence-status-actions,.home-empty-action,.teaching-empty-action,.today-hours-disclosure{align-items:stretch;flex-direction:column}.persistence-status-actions{width:100%;margin-inline-start:0}.persistence-status-actions button,.home-empty-action button,.teaching-empty-action button,.today-hours-disclosure button{width:100%;justify-content:center}.inwork-branch-badge{font-size:12px}}body[data-app-layout-mode=phone] .app-sidebar{background:var(--surface-sheet, #ffffff);-webkit-backdrop-filter:none;backdrop-filter:none}body[data-app-layout-mode=phone] .app-sidebar.signed-out .mobile-primary-nav{display:none}body[data-app-layout-mode=phone] .login-gate{min-height:0;place-items:start stretch}body[data-app-layout-mode=phone] .lesson-drawer{background:#0f172a85;-webkit-backdrop-filter:none;backdrop-filter:none}body[data-app-layout-mode=phone] .drawer-card{height:100svh;max-height:100svh;border-radius:0;background:var(--surface-sheet, #ffffff)}body[data-app-layout-mode=phone] .payments-page,body[data-app-layout-mode=phone] .payments-table-panel{width:100%;max-width:100%;box-sizing:border-box}body[data-app-layout-mode=phone] .contact-detail .section-title{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:10px}body[data-app-layout-mode=phone] .payment-header-actions,body[data-app-layout-mode=phone] .contact-detail .contact-toolbar{width:100%;display:grid;grid-template-columns:minmax(0,1fr);justify-content:stretch}body[data-app-layout-mode=phone] .payment-header-actions>*,body[data-app-layout-mode=phone] .contact-detail .contact-toolbar>*{width:100%;justify-content:center}body[data-app-layout-mode=phone] .payments-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}body[data-app-layout-mode=phone] .payments-tabs button{min-width:0;min-height:44px;padding-inline:6px;white-space:normal;line-height:1.15}.app-icon-button{position:relative;width:40px;min-width:40px;height:40px;min-height:40px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control, 12px);padding:0;background:var(--surface-card);color:var(--text);cursor:pointer}.app-icon-button:hover:not(:disabled),.app-icon-button:focus-visible{border-color:var(--teach-green-mid);background:var(--teach-green-soft);box-shadow:none}.app-icon-button-primary{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}.app-icon-button-primary:hover:not(:disabled),.app-icon-button-primary:focus-visible{border-color:var(--action-control-border, color-mix(in srgb, var(--teach-green) 82%, #000));background:var(--action-control-hover-bg, color-mix(in srgb, var(--teach-green) 82%, #000));color:var(--action-control-text, var(--teach-action-solid-text))}.app-icon-button-danger{border-color:var(--danger-line);background:var(--danger-soft);color:var(--danger-text)}.app-icon-button-danger:hover:not(:disabled),.app-icon-button-danger:focus-visible{border-color:var(--rose);background:var(--danger-soft)}.app-icon-button:disabled{opacity:.48;cursor:not-allowed}.app-icon-tooltip{position:fixed;z-index:10000;width:max-content;max-width:220px;padding:5px 7px;border:1px solid color-mix(in srgb,var(--line) 88%,#80938d);border-radius:7px;color:var(--text);background:var(--surface-popover, #fff);box-shadow:0 4px 12px #1e2a3a1f;font-size:11px;font-weight:600;line-height:1.3;text-align:center;white-space:normal;pointer-events:none;transform:translate(-50%,-100%);animation:app-icon-tooltip-enter .12s ease-out}.app-icon-tooltip[data-placement=bottom]{transform:translate(-50%)}.app-icon-tooltip[data-placement=pointer]{max-width:min(280px,calc(100vw - 16px));padding:2px 5px;border-color:#767676;border-radius:1px;color:#1f1f1f;background:#fff;box-shadow:none;font-weight:400;line-height:1.25;text-align:start;transform:none;animation:none}@keyframes app-icon-tooltip-enter{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.app-icon-tooltip{animation:none}}@media(min-width:1181px){.contacts-page{grid-template-columns:220px minmax(0,1fr);gap:14px}}.contacts-roster .contact-add-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.contacts-roster .contact-add-row button{min-height:36px;padding-inline:8px;white-space:nowrap}.contacts-roster .student-drag-card{min-height:54px;padding:8px 10px}.contacts-roster .student-drag-card strong{font-size:14px}.contacts-roster .student-drag-card small{margin-top:2px;font-size:12px}.contact-detail{min-width:0;overflow:visible}.contact-detail .section-title{margin-bottom:12px}.contact-student-header{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding:7px 10px;text-align:start}.contact-student-header>.student-identity-line{width:auto;min-width:0;flex:1 1 auto;flex-wrap:wrap}.contact-student-header.student-identity-header .student-identity-line h2,.contact-student-header.student-identity-header .student-identity-line p{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}.contact-student-header>.contact-student-header-actions{width:auto;flex:0 0 auto;display:flex;align-items:center;gap:8px}.contact-student-header .student-context-link{min-height:34px;margin:0;padding-inline:9px}.contact-create-by-voice{min-height:34px;margin:0;padding-inline:10px;white-space:nowrap}.contact-new-roster-card{border-style:dashed}.contact-toolbar{flex-wrap:nowrap}.contact-student-summary-row{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:12px;margin-bottom:12px}.contact-student-summary-row>.student-summary-strip{min-width:0;margin-bottom:0}.contact-student-summary-actions{min-width:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.contact-student-action-button{min-width:0;max-width:100%;flex:0 0 auto;min-height:44px;gap:7px;padding-inline:12px;white-space:normal}.contact-student-action-button:disabled{cursor:not-allowed;opacity:.48}.contact-student-actions-menu{position:relative;width:44px;height:44px;flex:0 0 44px}.contact-student-actions-menu>summary{width:44px;min-width:44px;height:44px;min-height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0;background:var(--surface-card, #fff);color:var(--text);cursor:pointer;list-style:none}.contact-student-actions-menu>summary::-webkit-details-marker{display:none}.contact-student-actions-menu>summary:hover,.contact-student-actions-menu[open]>summary{border-color:color-mix(in srgb,var(--teach-green) 38%,var(--line));background:var(--teach-green-soft)}.contact-student-actions-menu>summary:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 28%,transparent);outline-offset:2px}.contact-student-actions-menu>div{position:absolute;z-index:40;inset-block-start:calc(100% + 8px);inset-inline-end:0;width:190px;display:grid;gap:2px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);padding:6px;background:var(--surface-card, #fff);box-shadow:0 14px 32px color-mix(in srgb,var(--text) 14%,transparent)}.contact-student-actions-menu>div>button{width:100%;min-width:0;min-height:44px;display:flex;align-items:center;justify-content:flex-start;gap:10px;border:0;border-radius:var(--radius-control, 8px);padding:0 10px;background:transparent;color:var(--text);font:inherit;font-size:13px;font-weight:var(--font-weight-label, 500);text-align:start;cursor:pointer}.contact-student-actions-menu>div>button:hover,.contact-student-actions-menu>div>button:focus-visible{background:var(--teach-green-soft)}.contact-student-actions-menu>div>button:focus-visible{outline:2px solid var(--teach-green);outline-offset:-2px}.contact-student-actions-menu>div>button.danger{color:var(--danger, #c84235)}.contact-student-actions-menu>div>button.danger:hover,.contact-student-actions-menu>div>button.danger:focus-visible{background:color-mix(in srgb,var(--danger, #c84235) 9%,var(--surface-card, #fff))}.student-summary-strip{display:grid;margin-bottom:12px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--panel-strong, #fff);overflow:visible}.student-summary-strip.contact-student-summary-strip{grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr))}.contact-student-summary-strip .app-dropdown-value{white-space:normal;overflow-wrap:anywhere}.taxonomy-settings-modal{position:fixed;inset:0;z-index:calc(var(--z-dialog) + 1);overflow:auto;background:var(--surface-page, var(--surface-card, #fff))}.taxonomy-settings-dialog{min-height:100%;outline:none}.taxonomy-settings-dialog .settings-workspace{min-height:100dvh}.student-summary-strip.contact-new-student-summary-strip{grid-template-columns:minmax(118px,.9fr) minmax(172px,1.4fr) minmax(112px,.85fr) 64px minmax(132px,1fr)}.contact-student-summary-strip .student-summary-item{gap:8px}.contact-student-status-summary{padding-inline:10px}.contact-student-status-summary strong{font-size:12px}.contact-student-color-summary{justify-content:center;padding:8px 10px}.contact-student-color-summary .student-color-menu,.contact-student-color-summary .student-color-menu summary{width:44px;min-width:44px}.contact-student-color-summary .student-color-menu summary{height:44px;min-height:44px;display:grid;place-items:center;border:1px solid var(--line);padding:0;background:var(--surface-card, #fff)}.contact-student-color-summary .student-color-menu summary:hover,.contact-student-color-summary .student-color-menu[open] summary{border-color:color-mix(in srgb,var(--student-color) 50%,var(--line));background:color-mix(in srgb,var(--student-color) 8%,var(--surface-card, #fff))}.contact-student-color-summary .student-color-menu summary:focus-visible{outline:3px solid color-mix(in srgb,var(--student-color) 30%,transparent);outline-offset:2px}.contact-new-student-settings{margin-bottom:12px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--panel-strong, #fff);overflow:hidden}.contact-new-student-settings>summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;color:var(--text);cursor:pointer;list-style:none;touch-action:manipulation}.contact-new-student-settings>summary::-webkit-details-marker{display:none}.contact-new-student-settings>summary svg{flex:0 0 auto;color:var(--muted);transition:transform .18s ease}.contact-new-student-settings[open]>summary{border-bottom:1px solid var(--line)}.contact-new-student-settings[open]>summary svg{transform:rotate(180deg)}.contact-new-student-settings>.student-summary-strip{margin:0;border:0;border-radius:0}.student-summary-item{min-width:0;min-height:64px;display:flex;align-items:center;gap:9px;padding:10px 12px;color:var(--muted)}.student-summary-item+.student-summary-item{border-inline-start:1px solid var(--line)}.student-summary-item>span{width:100%;min-width:0;flex:1 1 0;display:grid;gap:2px}.student-summary-item small,.student-summary-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-summary-item small{font-size:12px;font-weight:var(--font-weight-label, 500)}.student-summary-item strong{color:var(--text);font-size:13px}.student-summary-item input:not([type=checkbox]),.student-summary-item .app-dropdown{width:100%;min-width:0;min-height:30px;border:1px solid var(--line);border-radius:8px;padding:4px 7px;background:var(--surface-input);color:var(--text);font:inherit}.contact-student-grade-summary .app-dropdown{min-height:0;border:0;border-radius:0;padding:0;background:transparent}.student-summary-check{cursor:default}.student-summary-check input{width:16px;min-width:16px;height:16px;margin-inline-start:auto}.student-summary-item .student-color-menu summary{min-height:30px;padding:3px 0;border:0;background:transparent}.student-summary-item .student-color-value{display:inline-flex;align-items:center;gap:8px}.student-summary-item .student-color-value .student-color-dot{width:12px;min-width:12px;height:12px}.student-identity-card{margin-bottom:12px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-sheet-muted);overflow:hidden}.student-identity-card>header,.contact-parent-card>header{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-bottom:1px solid var(--line)}.student-identity-heading{min-width:0;display:grid;gap:2px}.student-identity-heading small{color:var(--muted);font-size:var(--font-caption, 12px);font-weight:var(--font-weight-body, 400);line-height:1.35}.student-identity-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px}.student-identity-edit-grid>label,.student-identity-edit-grid .name-identity-editor label,.parent-edit-grid label{min-width:0;display:grid;gap:5px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.student-identity-edit-grid .name-identity-editor{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.student-identity-edit-grid .name-identity-editor label:last-of-type{grid-column:1 / -1}.student-identity-edit-grid input,.parent-edit-grid input{width:100%;min-width:0}.student-identity-edit-grid .name-identity-editor input[dir=rtl]{font-size:1rem}.student-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.info-card.contact-parent-card{min-width:0;min-height:0;display:block;gap:0;padding:0;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--panel-strong, #fff);overflow:hidden}.contact-parent-card .contact-remove-button{border-color:var(--danger-line);background:var(--danger-soft);color:var(--danger-text)}.contact-existing-parent-picker{display:grid;gap:6px;padding:0 12px 8px}.contact-existing-parent-picker .contact-existing-parent-toggle{display:flex;align-items:center;gap:8px;min-height:44px;color:var(--text);cursor:pointer}.contact-existing-parent-toggle input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;margin:0;accent-color:var(--teach-green)}.contact-existing-parent-toggle>span{color:inherit;font-size:13px}.contact-existing-parent-note{margin:0;padding:0 12px 12px;color:var(--muted);font-size:12px}.contact-parent-card .contact-remove-button:hover,.contact-parent-card .contact-remove-button:focus-visible{border-color:var(--rose);background:color-mix(in srgb,var(--rose) 16%,var(--surface-card))}.student-main-communication-card{margin:12px 0;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--panel-strong, #fff)}.student-main-communication-card>span{min-width:0;display:grid;gap:2px}.student-main-communication-card small{color:var(--muted)}.student-main-communication-card .app-dropdown{width:min(420px,48%);flex:0 1 420px}.student-whatsapp-group-card{margin:12px 0;padding:12px;display:grid;gap:10px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--panel-strong, #fff)}.student-whatsapp-group-card>header,.student-whatsapp-group-read,.student-whatsapp-group-edit{display:flex;align-items:center;gap:12px}.student-whatsapp-group-card>header{justify-content:space-between}.student-whatsapp-group-heading{min-width:0;display:flex;align-items:center;gap:9px}.student-whatsapp-group-heading>span{min-width:0;display:grid;gap:2px}.student-whatsapp-group-heading small,.student-whatsapp-group-read small{color:var(--muted)}.student-whatsapp-group-card>header em{padding:4px 8px;border-radius:999px;background:var(--soft-green, #eaf6ef);color:var(--accent-strong, #174139);font-size:11px;font-style:normal;font-weight:var(--font-weight-emphasis, 600);white-space:nowrap}.student-whatsapp-group-edit>label:first-child{min-width:0;flex:1;display:grid;gap:5px;color:var(--muted);font-size:12px}.student-whatsapp-group-edit input[type=url]{width:100%;min-width:0}.student-whatsapp-group-error{color:var(--danger, #a13b36)}.student-whatsapp-group-read .quiet-button{flex:0 0 auto}.student-whatsapp-group-empty .empty-state{margin:0}.student-whatsapp-group-empty .quiet-button{flex:0 0 auto}.parent-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}.parent-email-field{grid-column:1 / -1}@media(max-width:1380px){.student-summary-strip{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:720px){.contact-student-header{align-items:flex-start;flex-wrap:wrap}.contact-student-header>.contact-student-header-actions{width:100%;justify-content:space-between}.contact-student-summary-row{grid-template-columns:minmax(0,1fr)}.contact-student-summary-actions{justify-content:flex-end}.contact-detail .section-title{grid-template-columns:minmax(0,1fr) auto}.contact-detail .contact-toolbar,body[data-app-layout-mode=phone] .contact-detail .contact-toolbar{width:auto;display:flex;grid-template-columns:none}.contact-detail .contact-toolbar>*,body[data-app-layout-mode=phone] .contact-detail .contact-toolbar>*{width:40px;min-width:40px}.student-summary-strip,.student-profile-grid,.identity-read-grid,.student-identity-edit-grid,.student-identity-edit-grid .name-identity-editor,.parent-edit-grid{grid-template-columns:minmax(0,1fr)}.student-summary-strip.contact-student-summary-strip{grid-template-columns:minmax(0,1fr) 72px}.contact-student-class-summary,.contact-student-grade-summary,.contact-student-status-summary{grid-column:1 / -1}.contact-student-grade-summary{grid-row:2}.contact-student-price-summary{grid-column:1;grid-row:3}.contact-student-color-summary{grid-column:2;grid-row:3;min-height:64px;justify-content:center;padding:8px 14px}.contact-student-status-summary{grid-row:4;min-height:60px}.student-summary-item+.student-summary-item,.student-summary-item:nth-child(4){border-inline-start:0;border-top:1px solid var(--line)}.contact-new-student-settings .student-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-new-student-settings .contact-student-class-summary,.contact-new-student-settings .contact-student-grade-summary,.contact-new-student-settings .contact-student-price-summary,.contact-new-student-settings .contact-student-color-summary,.contact-new-student-settings .contact-student-status-summary{grid-column:auto;grid-row:auto}.contact-new-student-settings .student-summary-item{min-height:68px;padding:8px 10px}.contact-new-student-settings .student-summary-item:nth-child(2),.contact-new-student-settings .student-summary-item:nth-child(4){border-inline-start:1px solid var(--line)}.contact-new-student-settings .student-summary-item:nth-child(3),.contact-new-student-settings .student-summary-item:nth-child(4),.contact-new-student-settings .student-summary-item:nth-child(5){border-top:1px solid var(--line)}.contact-student-summary-strip .contact-student-color-summary{border-inline-start:1px solid var(--line)}.contact-new-student-settings .student-summary-item:nth-child(3){border-inline-start:0}.contact-new-student-settings .student-summary-item:nth-child(5){grid-column:1 / -1;border-inline-start:0}.student-identity-edit-grid .name-identity-editor,.student-identity-edit-grid .name-identity-editor label:last-of-type,.parent-email-field{grid-column:auto}.student-whatsapp-group-edit,.student-whatsapp-group-read,.student-main-communication-card{align-items:stretch;flex-direction:column}.student-main-communication-card .app-dropdown{width:100%;flex:none}.student-whatsapp-group-read .quiet-button{min-height:44px}}.app-settings-header h1,.app-settings-section-heading h2{margin:0;color:var(--text);text-wrap:balance}.app-settings-header .eyebrow{margin:0 0 4px}.app-settings-header p,.app-settings-section-heading p{margin:4px 0 0;max-width:70ch;color:var(--muted)}.app-settings-section-stack,.prompt-settings-list{display:grid;gap:16px}.app-settings-section{display:grid;gap:16px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-panel-strong, var(--surface-card))}.app-settings-section-heading.with-icon{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start}.app-settings-section-heading.with-icon>svg{margin-top:3px;color:var(--app-action-text)}.settings-field{display:grid;gap:7px;max-width:460px;color:var(--text);font-weight:var(--font-weight-label, 500)}.settings-field input,.settings-editor-row input,.prompt-settings-field textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-input, var(--surface-card));color:var(--text);font:inherit;font-size:var(--font-body, 14px)}.settings-field input,.settings-editor-row input{min-height:36px;padding:0 10px}.settings-field input:focus-visible,.settings-editor-row input:focus-visible,.prompt-settings-field textarea:focus-visible{border-color:var(--mgmt-blue);outline:3px solid color-mix(in srgb,var(--mgmt-blue) 18%,transparent);outline-offset:1px}.settings-field small,.prompt-settings-field small{color:var(--muted);font-weight:500}.settings-editor,.settings-editor-list,.subject-settings-list,.sub-subject-list{display:grid;gap:10px}.settings-editor-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.settings-editor-subheading h3,.settings-editor-subheading h4{margin:0;color:var(--text);font-size:16px;line-height:1.25}.settings-editor-subheading p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.settings-editor-row{display:grid;grid-template-columns:minmax(0,1fr) 34px 38px;gap:8px;align-items:end}.settings-editor-row label{display:grid;gap:5px;min-width:0;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.settings-editor-actions{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:4px}.settings-editor-actions-top{flex:0 0 auto;justify-content:flex-end;padding-top:0}.settings-editor-actions button,.settings-commit-actions,.add-sub-subject-button,.prompt-reset-button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.settings-commit-actions{display:flex;align-items:center;gap:8px;margin-inline-start:auto}.settings-commit-actions .settings-cancel-button{width:36px;min-width:36px;padding:0}.settings-save-message{color:var(--app-success-text);font-weight:var(--font-weight-label, 500)}.settings-inactive-grades,.settings-inactive-subjects,.settings-inactive-topics-panel{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-muted-band, var(--surface-card))}.settings-inactive-grade-list,.settings-inactive-topic-list,.settings-inactive-subject-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.settings-inactive-grade-list li,.settings-inactive-topic-list li,.settings-inactive-subject{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-card)}.settings-inactive-grade-list li>span,.settings-inactive-topic-list li>span,.settings-inactive-subject>div{min-width:0;display:grid;gap:3px}.settings-inactive-grade-list strong,.settings-inactive-topic-list strong,.settings-inactive-subject h4{color:var(--text);font-size:14px;font-weight:var(--font-weight-strong, 600)}.settings-inactive-grade-list small,.settings-inactive-topic-list small,.settings-inactive-subject p,.settings-inactive-subject small{color:var(--muted);font-size:13px;line-height:1.4}.settings-inactive-subject h4,.settings-inactive-subject p{margin:0}.settings-inactive-subject small{display:block}.storage-settings-section{gap:16px}.storage-provider-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.storage-provider-card{min-height:112px;display:grid;grid-template-columns:40px minmax(0,1fr) 24px;align-items:start;gap:12px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);padding:16px;background:var(--surface-card);color:var(--text);text-align:start;cursor:pointer}.storage-provider-card:hover{border-color:var(--teach-green-mid);background:color-mix(in srgb,var(--teach-green-soft) 44%,var(--surface-card))}.storage-provider-card.is-selected{border-color:var(--teach-green);box-shadow:inset 0 0 0 1px var(--teach-green);background:color-mix(in srgb,var(--teach-green-soft) 68%,var(--surface-card))}.storage-provider-card:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 24%,transparent);outline-offset:2px}.storage-provider-icon,.storage-provider-check{display:grid;place-items:center;color:var(--teach-action-soft-text)}.storage-provider-icon{width:40px;height:40px;border-radius:var(--radius-control, 8px);background:var(--teach-green-soft)}.storage-provider-check{width:24px;height:24px;border:1px solid var(--line);border-radius:50%;background:var(--surface-input)}.storage-provider-card.is-selected .storage-provider-check{border-color:var(--teach-green);background:var(--teach-green);color:var(--teach-action-solid-text)}.storage-provider-copy{display:grid;gap:6px}.storage-provider-copy strong{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:15px;font-weight:var(--font-weight-strong, 600)}.storage-provider-copy strong small{border-radius:999px;padding:3px 7px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-label, 500)}.storage-provider-copy>span,.storage-settings-footnote,.storage-drive-status small{color:var(--muted);font-size:13px;font-weight:400;line-height:1.45}.storage-drive-status{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);padding:12px;background:var(--surface-muted-band, var(--surface-card))}.storage-drive-status>span{display:grid;gap:3px}.storage-drive-status>span strong{font-size:14px;font-weight:var(--font-weight-strong, 600)}.storage-drive-status>button{min-height:36px;flex:0 0 auto;border:1px solid var(--action-control-border, var(--teach-green));border-radius:var(--radius-control, 8px);padding:0 12px;background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));font:inherit;font-size:13px;font-weight:var(--font-weight-label, 500)}.storage-settings-message{margin:0;color:var(--muted);font-size:13px}.storage-settings-message.is-error{padding:10px 12px;border:1px solid color-mix(in srgb,var(--rose) 42%,transparent);border-radius:var(--radius-control, 8px);background:color-mix(in srgb,var(--rose) 10%,var(--surface-card));color:var(--danger-text, #8b2434);font-weight:var(--font-weight-label, 500)}@media(max-width:700px){.storage-provider-options{grid-template-columns:minmax(0,1fr)}.storage-provider-card{min-height:124px;padding:12px}.storage-drive-status{align-items:stretch;flex-direction:column}.storage-drive-status>button{min-height:44px;width:100%}}.subject-settings-group{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-muted-band, var(--surface-card))}.subject-row{padding-bottom:12px;border-bottom:1px solid var(--line)}.sub-subject-list{padding-inline-start:24px}.settings-inactive-topics-panel{margin-top:16px}.add-sub-subject-button,.prompt-reset-button{justify-self:start;min-height:36px;border:0;background:transparent;color:var(--app-action-text);font:inherit;font-weight:var(--font-weight-label, 500)}.prompt-settings-field{display:grid;gap:8px;padding-bottom:18px;border-bottom:1px solid var(--line)}.prompt-settings-field:last-child{padding-bottom:0;border-bottom:0}.prompt-settings-field>span{display:grid;gap:3px}.prompt-settings-field textarea{min-height:130px;padding:11px 12px;line-height:1.5;resize:vertical}.prompt-save-actions{justify-content:flex-end}@media(max-width:700px){.app-settings-section{gap:16px;padding:14px}.subject-settings-group{padding:12px}.sub-subject-list{padding-inline-start:12px}.settings-editor-row{grid-template-columns:minmax(0,1fr) 36px 40px}.settings-editor-toolbar{display:grid;gap:12px}.settings-editor-actions-top{justify-content:stretch}.settings-editor-actions>button{min-height:44px;flex:1 1 150px}.settings-inactive-grade-list li,.settings-inactive-topic-list li,.settings-inactive-subject{align-items:stretch;flex-direction:column}.settings-inactive-grade-list li button,.settings-inactive-topic-list li button,.settings-inactive-subject button{width:100%;min-height:44px}}.global-search-backdrop{position:fixed;inset:0;z-index:90;display:grid;place-items:start center;padding:min(12vh,96px) 20px 20px;background:#111e1a4d}.global-search-dialog{width:min(680px,calc(100vw - 40px));max-height:min(720px,calc(100svh - 120px));display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:12px;overflow:hidden;padding:16px;border:1px solid var(--line);border-radius:var(--radius-sheet);background:var(--surface-panel-strong);box-shadow:var(--shadow-dialog)}.global-search-dialog>header,.global-search-results button,.global-search-actions button{display:flex;align-items:center;gap:10px}.global-search-dialog>header{justify-content:space-between}.global-search-dialog h2{margin:0}.global-search-input kbd{color:var(--muted);font:inherit;font-size:12px}.global-search-results,.global-search-actions{display:grid;gap:4px;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.global-search-results button,.global-search-actions button{width:100%;min-height:52px;padding:8px 10px;border:0;border-radius:var(--radius-control);background:transparent;color:var(--text);text-align:start;cursor:pointer}.global-search-results button:hover,.global-search-actions button:hover{background:var(--teach-green-soft)}.global-search-results .global-search-result-copy,.global-search-actions span{display:grid;gap:2px}.global-search-resource-format{min-width:44px;min-height:28px;display:inline-grid;place-items:center;flex:0 0 auto;padding:3px 6px;border:1px solid var(--line);border-radius:6px;background:var(--surface-muted-band, var(--surface-card));color:var(--muted);font-size:11px;font-weight:var(--font-weight-label, 600);letter-spacing:.03em}.global-search-results small,.global-search-actions small{color:var(--muted)}body[data-app-layout-mode=phone] .contact-detail .student-color-options{top:auto;bottom:calc(100% + 6px);max-height:min(360px,calc(100svh - 32px));overflow-y:auto;overscroll-behavior:contain}.contact-search-empty-detail{min-height:280px;display:grid;place-items:center;align-content:center;gap:10px;padding:32px;text-align:center}.contact-search-empty-detail h1,.contact-search-empty-detail p{margin:0}.contact-search-empty-detail p{max-width:48ch;color:var(--muted)}@media(max-width:700px){.settings-editor-actions:not(.settings-editor-actions-top){position:sticky;bottom:0;z-index:4;margin-inline:-12px;padding:12px 12px calc(12px + var(--app-safe-bottom));border-top:1px solid var(--line);background:var(--surface-sheet, #fff)}}body[data-app-layout-mode=phone] .settings-editor-actions:not(.settings-editor-actions-top){position:sticky;bottom:0;z-index:4;margin-inline:-12px;padding:12px 12px calc(12px + var(--app-safe-bottom));border-top:1px solid var(--line);background:var(--surface-sheet, #fff)}.drawer-schedule-editor{display:grid;min-width:0;gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card, #fff)}.drawer-edit-scope,.drawer-makeup-editor{display:grid;gap:10px;margin:0;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);padding:12px;background:var(--surface-card)}.drawer-edit-scope legend,.drawer-makeup-editor h3{margin:0;font-size:14px;font-weight:600}.drawer-edit-scope label{min-height:36px;display:flex;align-items:center;gap:8px;font-weight:500}.drawer-edit-scope small,.drawer-makeup-editor p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.drawer-makeup-editor{margin-bottom:16px;border-color:color-mix(in srgb,var(--rose) 28%,var(--line));background:color-mix(in srgb,var(--rose) 4%,var(--surface-card))}.drawer-cancellation-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.drawer-cancellation-options button{min-height:58px;display:grid;gap:3px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:8px 10px;background:var(--surface-input);color:var(--text);text-align:start;cursor:pointer}.drawer-cancellation-options small{color:var(--muted);font-size:12px}.drawer-makeup-editor>button{justify-self:start;display:inline-flex;align-items:center;gap:7px}.drawer-schedule-fields{display:grid;min-width:0;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:10px}.drawer-schedule-fields label{display:grid;min-width:0;gap:5px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.drawer-schedule-fields label:last-child{grid-column:1 / -1}.drawer-schedule-fields input,.drawer-schedule-fields .app-dropdown-trigger{width:100%;min-width:0;max-width:100%;min-height:40px;border:1px solid var(--line);border-radius:var(--radius-control);padding-inline:9px;background:var(--surface-input, #fff);color:var(--text)}.drawer-schedule-fields .app-dropdown{width:100%}.drawer-schedule-lock-note{display:flex;align-items:flex-start;gap:7px;margin:0;padding:9px 10px;border:1px solid color-mix(in srgb,var(--warning, #b7791f) 28%,var(--line));border-radius:var(--radius-control);background:color-mix(in srgb,var(--warning, #b7791f) 8%,var(--surface-card));color:var(--text);font-size:12px;line-height:1.45}.drawer-schedule-lock-note svg{flex:0 0 auto;margin-top:1px;color:var(--warning, #b7791f)}.drawer-schedule-actions{display:flex;min-width:0;flex-wrap:wrap;justify-content:flex-end;gap:8px}@media(max-width:700px){.drawer-schedule-editor{gap:10px;margin-inline:-4px;padding:10px}.drawer-schedule-actions{display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);width:100%}.drawer-schedule-actions>button{width:100%;min-width:0}.drawer-schedule-actions .lesson-propose-schedule-button{width:44px;padding:0}.drawer-edit-schedule-toggle,.drawer-schedule-fields input,.drawer-schedule-fields .app-dropdown-trigger,.drawer-schedule-actions button{min-height:44px}}.calendar-management-page .desktop-week-calendar .calendar-chip{height:calc(var(--calendar-slot-height) * var(--chip-duration-slots, 1) - 2px);min-height:0;overflow:hidden}.calendar-chip[data-status=cancelled]:not(.google-external-chip){border-color:color-mix(in srgb,var(--muted) 58%,var(--line));background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--muted) 8%,var(--surface-card)) 0 6px,color-mix(in srgb,var(--muted) 18%,var(--surface-card)) 6px 8px);color:color-mix(in srgb,var(--muted) 82%,var(--text));box-shadow:inset 4px 0 color-mix(in srgb,var(--muted) 72%,var(--line));cursor:pointer}.calendar-chip[data-status=cancelled] .chip-grip{display:none}.calendar-chip[data-status=cancelled] .calendar-student-chip{border-color:color-mix(in srgb,var(--muted) 38%,var(--line));background:color-mix(in srgb,var(--muted) 13%,var(--surface-card));color:color-mix(in srgb,var(--muted) 86%,var(--text));box-shadow:none;filter:grayscale(1)}.calendar-cancelled-indicator{position:absolute;top:5px;inset-inline-end:5px;z-index:2;width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;color:color-mix(in srgb,var(--muted) 90%,var(--text));pointer-events:none}.calendar-chip[data-status=cancelled] .calendar-student-chip:nth-child(2),.calendar-chip[data-status=cancelled][data-student-count="1"] .calendar-student-chip{padding-inline-end:18px}.month-cell-item[data-status=cancelled]{border-inline-start:3px solid color-mix(in srgb,var(--muted) 70%,var(--line));background:repeating-linear-gradient(135deg,#f3f4f6 0 5px,#e5e7eb 5px 7px);color:var(--muted);text-decoration:none}.lesson-drawer-header{grid-template-columns:minmax(0,1fr) auto}.lesson-drawer-header-actions{display:flex;align-items:flex-start;gap:6px}.lesson-drawer-cancel-trigger:hover,.lesson-drawer-cancel-trigger.active{border-color:color-mix(in srgb,var(--muted) 66%,var(--line));background:color-mix(in srgb,var(--muted) 9%,var(--surface-card))}.lesson-cancellation-dialog-backdrop{z-index:calc(var(--z-dialog, 1000) + 2)}.lesson-cancellation-dialog{width:min(500px,100%)}.lesson-cancellation-dialog-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--muted) 14%,var(--surface-card));color:color-mix(in srgb,var(--muted) 88%,var(--text))}.lesson-cancellation-dialog-body{min-height:0;overflow-y:auto;display:grid;align-content:start;gap:14px;padding:18px 20px}.lesson-cancellation-dialog-body>p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.lesson-cancellation-dialog-body>label:not(.drawer-cancellation-message-choice){display:grid;gap:6px;color:var(--text);font-size:12px;font-weight:var(--font-weight-label, 500)}.lesson-cancellation-dialog-body>label:not(.drawer-cancellation-message-choice) input{width:100%;min-height:40px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0 10px;background:var(--surface-input);color:var(--text)}.lesson-drawer-option-a.is-cancelled .lesson-drawer-header{background:repeating-linear-gradient(135deg,transparent 0 8px,color-mix(in srgb,var(--muted) 7%,transparent) 8px 10px),color-mix(in srgb,var(--muted) 6%,var(--surface-sheet));color:color-mix(in srgb,var(--muted) 82%,var(--text))}.lesson-drawer-option-a.is-cancelled .lesson-cancelled-meta{color:color-mix(in srgb,var(--muted) 88%,var(--text))}.lesson-drawer-option-a.is-cancelled .lesson-drawer-scroll{position:relative;isolation:isolate;background:color-mix(in srgb,var(--muted) 5%,var(--surface-sheet))}.lesson-drawer-option-a.is-cancelled .lesson-drawer-scroll:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(135deg,transparent 0 10px,color-mix(in srgb,var(--muted) 8%,transparent) 10px 12px)}.lesson-drawer-option-a.is-cancelled .lesson-drawer-scroll>*{position:relative;z-index:1}.lesson-drawer-option-a.is-cancelled .lesson-drawer-scroll>:not(.lesson-cancelled-state):not(.lesson-drawer-command-row):not(.lesson-cancelled-watermark){opacity:.68;filter:grayscale(.86) saturate(.18)}.lesson-drawer-option-a.is-cancelled .lesson-drawer-command-row .lesson-drawer-icon-action:not(.danger){opacity:.64;filter:grayscale(1) saturate(0)}.lesson-cancelled-watermark{position:absolute!important;top:330px;inset-inline:20px;z-index:2!important;pointer-events:none;transform:rotate(-18deg);color:color-mix(in srgb,var(--muted) 14%,transparent);font-size:clamp(44px,5vw,72px);font-weight:var(--font-weight-heading, 700);letter-spacing:.12em;text-align:center;text-transform:uppercase;white-space:nowrap}.lesson-cancelled-state{z-index:3!important;display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px 12px;align-items:center;margin-bottom:14px;border:1px solid color-mix(in srgb,var(--muted) 50%,var(--line));border-radius:var(--radius-panel, 12px);padding:12px;background:color-mix(in srgb,var(--muted) 12%,var(--surface-card));box-shadow:0 6px 18px color-mix(in srgb,var(--muted) 12%,transparent)}.lesson-cancelled-state-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--muted) 18%,var(--surface-card));color:color-mix(in srgb,var(--muted) 88%,var(--text))}.lesson-cancelled-state>div:not(.lesson-cancelled-state-actions){display:grid;gap:3px}.lesson-cancelled-state strong{color:color-mix(in srgb,var(--muted) 86%,var(--text));font-size:14px}.lesson-cancelled-state small{color:var(--muted);font-size:12px}.lesson-cancelled-state-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px}.lesson-restore-button,.lesson-cancellation-message-button,.lesson-confirm-cancellation-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid color-mix(in srgb,var(--muted) 54%,var(--line));border-radius:var(--radius-control, 8px);padding:0 11px;background:color-mix(in srgb,var(--muted) 12%,var(--surface-card));color:color-mix(in srgb,var(--muted) 88%,var(--text));font:inherit;font-size:12px;font-weight:var(--font-weight-heading, 700);cursor:pointer}.lesson-restore-button:hover,.lesson-cancellation-message-button:hover,.lesson-confirm-cancellation-button:hover{background:color-mix(in srgb,var(--muted) 21%,var(--surface-card))}.drawer-cancellation-options button.active{border-color:color-mix(in srgb,var(--muted) 72%,var(--line));background:color-mix(in srgb,var(--muted) 14%,var(--surface-card))}.drawer-cancellation-message-choice{min-height:54px;grid-template-columns:auto minmax(0,1fr)!important;align-items:center;gap:10px!important;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:9px 10px;background:var(--surface-input)}.drawer-cancellation-message-choice input{width:18px!important;min-height:18px!important;accent-color:var(--teach-green)}.drawer-cancellation-message-choice span{display:grid;gap:2px}.drawer-cancellation-message-choice small{color:var(--muted);font-size:11px;font-weight:400}.lesson-cancellation-message-mark{background:color-mix(in srgb,var(--muted) 14%,var(--surface-card));color:color-mix(in srgb,var(--muted) 88%,var(--text))}.group-lesson-request-mark{background:var(--teach-green-soft);color:var(--teach-action)}.group-lesson-request-summary{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--teach-action) 24%,var(--line));border-radius:var(--radius-control);background:color-mix(in srgb,var(--teach-green-soft) 55%,var(--surface-card))}.group-lesson-request-summary>span{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:var(--surface-card);color:var(--teach-action)}.group-lesson-request-summary strong,.group-lesson-request-summary small{display:block}.group-lesson-request-summary small{margin-top:3px;color:var(--muted)}.group-lesson-request-summary small svg{vertical-align:-2px}.group-lesson-request-dialog textarea{min-height:220px}.group-lesson-request-error{margin:0;color:var(--danger-text, #9a2f2f);font-size:12px}@media(max-width:700px){.lesson-drawer-cancel-trigger,.lesson-restore-button,.lesson-cancellation-message-button,.lesson-confirm-cancellation-button{min-height:44px}.lesson-cancelled-state-actions{display:grid;grid-template-columns:1fr}.lesson-cancelled-watermark{top:390px;font-size:42px}}.message-template-heading{display:flex;min-height:28px;align-items:center;justify-content:space-between;gap:10px}.message-template-button{display:inline-flex;min-height:30px;flex:0 0 auto;align-items:center;justify-content:center;gap:6px;border:1px solid color-mix(in srgb,var(--teach-action, #23856f) 42%,var(--line));border-radius:8px;padding:4px 10px;color:var(--teach-action, #116a55);background:color-mix(in srgb,var(--teach-action, #23856f) 6%,var(--surface-card, #fff));font-size:12px;font-weight:var(--font-weight-heading, 700);white-space:nowrap}.message-template-button:hover:not(:disabled){border-color:var(--teach-action, #23856f);background:color-mix(in srgb,var(--teach-action, #23856f) 11%,var(--surface-card, #fff))}.message-template-button:disabled{cursor:not-allowed;opacity:.5}.message-template-control{display:inline-flex;min-width:0;max-width:340px;flex-direction:column;align-items:flex-end;gap:6px}.message-template-help{color:var(--muted);font-size:12px;font-weight:400;line-height:1.5;text-align:start;white-space:normal}.message-template-help a{color:var(--teach-action, #116a55);text-decoration:underline}@media(max-width:600px){.message-template-heading{flex-wrap:wrap}.message-template-control{max-width:100%}}.teaching-module{margin:0 auto;display:grid;color:var(--text)}.lesson-plan-homework{margin-top:18px;padding:18px;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--accent-soft) 34%,var(--surface-panel))}.lesson-plan-homework-heading{align-items:flex-start;gap:16px}.lesson-plan-homework-heading>div>p:last-child{max-width:620px;margin:4px 0 0;color:var(--muted)}.lesson-plan-homework-empty{margin:14px 0 0}.lesson-plan-homework-list{display:grid;gap:10px;margin-top:14px}.lesson-plan-homework-card{display:grid;grid-template-columns:30px minmax(0,1fr) 38px;gap:10px;align-items:start;padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--surface-panel)}.lesson-plan-homework-card>div{display:grid;gap:4px;min-width:0}.lesson-plan-homework-card>div>small{color:var(--muted)}.lesson-plan-homework-card .simple-rich-text-content{color:var(--text-secondary)}.lesson-plan-homework-check,.lesson-message-homework-check{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:9px;color:var(--accent-strong);background:var(--accent-soft)}.lesson-message-homework-choices{display:grid;gap:7px;padding:9px 10px 2px}.lesson-message-topic>.homework-activity-choice>span:nth-child(2){display:grid;gap:2px;text-align:start}.lesson-message-topic>.homework-activity-choice>span:nth-child(2) small{color:var(--muted);font-size:11px;font-weight:500}.lesson-message-homework-choice{display:grid;grid-template-columns:26px minmax(0,1fr);gap:9px;align-items:center;width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:11px;color:var(--text);text-align:start;background:var(--surface-panel)}.lesson-message-homework-choice[aria-pressed=true]{border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:color-mix(in srgb,var(--accent-soft) 56%,var(--surface-panel))}.lesson-message-homework-choice>span:last-child{display:grid;gap:2px;min-width:0}.lesson-message-homework-choice small{color:var(--muted);font-size:11px}.lesson-message-homework-choice:not([aria-pressed=true]) .lesson-message-homework-check{box-shadow:inset 0 0 0 1px var(--line);background:transparent}.lesson-message-add-activity{display:inline-flex;align-items:center;gap:6px;margin:8px 10px 2px;padding:7px 9px;border:0;color:var(--accent-strong);font-weight:var(--font-weight-heading, 700);background:transparent}.student-activities-workspace{gap:14px}.student-activity-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.student-activity-section-heading h3,.student-activity-section-heading p{margin:0}.student-activity-section-heading>span{min-width:28px;padding:4px 8px;border-radius:999px;color:var(--accent-strong);text-align:center;background:var(--accent-soft)}.student-activity-record-card>.teaching-quiet-button{justify-self:start}@media(max-width:720px){.lesson-plan-homework{padding:14px}.lesson-plan-homework-heading{display:grid}.lesson-plan-homework-heading>button{width:100%;justify-content:center}.lesson-plan-homework-card{grid-template-columns:28px minmax(0,1fr) 38px;padding:11px}.lesson-message-homework-choices{padding-inline:6px}}.teaching-module *,.teaching-module *:before,.teaching-module *:after{min-width:0}.teaching-two-column,.teaching-resource-page{display:grid;grid-template-columns:minmax(230px,300px) minmax(0,1fr);gap:clamp(16px,2vw,24px);align-items:start}.teaching-detail-panel{min-width:0}.teaching-shell-header,.teaching-lesson-header,.teaching-student-header,.teaching-resource-title,.teaching-panel-title{display:flex;align-items:center;gap:14px}.teaching-filter-panel .teaching-panel-title{display:grid;justify-items:start;gap:7px;padding-bottom:4px;text-align:start}.teaching-filter-panel .teaching-panel-title h2,.teaching-filter-panel .teaching-panel-title p{margin-inline:0}.teaching-eyebrow{margin:0 0 4px;color:#567086;font-size:var(--font-xs, 12px);font-weight:var(--font-weight-label, 500);letter-spacing:.08em;text-transform:uppercase}.teaching-icon-button,.teaching-header-actions button,.teaching-add-row button,.teaching-secondary-action,.teaching-summary-add button,.teaching-inline-actions button,.teaching-inline-actions a,.teaching-quick-grid button{min-height:var(--button-standard-h, 36px);display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0 12px;color:var(--text);background:#fff;font-size:var(--font-body, 14px);font-weight:var(--font-weight-label, 500);text-decoration:none;cursor:pointer}.teaching-nav button,.teaching-tabs button,.lesson-tabs button,.lesson-card button,.plan-block button,.summary-block button,.resource-card button,.student-file button,.teaching-panel button{font:inherit}.teaching-nav button.active,.teaching-nav [aria-current=page]{background:#1d1d1f;color:#fff;box-shadow:none}.teaching-card-icon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-control, 8px);color:#0a67d1;background:#eaf4ff}.teaching-card-icon.compact{width:32px;height:32px}.teaching-home-grid small,.teaching-panel small,.lesson-card small,.plan-block small,.summary-block small,.resource-card small,.student-file small{color:var(--muted)}.teaching-panel,.lesson-page,.resource-library,.student-file{border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:linear-gradient(180deg,#ffffffeb,#ffffffc2);box-shadow:var(--shadow-panel, 0 2px 8px rgba(30, 42, 58, .08));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.teaching-panel,.lesson-page,.resource-library,.student-file{padding:clamp(14px,2vw,20px)}.teaching-panel{display:grid;gap:16px}.teaching-stack,.teaching-resource-grid,.teaching-timeline{display:grid;gap:14px}.teaching-panel>header,.lesson-page>header,.resource-library>header,.student-file>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.teaching-panel h1,.lesson-page h1,.resource-library h1,.student-file h1{margin:0;font-size:32px;line-height:1.06;letter-spacing:0}.teaching-panel h2,.lesson-page h2,.resource-library h2,.student-file h2{margin:0;font-size:22px;letter-spacing:0}.teaching-panel p,.lesson-page p,.resource-library p,.student-file p{color:var(--muted);line-height:1.45}.lesson-card{width:100%;display:grid;grid-template-columns:112px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:#ffffffb8;color:var(--text);text-align:start;box-shadow:var(--shadow-soft, 0 1px 2px rgba(0, 0, 0, .05))}.lesson-card:hover{border-color:#0a84ff47;box-shadow:var(--shadow-panel, 0 2px 8px rgba(30, 42, 58, .08))}.lesson-card strong{display:block;font-size:15px;line-height:1.2}.lesson-card time{color:var(--muted);font-size:var(--font-sm, 12px);font-weight:600}.lesson-card button,.resource-card button,.student-file button,.plan-block button,.summary-block button,.teaching-panel button:not(.app-dropdown-trigger),.teaching-resource-modal button:not(.app-dropdown-trigger){min-height:var(--button-standard-h, 36px);display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:var(--radius-control, 8px);padding:0 12px;background:#1d1d1f;color:#fff;font-size:var(--font-body, 14px);font-weight:var(--font-weight-label, 500);cursor:pointer}.teaching-module button:disabled,.teaching-resource-modal button:disabled{cursor:not-allowed;opacity:.55;transform:none}.lesson-card button.secondary,.resource-card button.secondary,.student-file button.secondary,.plan-block button.secondary,.summary-block button.secondary,.teaching-panel button.secondary{background:#1d1d1f14;color:var(--text)}.lesson-page dl,.lesson-card dl{display:flex;flex-wrap:wrap;gap:8px;margin:0}.lesson-page dt,.lesson-card dt{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.lesson-page dd,.lesson-card dd{margin:0}.lesson-page .status,.lesson-card .status,.plan-block .status,.summary-block .status,.resource-card .status{min-height:24px;display:inline-flex;align-items:center;border-radius:999px;padding:0 10px;background:#0a84ff1c;color:#0a67d1;font-size:var(--font-xs, 12px);font-weight:var(--font-weight-label, 500)}.lesson-tabs button.active,.lesson-tabs button[aria-selected=true]{background:#1d1d1f;color:#fff;box-shadow:none}.plan-block,.summary-block,.resource-card{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:#ffffffbd;box-shadow:var(--shadow-soft, 0 1px 2px rgba(0, 0, 0, .05))}.plan-block h3,.summary-block h3,.resource-card h3{margin:0;font-size:16px;letter-spacing:0;line-height:1.18}.plan-block p,.summary-block p,.resource-card p{margin:0}.plan-block footer,.summary-block footer,.resource-card footer{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.plan-block button,.summary-block button,.resource-card button{min-height:34px;padding-inline:12px;font-size:13px}.summary-block.completed{border-inline-start-color:#22c55eb8}.summary-block.partial{border-inline-start-color:#f59e0bcc}.resource-library{display:grid;gap:16px}.resource-library form,.resource-library .filters{display:grid;grid-template-columns:minmax(180px,1.35fr) repeat(3,minmax(120px,1fr));gap:10px;align-items:center}.resource-library input,.resource-library select,.resource-library textarea,.student-file textarea,.lesson-page textarea,.teaching-panel input,.teaching-panel textarea,.teaching-resource-modal input,.teaching-resource-modal select{width:100%;min-height:var(--button-standard-h, 36px);border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:8px 10px;background:#ffffffd6;color:var(--text);font:inherit;font-size:var(--font-body, 14px);box-shadow:inset 0 1px #ffffffb8}.teaching-upcoming-editor input,.teaching-upcoming-editor textarea{width:100%;min-height:var(--button-standard-h, 36px);border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:8px 10px;background:var(--surface-input);font:inherit;box-shadow:none}.teaching-upcoming-editor textarea{min-height:96px;resize:vertical;line-height:1.45}.resource-library textarea,.student-file textarea,.lesson-page textarea,.teaching-panel textarea{min-height:118px;resize:vertical;line-height:1.45}.teaching-field-label{display:grid;gap:6px;color:var(--muted);font-size:var(--font-sm, 12px);font-weight:var(--font-weight-label, 500)}.teaching-secondary-action{width:fit-content}.resource-library input:focus,.resource-library select:focus,.resource-library textarea:focus,.student-file textarea:focus,.lesson-page textarea:focus,.teaching-panel input:focus,.teaching-panel textarea:focus{border-color:#0a84ff8c;outline:3px solid rgba(10,132,255,.18);outline-offset:1px}.teaching-upcoming-editor input:focus,.teaching-upcoming-editor textarea:focus{border-color:var(--teach-green);outline:3px solid color-mix(in srgb,var(--teach-green) 18%,transparent);outline-offset:1px}.resource-library .filters{padding:10px;border-radius:var(--radius-panel, 12px);background:#ffffff8f}.resource-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.resource-card>div{display:grid;gap:6px}.resource-card .tags,.plan-block .chips,.summary-block .chips,.student-file .chips,.lesson-card .chips{display:flex;flex-wrap:wrap;gap:6px}.resource-card .tags span,.plan-block .chips span,.summary-block .chips span,.student-file .chips span,.lesson-card .chips span{min-height:24px;display:inline-flex;align-items:center;border-radius:999px;padding:0 9px;background:#1d1d1f12;color:var(--muted);font-size:var(--font-xs, 12px);font-weight:var(--font-weight-label, 500)}.student-file{display:grid;gap:16px}.student-file .student-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.student-file .student-overview>*{display:grid;gap:5px;padding:4px 0 10px;border-block-end:1px solid var(--line)}.student-file .timeline{display:grid;gap:10px}.student-file .timeline article{display:grid;gap:7px;padding:13px 0;border-block-start:1px solid var(--line)}.student-file .timeline article:first-child{border-block-start:0;padding-block-start:0}.teaching-block-card,.teaching-resource-card,.teaching-conversion-row,.teaching-quick-add,.teaching-timeline-entry{border:1px solid var(--line);border-radius:var(--radius-panel, 12px);padding:12px;background:linear-gradient(180deg,#ffffffeb,#f8fbffb3);box-shadow:var(--shadow-soft, 0 1px 2px rgba(0, 0, 0, .05))}.teaching-stack>.teaching-block-card:nth-of-type(2n),.teaching-stack>.teaching-conversion-row:nth-of-type(2n){background:linear-gradient(180deg,#f8fcf7f2,#ffffffc2)}.teaching-block-card{border-color:#0a84ff4d}.teaching-block-card header{display:flex;align-items:center;gap:10px}.teaching-block-card header strong{font-size:15px;line-height:1.22}.teaching-resource-card{position:relative;padding-right:58px}.teaching-resource-card .teaching-resource-row-actions{position:absolute;top:12px;right:12px;display:grid;gap:6px}.teaching-resource-card .teaching-resource-row-actions button,.teaching-resource-card .teaching-resource-row-actions a,.teaching-resource-card .teaching-resource-row-actions .teaching-delete-small{width:34px;min-width:34px;min-height:34px;padding:0}.teaching-resource-line,.teaching-chip-row,.teaching-inline-actions,.teaching-header-actions,.teaching-tag-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.teaching-modal-backdrop{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:24px;background:#0f172a6b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.teaching-resource-modal{width:min(940px,100%);max-height:min(760px,calc(100vh - 48px));display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:12px;overflow:hidden;border:1px solid rgba(255,255,255,.72);border-radius:var(--radius-sheet, 20px);padding:18px;background:linear-gradient(180deg,#fffffff5,#f8fbffe6);box-shadow:var(--shadow-dialog, 0 4px 8px rgba(15, 23, 42, .28))}.teaching-resource-modal.compact{width:min(680px,100%);grid-template-rows:auto minmax(0,1fr)}.teaching-resource-modal>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.teaching-resource-modal>header h2{margin:0;font-size:24px;line-height:1.08}.teaching-resource-modal>header button{min-width:32px;min-height:32px;padding-inline:0;border-radius:var(--radius-control, 8px)}.teaching-modal-filters{display:grid;grid-template-columns:minmax(220px,1.35fr) minmax(170px,1fr) minmax(260px,1.25fr);gap:10px;align-items:end;padding:10px;border-radius:var(--radius-panel, 12px);background:#1d1d1f0d}.teaching-modal-filters .teaching-search-field,.teaching-modal-filters .teaching-field-label{margin:0}.teaching-modal-list{display:grid;gap:10px;overflow:auto;padding-right:4px}.teaching-resource-pick-row,.teaching-lesson-pick-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-card)}.teaching-resource-pick-row.attached{border-color:var(--teach-green-mid);background:var(--teach-green-soft)}.teaching-resource-pick-row strong,.teaching-lesson-pick-row strong{display:block;line-height:1.2}.teaching-resource-pick-row small,.teaching-lesson-pick-row small{display:block;margin-top:3px}.teacher-content,.teaching-teacher-content{unicode-bidi:plaintext;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.teacher-content:dir(rtl),.teaching-teacher-content:dir(rtl){text-align:start}.teaching-module button:focus-visible,.lesson-tabs button:focus-visible,.teaching-nav button:focus-visible{outline:3px solid rgba(10,132,255,.34);outline-offset:3px}.teaching-module button:active{transform:scale(.985)}.teaching-module .teaching-home-card,.teaching-module .teaching-lesson-card,.teaching-module .teaching-student-card{min-height:auto;border-radius:var(--radius-panel, 12px);padding:12px;background:#ffffffdb;color:var(--text);text-align:start}.teaching-module .teaching-lesson-card:hover,.teaching-module .teaching-student-card:hover,.teaching-module .teaching-home-card:hover{border-color:#0a84ff42;box-shadow:var(--shadow-panel, 0 2px 8px rgba(30, 42, 58, .08))}.teaching-module .teaching-lesson-card.selected,.teaching-module .teaching-student-card.selected{border-color:#0a84ff70;background:#fffffff5;box-shadow:0 0 0 3px #0a84ff1f}.teaching-student-card{width:100%;display:flex;align-items:center;gap:10px;border:1px solid var(--line);cursor:pointer}.teaching-student-card strong,.teaching-student-card small{display:block}.teaching-info-banner,.teaching-empty-state{margin:0;border-radius:var(--radius-control, 8px);padding:10px 12px;color:#31526f;background:#edf6ff}@media(max-width:980px){.teaching-two-column,.teaching-resource-page{grid-template-columns:1fr}.resource-library form,.resource-library .filters,.teaching-modal-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.teaching-module{gap:12px}.teaching-panel,.lesson-page,.resource-library,.student-file{padding:13px;border-radius:18px}.teaching-panel>header,.lesson-page>header,.resource-library>header,.student-file>header{display:grid;gap:10px}.teaching-panel h1,.lesson-page h1,.resource-library h1,.student-file h1{font-size:30px}.lesson-card{grid-template-columns:1fr;align-items:start;gap:9px;padding:12px;border-radius:12px}.lesson-card button{width:100%}.plan-block,.summary-block,.resource-card{border-radius:12px;padding:12px}.plan-block footer,.summary-block footer,.resource-card footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.plan-block footer button,.summary-block footer button,.resource-card footer button{width:100%}.resource-library form,.resource-library .filters,.teaching-modal-filters,.teaching-add-row,.teaching-quick-grid,.teaching-resource-meta-grid,.teaching-add-row.teaching-plan-add-card{grid-template-columns:1fr;padding:0;background:transparent}.teaching-modal-backdrop{align-items:stretch;padding:10px}.teaching-resource-modal{max-height:calc(100vh - 20px);border-radius:var(--radius-sheet, 20px)}.teaching-resource-preview-modal{width:100%;height:calc(100dvh - 20px);border-radius:var(--radius-sheet, 20px)}.teaching-resource-preview-modal>footer{align-items:stretch;flex-direction:column}.teaching-resource-preview-modal>footer>div{display:grid;grid-template-columns:44px minmax(0,1fr)}.teaching-resource-preview-modal>footer>div:has(>:only-child){grid-template-columns:minmax(0,1fr)}.teaching-resource-preview-modal>footer>div:has(>:only-child) .teaching-resource-preview-open{width:100%;min-height:48px}.teaching-resource-pick-row,.teaching-lesson-pick-row{grid-template-columns:1fr}.teaching-block-picker-modal{width:100%;max-height:calc(100vh - 20px);grid-template-columns:1fr;padding:12px}.teaching-block-picker-row{grid-template-columns:1fr}.teaching-block-picker-row button,.teaching-resource-pick-row button,.teaching-lesson-pick-row button{width:100%}.resource-card{grid-template-columns:1fr;align-items:start}.student-file .student-overview,.teaching-blocks-page,.teaching-template-manager-row,.teaching-template-meta-controls{grid-template-columns:1fr}.teaching-template-manager-list.inline{max-height:none;padding-right:0}}.teaching-lesson-planning-note{display:grid;gap:10px;border:1px solid color-mix(in srgb,var(--teach-green) 18%,var(--line));border-radius:12px;padding:14px 16px 16px;background:color-mix(in srgb,var(--teach-green-soft) 34%,var(--surface-card))}.teaching-lesson-planning-note-heading,.teaching-activity-tags-heading{display:grid;gap:2px}.teaching-lesson-planning-note-heading strong,.teaching-activity-tags-heading strong{color:var(--text);font-size:14px;line-height:20px}.teaching-lesson-planning-note-heading small,.teaching-activity-tags-heading small{color:var(--muted);font-size:12px;line-height:18px}.teaching-lesson-planning-note textarea{width:100%;min-height:112px;overflow-y:hidden;box-sizing:border-box;resize:none;border:1px solid var(--line);border-radius:9px;padding:10px 12px;background:var(--surface-card);color:var(--text);font:inherit;font-size:14px;line-height:1.5}.teaching-lesson-planning-note textarea:focus-visible{border-color:var(--teach-green);outline:3px solid color-mix(in srgb,var(--teach-green) 18%,transparent)}.teaching-lesson-planning-note textarea[readonly]{background:var(--surface-panel);color:var(--muted)}.teaching-activity-tags-disclosure{position:relative;z-index:12;display:grid;width:fit-content;max-width:100%;min-width:0;gap:8px}.teaching-activity-tags-disclosure.is-open{width:fit-content}.teaching-activity-tags-trigger{display:inline-flex;min-width:0;min-height:40px;align-items:center;justify-content:center;gap:7px;border:1px solid color-mix(in srgb,var(--teach-green) 30%,var(--line));border-radius:10px;padding:0 11px;background:color-mix(in srgb,var(--teach-green-soft) 50%,var(--surface-card));color:var(--teach-action-soft-text);font:inherit;font-size:13px;font-weight:var(--font-weight-heading, 700);justify-self:start;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.teaching-activity-tags-trigger:hover{border-color:color-mix(in srgb,var(--teach-green) 58%,var(--line));background:color-mix(in srgb,var(--teach-green-soft) 78%,var(--surface-card))}.teaching-activity-tags-trigger:focus-visible,.teaching-activity-tags-close:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 20%,transparent);outline-offset:2px}.teaching-activity-tags-disclosure.is-open .teaching-activity-tags-trigger{border-color:var(--teach-green);box-shadow:0 0 0 2px color-mix(in srgb,var(--teach-green) 10%,transparent)}.teaching-activity-tags-count{display:inline-grid;min-width:20px;height:20px;place-items:center;border-radius:999px;padding-inline:5px;background:color-mix(in srgb,var(--teach-green) 15%,var(--surface-card));color:var(--teach-action-soft-text);font-size:11px;line-height:1}.teaching-activity-tags-chevron{transition:transform .16s ease}.teaching-activity-tags-disclosure.is-open .teaching-activity-tags-chevron{transform:rotate(180deg)}.teaching-activity-tags-disclosure-panel{position:absolute;inset-inline-start:0;bottom:calc(100% + 8px);z-index:4;display:grid;width:min(440px,calc(100vw - 48px));min-width:0;box-sizing:border-box;gap:10px;border:1px solid color-mix(in srgb,var(--teach-green) 24%,var(--line));border-radius:12px;padding:12px;background:var(--surface-card);box-shadow:0 10px 28px color-mix(in srgb,var(--text) 9%,transparent)}.teaching-activity-tags-disclosure-panel>header{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:12px}.teaching-activity-tags-disclosure-panel>header>div{display:grid;min-width:0;gap:2px}.teaching-activity-tags-disclosure-panel strong{color:var(--text);font-size:14px;line-height:20px}.teaching-activity-tags-disclosure-panel small{color:var(--muted);font-size:12px;line-height:18px}.teaching-activity-tags-close{display:inline-grid;width:32px;min-width:32px;height:32px;place-items:center;border:1px solid transparent;border-radius:8px;padding:0;background:transparent;color:var(--muted);cursor:pointer}.teaching-activity-tags-close:hover{border-color:var(--line);background:var(--surface-panel);color:var(--text)}.teaching-activity-tags-generating-status{display:flex;align-items:center;gap:6px;margin:0;color:var(--teach-action-soft-text);font-size:12px;line-height:18px}.teaching-new-block-resources>.teaching-activity-tags-disclosure.is-open,.teaching-template-meta-controls>.teaching-activity-tags-disclosure{grid-column:1 / -1}.teaching-activity-reading-body>.teaching-activity-tags-disclosure{margin-bottom:12px}.teaching-activity-reading-body>.teaching-activity-tags-disclosure .teaching-activity-tags-disclosure-panel{top:calc(100% + 8px);bottom:auto}.teaching-activity-sidebar-tags,.teaching-activity-sidebar-tags.is-open{width:100%}.teaching-activity-sidebar-tags .teaching-activity-tags-trigger{width:100%;justify-content:flex-start}.teaching-activity-sidebar-tags .teaching-activity-tags-chevron{margin-inline-start:auto}.teaching-activity-sidebar-tags .teaching-activity-tags-disclosure-panel{position:static;width:100%;margin-top:2px;box-shadow:none}@media(prefers-reduced-motion:reduce){.teaching-activity-tags-trigger,.teaching-activity-tags-chevron{transition:none}}.teaching-activity-tag-list{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:5px}.teaching-activity-tag-chip{display:inline-flex;align-items:center;min-height:22px;border:1px solid color-mix(in srgb,var(--teach-green) 22%,var(--line));border-radius:999px;padding:2px 8px;background:color-mix(in srgb,var(--teach-green-soft) 58%,var(--surface-card));color:var(--teach-action-soft-text);font-size:11px;font-weight:600;line-height:16px}.teaching-block-picker-copy>.teaching-activity-tag-list{margin-top:2px}.teaching-activity-reading-body>.teaching-activity-tag-list{margin-bottom:12px}@media(max-width:700px){.teaching-lesson-planning-note{gap:8px;border-radius:10px;padding:12px}.teaching-lesson-planning-note textarea{min-height:108px;resize:none;font-size:16px}.teaching-activity-tags-trigger{min-height:44px}.teaching-activity-tags-close{width:44px;min-width:44px;height:44px}}@media(max-width:420px){.lesson-page dl,.lesson-card dl{display:grid;grid-template-columns:1fr 1fr}.plan-block footer,.summary-block footer,.resource-card footer{grid-template-columns:1fr}}body[data-app-layout-mode=phone] .teaching-module{width:390px;max-width:100%;padding:24px 20px 28px}body[data-app-layout-mode=phone] .teaching-home-grid,body[data-app-layout-mode=phone] .teaching-two-column,body[data-app-layout-mode=phone] .teaching-resource-page,body[data-app-layout-mode=phone] .teaching-add-row,body[data-app-layout-mode=phone] .teaching-quick-grid,body[data-app-layout-mode=phone] .teaching-conversion-row{grid-template-columns:1fr}body[data-app-layout-mode=phone] .teaching-modal-backdrop{padding:10px}body[data-app-layout-mode=phone] .teaching-resource-modal,body[data-app-layout-mode=phone] .teaching-resource-preview-modal,body[data-app-layout-mode=phone] .teaching-modal-filters,body[data-app-layout-mode=phone] .teaching-resource-pick-row,body[data-app-layout-mode=phone] .teaching-lesson-pick-row,body[data-app-layout-mode=phone] .teaching-block-picker-modal,body[data-app-layout-mode=phone] .teaching-block-picker-row{grid-template-columns:1fr}body[data-app-layout-mode=phone] .teaching-resource-preview-modal{width:100%;height:calc(100dvh - 20px)}body[data-app-layout-mode=phone] .teaching-resource-preview-modal>footer{align-items:stretch;flex-direction:column}body[data-app-layout-mode=phone] .teaching-resource-preview-modal>footer>div{display:grid;grid-template-columns:44px minmax(0,1fr)}body[data-app-layout-mode=phone] .teaching-resource-preview-modal>footer>div:has(>:only-child){grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .teaching-resource-preview-modal>footer>div:has(>:only-child) .teaching-resource-preview-open{width:100%;min-height:48px}body[data-app-layout-mode=phone] .teaching-block-picker-modal{width:100%;max-height:calc(100dvh - 20px);padding:12px}body[data-app-layout-mode=phone] .teaching-block-picker-row button{width:100%}body[data-app-layout-mode=phone] .teaching-resource-page .teaching-top-filter-panel,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-top-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:10px;min-height:auto;padding:12px;overflow:visible}body[data-app-layout-mode=phone] .teaching-resource-page .teaching-block-filter-title,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-block-filter-title,body[data-app-layout-mode=phone] .teaching-resource-page .teaching-search-field,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-search-field,body[data-app-layout-mode=phone] .teaching-resource-page .teaching-top-filter-panel .teaching-filter-buttons,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-top-filter-panel .teaching-filter-buttons{grid-column:1 / -1}body[data-app-layout-mode=phone] .teaching-resource-page .teaching-search-field,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-search-field,body[data-app-layout-mode=phone] .teaching-date-filter{min-width:0}body[data-app-layout-mode=phone] .teaching-resource-page .teaching-top-filter-panel .teaching-filter-buttons,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-top-filter-panel .teaching-filter-buttons{justify-self:stretch;display:grid;grid-template-columns:1fr;gap:8px;overflow:visible;padding-bottom:0}body[data-app-layout-mode=phone] .teaching-resource-page .teaching-top-filter-panel .teaching-filter-popup,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-top-filter-panel .teaching-filter-popup{width:100%;min-width:0}body[data-app-layout-mode=phone] .teaching-resource-page .teaching-clear-filters,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-clear-filters,body[data-app-layout-mode=phone] .teaching-resource-page .teaching-filter-count,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-filter-count{width:100%}body[data-app-layout-mode=phone] .teaching-list-panel{position:static;max-height:none}body[data-app-layout-mode=phone] .teaching-panel,body[data-app-layout-mode=phone] .teaching-home-card{border-radius:12px}body[data-app-layout-mode=phone] .teaching-tabs{overflow-x:auto}body[data-app-layout-mode=phone] .teaching-tabs button{min-width:104px}body[data-app-layout-mode=phone] .teaching-lesson-header,body[data-app-layout-mode=phone] .teaching-student-header{display:grid;justify-items:start}body[data-app-layout-mode=phone] .teaching-header-actions,body[data-app-layout-mode=phone] .teaching-inline-actions,body[data-app-layout-mode=phone] .teaching-lesson-footer{align-items:stretch}@media(min-width:861px){body:not([data-app-layout-mode=phone]) .teaching-panel h1,body:not([data-app-layout-mode=phone]) .lesson-page h1,body:not([data-app-layout-mode=phone]) .resource-library h1,body:not([data-app-layout-mode=phone]) .student-file h1{font-size:32px;line-height:1.06}body:not([data-app-layout-mode=phone]) .teaching-two-column,body:not([data-app-layout-mode=phone]) .teaching-resource-page{gap:16px}body:not([data-app-layout-mode=phone]) .teaching-tabs{display:flex;gap:8px;padding:4px;border-radius:var(--radius-panel, 12px);background:#1d1d1f12}body:not([data-app-layout-mode=phone]) .teaching-tabs button{min-height:34px;border-radius:var(--radius-control, 8px)}body:not([data-app-layout-mode=phone]) .teaching-header-actions button,body:not([data-app-layout-mode=phone]) .teaching-inline-actions button,body:not([data-app-layout-mode=phone]) .teaching-inline-actions a,body:not([data-app-layout-mode=phone]) .teaching-resource-modal button,body:not([data-app-layout-mode=phone]) .resource-card button,body:not([data-app-layout-mode=phone]) .plan-block button,body:not([data-app-layout-mode=phone]) .summary-block button{min-height:34px;border-radius:var(--radius-control, 8px);font-size:13px}}.teaching-module{width:min(1320px,100%)}.teaching-nav button.active,.teaching-nav [aria-current=page],.lesson-tabs button.active,.lesson-tabs button[aria-selected=true],.lesson-card button,.resource-card button,.student-file button,.plan-block button,.summary-block button,.teaching-panel button:not(.app-dropdown-trigger),.teaching-resource-modal button:not(.app-dropdown-trigger){border:1px solid var(--teach-green-mid, #c9f2d7);background:var(--teach-green-soft, #eafaf0);color:var(--teach-action-soft-text, var(--app-success-text));box-shadow:none}.teaching-tabs button.active{color:var(--teach-action-soft-text, var(--app-success-text));background:var(--teach-green-soft, #eafaf0);box-shadow:inset 0 0 0 1px var(--teach-green-mid, #c9f2d7)}.teaching-header-actions button,.teaching-add-row button,.teaching-summary-add button,.teaching-inline-actions button,.teaching-quick-grid button{min-height:34px;border:1px solid var(--teach-green-mid, #c9f2d7);background:var(--teach-green-soft, #eafaf0);color:var(--teach-action-soft-text);box-shadow:none}.teaching-lessons-page{display:grid;gap:16px}.teaching-lesson-modal .teaching-detail-panel{border:0;border-radius:inherit;box-shadow:none;min-height:100%}.teaching-lesson-header h2{max-width:760px;line-height:1.08}.teaching-upcoming-editor input,.teaching-upcoming-editor textarea{color:var(--text);font-size:15px;font-weight:var(--font-weight-body, 400);line-height:1.45}.teaching-upcoming-editor :is(input,textarea)::placeholder{color:var(--muted);opacity:1}.teaching-block-card{position:relative}.teaching-block-card header{margin-bottom:6px}.teaching-resource-line{flex-wrap:wrap}.teaching-student-card{border-color:color-mix(in srgb,var(--student-color, #0a84ff) 22%,white);background:color-mix(in srgb,var(--student-color, #0a84ff) 16%,white)}.teaching-student-card.inactive{border-color:#d7dce4;background:#f2f4f7;color:#667085}.teaching-student-card.inactive strong,.teaching-student-card.inactive small{color:#667085}.teaching-inactive-students-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin:8px 0 2px;color:#667085;font-size:12px;font-weight:var(--font-weight-label, 500);letter-spacing:0;text-transform:uppercase}.teaching-inactive-students-divider:before,.teaching-inactive-students-divider:after{content:"";height:1px;background:#d7dce4}.teaching-upcoming-panel,.teaching-upcoming-editor{display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);padding:16px;background:var(--surface-card)}.teaching-upcoming-editor{grid-template-columns:minmax(0,1fr) auto;align-items:start}.teaching-upcoming-editor:has(>.teaching-simple-activity-composer){border:0;border-radius:0;padding:0;background:transparent}.teaching-upcoming-editor>.teaching-upcoming-students,.teaching-upcoming-editor>.teaching-field-label{grid-column:1 / -1}.teaching-upcoming-editor>.teaching-simple-activity-composer,.teaching-upcoming-editor>.teaching-upcoming-library-button{grid-column:1 / -1;width:100%}.teaching-upcoming-editor>.teaching-upcoming-library-button{justify-self:end;width:fit-content}.teaching-upcoming-editor>button{min-height:38px}.teaching-next-lesson-composer-section>.teaching-simple-activity-composer,.teaching-next-lesson-modal .teaching-upcoming-review{margin:0;border:0;border-radius:0;padding:0;background:transparent}.teaching-next-lesson-modal .teaching-upcoming-review{padding-top:16px;border-top:1px solid var(--line)}.teaching-resource-preview-modal{width:min(1080px,100%);height:min(820px,calc(100dvh - 48px))}@media(min-width:761px){body:not([data-app-layout-mode=phone]) .teaching-library-detail-modal.teaching-resource-detail-dialog{width:min(1360px,calc(100vw - 48px));height:min(860px,calc(100dvh - 48px))}body:not([data-app-layout-mode=phone]) .teaching-library-detail-modal.teaching-resource-preview-modal:has(>.teaching-resource-preview-stage.is-image,>.teaching-resource-preview-stage.is-pdf,>.teaching-resource-preview-stage.is-document){width:min(720px,calc(100vw - 48px))}}.teaching-resource-preview-stage{min-width:0;min-height:0;display:grid;place-items:center;overflow:auto;background:#eef2ef}.teaching-resource-preview-stage.is-image{padding:20px;background:#dfe6e2}.teaching-resource-preview-stage.is-pdf{display:block;padding:18px;background:#dfe6e2}.teaching-resource-preview-frame{width:100%;height:100%;border:0;background:#fff}.teaching-resource-preview-image{display:block;width:auto;max-width:100%;height:auto;max-height:100%;object-fit:contain;border-radius:4px;background:#fff;box-shadow:var(--shadow-panel)}.teaching-resource-preview-pdf-pages{width:min(760px,100%);display:grid;gap:18px;margin:0 auto}.teaching-resource-preview-pdf-pages figure{display:grid;gap:6px;margin:0}.teaching-resource-preview-pdf-pages img{display:block;width:100%;height:auto;background:#fff;box-shadow:var(--shadow-panel)}.teaching-resource-preview-pdf-pages figcaption{color:#536760;font-size:12px;font-weight:var(--font-weight-label, 500);text-align:center}.teaching-resource-preview-modal .teaching-resource-preview-stage,.teaching-resource-detail-dialog .teaching-resource-preview-stage{container-type:size}.teaching-resource-preview-modal .teaching-resource-preview-image{max-height:100cqh}:where(.teaching-resource-preview-modal,.teaching-resource-detail-dialog) .teaching-resource-preview-stage.is-website-preview .teaching-resource-preview-image{width:min(calc(100cqw - 40px),70.710678cqh);max-width:none;height:min(calc(141.421356cqw - 56.568542px),100cqh);max-height:none;aspect-ratio:210 / 297;object-fit:contain;object-position:top center}.teaching-resource-preview-modal .teaching-resource-preview-pdf-pages{min-height:100cqh;grid-auto-rows:100cqh}.teaching-resource-preview-modal .teaching-resource-preview-pdf-pages figure{align-content:start;justify-items:center}.teaching-resource-preview-modal .teaching-resource-preview-pdf-pages img{width:auto;max-width:100%;max-height:calc(100cqh - 26px)}.teaching-resource-preview-status{min-height:100%;display:grid;place-content:center;justify-items:center;gap:12px;color:var(--text, #163f35)}.teaching-resource-preview-spinner{width:34px;height:34px;border:4px solid #c9d8d0;border-top-color:var(--teach-green, #217a5a);border-radius:50%;animation:teaching-resource-preview-spin .8s linear infinite}@keyframes teaching-resource-preview-spin{to{transform:rotate(360deg)}}.teaching-resource-preview-fallback{width:min(440px,calc(100% - 32px));display:grid;justify-items:center;gap:10px;padding:28px;border:1px solid var(--line, #dce5e1);border-radius:var(--radius-panel, 12px);background:var(--surface-card, #ffffff);color:var(--text, #163f35);text-align:center}.teaching-resource-preview-fallback p,.teaching-resource-preview-modal>footer p{margin:0;line-height:1.45}.teaching-resource-preview-modal>footer>p{max-width:620px;color:var(--muted, #61736e);font-size:12px}.teaching-resource-preview-modal>footer>div{display:flex;flex:0 0 auto;gap:8px}.teaching-resource-preview-open{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 13px;border-radius:var(--radius-control, 8px);background:var(--action-control-bg, var(--teach-green, #217a5a));color:var(--action-control-text, var(--teach-action-solid-text));font-size:13px;font-weight:var(--font-weight-label, 500);text-decoration:none}.teaching-resource-preview-open:hover{color:#fff;filter:brightness(.94)}.teacher-desk{--desk-ink: #20342b;--desk-muted: #66776f;--desk-green: #39755a;--desk-green-dark: #285c44;--desk-green-soft: #eaf2ed;--desk-warm: #f7f5ef;--desk-line: #d7dfda;display:grid;gap:14px;min-width:980px;color:var(--desk-ink)}.teacher-desk button{font:inherit}.teaching-upcoming-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:start;border:1px solid color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 24%,var(--line));border-radius:var(--radius-panel);padding:12px;background:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 8%,var(--surface-card))}.teaching-upcoming-card-heading{grid-column:1;grid-row:1;display:grid;gap:2px;min-width:0}.teaching-upcoming-card-heading strong{overflow-wrap:anywhere;color:var(--text)}.teaching-upcoming-card-heading small{color:var(--muted);font-size:12px}.teaching-upcoming-card>p,.teaching-upcoming-activity-content{grid-column:1 / -1;grid-row:2;margin:0;max-width:75ch;white-space:pre-wrap;color:var(--ink);line-height:1.42}.teaching-upcoming-card-actions{grid-column:2;grid-row:1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.teaching-upcoming-card-actions>button:not(.app-icon-button),.teaching-upcoming-card-editor-actions>button{min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius-control);padding:0 10px;white-space:nowrap}.teaching-upcoming-card-actions>.app-icon-button{width:32px;min-width:32px;height:32px;min-height:32px}.teaching-upcoming-card-editor{grid-column:1 / -1;display:grid;gap:10px}.teaching-upcoming-card-editor textarea{min-height:96px;resize:vertical}.teaching-upcoming-card-editor-actions{display:flex;justify-content:flex-end;gap:8px}.teaching-upcoming-students{display:flex;flex-wrap:wrap;gap:6px}.teaching-upcoming-students button,.teaching-empty-student-add{min-height:30px;display:inline-flex;align-items:center;gap:6px;border:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 28%,white);border-radius:999px;padding:0 10px;background:#ffffffc7;color:#172033}.teaching-filter-buttons{display:grid;gap:8px}.teaching-block-picker-modal{max-height:min(820px,calc(100vh - 36px));min-width:0;display:grid;gap:12px;overflow:hidden;border:1px solid rgba(255,255,255,.76);border-radius:var(--radius-sheet, 20px);padding:16px;box-shadow:var(--shadow-dialog, 0 4px 8px rgba(15, 23, 42, .26))}.teaching-block-picker-modal>header{grid-column:1 / -1;display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.teaching-block-picker-modal>header h2{margin:0;font-size:clamp(22px,3vw,32px)}.teaching-block-picker-modal>header button{min-width:34px;min-height:34px;padding:0;border-radius:8px}.teaching-block-picker-filters{min-width:0;display:grid;align-content:start;gap:10px;border:1px solid #dce6ef;border-radius:12px;background:#ffffffb8}.teaching-block-picker-filter-bar{display:none}.teaching-block-picker-filter-content{display:grid;gap:10px}.teaching-block-picker-list{display:grid;align-content:start;gap:10px;min-width:0;overflow:auto;padding-right:4px}.teaching-block-picker-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;border:1px solid #dce6ef;border-radius:8px;padding:12px;background:#fff}.teaching-block-picker-row.added{border-color:var(--teach-green-mid, #c9f2d7);background:linear-gradient(145deg,#eafaf0f0,#fff)}.teaching-block-picker-action{min-width:0;justify-items:end}.teaching-block-picker-action span{border-radius:999px;padding:3px 8px;background:var(--teach-green-soft, #eafaf0);color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-label, 500)}.teaching-block-picker-row strong{display:block;color:#172033;font-size:18px}.teaching-block-picker-row small{display:block;margin-top:2px;color:#65758b;font-size:12px;font-weight:600}.teaching-block-picker-row p{margin:8px 0 0;color:#334155;line-height:1.45}.teaching-block-picker-row button{min-height:36px;white-space:nowrap}.teaching-template-manager-list{display:grid;gap:10px;overflow:auto}.teaching-blocks-page{grid-template-columns:minmax(210px,.42fr) minmax(0,1.7fr);align-items:start}.teaching-blocks-resource-section{display:grid;gap:16px;margin-bottom:14px;border:1px solid rgba(34,197,94,.18);border-radius:8px;padding:18px;background:linear-gradient(145deg,#eafaf0cc,#ffffffeb)}.teaching-template-manager-list.inline{max-height:min(68vh,760px);padding-right:4px}.teaching-template-manager-row label span,.teaching-template-meta-controls span{color:#65758b;font-size:12px;font-weight:var(--font-weight-label, 500);text-transform:uppercase;letter-spacing:.04em}.teaching-template-meta-controls{display:grid;gap:10px}.teaching-template-meta-controls button,.teaching-template-dialog-actions button{min-height:42px;border:1px solid var(--teach-green-mid);border-radius:8px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-weight:var(--font-weight-label, 500)}.teaching-template-meta-controls .teaching-save-small,.teaching-template-dialog-actions .teaching-save-small{background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teaching-template-meta-controls .teaching-resource-link-small,.teaching-template-dialog-actions .teaching-resource-link-small{background:#f7fbff;color:#40546a}@media(max-width:700px){.teaching-template-manager-row,.teaching-template-meta-controls{grid-template-columns:1fr}.teaching-template-meta-controls button,.teaching-template-dialog-actions button,.teaching-template-meta-controls .teaching-delete-small,.teaching-template-dialog-actions .teaching-delete-small{width:100%;justify-self:stretch}}.teaching-clear-filters{width:100%;min-height:34px;border:1px solid #d6e2ec;border-radius:8px;background:#fff;color:#40546a;font-weight:var(--font-weight-label, 500)}.teaching-top-filter-panel .teaching-clear-filters,.teaching-modal-filters .teaching-clear-filters,.teaching-block-picker-filters .teaching-clear-filters,.teaching-lesson-filters .teaching-clear-filters{width:auto;min-height:32px;align-self:center;justify-self:start;padding:0 10px;font-size:12px;line-height:1}.teaching-clear-filters:disabled{cursor:not-allowed;opacity:.45}.teaching-filter-count{width:fit-content;margin-top:8px}@media(max-width:980px){.teaching-calendar-toolbar,.teaching-lesson-header{display:grid;justify-items:start}}.teaching-resource-link-small:disabled{cursor:not-allowed;opacity:.7}.attach-file-control{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:var(--button-standard-h, 36px)}.attach-file-control>button{min-height:var(--button-standard-h, 36px)}.attach-file-control.compact>button{min-width:44px}.attach-file-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:80;display:grid;gap:6px;width:220px;padding:8px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-panel-strong);box-shadow:var(--shadow-panel)}.attach-file-menu button{justify-content:flex-start;width:100%}@media(max-width:700px){.attach-file-menu{position:fixed;right:auto;left:50%;width:min(220px,calc(100vw - 24px));transform:translate(-50%)}}body[data-app-layout-mode=phone] .attach-file-menu{position:fixed;right:auto;left:50%;width:min(220px,calc(100vw - 24px));transform:translate(-50%)}.attach-file-error{display:inline-grid;gap:4px;color:color-mix(in srgb,var(--rose) 82%,#72152a);font-size:12px;line-height:1.3}.attach-file-error a{color:var(--app-action-text);font-weight:var(--font-weight-label, 500)}.attach-file-input{display:none}@media(max-width:700px){.attach-file-control,.attach-file-control>button,.attach-file-menu button{min-height:var(--button-phone-h, 44px)}}.teaching-resource-modal>header h2{word-break:break-word;overflow-wrap:anywhere}.teaching-resource-modal>header>div{min-width:0}.teaching-lessons-directory{display:grid;gap:14px;padding:16px}.teaching-lessons-directory .teaching-tabs{border:1px solid color-mix(in srgb,var(--teach-green-mid, #c9f2d7) 72%,var(--line));background:color-mix(in srgb,var(--surface-card, #ffffff) 78%,var(--teach-green-soft, #eafaf0));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--teach-green-mid, #c9f2d7) 45%,transparent)}.teaching-lessons-directory .teaching-tabs button{min-width:126px;color:#315b45;background:transparent}.teaching-lessons-directory .teaching-tabs button.active{border-color:var(--selection-control-border, var(--teach-green));background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text));box-shadow:inset 0 0 0 1px #ffffff42}.teaching-lesson-filters{display:grid;gap:10px;align-items:end}.teaching-lesson-filters.upcoming-mode{grid-template-columns:minmax(190px,240px) minmax(260px,340px) minmax(180px,auto) auto}.teaching-lesson-filters.history-mode{grid-template-columns:minmax(170px,200px) minmax(330px,1fr) minmax(220px,.75fr) minmax(188px,220px) minmax(180px,auto) 72px}.teaching-lesson-filters.history-mode.custom-date-mode{grid-template-columns:minmax(170px,200px) minmax(310px,1fr) minmax(210px,.75fr) minmax(188px,220px) minmax(150px,160px) minmax(150px,160px)}.teaching-lesson-filters .teaching-filter-count,.teaching-lesson-filters .teaching-clear-filters{align-self:end}@media(max-width:1520px){body:not([data-app-layout-mode=phone]) .teaching-lesson-filters.history-mode{grid-template-columns:minmax(190px,240px) minmax(250px,1fr) minmax(220px,1fr)}body:not([data-app-layout-mode=phone]) .teaching-lesson-filters.history-mode.custom-date-mode{grid-template-columns:minmax(190px,240px) minmax(250px,1fr) minmax(220px,1fr)}body:not([data-app-layout-mode=phone]) .teaching-lesson-filters.history-mode .teaching-completion-filter-dates{grid-column:1 / -1}body:not([data-app-layout-mode=phone]) .teaching-lesson-filters.history-mode .teaching-filter-count{grid-column:1 / 3}}@media(max-width:980px){body:not([data-app-layout-mode=phone]) .teaching-lesson-filters.upcoming-mode,body:not([data-app-layout-mode=phone]) .teaching-lesson-filters.history-mode{grid-template-columns:repeat(2,minmax(0,1fr))}body:not([data-app-layout-mode=phone]) .teaching-lesson-filters.history-mode.custom-date-mode{grid-template-columns:repeat(2,minmax(0,1fr))}body:not([data-app-layout-mode=phone]) .teaching-lesson-filters.history-mode .teaching-completion-filter-summary,body:not([data-app-layout-mode=phone]) .teaching-lesson-filters.history-mode .teaching-completion-filter-dates,body:not([data-app-layout-mode=phone]) .teaching-lesson-filters.history-mode .teaching-filter-count{grid-column:1 / -1}body:not([data-app-layout-mode=phone]) .teaching-lessons-directory .teaching-tabs{width:100%}body:not([data-app-layout-mode=phone]) .teaching-lessons-directory .teaching-tabs button{flex:1 1 0}}@media(max-width:680px){.teaching-lesson-filters.upcoming-mode,.teaching-lesson-filters.history-mode,.teaching-lesson-filters.history-mode.custom-date-mode{grid-template-columns:1fr}.teaching-lesson-filters.history-mode .teaching-completion-filter-summary,.teaching-lesson-filters.history-mode .teaching-completion-filter-dates,.teaching-lesson-filters.history-mode .teaching-filter-count,.teaching-lesson-filters.history-mode .teaching-clear-filters{grid-column:1}.teaching-lesson-filters.history-mode .teaching-completion-filter>div{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.teaching-lesson-filters.history-mode .teaching-completion-filter>div button{flex:0 0 auto;min-width:max-content}}.teaching-student-filter{display:grid;gap:7px;min-width:0}.teaching-student-filter>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#52657c;font-size:12px;font-weight:var(--font-weight-label, 500)}.teaching-student-filter>div:first-child button{min-height:28px;border:1px solid #d6e2ec;border-radius:8px;padding:0 9px;background:#fff;color:#52657c;font-size:12px;font-weight:var(--font-weight-label, 500)}.teaching-lesson-filters label:not(.teaching-search-field){display:grid;gap:5px;min-width:0;color:#52657c;font-size:12px;font-weight:var(--font-weight-label, 500)}.teaching-lesson-filters input[type=date],.teaching-lesson-filters select{min-height:38px;width:100%;border:1px solid #d6e2ec;border-radius:8px;padding:0 10px;background:#fff;color:#172033;font:inherit}.teaching-lesson-history-list{display:grid;gap:8px}.teaching-lesson-date-group,.teaching-lesson-date-rows{display:grid;gap:6px}.teaching-lesson-date-heading{min-height:24px;display:flex;align-items:center;gap:9px;color:#405c54;font-size:12px;font-weight:var(--font-weight-label, 500)}.teaching-lesson-date-heading:after{content:"";height:1px;flex:1;background:#dfe5df}.teaching-lesson-date-heading small{order:2;color:#687671;font-size:12px;font-weight:600}.teaching-lesson-history-row{position:relative;min-height:62px;display:grid;grid-template-columns:7px minmax(165px,.58fr) minmax(260px,1fr) auto 22px;grid-template-rows:27px 24px;overflow:hidden;border:1px solid #dbe7ef;border-radius:8px;padding:5px 8px 4px 0;background:#fff}.teaching-lesson-history-row:before{content:"";grid-column:1;grid-row:1 / 3;align-self:stretch;background:var(--student-color, #7bb9a0)}.teaching-lesson-student-cell{grid-column:2;grid-row:1 / 3;display:grid;gap:2px;min-width:0}.teaching-lesson-student-names{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-width:0;overflow:hidden;font-size:14px;font-weight:var(--font-weight-label, 500)}.teaching-lesson-student-names button{min-height:24px;border:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 52%,#ffffff);border-radius:7px;padding:2px 7px;color:color-mix(in srgb,var(--student-color, #0a84ff) 62%,#172033);background:color-mix(in srgb,var(--student-color, #0a84ff) 18%,#ffffff);font:inherit;line-height:1.15;cursor:pointer}.teaching-lesson-student-names button:hover{border-color:color-mix(in srgb,var(--student-color, #0a84ff) 72%,#ffffff);background:color-mix(in srgb,var(--student-color, #0a84ff) 26%,#ffffff)}.teaching-lesson-student-cell small,.teaching-lesson-content-cell p{margin:0;color:#65758b;line-height:1.3}.teaching-lesson-content-cell{grid-column:3;grid-row:1 / 3;min-width:0;display:grid;grid-template-rows:27px 24px;align-items:center}.teaching-lesson-content-cell p{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.teaching-lesson-row-metrics{display:flex;min-width:0;color:#567086;font-weight:var(--font-weight-label, 500);white-space:nowrap}.teaching-lesson-history-meta{grid-column:4;grid-row:1 / 3;display:grid;grid-template-rows:27px 24px;align-items:center;justify-items:end;min-width:108px}.teaching-lesson-row-status{width:fit-content;border-radius:999px;padding:3px 7px;color:#8b5423;background:#fff1df;font-size:12px;font-weight:var(--font-weight-label, 500);white-space:nowrap}.teaching-lesson-row-status.status-completed,.teaching-lesson-row-status.status-resolved{color:var(--app-success-text);background:color-mix(in srgb,var(--green) 5%,var(--surface-card))}.teaching-lesson-row-status.status-cancelled{color:#9f1239;background:#fff1f2}.teaching-lesson-history-meta button{min-height:25px;border:1px solid var(--teach-green-mid);border-radius:7px;padding:0 10px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-label, 500)}.teaching-lesson-row-chevron{grid-column:5;grid-row:1 / 3;color:#729084}.teaching-lesson-mode-banner{min-height:32px;align-items:center;gap:7px;border:1px solid #d6e2ec;border-radius:8px;background:#f8fbfd;color:#52657c;font-size:13px;font-weight:var(--font-weight-label, 500)}.teaching-lesson-mode-completed .teaching-lesson-mode-banner{border-color:color-mix(in srgb,var(--green) 30%,var(--line));background:color-mix(in srgb,var(--green) 5%,var(--surface-card));color:var(--app-success-text)}.teaching-lesson-mode-upcoming .teaching-lesson-mode-banner{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.teaching-student-card-modal{width:min(940px,calc(100vw - 28px));max-height:calc(100vh - 36px);position:relative;overflow:auto;border-radius:var(--radius-sheet, 20px);background:#fff;box-shadow:var(--shadow-dialog, 0 4px 8px rgba(15, 23, 42, .22))}.teaching-student-card-modal .teaching-detail-panel{border:0;box-shadow:none}.teaching-student-card-modal-close{position:sticky;top:0;z-index:2;display:flex;justify-content:flex-end;padding:10px 10px 0;background:linear-gradient(180deg,#fff 70%,#fff0)}.teaching-student-card-modal-close button{min-height:34px;border:1px solid #d6e2ec;border-radius:8px;padding:0 10px;background:#fff;color:#52657c}.teaching-template-content-field .teaching-resource-line{margin-top:8px}.teaching-lock-note{margin:8px 0 0;border:1px solid #fed7aa;border-radius:8px;padding:8px 10px;font-size:13px;font-weight:var(--font-weight-label, 500)}.teaching-ai-summary.stale{border-color:#f0c66f;background:#fffaf0}.spin{animation:teaching-spin .9s linear infinite}@keyframes teaching-spin{to{transform:rotate(360deg)}}@media(max-width:760px){.teaching-lesson-filters,.teaching-lesson-history-row,.teaching-summary-status-table,.teaching-summary-student>.teaching-summary-student-row{grid-template-columns:1fr}.teaching-completion-filter.compact{grid-column:auto}.teaching-completion-filter>div,.teaching-completion-filter.compact>div{flex-direction:column}.teaching-completion-filter>div button{justify-content:center;white-space:normal}.teaching-lesson-filters .teaching-filter-count,.teaching-lesson-filters .teaching-clear-filters{width:100%;justify-self:stretch}.teaching-lesson-history-meta{justify-items:start}.teaching-lesson-header{display:grid}}.teaching-module{gap:10px}.teaching-lesson-header{align-items:start}.teaching-lesson-header h2{font-size:22px}.teaching-lesson-mode-banner{display:inline-flex;width:auto;margin-top:6px;padding:4px 8px}.teaching-resource-page{position:relative;grid-template-columns:minmax(0,1fr)}.teaching-top-filter-panel{grid-template-columns:minmax(180px,.7fr) minmax(220px,1.1fr) auto auto}.teaching-top-filter-panel .teaching-panel-title{padding-bottom:0}.teaching-top-filter-panel .teaching-panel-title h2{font-size:22px}.teaching-top-filter-panel .teaching-level-toggle-row,.teaching-top-filter-panel .teaching-filter-buttons{align-self:end}.teaching-filter-count{min-height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d6e2ec;border-radius:8px;padding:0 10px;background:#fff;color:#52657c;font-size:12px;font-weight:var(--font-weight-label, 500)}.teaching-resource-results{display:grid;gap:12px}.teaching-resource-results-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.teaching-resource-results-head h2{margin:0;font-size:22px}.teaching-resource-import-progress{min-height:58px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--teach-green-soft) 55%,var(--surface-card))}.teaching-resource-import-progress-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--surface-card);color:var(--teach-action-soft-text)}.teaching-resource-import-progress-copy{min-width:0;display:grid;gap:2px}.teaching-resource-import-progress-copy strong,.teaching-resource-import-progress-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teaching-resource-import-progress-copy strong{color:var(--text);font-size:13px;font-weight:600}.teaching-resource-import-progress-copy small{color:var(--muted);font-size:12px}.teaching-resource-import-progress.is-failed{background:color-mix(in srgb,var(--rose) 7%,var(--surface-card))}.teaching-resource-import-progress.is-failed .teaching-resource-import-progress-icon,.teaching-resource-import-progress.is-failed .teaching-resource-import-progress-copy small{color:var(--rose)}@media(max-width:680px){.teaching-resource-import-progress{min-height:64px;padding-inline:10px}}.teaching-add-resource-toggle{min-height:36px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--teach-green-mid);border-radius:8px;padding:0 12px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-weight:var(--font-weight-label, 500)}.teaching-student-filter-popup,.teaching-history-more-filter,.teaching-filter-popup{position:relative}.teaching-student-filter-popup>button,.teaching-history-more-filter>button,.teaching-completion-filter>div button{min-height:38px;border:1px solid #d6e2ec;border-radius:8px;background:#fff;color:#172033;font-weight:var(--font-weight-label, 500)}.teaching-student-filter-popup>button{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:0 10px;text-align:start}.teaching-history-more-filter>button{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 10px;text-align:start}.teaching-history-more-filter>button span,.teaching-history-more-filter>button strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teaching-student-filter-popup>button.active,.teaching-history-more-filter>button.active{border-color:#b7d7ff;background:#eef6ff}.teaching-student-filter-menu,.teaching-history-more-menu{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:min(360px,82vw);max-height:min(480px,64vh);display:grid;gap:6px;overflow:auto;border:1px solid #d6e2ec;border-radius:8px;padding:8px;background:#fff;box-shadow:var(--shadow-dropdown)}.teaching-history-more-menu{right:0;left:auto;width:min(420px,82vw)}.teaching-history-more-menu .teaching-completion-filter{min-width:0}@media(max-width:680px){.teaching-student-filter-menu,.teaching-history-more-menu{position:static;width:100%;max-height:min(420px,56svh);margin-top:6px}}.teaching-student-filter-menu>div{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#52657c;font-size:12px;font-weight:var(--font-weight-label, 500)}.teaching-student-filter-menu button:not(.teaching-filter-done){min-height:34px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 24%,#d6e2ec);border-radius:8px;padding:0 9px;background:color-mix(in srgb,var(--student-color, #0a84ff) 8%,white);color:#172033;text-align:start;font-weight:var(--font-weight-label, 500)}.teaching-student-filter-menu button.selected{border-color:color-mix(in srgb,var(--student-color, #0a84ff) 72%,#d6e2ec);background:color-mix(in srgb,var(--student-color, #0a84ff) 44%,white);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--student-color, #0a84ff) 48%,transparent)}.teaching-filter-done{min-height:36px;border:1px solid var(--teach-green-mid);border-radius:8px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-weight:var(--font-weight-label, 500)}.teaching-completion-filter{display:grid;gap:5px;min-width:0;color:#52657c;font-size:12px;font-weight:var(--font-weight-label, 500)}.teaching-completion-filter>div{display:flex;flex-wrap:wrap;gap:4px;padding:3px;border:1px solid #d6e2ec;border-radius:8px;background:#f8fbff}.teaching-completion-filter.compact{grid-column:span 2}.teaching-lesson-filters .teaching-completion-filter.compact{grid-column:auto}.teaching-completion-filter>div button{min-height:32px;flex:1 1 max-content;border-color:transparent;font-size:12px;white-space:nowrap}.teaching-import-folder-button,.folder-import-status-trigger{min-height:36px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--radius-control);padding:0 12px;background:var(--surface-card);color:var(--text);font-weight:var(--font-weight-label, 500)}.folder-import-status-trigger{max-width:340px;align-items:flex-start;padding-block:8px;text-align:start}.folder-import-status-trigger>span{min-width:0;display:grid;gap:2px}.folder-import-status-trigger strong,.folder-import-status-trigger small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-import-status-trigger small{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.folder-import-status-trigger.status-processing{border-color:var(--teach-green-mid);background:var(--teach-green-soft)}.folder-import-spinner{flex:0 0 auto;animation:folder-import-spin .9s linear infinite}@keyframes folder-import-spin{to{transform:rotate(360deg)}}.app-dialog-backdrop.folder-import-backdrop{position:fixed;inset:0;z-index:var(--z-dialog, 1000);display:grid;place-items:center;padding:32px 24px;background:#0f172a7a}.folder-import-dialog{width:min(900px,100%);max-height:min(720px,calc(100dvh - 64px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sheet);background:var(--surface-panel-strong);color:var(--text)}.folder-import-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px 14px;border-bottom:1px solid var(--line)}.folder-import-dialog-head h2,.folder-import-dialog-head p{margin:0}.folder-import-dialog-head h2{margin-block:0 3px;font-size:20px}.folder-import-dialog-head>div>p:last-child{max-width:68ch;color:var(--muted);font-size:13px}.app-dialog-close{width:36px;min-width:36px;min-height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control);padding:0;background:var(--surface-card);color:var(--text)}.folder-import-dialog-body{min-height:0;overflow-y:auto;padding:16px 18px}.folder-import-source-heading{margin-bottom:8px}.folder-import-source-heading strong{font-size:15px}.folder-import-source-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.folder-import-source-list>button{position:relative;width:100%;min-height:68px;display:grid;grid-template-columns:36px minmax(0,1fr) 20px;align-items:center;gap:10px;border:1px solid var(--line);border-radius:var(--radius-panel);padding:10px 12px;background:var(--surface-card);color:var(--text);text-align:start;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.folder-import-source-list>button:hover:not(:disabled){border-color:var(--line-strong, var(--line))}.folder-import-source-list>button.active{border-color:var(--teach-green);background:var(--teach-green-soft);box-shadow:inset 0 0 0 1px var(--teach-green)}.folder-import-source-list>button:disabled{opacity:.58}.folder-import-source-list>button>span:nth-child(2){min-width:0;grid-column:2}.folder-import-source-icon,.folder-import-summary-icon,.folder-import-ai-heading>span{width:36px;height:36px;display:grid;place-items:center;border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.folder-import-source-list>button.active .folder-import-source-icon{background:var(--surface-card)}.folder-import-source-state{position:static;grid-column:3;width:20px;height:20px;display:grid;place-items:center;border:1px solid var(--line-strong, var(--line));border-radius:999px;background:var(--surface-card);color:transparent}.folder-import-source-list>button.active .folder-import-source-state{border-color:transparent;background:var(--teach-green);color:var(--teach-action-solid-text)}.folder-import-entry-panel{display:grid;gap:12px;margin-top:12px;border:1px solid var(--line);border-radius:var(--radius-panel);padding:14px;background:var(--surface-sheet-muted, var(--surface-card))}.folder-import-entry-heading{display:flex;align-items:center;gap:12px}.folder-import-entry-heading>span,.folder-import-detection-icon{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.folder-import-entry-heading>div{min-width:0;display:grid;gap:3px}.folder-import-entry-heading small{color:var(--muted);font-size:12px;line-height:1.45}.folder-import-drive-options{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.folder-import-drive-selection-help{margin:0;font-size:16px;line-height:1.5;color:var(--text)}.folder-import-add-trigger,.folder-import-drive-options>button,.folder-import-detection-actions>button:not(.folder-import-text-action){min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--action-control-border, var(--teach-green));border-radius:var(--radius-control);padding:10px 14px;background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));font-weight:var(--font-weight-label, 500)}.folder-import-detection-actions>button.secondary{border-color:var(--line);background:var(--surface-card);color:var(--text)}.folder-import-drive-options>button{min-height:48px;justify-self:start;padding-inline:20px}.folder-import-drive-options>button:hover:not(:disabled){filter:brightness(.95)}.folder-import-picker,.folder-import-link-field{margin-top:16px;border:1px solid var(--line);border-radius:var(--radius-panel);padding:12px;background:var(--surface-sheet-muted, var(--surface-card))}.folder-import-picker button,.folder-import-link-field>button,.folder-import-actions>button:last-child{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--action-control-border, var(--teach-green));border-radius:var(--radius-control);padding:0 14px;background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));font-weight:var(--font-weight-label, 500)}.folder-import-link-field{margin-top:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px}.folder-import-link-field label{min-width:0;display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.folder-import-link-field input{width:100%;min-height:44px;border:1px solid var(--line);border-radius:var(--radius-control);padding:0 10px;background:var(--surface-input);color:var(--text);font:inherit}.folder-import-supported-links{margin:-4px 2px 0;color:var(--muted);font-size:12px;line-height:1.45}.folder-import-link-divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px}.folder-import-link-divider:before,.folder-import-link-divider:after{height:1px;flex:1;background:var(--line);content:""}.folder-import-detection{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;border:1px solid var(--line);border-radius:var(--radius-panel);padding:18px;background:var(--surface-sheet-muted, var(--surface-card))}.folder-import-detection>div:nth-child(2){min-width:0;display:grid;gap:5px}.folder-import-detection small{color:var(--teach-action-soft-text);font-size:11px;font-weight:var(--font-weight-label, 500);letter-spacing:.04em;text-transform:uppercase}.folder-import-detection h3,.folder-import-detection p{margin:0}.folder-import-detection h3{font-size:17px}.folder-import-detection p{color:var(--muted);font-size:13px;line-height:1.5}.folder-import-detection-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px;padding-inline-start:58px}.folder-import-text-action{min-height:44px;border:0;padding-inline:10px;background:transparent;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.folder-import-source-list>button:focus-visible,.folder-import-entry-panel button:focus-visible,.folder-import-entry-panel input:focus-visible,.folder-import-detection button:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 35%,transparent);outline-offset:2px}.folder-import-error,.folder-import-device-note{display:flex;align-items:flex-start;gap:8px;margin:12px 0 0;border-radius:var(--radius-control);padding:10px 12px;background:var(--app-warning-soft, var(--surface-sheet-muted));color:var(--app-warning-text, var(--text));font-size:12px;line-height:1.45}.folder-import-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface-panel-strong)}.folder-import-actions>button{min-height:40px}.folder-import-actions>button.secondary{border:1px solid var(--line);border-radius:var(--radius-control);padding:0 14px;background:var(--surface-card);color:var(--text);font-weight:var(--font-weight-label, 500)}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.teaching-import-folder-button,.teaching-add-resource-toggle{width:100%;min-height:44px;justify-content:center}.folder-import-status-trigger{max-width:none;grid-column:1 / -1;min-height:44px}.app-dialog-backdrop.folder-import-backdrop{box-sizing:border-box;display:flex;align-items:flex-end;padding-block-start:var(--app-safe-top);padding-block-end:var(--app-safe-bottom);padding-inline-start:var(--app-safe-left);padding-inline-end:var(--app-safe-right)}.folder-import-dialog{width:100%;max-height:100%;border-inline:0;border-bottom:0;border-radius:var(--radius-sheet) var(--radius-sheet) 0 0}.folder-import-dialog-head,.folder-import-dialog-body{padding-inline:14px}.app-dialog-close{width:44px;min-width:44px;min-height:44px}.folder-import-source-list{grid-template-columns:1fr}.folder-import-source-list>button{min-height:82px;display:grid;grid-template-columns:40px minmax(0,1fr) 20px;align-items:center;gap:11px;padding:12px}.folder-import-source-list>button>span:nth-child(2){grid-column:2}.folder-import-source-state{position:static;grid-column:3}.folder-import-entry-panel{padding:14px}.folder-import-entry-actions,.folder-import-drive-options,.folder-import-picker,.folder-import-link-field{grid-template-columns:1fr}.folder-import-picker button,.folder-import-link-field>button{width:100%;min-height:44px}.folder-import-detection-actions{display:grid;padding-inline-start:0}.folder-import-detection-actions>button{width:100%}.folder-import-actions>button{flex:1;min-height:44px}.folder-import-actions{padding-block-end:12px}}@media(prefers-reduced-motion:reduce){.folder-import-spinner{animation:none}}.resource-source-backdrop{z-index:calc(var(--z-dialog, 1000) + 2)}.teaching-library-detail-backdrop.teaching-resource-preview-backdrop{z-index:calc(var(--z-dialog, 1000) + 4)}.teaching-resource-picker-dialog.resource-source-dialog{width:min(1020px,calc(100vw - 48px));height:min(820px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);grid-template-rows:auto minmax(0,1fr) auto}.teaching-resource-picker-dialog.resource-source-dialog.is-compact{width:min(680px,calc(100vw - 48px));height:auto;grid-template-rows:auto auto auto}.resource-source-header{min-width:0}.resource-source-header h2,.resource-source-header p,.resource-source-header small{margin:0}.resource-source-header h2{margin-block:2px 4px}.resource-source-header small{display:block;max-width:62ch;line-height:1.45}.resource-source-body{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;overflow:hidden;padding:16px 24px 20px}.resource-source-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.resource-source-dialog.is-compact .resource-source-body{grid-template-rows:auto auto auto}.resource-source-dialog.is-compact .resource-source-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-source-dialog.is-compact.source-count-3 .resource-source-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.resource-source-dialog.is-compact .resource-source-panel{min-height:180px}.resource-source-tabs>button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:var(--radius-control);padding:0 12px;background:var(--surface-input, var(--surface-card));color:var(--text);font:inherit;font-weight:var(--font-weight-label, 600)}.resource-source-tabs>button.active{border-color:var(--teach-green);background:var(--teach-green-soft);color:var(--teach-action-soft-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--teach-green) 72%,transparent)}.resource-source-panel{min-height:0}.resource-source-library{min-width:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:12px;overflow:hidden}.resource-source-filters.teaching-modal-filters{grid-template-columns:minmax(220px,.72fr) minmax(580px,1.8fr) auto;gap:8px;background:var(--surface-muted-band)}.resource-source-filters>*,.resource-source-filters .teaching-filter-buttons.compact,.resource-source-filters .resource-taxonomy-fields{min-width:0}.resource-source-filters .teaching-filter-buttons.compact{grid-template-columns:minmax(0,3fr) minmax(124px,.8fr)}.resource-source-filters .teaching-filter-popup>button,.resource-source-filters>.teaching-clear-filters{border:1px solid var(--line);background:var(--surface-input, var(--surface-card));color:var(--text)}.resource-source-results-head{min-height:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.resource-source-search,.resource-source-url label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 600)}.resource-source-search input,.resource-source-url input{width:100%;min-width:0;min-height:40px;border:0;padding:0;background:transparent;color:var(--text);font:inherit}.resource-source-list{min-height:0;max-height:none;overflow-y:auto;margin:0;padding-inline-end:4px}.resource-source-row-actions{display:grid;grid-template-columns:var(--button-standard-h, 36px);gap:6px}.resource-source-row-identity{min-width:0;min-height:44px;display:grid;align-content:center;gap:3px;border:0;padding:0;background:transparent;color:var(--text);text-align:start;cursor:pointer}.resource-source-row-identity strong,.resource-source-row-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-source-row-identity:focus-visible{border-radius:var(--radius-control, 8px);outline:3px solid color-mix(in srgb,var(--teach-green) 25%,transparent);outline-offset:2px}.resource-source-row-actions>button.resource-source-icon-action{width:var(--button-standard-h, 36px);min-width:var(--button-standard-h, 36px);height:var(--button-standard-h, 36px);min-height:var(--button-standard-h, 36px);display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0;background:var(--surface-card);color:var(--text);cursor:pointer}.resource-source-row-actions>button.resource-source-icon-action:hover:not(:disabled){border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.resource-source-row-actions>button.resource-source-icon-action.selected{border-color:var(--teach-green);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.resource-source-row-actions>button.resource-source-icon-action:disabled{cursor:not-allowed;opacity:.46}.resource-source-list>button{width:100%;min-height:58px;display:grid;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:10px;border:1px solid var(--line);border-radius:var(--radius-control);padding:9px 12px;background:var(--surface-card);color:var(--text);text-align:start}.resource-source-list>button.selected{border-color:var(--teach-green);box-shadow:inset 0 0 0 1px var(--teach-green)}.resource-source-list>button>span:nth-child(2){min-width:0;display:grid;gap:3px}.resource-source-list small{overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.resource-source-list>button.selected .resource-source-radio{border:5px solid var(--teach-green)}.resource-source-device,.resource-source-url{min-height:100%;display:grid;align-content:center;justify-items:center;gap:12px;border:1px dashed var(--line-strong, var(--line));border-radius:var(--radius-panel);padding:28px;background:var(--surface-sheet-muted, var(--surface-card));text-align:center}.resource-source-device>div,.resource-source-url label{width:min(100%,520px)}.resource-source-device p,.resource-source-url p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.resource-source-device>button,.resource-source-actions>button{min-height:44px}.resource-source-large-warning{width:min(100%,560px);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid color-mix(in srgb,var(--amber, #b7791f) 42%,var(--line));border-radius:var(--radius-control);padding:12px;background:color-mix(in srgb,var(--amber, #b7791f) 8%,var(--surface-card));color:var(--text);text-align:start}.resource-source-large-warning span{display:grid;gap:2px}.resource-source-large-warning small{color:var(--muted);line-height:1.4}.resource-source-large-warning .resource-source-large-confirm{margin-top:4px;color:var(--text);font-weight:var(--font-weight-label, 500)}.resource-source-large-warning input{width:18px;height:18px}.resource-source-url{justify-items:stretch;text-align:start}.resource-source-url input{min-height:44px;border:1px solid var(--line);border-radius:var(--radius-control);padding-inline:12px;background:var(--surface-card)}.resource-source-error{margin:0;border-radius:var(--radius-control);padding:10px 12px;background:var(--app-danger-soft, color-mix(in srgb, var(--rose) 10%, transparent));color:var(--rose);font-size:13px}.resource-source-actions{display:flex;justify-content:flex-end;gap:8px;padding-bottom:calc(16px + env(safe-area-inset-bottom))}.resource-source-actions>.resource-source-submit{min-width:132px}.resource-source-actions>.resource-source-submit:disabled{border:1px solid color-mix(in srgb,var(--text) 22%,var(--line));background:color-mix(in srgb,var(--text) 7%,var(--surface-card));color:color-mix(in srgb,var(--text) 58%,var(--muted));opacity:1}.resource-source-actions>button.secondary,.resource-source-device>button.secondary{border:1px solid var(--line);border-radius:var(--radius-control);padding-inline:14px;background:var(--surface-card);color:var(--text);font:inherit}.teaching-simple-activity-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.teaching-simple-activity-header>div{min-width:0;display:grid;gap:4px}.teaching-simple-activity-header strong{font-size:17px}.teaching-simple-activity-header small{color:var(--muted);line-height:1.45}.teaching-composer-editor-shell{position:relative}.teaching-composer-editor-shell>.teaching-ai-square-button{position:absolute;z-index:2;top:7px;inset-inline-end:8px;width:36px;height:36px;min-height:36px;flex-basis:36px}.teaching-composer-editor-shell .simple-rich-text-toolbar{padding-inline-end:52px}.teaching-ai-square-button{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--teach-green) 55%,var(--line));border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teaching-ai-square-button:hover:not(:disabled),.teaching-ai-square-button:focus-visible{border-color:var(--teach-green);box-shadow:0 0 0 3px color-mix(in srgb,var(--teach-green) 18%,transparent)}.teaching-simple-resource-label{color:var(--text);font-size:13px;font-weight:var(--font-weight-label, 600)}.teaching-new-block-resources .teaching-composer-attachment-button{width:40px;min-width:40px;min-height:40px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--teach-action-soft-text)}@media(max-width:720px){.teaching-resource-picker-dialog.resource-source-dialog{width:100%;height:94dvh;max-height:94dvh;border-inline:0;border-bottom:0;border-radius:var(--radius-sheet) var(--radius-sheet) 0 0}.teaching-resource-picker-dialog.resource-source-dialog.is-compact{height:auto;max-height:94dvh}.resource-source-header,.resource-source-body{padding-inline:14px}.resource-source-body{display:block;overflow-y:auto;overscroll-behavior:contain;padding-block:12px 20px}.resource-source-body>.resource-source-tabs{position:sticky;top:0;z-index:2;margin-bottom:12px;padding-block:2px 8px;background:var(--surface-panel-strong, var(--surface-panel))}.resource-source-library{display:block;overflow:visible}.resource-source-library>*+*{margin-top:12px}.resource-source-list{max-height:none;overflow:visible;padding-inline-end:0}.resource-source-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.resource-source-dialog.is-compact .resource-source-tabs,.resource-source-dialog.is-compact.source-count-3 .resource-source-tabs,.resource-source-dialog.is-compact.source-count-4 .resource-source-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-source-dialog.is-compact.source-count-3 .resource-source-tabs>button:last-child{grid-column:1 / -1}.resource-source-tabs>button{min-width:0;justify-content:center;padding-inline:8px}.resource-source-filters.teaching-modal-filters,.resource-source-filters .teaching-filter-buttons.compact{grid-template-columns:1fr}.resource-source-filters>.teaching-clear-filters{width:100%;min-height:var(--button-phone-h, 44px)}.resource-source-list .teaching-resource-pick-row{padding:10px 12px}.resource-source-list .teaching-resource-pick-row>button{min-height:var(--button-phone-h, 44px)}.resource-source-row-actions{grid-template-columns:var(--button-phone-h, 44px)}.resource-source-row-actions>button.resource-source-icon-action{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px)}.resource-source-actions>button{flex:1}body[data-app-layout-mode=phone] .teaching-simple-activity-composer{padding-bottom:14px}body[data-app-layout-mode=phone] .teaching-simple-activity-composer .teaching-new-block-actions{position:static;width:auto;margin:0;padding:0;border:0;background:transparent;box-shadow:none}}.teaching-lesson-filters,.teaching-lesson-filters.upcoming-mode,.teaching-lesson-filters.history-mode,.teaching-lesson-filters.history-mode.custom-date-mode{display:flex;flex-wrap:wrap;gap:6px;align-items:end}.teaching-lesson-filters .teaching-student-filter-popup{flex:0 1 170px}.teaching-lesson-filters .teaching-completion-filter{display:block}.teaching-lesson-filters .teaching-completion-filter-dates{flex:1 1 300px}.teaching-lesson-filters .teaching-completion-filter-summary,.teaching-lesson-filters .teaching-completion-filter-prep{flex:0 1 210px}.teaching-lesson-filters>.teaching-completion-filter>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.teaching-lesson-filters .teaching-completion-filter>div{flex-wrap:nowrap;gap:2px;padding:2px}.teaching-lesson-filters .teaching-completion-filter>div button{min-height:32px;padding-inline:8px}.teaching-lesson-filters .teaching-history-more-filter,.teaching-lesson-filters .teaching-custom-date-field{flex:0 1 150px}.teaching-lesson-filters .teaching-filter-count{flex:0 0 auto;margin-left:auto}.teaching-lesson-filters .teaching-clear-filters{flex:0 0 auto}@media(max-width:760px){.teaching-lesson-filters,.teaching-lesson-filters.upcoming-mode,.teaching-lesson-filters.history-mode,.teaching-lesson-filters.history-mode.custom-date-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.teaching-lesson-filters .teaching-student-filter-popup,.teaching-lesson-filters .teaching-history-more-filter,.teaching-lesson-filters .teaching-custom-date-field,.teaching-lesson-filters .teaching-filter-count,.teaching-lesson-filters .teaching-clear-filters{width:auto;min-width:0;margin-left:0}.teaching-lesson-filters .teaching-completion-filter-dates,.teaching-lesson-filters .teaching-completion-filter-summary,.teaching-lesson-filters .teaching-completion-filter-prep{grid-column:1 / -1;min-width:0}.teaching-lesson-filters .teaching-completion-filter>div{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.teaching-lesson-filters .teaching-completion-filter>div button{flex:1 0 auto;min-height:42px}.teaching-lesson-date-heading{min-height:22px}.teaching-lesson-history-row{min-height:70px;grid-template-columns:6px minmax(108px,.68fr) minmax(0,1fr) auto;grid-template-rows:31px 28px;gap:0 8px;padding:5px 7px 4px 0}.teaching-lesson-history-row:before{grid-row:1 / 3}.teaching-lesson-student-cell{grid-column:2;grid-row:1 / 3}.teaching-lesson-student-names{font-size:13px}.teaching-lesson-content-cell{grid-column:3;grid-row:1 / 3;grid-template-rows:31px 28px}.teaching-lesson-content-cell p{font-size:12px}.teaching-lesson-row-metrics{gap:7px;font-size:12px}.teaching-lesson-history-meta{grid-column:4;grid-row:1 / 3;min-width:0;display:flex}.teaching-lesson-history-meta>.teaching-lesson-row-status,.teaching-lesson-row-chevron{display:none}.teaching-lesson-history-meta button{min-height:34px;padding-inline:8px}}.teaching-list-panel{width:min(250px,100%)}.teaching-module .teaching-student-card{border-radius:8px}.teaching-module .teaching-student-card strong{color:#111827;font-weight:var(--font-weight-label, 500)}.teaching-module .teaching-student-card small{color:#334155;font-weight:var(--font-weight-label, 500)}.teaching-module{padding-top:0}.teaching-lessons-page,.teaching-resource-page,.teaching-two-column{margin-top:0}.teaching-top-filter-panel{position:relative;z-index:20;display:flex;flex-direction:row;align-items:center;gap:10px;padding:10px 14px;min-height:58px;overflow:visible}.teaching-top-filter-panel .teaching-search-field{flex:1 1 340px;min-width:220px;max-width:560px;margin:0}.teaching-top-filter-panel .teaching-filter-buttons{display:flex;flex:0 0 auto;align-items:center;gap:8px;flex-wrap:nowrap}.teaching-top-filter-panel .teaching-clear-filters,.teaching-top-filter-panel .teaching-filter-count{flex:0 0 auto;white-space:nowrap}.teaching-block-filter-panel{justify-content:flex-start;border:1px solid color-mix(in srgb,#0a84ff 12%,var(--line));background:#ffffffeb}.teaching-block-filter-title{min-width:170px;display:grid;gap:2px;margin-right:auto}.teaching-block-filter-title strong{color:var(--ink);font-size:15px;line-height:1.1}.teaching-block-filter-title span{color:var(--muted);font-size:12px;font-weight:600}.teaching-filter-popup{position:relative;z-index:40}.teaching-panel,.teaching-resource-page,.teaching-blocks-page{overflow:visible}.teaching-resource-results,.teaching-blocks-resource-section{margin-top:0}@media(min-width:861px){body:not([data-app-layout-mode=phone]) .teaching-blocks-resource-section{min-height:0;margin-bottom:0;display:flex;flex-direction:column;overflow:hidden}body:not([data-app-layout-mode=phone]) .teaching-blocks-resource-section .teaching-template-manager-list.inline{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto}}.teaching-resource-results-head{padding-block:8px}.teaching-list-panel{position:sticky;top:12px;max-height:calc(100vh - 24px);display:flex;flex-direction:column;overflow:hidden;padding:14px}.teaching-list-panel .teaching-panel-title{display:block;margin-bottom:10px}.teaching-list-panel .teaching-panel-title h2{font-size:1.25rem;line-height:1.1}.teaching-list-panel .teaching-search-field{flex:0 0 auto;margin-bottom:10px}.teaching-list-panel .teaching-list{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding-right:3px}.teaching-module .teaching-student-card{min-height:48px;padding:8px 10px;justify-content:center;border-color:color-mix(in srgb,var(--student-color, #0a84ff) 34%,#d6e2ec);background:color-mix(in srgb,var(--student-color, #0a84ff) 22%,white)}.teaching-module .teaching-student-card strong{font-size:.9rem;line-height:1.05}.teaching-module .teaching-student-card small{font-size:.72rem;line-height:1.05}.teaching-module .teaching-student-card.selected{border-color:color-mix(in srgb,var(--student-color, #0a84ff) 62%,#172033);background:color-mix(in srgb,var(--student-color, #0a84ff) 34%,white);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--student-color, #0a84ff) 34%,white)}.teaching-student-header{justify-content:flex-start;padding:10px 0 12px;min-height:unset;text-align:start}.teaching-student-header>div{margin-inline-start:0}.teaching-student-header h2{font-size:1.45rem;line-height:1.1}.teaching-student-header p{margin-top:2px}.teaching-timeline-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px}.teaching-timeline-intro h3,.teaching-timeline-intro>p:last-child{margin:0}.teaching-timeline-intro h3{color:var(--text);font-size:18px}.teaching-timeline-intro>p:last-child{margin-top:4px;color:var(--muted);font-size:12px}.teaching-timeline-filter button.active{background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text))}.teaching-timeline-filter button.active span{background:#fff3}.teaching-upcoming-editor-toggle{align-self:flex-start}.teaching-back-button{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:8px;padding:6px 10px;background:#fff;color:var(--ink);font-weight:var(--font-weight-label, 500)}.teaching-block-card.plan-summary-complete,.teaching-summary-plan-row.complete{border-color:color-mix(in srgb,#2f9e44 34%,var(--line))}.teaching-block-card.plan-summary-open,.teaching-summary-plan-row.open{border-color:color-mix(in srgb,#d9480f 22%,var(--line))}.teaching-summary-student .student-color-dot,.teaching-upcoming-card .student-color-dot{display:none}.summary-status-cycle.done{border-color:color-mix(in srgb,#2f9e44 40%,var(--line));background:color-mix(in srgb,#2f9e44 14%,white);color:#1f7a36}.summary-status-cycle.unfinished{border-color:color-mix(in srgb,#f59f00 48%,var(--line));background:color-mix(in srgb,#f59f00 15%,white);color:#9a5b00}.summary-status-cycle.none{color:#667085}.teaching-block-card{padding-right:14px}.teaching-block-card.compact{padding:12px 14px}.teaching-lock-note{width:fit-content;max-width:760px;border-color:#d6e2ec;background:#f5f7fa;color:#667085;line-height:1.35}.teaching-lock-note.muted{width:100%;color:#7a8797}.teaching-blocks-page .teaching-template-editor .resource-taxonomy-fields{grid-template-columns:minmax(0,1fr)}.teaching-blocks-page .teaching-template-content-field textarea{min-height:186px}.teaching-blocks-page .teaching-template-lock-row{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:8px}.teaching-blocks-page .teaching-template-lock-row>span{width:36px;height:36px}.teaching-blocks-page .teaching-template-lock-row button{min-height:36px}.teaching-template-meta-controls .teaching-template-action-row button{width:100%;min-height:40px}.teaching-template-meta-controls .teaching-save-small.icon-only{display:grid;place-items:center;padding:0}.teaching-template-meta-controls .teaching-clear-small{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-color:var(--line);background:var(--surface-card);color:var(--text)}.teaching-template-meta-controls .teaching-clear-small:disabled{background:var(--surface-sheet-muted)}.teaching-resource-page .teaching-top-filter-panel,.teaching-blocks-page .teaching-top-filter-panel{display:grid;grid-template-columns:minmax(132px,.7fr) minmax(160px,1fr) repeat(2,104px) auto auto auto;align-items:center;gap:7px;min-height:52px;padding:8px 10px;overflow-x:auto;overflow-y:visible}.teaching-resource-page .teaching-block-filter-title,.teaching-blocks-page .teaching-block-filter-title{align-self:center;min-width:0;margin-right:0}.teaching-resource-page .teaching-block-filter-title span,.teaching-blocks-page .teaching-block-filter-title span{display:none}.teaching-resource-page .teaching-search-field,.teaching-blocks-page .teaching-search-field{min-width:160px;margin:0}.teaching-resource-page .teaching-clear-filters,.teaching-blocks-page .teaching-clear-filters,.teaching-resource-page .teaching-filter-count,.teaching-blocks-page .teaching-filter-count{flex:0 0 auto;min-height:32px;margin-top:0;white-space:nowrap}.teaching-resource-page .teaching-top-filter-panel .teaching-filter-buttons,.teaching-blocks-page .teaching-top-filter-panel .teaching-filter-buttons{justify-self:end;flex:0 0 auto;display:flex;align-items:center;gap:7px;flex-wrap:nowrap}.teaching-resource-page .teaching-top-filter-panel .teaching-filter-popup,.teaching-blocks-page .teaching-top-filter-panel .teaching-filter-popup{width:112px}.teaching-resource-page .teaching-filter-popup>button,.teaching-blocks-page .teaching-filter-popup>button{min-height:32px;gap:5px;padding:0 8px}.teaching-resource-page .teaching-filter-popup>button span,.teaching-blocks-page .teaching-filter-popup>button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-heading-column,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-content-field,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-meta-controls,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-manager-row label,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-manager-row textarea,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-manager-row select{min-width:0;width:100%}body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-action-row{grid-template-columns:42px minmax(0,1fr)}body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-meta-controls .teaching-delete-small,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-meta-controls .teaching-resource-link-small{width:100%;justify-self:stretch}@media(max-width:1280px){body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-top-filter-panel,body:not([data-app-layout-mode=phone]) .teaching-blocks-page .teaching-top-filter-panel{grid-template-columns:minmax(128px,.7fr) minmax(180px,1fr) repeat(2,104px) auto auto;row-gap:7px;min-height:90px}body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-top-filter-panel .teaching-filter-buttons,body:not([data-app-layout-mode=phone]) .teaching-blocks-page .teaching-top-filter-panel .teaching-filter-buttons{grid-column:1 / -1;justify-self:end;max-width:100%}}@media(max-width:980px){body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-top-filter-panel,body:not([data-app-layout-mode=phone]) .teaching-blocks-page .teaching-top-filter-panel{grid-template-columns:minmax(0,1fr) repeat(2,minmax(96px,104px)) auto;min-height:126px}body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-block-filter-title,body:not([data-app-layout-mode=phone]) .teaching-blocks-page .teaching-block-filter-title{grid-column:1 / 2}body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-search-field,body:not([data-app-layout-mode=phone]) .teaching-blocks-page .teaching-search-field{grid-column:1 / -1;min-width:0}body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-filter-count,body:not([data-app-layout-mode=phone]) .teaching-blocks-page .teaching-filter-count{justify-self:end}body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-top-filter-panel .teaching-filter-buttons,body:not([data-app-layout-mode=phone]) .teaching-blocks-page .teaching-top-filter-panel .teaching-filter-buttons{justify-self:stretch;overflow-x:auto;padding-bottom:2px}}.teaching-module .teaching-student-card,.contacts-roster .student-drag-card{min-height:58px;display:grid;place-items:center;border-radius:8px;padding:8px 10px;border-color:color-mix(in srgb,var(--student-color, #0a84ff) 60%,white);background:color-mix(in srgb,var(--student-color, #0a84ff) 45%,white);text-align:center;box-shadow:inset 0 1px #ffffff6b}.teaching-module .teaching-student-card>span,.contacts-roster .student-drag-card>span{display:grid;gap:2px;justify-items:center}.teaching-module .teaching-student-card.selected,.contacts-roster .student-drag-card.selected{border-color:color-mix(in srgb,var(--student-color, #0a84ff) 82%,#1d4ed8);background:color-mix(in srgb,var(--student-color, #0a84ff) 55%,white);box-shadow:inset 0 0 0 1px #ffffff9e,0 0 0 2px color-mix(in srgb,var(--student-color, #0a84ff) 18%,transparent)}.teaching-inline-actions{display:flex;justify-content:flex-end;gap:8px}.teaching-inline-actions button,.teaching-timeline-copy button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:8px}@media(max-width:700px){.teaching-timeline-toolbar{align-items:stretch;flex-direction:column}}.teaching-lesson-status-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.teaching-load-more-button{min-height:42px;width:min(360px,100%);justify-self:center;border:1px solid var(--line);border-radius:8px;background:var(--surface-card);color:var(--app-action-text);font-weight:var(--font-weight-label, 500);cursor:pointer}.teaching-block-library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.teaching-block-library-toolbar>div{display:grid;gap:2px}.teaching-block-library-toolbar h2,.teaching-block-library-toolbar p{margin:0}.teaching-new-block-button,.teaching-new-block-actions button,.teaching-template-compact-row>button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #cddbea;border-radius:8px;padding:0 12px;background:#fff;color:#24527d;font-weight:var(--font-weight-label, 500);cursor:pointer}.teaching-new-block-button{border-color:#8ebde8;background:#eaf5ff;color:#075f9f}.teaching-new-block-editor{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:12px;padding:14px;border:1px solid var(--mgmt-blue-mid);border-radius:var(--radius-panel);background:color-mix(in srgb,var(--surface-card) 80%,var(--mgmt-blue-soft))}.teaching-new-block-editor label{display:grid;align-content:start;gap:5px;color:#52657c;font-size:.75rem;font-weight:var(--font-weight-label, 500)}.teaching-new-block-editor input,.teaching-new-block-editor textarea,.teaching-new-block-editor select{width:100%;min-height:38px;border:1px solid #cddbea;border-radius:8px;background:#fff}.teaching-new-block-editor textarea{min-height:76px;resize:vertical}.teaching-new-block-resources{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px}.teaching-new-block-resources>.teaching-resource-link-small{flex:0 0 auto}.teaching-new-block-resources>.teaching-resource-line{flex:1 1 320px;min-height:var(--button-standard-h, 36px);padding-block:6px}.teaching-new-block-actions{display:flex;justify-content:flex-end;gap:8px}.teaching-new-block-actions button:last-child{border-color:#83c6a3;background:#eaf9f0;color:#176b43}.teaching-template-compact-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 14px;border:1px solid #d6e2ec;border-radius:8px;background:#fff}.teaching-template-compact-row>div{min-width:0;display:grid;grid-template-columns:minmax(170px,.7fr) minmax(150px,.5fr) minmax(260px,1.5fr);align-items:center;gap:12px}.teaching-template-compact-row strong{color:#172033;font-size:.9rem}.teaching-template-compact-row small{color:#667085;font-size:.72rem;font-weight:600}.teaching-template-compact-row p{margin:0;color:#334155;font-size:.82rem;line-height:1.45}.teaching-template-compact-row .teaching-resource-line{grid-column:1 / -1}@media(max-width:1000px){.teaching-new-block-main-fields,.teaching-template-compact-row>div{grid-template-columns:1fr}}.teaching-template-compact-row>div:first-child{min-width:0}.teaching-template-compact-row p{min-width:0;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.teaching-template-manager-list.inline{overflow-x:hidden}@media(min-width:1001px){.teaching-template-compact-row{grid-template-columns:minmax(0,1fr) minmax(260px,310px)}.teaching-template-compact-row>div:first-child{grid-template-columns:minmax(145px,.65fr) minmax(125px,.5fr) minmax(190px,1.3fr)}}.teaching-student-file-detail .teaching-tabs button:not(.active){border:1px solid transparent;background:transparent;color:var(--muted);box-shadow:none}.summary-status-segmented button.active.none{border-color:#d6e2ec;color:#52657c}.teaching-block-picker-row.added .teaching-block-picker-action button:disabled{border-color:#d6e2ec;background:#f1f5f9;color:#8793a3;cursor:not-allowed}@media(max-width:900px){.teaching-top-filter-panel{flex-wrap:wrap}.teaching-block-filter-title{flex:1 1 100%}.teaching-student-files-layout{grid-template-columns:1fr}.teaching-list-panel{position:static;max-height:none;overflow:visible}.teaching-list-panel .teaching-list{max-height:min(58vh,420px)}}@media(max-width:980px){.teaching-top-filter-panel,.teaching-lesson-filters,.teaching-template-manager-row{grid-template-columns:1fr}}.teaching-nav,.teaching-panel,.teaching-top-filter-panel,.teaching-resource-results,.teaching-blocks-resource-section,.teaching-list-panel,.teaching-detail-panel,.teaching-quick-add,.teaching-resource-modal,.teaching-complete-summary-modal,.teaching-block-picker,.teaching-template-manager-row,.teaching-summary-primary,.teaching-summary-plan-row,.teaching-upcoming-card,.teaching-file-card,.teaching-student-header,.teaching-lesson-header{background:var(--surface-panel)}.teaching-block-card,.teaching-resource-card,.teaching-filter-count,.teaching-template-menu,.teaching-filter-menu,.teaching-student-filter-menu,.teaching-lesson-workflow-strip button,.teaching-private-note-toggle summary,.teaching-carry-forward-toggle,.summary-status-cycle,.summary-status-segmented,.teaching-template-lock-row>span{background:var(--surface-card)}.teaching-panel input,.teaching-panel textarea,.teaching-panel select,.teaching-plan-inline-editor input,.teaching-plan-inline-editor textarea,.teaching-private-note-toggle textarea,.teaching-template-manager-row input,.teaching-template-manager-row textarea,.teaching-template-manager-row select,.teaching-student-filter-popup>button,.teaching-completion-filter>div,.teaching-completion-filter>div button,.teaching-filter-popup>button{background:var(--surface-input);color:var(--text)}.teaching-icon-button,.teaching-header-actions button,.teaching-add-row button,.teaching-secondary-action,.teaching-summary-add button,.teaching-inline-actions button,.teaching-inline-actions a,.teaching-quick-grid button,.teaching-back-button{background:var(--surface-card);color:var(--text)}.teaching-resource-results-head,.teaching-resource-meta-grid,.teaching-template-action-row,.teaching-block-picker-row,.teaching-summary-status-table,.teaching-summary-student-row{background:transparent}.teaching-block-card.plan-summary-complete,.teaching-summary-plan-row.complete{background:color-mix(in srgb,#2f9e44 10%,var(--surface-card))}.teaching-block-card.plan-summary-open,.teaching-summary-plan-row.open{background:color-mix(in srgb,#d9480f 6%,var(--surface-card))}@media(min-width:701px)and (pointer:fine){.teaching-block-card.desktop-file-drop-active{border-color:var(--teach-green);box-shadow:0 0 0 3px color-mix(in srgb,var(--teach-green) 22%,transparent)}.teaching-desktop-file-drop-overlay{position:absolute;inset:6px;z-index:3;display:grid;place-content:center;justify-items:center;gap:8px;min-height:88px;padding:16px;border:2px dashed var(--teach-green);border-radius:var(--radius-control);background:color-mix(in srgb,var(--surface-panel-strong) 92%,var(--teach-green-soft));color:var(--teach-action-soft-text);text-align:center;pointer-events:none}.teaching-desktop-file-drop-status{display:flex;align-items:center;gap:8px;width:fit-content;margin:8px 0;padding:8px 12px;border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-label, 500)}}.summary-status-segmented button.active.none{background:var(--surface-panel-strong)}.teaching-lesson-header{display:flex;justify-content:space-between;gap:14px;padding:10px 12px}.teaching-lesson-identity{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;justify-items:start}.teaching-lesson-identity>.teaching-back-button{grid-column:1;grid-row:1}.teaching-lesson-identity>.teaching-lesson-title-row{grid-column:2;grid-row:1}.teaching-lesson-identity>p:not(.teaching-lock-note){grid-column:2;grid-row:2}.teaching-lesson-identity>.teaching-lock-note{grid-column:2;grid-row:3;margin:2px 0 0;padding:6px 9px}.teaching-lesson-title-row{display:flex;flex-wrap:wrap;align-items:center}.teaching-lesson-title-row h2,.teaching-lesson-identity>p{margin:0}.teaching-lesson-student-title button{border:0;padding:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;cursor:pointer}.teaching-lesson-student-title button:hover{text-decoration:underline;text-underline-offset:3px}.teaching-edit-header-students{min-height:28px;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:7px;padding:0 8px;background:var(--surface-card);color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);cursor:pointer}.teaching-lesson-status-badge.status-completed{border-color:color-mix(in srgb,var(--green) 36%,var(--line));background:color-mix(in srgb,var(--green) 5%,var(--surface-card));color:var(--app-success-text)}.teaching-lesson-status-badge.status-cancelled{border-color:color-mix(in srgb,#b42318 30%,var(--line));background:color-mix(in srgb,#b42318 8%,var(--surface-card));color:#a72536}.teaching-lesson-status-badge.status-resolved{border-color:color-mix(in srgb,#64748b 34%,var(--line));background:color-mix(in srgb,#64748b 10%,var(--surface-card));color:#475569}.teaching-current-plan,.teaching-add-to-lesson{display:grid;gap:12px}.teaching-current-plan{padding:4px 2px 18px}.teaching-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.teaching-section-heading h3,.teaching-section-heading p{margin:0}.teaching-section-heading h3{margin-top:2px;font-size:20px}.teaching-section-heading>div:first-child>p:last-child{margin-top:4px;color:var(--muted);font-size:13px}.teaching-add-to-lesson{border-top:2px solid color-mix(in srgb,var(--accent, #0a84ff) 34%,var(--line));padding:20px 2px 4px}.teaching-add-section-heading{align-items:center}.teaching-add-section-heading>h3{margin:0}.teaching-add-source-tabs{display:flex;flex-wrap:wrap;gap:7px}.teaching-add-source-tabs button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:8px;padding:0 11px;background:var(--surface-card);color:var(--text);font-weight:var(--font-weight-label, 500);cursor:pointer}.teaching-add-source-tabs button.active{border-color:#8fcde7;background:#eaf7fc;color:#0f5d6f}.teaching-add-source-tabs button span{min-width:20px;border-radius:999px;padding:1px 6px;background:color-mix(in srgb,currentColor 10%,transparent);font-size:12px}.teaching-plan-suggestions{display:grid;gap:12px}.teaching-ai-recommendation-empty{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:260px;border:1px solid color-mix(in srgb,var(--teach-green) 22%,var(--line));border-radius:var(--radius-card, 14px);padding:16px;background:color-mix(in srgb,var(--teach-green-soft) 42%,var(--surface-card))}.teaching-ai-recommendation-empty-icon{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;color:var(--teach-action-soft-text);background:var(--surface-card)}.teaching-ai-recommendation-empty strong,.teaching-ai-recommendation-empty p{margin:0}.teaching-ai-recommendation-empty p{margin-top:4px;color:var(--text-muted);line-height:1.45}.teaching-ai-recommendation-empty .primary-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}@media(max-width:720px){.teaching-ai-recommendation-empty{grid-template-columns:auto minmax(0,1fr);min-height:220px}.teaching-ai-recommendation-empty .primary-button{grid-column:1 / -1;width:100%}}@media(max-width:860px){.teaching-lesson-header,.teaching-section-heading,.teaching-add-section-heading{display:grid;justify-items:stretch}.teaching-lesson-identity{grid-template-columns:auto minmax(0,1fr);gap:6px 8px}.teaching-lesson-identity>.teaching-lock-note{grid-column:1 / -1}.teaching-lesson-identity>p:not(.teaching-lock-note){grid-column:1 / -1}.teaching-lesson-status-actions{display:grid;grid-template-columns:minmax(0,1fr) 42px;width:100%}.teaching-add-source-tabs{display:grid;grid-template-columns:1fr}.teaching-add-source-tabs button{justify-content:flex-start}}.student-identity-header{border:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 56%,var(--line));border-radius:12px;padding:10px 12px;background:color-mix(in srgb,var(--student-color, #0a84ff) 18%,var(--surface-card, #ffffff))}.student-identity-header>div{width:100%;margin:0;text-align:start}.teaching-template-editor-header,.teaching-template-editor-footer{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:10px}.teaching-template-editor-heading{min-width:0;display:grid;gap:2px}.teaching-template-editor-heading span{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);letter-spacing:.05em;text-transform:uppercase}.teaching-template-editor-heading strong{overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.teaching-template-editor-close,.teaching-template-editor-footer button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.teaching-template-editor-close{border:1px solid var(--line);border-radius:8px;padding:0 12px;background:var(--surface-sheet, #ffffff);color:var(--text);font-weight:var(--font-weight-label, 500)}.teaching-template-editor-footer .teaching-save-small{margin-left:auto;border-color:#83c6a3;background:#eaf9f0;color:#176b43}@media(max-width:980px){.teaching-student-files-layout,.teaching-student-files-mobile-roster,.teaching-student-files-mobile-detail{grid-template-columns:minmax(0,1fr)}.teaching-list-panel{position:static;width:100%;max-height:none;overflow:visible}.teaching-list-panel .teaching-list{max-height:none;overflow:visible}.teaching-tabs{display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.teaching-tabs button{min-width:max-content;min-height:44px;flex:0 0 auto}.teaching-student-file-detail .teaching-tabs{padding-inline-end:28px;-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 30px),transparent 100%);mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 30px),transparent 100%)}.teaching-template-manager-list.inline{max-height:none;overflow:visible}.teaching-template-editor{position:fixed;inset:0;z-index:1020;width:100%;height:100svh;max-height:100svh;overflow-y:auto;display:grid;grid-template-columns:minmax(0,1fr);align-content:start;gap:12px;padding:0 14px;border:0;border-radius:0;background:var(--surface-sheet, #ffffff)}.teaching-template-editor-header{position:sticky;top:0;z-index:3;min-height:64px;padding-block:10px;border-bottom:1px solid var(--line);background:var(--surface-sheet, #ffffff)}.teaching-template-editor-close,.teaching-template-editor-footer button{min-height:44px}.teaching-template-editor-close{min-width:88px}.teaching-template-editor-footer{position:sticky;bottom:0;z-index:3;margin-inline:-14px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface-sheet, #ffffff)}.teaching-template-editor-footer button{flex:1 1 0}.teaching-template-editor .teaching-template-meta-controls{padding-bottom:72px}}body[data-app-layout-mode=phone] .teaching-list-panel,body[data-app-layout-mode=phone] .teaching-list-panel .teaching-list,body[data-app-layout-mode=phone] .teaching-template-manager-list.inline{max-height:none;overflow:visible}@media(max-width:980px){.teaching-library-filter-panel .teaching-date-filter input,.teaching-library-filter-panel .teaching-clear-filters,.teaching-library-filter-panel .teaching-filter-count,.teaching-library-filter-panel .teaching-filter-popup>button{min-height:44px}.teaching-library-filter-panel .teaching-filter-count{display:inline-flex;align-items:center;justify-content:center}}.teaching-resource-page .teaching-library-filter-panel{position:relative;z-index:30;display:grid;grid-template-columns:minmax(150px,.7fr) minmax(220px,1.2fr) minmax(310px,1.5fr) auto;grid-template-areas:"title search dates clear" "count filters filters filters";align-items:center;gap:8px;min-height:104px;overflow:visible}.teaching-library-filter-panel>.teaching-block-filter-title{grid-area:title}.teaching-library-filter-panel>.teaching-search-field{grid-area:search;min-width:0;max-width:none}.teaching-resource-page .teaching-library-filter-panel>.teaching-date-filter-group{grid-area:dates;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.teaching-library-filter-panel>.teaching-clear-filters{grid-area:clear}.teaching-library-filter-panel>.teaching-filter-count{grid-area:count;justify-self:start}.teaching-resource-page .teaching-library-filter-panel>.teaching-filter-buttons{grid-area:filters;width:100%;justify-self:stretch;display:grid;gap:8px}.teaching-resource-page .teaching-library-filter-panel .teaching-filter-popup{width:auto;min-width:0;z-index:50}.teaching-library-filter-panel .teaching-filter-popup>button{min-width:0}.teaching-library-filter-panel .teaching-filter-menu{z-index:300}@media(max-width:1120px){body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-library-filter-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(130px,.75fr) auto;grid-template-areas:"title title count clear" "search search dates dates" "filters filters filters filters";min-height:148px}}@media(max-width:680px){body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-library-filter-panel,body[data-app-layout-mode=phone] .teaching-resource-page .teaching-library-filter-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"title title" "search search" "dates dates" "filters filters" "count clear";min-height:0}body[data-app-layout-mode=phone] .teaching-resource-page .teaching-library-filter-panel>.teaching-filter-buttons,body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-library-filter-panel>.teaching-filter-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}.teaching-library-filter-panel .teaching-filter-popup>button{padding-inline:7px}.teaching-library-filter-panel .teaching-filter-popup>button strong{display:none}}:is(.contacts-roster .student-drag-card.selected,.teaching-module .teaching-student-card.selected){border-color:color-mix(in srgb,var(--student-color, #0a84ff) 62%,var(--line, #d6e2ec));background:color-mix(in srgb,var(--student-color, #0a84ff) 34%,var(--surface-card, white));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--student-color, #0a84ff) 24%,white)}.drawer-student-pill,.contact-shortcut:not(.contact-shortcut-warning){border:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 34%,var(--line, #d6e2ec));background:color-mix(in srgb,var(--student-color, #0a84ff) 22%,var(--surface-card, white))}.teaching-student-selector.teaching-list-panel{width:100%}.teaching-student-selector .teaching-panel-title{margin-bottom:8px}.teaching-student-selector .teaching-panel-title h2,.teaching-student-selector .teaching-panel-title p{margin:0}.teaching-student-selector .teaching-student-search{margin-bottom:8px}.teaching-module .teaching-list-panel .teaching-student-card{min-height:44px;border-radius:8px;padding:6px 8px}.teaching-module .teaching-list-panel .teaching-student-card>span{gap:2px}.teaching-module .teaching-list-panel .teaching-list{display:grid;align-content:start;gap:8px}@media(max-width:980px){.teaching-student-files-layout{grid-template-columns:minmax(0,1fr)}.teaching-student-selector.teaching-list-panel{padding:12px}}.teaching-attendance-summary.needs-review{border-color:#d977064d;background:#fffaf3}.teaching-attendance-summary.complete{border-color:#16a34a3d;background:#22c55e0f}.summary-attendance-options button.active.present{border-color:#16a34a;background:#dcfce7;color:#166534}.summary-attendance-options button.active.late_cancel{border-color:#e11d48;background:#ffe4e6;color:#be123c}.summary-attendance-options button.active.cancelled_no_charge{border-color:#64748b;background:#e2e8f0;color:#334155}body[data-app-layout-mode=phone] .teaching-lesson-header{gap:10px}body[data-app-layout-mode=phone] .teaching-lesson-identity{width:100%}body[data-app-layout-mode=phone] .teaching-lesson-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;row-gap:6px;width:100%}body[data-app-layout-mode=phone] .teaching-lesson-title-row h2{grid-column:1 / -1;min-width:0;overflow-wrap:anywhere}body[data-app-layout-mode=phone] .teaching-lesson-title-row .teaching-lesson-status-badge{grid-column:1;justify-self:start}body[data-app-layout-mode=phone] .teaching-edit-header-students{grid-column:2;grid-row:2;justify-self:end;min-height:34px;white-space:nowrap}body[data-app-layout-mode=phone] .teaching-summary-plan-row,body[data-app-layout-mode=phone] .teaching-summary-plan-row>span,body[data-app-layout-mode=phone] .teaching-summary-plan-row small,body[data-app-layout-mode=phone] .teaching-upcoming-card,body[data-app-layout-mode=phone] .teaching-upcoming-card-heading,body[data-app-layout-mode=phone] .teaching-upcoming-card>p{min-width:0;max-width:100%;overflow-wrap:anywhere}body[data-app-layout-mode=phone] .teaching-upcoming-editor{grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .teaching-upcoming-card-heading,body[data-app-layout-mode=phone] .teaching-upcoming-card>p,body[data-app-layout-mode=phone] .teaching-upcoming-card-actions,body[data-app-layout-mode=phone] .teaching-upcoming-card-editor{grid-column:1;grid-row:auto}body[data-app-layout-mode=phone] .teaching-upcoming-card-actions,body[data-app-layout-mode=phone] .teaching-upcoming-card-editor-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}body[data-app-layout-mode=phone] .teaching-upcoming-card-actions>button,body[data-app-layout-mode=phone] .teaching-upcoming-card-editor-actions>button{width:100%;min-height:44px;justify-self:stretch;margin:0}body[data-app-layout-mode=phone] .teaching-block-picker-modal{height:calc(100dvh - 20px);min-height:0}body[data-app-layout-mode=phone] .teaching-block-picker-filters{display:block;overflow:visible;border:0;padding:0;background:transparent}body[data-app-layout-mode=phone] .teaching-block-picker-filter-bar{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:12px;padding:6px 8px;background:var(--surface-card)}body[data-app-layout-mode=phone] .teaching-block-picker-filter-toggle{min-height:34px;display:inline-flex;align-items:center;gap:6px;border:0;padding:0 6px;background:transparent;color:var(--text);font:inherit;font-weight:var(--font-weight-label, 500)}body[data-app-layout-mode=phone] .teaching-block-picker-filter-toggle span{min-width:20px;border-radius:999px;padding:2px 6px;background:var(--teach-green-soft, #eafaf0);color:var(--teach-action-soft-text, #14743a);font-size:12px}body[data-app-layout-mode=phone] .teaching-block-picker-filter-bar small{color:var(--muted);font-size:12px;font-weight:600;white-space:nowrap}body[data-app-layout-mode=phone] .teaching-block-picker-filter-content{max-height:min(46dvh,390px);overflow-y:auto;margin-top:8px;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--surface-card)}body[data-app-layout-mode=phone] .teaching-block-picker-list{min-height:0}body[data-app-layout-mode=phone] .teaching-modal-backdrop{z-index:160}@media(max-width:700px){body[data-app-layout-mode=phone] .teaching-modal-backdrop{width:100vw;height:100dvh;max-height:100dvh;overflow-y:auto;place-items:center;box-sizing:border-box}}@media(max-width:700px){body[data-app-layout-mode=phone] .teaching-blocks-resource-section{-webkit-backdrop-filter:none;backdrop-filter:none}body[data-app-layout-mode=phone] .teaching-student-file-detail .teaching-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;padding-inline-end:0;-webkit-mask-image:none;mask-image:none}body[data-app-layout-mode=phone] .teaching-student-file-detail .teaching-tabs button{min-width:0;white-space:normal;line-height:1.15}body[data-app-layout-mode=phone] .teaching-resource-page .teaching-library-filter-panel>.teaching-filter-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-app-layout-mode=phone] .teaching-library-filter-panel .teaching-filter-popup{min-width:0}body[data-app-layout-mode=phone] .teaching-library-filter-panel .teaching-filter-menu{width:min(220px,calc(100vw - 48px));inset-inline:0 auto}body[data-app-layout-mode=phone] .teaching-library-filter-panel>.teaching-filter-buttons .teaching-filter-popup:last-child .teaching-filter-menu{inset-inline:auto 0}body[data-app-layout-mode=phone] .teaching-new-block-editor{padding-bottom:78px}body[data-app-layout-mode=phone] .teaching-new-block-actions{position:fixed;left:10px;right:10px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:120;width:auto;margin:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface-sheet, #ffffff);box-shadow:var(--shadow-sheet)}}.teaching-student-file-detail .teaching-tabs{display:flex;flex-wrap:nowrap;gap:3px;padding:3px;border:1px solid color-mix(in srgb,var(--teach-green-mid, #c9f2d7) 72%,var(--line));border-radius:var(--radius-panel, 12px);background:color-mix(in srgb,var(--surface-card, #ffffff) 78%,var(--teach-green-soft, #eafaf0));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--teach-green-mid, #c9f2d7) 45%,transparent)}.teaching-student-file-detail .teaching-tabs button{min-width:0;min-height:32px;flex:1 1 auto;justify-content:center;padding-inline:8px;border:1px solid transparent;border-radius:var(--radius-control, 8px);background:transparent;color:#315b45;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teaching-upcoming-activity-content .simple-rich-text-content{display:grid;gap:8px}.teaching-upcoming-activity-content .simple-rich-text-content>:first-child{margin-top:0}.teaching-upcoming-activity-content .simple-rich-text-content>:last-child{margin-bottom:0}.teaching-blocks-page .teaching-library-filter-panel{position:relative;z-index:30;display:grid;grid-template-columns:minmax(150px,.7fr) minmax(220px,1.2fr) minmax(310px,1.5fr) auto;grid-template-areas:"title search dates clear" "count filters filters filters";align-items:center;gap:10px;min-height:104px;padding:12px;overflow:visible}.teaching-blocks-page .teaching-library-filter-panel>.teaching-block-filter-title{grid-area:title}.teaching-blocks-page .teaching-library-filter-panel>.teaching-search-field{grid-area:search;min-width:0;max-width:none}.teaching-blocks-page .teaching-library-filter-panel>.teaching-date-filter-group{grid-area:dates;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.teaching-blocks-page .teaching-library-filter-panel>.teaching-clear-filters{grid-area:clear}.teaching-blocks-page .teaching-library-filter-panel>.teaching-filter-count{grid-area:count;justify-self:start}.teaching-blocks-page .teaching-library-filter-panel>.teaching-filter-buttons{grid-area:filters;width:100%;justify-self:stretch;display:grid;gap:10px}.teaching-blocks-page .teaching-library-filter-panel .teaching-filter-popup{width:auto;min-width:0;z-index:50}.teaching-blocks-page .teaching-library-filter-panel .teaching-filter-popup>button{min-height:38px;min-width:0;padding-inline:10px}.teaching-blocks-page .teaching-template-row-actions{display:grid;flex:0 0 auto;gap:6px}.teaching-blocks-page .teaching-template-row-actions button{width:34px;min-width:34px;min-height:34px;flex:0 0 auto;padding:0}@media(max-width:1120px){.teaching-blocks-page .teaching-library-filter-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(130px,.75fr) auto;grid-template-areas:"title title count clear" "search search dates dates" "filters filters filters filters";min-height:148px}}@media(max-width:680px){.teaching-student-file-detail .teaching-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;padding-inline-end:4px;-webkit-mask-image:none;mask-image:none}.teaching-student-file-detail .teaching-tabs button{min-height:44px;white-space:normal;line-height:1.15}.teaching-blocks-page .teaching-library-filter-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"title title" "search search" "from to" "filters filters" "count clear";min-height:0}.teaching-blocks-page .teaching-library-filter-panel>.teaching-filter-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.teaching-blocks-page .teaching-library-filter-panel .teaching-filter-popup>button{padding-inline:7px}.teaching-blocks-page .teaching-library-filter-panel .teaching-filter-popup>button strong{display:none}.teaching-blocks-page .teaching-template-compact-row{grid-template-columns:minmax(0,1fr) max-content;align-items:start}.teaching-blocks-page .teaching-template-row-actions button{width:44px;min-width:44px;min-height:44px}.teaching-resource-card{padding-right:68px}.teaching-resource-card .teaching-resource-row-actions button,.teaching-resource-card .teaching-resource-row-actions a,.teaching-resource-card .teaching-resource-row-actions .teaching-delete-small{width:44px;min-width:44px;min-height:44px}}body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-row-actions button,body[data-app-layout-mode=phone] .teaching-resource-card .teaching-resource-row-actions button,body[data-app-layout-mode=phone] .teaching-resource-card .teaching-resource-row-actions a,body[data-app-layout-mode=phone] .teaching-resource-card .teaching-resource-row-actions .teaching-delete-small{width:44px;min-width:44px;min-height:44px}body[data-app-layout-mode=phone] .teaching-resource-card{padding-right:68px}.folder-import-dialog>.folder-import-error{margin-inline:20px}.lesson-canvas-spinner{animation:lesson-canvas-spin .8s linear infinite}@keyframes lesson-canvas-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.lesson-canvas-spinner{animation:none}}@media(max-width:700px){body[data-app-layout-mode=phone] .teaching-modal-backdrop{align-items:center;padding:10px}body[data-app-layout-mode=phone] .teaching-lesson-filters.history-mode .teaching-completion-filter>div{flex-direction:row;flex-wrap:wrap}body[data-app-layout-mode=phone] .teaching-lesson-filters.history-mode .teaching-completion-filter>div button{flex:1 1 calc(50% - 4px);min-width:0;min-height:36px}body[data-app-layout-mode=phone] .teaching-student-filter-menu,body[data-app-layout-mode=phone] .teaching-history-more-menu{max-height:min(430px,58svh)}body[data-app-layout-mode=phone] .teaching-student-filter-menu .teaching-filter-done,body[data-app-layout-mode=phone] .teaching-history-more-menu .teaching-filter-done{position:sticky;bottom:0;z-index:1;box-shadow:var(--shadow-sheet)}}.homework-share-backdrop{z-index:90}.homework-share-dialog{width:min(1120px,calc(100vw - 32px));max-height:min(840px,calc(100vh - 32px));overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius-sheet, 20px);background:var(--surface-panel-strong);box-shadow:var(--shadow-dialog, 0 4px 8px rgba(20, 45, 34, .22))}.homework-share-header,.homework-share-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:20px 24px}.homework-share-header{border-bottom:1px solid var(--line)}.homework-share-header h2,.homework-share-section-heading h3{margin:0}.homework-share-header>div>p:last-child{margin:6px 0 0;color:var(--muted)}.homework-share-close{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text)}.homework-share-body{min-height:0;overflow-y:auto;display:grid;grid-template-columns:minmax(240px,.65fr) minmax(520px,1.35fr);gap:16px;padding:16px 24px 20px}.homework-share-source,.homework-share-compose{min-width:0}.homework-share-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.homework-share-section-heading>span{border-radius:999px;padding:4px 9px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-label, 500)}.homework-activity-list{display:grid;gap:8px}.homework-activity-list>article{display:grid;gap:6px}.homework-share-dialog [data-homework-tone="0"]{--homework-context-accent: #6553ad;--homework-context-soft: color-mix(in srgb, #755fc4 17%, var(--surface-input))}.homework-share-dialog [data-homework-tone="1"]{--homework-context-accent: #a35a18;--homework-context-soft: color-mix(in srgb, #df8b32 18%, var(--surface-input))}.homework-share-dialog [data-homework-tone="2"]{--homework-context-accent: #14735e;--homework-context-soft: color-mix(in srgb, #2ca487 17%, var(--surface-input))}.homework-share-dialog [data-homework-tone="3"]{--homework-context-accent: #2d63a6;--homework-context-soft: color-mix(in srgb, #4c89d0 17%, var(--surface-input))}.homework-share-dialog [data-homework-tone="4"]{--homework-context-accent: #9a426d;--homework-context-soft: color-mix(in srgb, #c76392 17%, var(--surface-input))}.homework-share-dialog [data-homework-tone="5"]{--homework-context-accent: #5b7829;--homework-context-soft: color-mix(in srgb, #86aa3d 18%, var(--surface-input))}.homework-share-dialog [data-homework-tone="6"]{--homework-context-accent: #a84840;--homework-context-soft: color-mix(in srgb, #db6c62 17%, var(--surface-input))}.homework-share-dialog [data-homework-tone="7"]{--homework-context-accent: #176f89;--homework-context-soft: color-mix(in srgb, #2d9cbb 17%, var(--surface-input))}.homework-activity-choice,.homework-resource-choice{--homework-context-accent: var(--teach-green);--homework-context-soft: var(--teach-green-soft);width:100%;min-height:44px;display:grid;grid-template-columns:28px minmax(0,1fr) 16px;align-items:center;gap:8px;border:1px solid var(--line);border-inline-start:3px solid color-mix(in srgb,var(--homework-context-accent) 48%,var(--line));border-radius:var(--radius-control);padding:6px 8px;background:var(--surface-input);color:var(--text);text-align:start}.homework-activity-choice:hover:not(:disabled),.homework-resource-choice:hover:not(:disabled),.homework-activity-choice[aria-pressed=true],.homework-resource-choice[aria-pressed=true]{border-color:color-mix(in srgb,var(--homework-context-accent) 56%,var(--line));background:var(--homework-context-soft)}.homework-activity-choice>strong,.homework-resource-choice>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:13px;text-align:start;white-space:nowrap}.homework-choice-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:7px;background:color-mix(in srgb,var(--homework-context-accent) 12%,var(--surface-input));color:var(--homework-context-accent)}.homework-activity-choice>svg,.homework-resource-choice>svg:last-child{color:var(--homework-context-accent)}.homework-activity-resources{display:grid;gap:5px;margin-inline-start:14px}.homework-resource-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:5px}.homework-resource-choice{min-height:44px;grid-template-columns:18px minmax(0,1fr) 15px;color:var(--muted)}.homework-resource-choice:disabled{cursor:default;opacity:.52}.homework-resource-row>a{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--radius-control);color:var(--app-action-text)}.homework-share-compose{padding:0}.homework-recipient-field,.homework-message-field{display:grid;gap:7px;color:var(--text);font-size:12px;font-weight:var(--font-weight-label, 500)}.homework-message-field{margin-top:12px}.homework-message-shell{position:relative;display:block}.homework-message-field textarea{width:100%;min-height:clamp(390px,50vh,560px);padding:14px;font:inherit;font-size:14px;line-height:1.55;font-weight:400;white-space:pre-wrap;overflow-wrap:break-word;text-align:start;border:1px solid var(--teach-green-mid);border-radius:var(--radius-control);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--teach-green-mid) 45%,transparent)}.homework-message-field textarea{resize:none;overflow:hidden;background:var(--surface-input);color:var(--text);caret-color:var(--text);-webkit-text-fill-color:currentColor}.homework-message-field textarea::selection{background:color-mix(in srgb,var(--mgmt-blue) 30%,transparent)}.homework-recipient-field small,.homework-message-field small{color:var(--muted);font-weight:400;line-height:1.4}.learning-notebook-homework-history{display:grid;gap:8px;margin:16px 0;border:1px solid var(--line);border-radius:var(--radius-panel);padding:14px;background:var(--surface-card)}.learning-notebook-homework-history>header,.learning-notebook-homework-history summary{display:flex;align-items:center;justify-content:space-between;gap:12px}.learning-notebook-homework-history h4{margin:0}.learning-notebook-homework-history details{border-top:1px solid var(--line);padding-top:8px}.learning-notebook-homework-history summary{cursor:pointer}.learning-notebook-homework-history summary>span{display:grid;gap:2px}.learning-notebook-homework-history summary small,.learning-notebook-homework-history time{color:var(--muted);font-size:12px}.learning-notebook-homework-history details>p{white-space:pre-wrap}.homework-share-warning{margin:10px 0 0;border-radius:var(--radius-control);padding:9px 10px;background:color-mix(in srgb,var(--rose) 12%,transparent);color:var(--text);font-size:12px;line-height:1.4}.homework-share-footer{border-top:1px solid var(--line);background:var(--surface-panel)}.homework-share-footer>span,.homework-share-footer>div{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.homework-share-footer>span{color:var(--muted);font-size:12px}.lesson-message-lesson-field{display:grid;gap:6px;margin-bottom:14px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.lesson-message-block-list{align-content:start}.lesson-message-topic{display:grid;gap:6px}.lesson-message-topic+.lesson-message-topic{margin-top:4px;border-top:1px solid var(--line);padding-top:12px}.lesson-message-topic>.homework-activity-choice:disabled{cursor:default;opacity:.48}.lesson-message-attachment-item{min-width:0;display:grid;gap:3px}.lesson-message-attachment-item>small{margin-inline:8px 44px;color:var(--muted);font-size:11px;font-weight:400}.lesson-message-attachment-item>.lesson-message-attachment-error{color:var(--danger-text, var(--rose))}.lesson-message-summary-choice{grid-template-columns:28px minmax(0,1fr) 16px}.lesson-message-summary-choice>span:nth-child(2){min-width:0;display:grid;gap:2px;text-align:start}.lesson-message-summary-choice>span:nth-child(2) strong,.lesson-message-summary-choice>span:nth-child(2) small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-message-summary-choice>span:nth-child(2) strong{font-size:13px}.lesson-message-summary-choice>span:nth-child(2) small{color:var(--muted);font-size:11px;font-weight:400}.lesson-message-summary-choice:disabled{cursor:default;opacity:.48}.lesson-message-recipient-grid{display:grid;grid-template-columns:minmax(150px,.6fr) minmax(260px,1.4fr);gap:10px;align-items:start}.lesson-message-copy{min-height:44px;display:inline-flex;align-items:center;gap:7px}.homework-open-whatsapp{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:var(--radius-control);padding:0 16px;background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));font-weight:var(--font-weight-label, 500)}.homework-open-whatsapp:disabled{opacity:.5;cursor:not-allowed}@media(max-width:900px){body[data-app-layout-mode=phone] .teaching-modal-backdrop.homework-share-backdrop,.teaching-modal-backdrop.homework-share-backdrop{padding:0}.homework-share-dialog{width:100vw;height:100dvh;max-height:none;border:0;border-radius:0}.homework-share-header,.homework-share-footer{padding:12px 16px}.homework-share-header h2{font-size:18px}.homework-share-body{grid-template-columns:minmax(0,1fr);gap:22px;padding:16px}.homework-message-field textarea{min-height:220px}.homework-resource-choice{min-height:44px}.lesson-message-recipient-grid{grid-template-columns:minmax(0,1fr)}.lesson-message-studio .homework-share-footer>span{display:none}.lesson-message-studio .homework-share-footer>div{width:100%}.lesson-message-studio .homework-open-whatsapp{flex:1}}.teaching-modal-backdrop.content-share-backdrop{z-index:calc(var(--z-dialog, 1000) + 8)}.content-share-dialog{width:min(920px,calc(100vw - 32px));box-sizing:border-box;max-height:min(760px,calc(100vh - 32px));overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius-sheet, 20px);background:var(--surface-panel-strong);box-shadow:var(--shadow-dialog, 0 4px 8px rgba(20, 45, 34, .22))}.content-share-header,.content-share-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:20px 24px}.content-share-header{border-bottom:1px solid var(--line)}.content-share-header h2,.content-share-links h3{margin:0}.content-share-header h2{min-width:0;font-size:clamp(17px,2vw,21px);line-height:1.25;white-space:nowrap}.content-share-header-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.content-share-close,.content-share-contact-trigger{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text)}.content-share-contact-trigger{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.content-share-body{min-height:0;overflow-y:auto;display:grid;grid-template-columns:minmax(280px,.88fr) minmax(360px,1.12fr);gap:20px;padding:24px}.content-share-links,.content-share-contact{min-width:0;border:1px solid var(--line);border-radius:var(--radius-panel);padding:18px;background:var(--surface-card)}.content-share-links h3{display:flex;align-items:center;gap:8px;font-size:15px}.content-share-links ul{display:grid;gap:8px;margin:14px 0 0;padding:0;list-style:none}.content-share-links li{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;border:1px solid var(--line-soft, var(--line));border-radius:var(--radius-control);padding:10px;background:var(--surface-input)}.content-share-links li>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content-share-activity-summary{margin-top:14px}.content-share-activity-summary p{display:-webkit-box;margin:6px 0 0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--muted);overflow-wrap:anywhere;line-height:1.45}.content-share-status,.content-share-expiry,.content-share-warning{margin:14px 0 0;font-size:12px;line-height:1.45}.content-share-status{display:flex;align-items:center;gap:8px;color:var(--muted)}.content-share-warning{border-radius:var(--radius-control);padding:9px 10px;background:color-mix(in srgb,var(--rose) 12%,transparent);color:var(--text)}.content-share-contact,.content-share-contact>label,.content-share-message{display:grid;gap:8px}.content-share-contact>label>span{font-size:12px;font-weight:var(--font-weight-label, 500)}.content-share-message{margin-top:14px}.content-share-message textarea{width:100%;min-height:140px;overflow:hidden;resize:none;border:1px solid var(--teach-green-mid);border-radius:var(--radius-control);padding:12px;background:var(--surface-input);color:var(--text);font:inherit;font-size:14px;line-height:1.5}.content-share-message textarea:disabled{opacity:.65}.content-share-message small{color:var(--muted);font-weight:400}.content-share-footer{justify-content:flex-end;border-top:1px solid var(--line);background:var(--surface-panel)}.content-share-footer>span,.content-share-footer-actions,.content-share-handoff-actions{display:flex;align-items:center;gap:8px}.content-share-footer>span{color:var(--muted);font-size:12px}.content-share-footer-actions{flex-wrap:wrap}.content-share-handoff-actions{gap:8px}.content-share-open{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:var(--radius-control);padding:0 16px;background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));font-weight:var(--font-weight-label, 500)}.content-share-open:disabled{opacity:.5;cursor:not-allowed}@media(max-width:900px){.content-share-body{grid-template-columns:minmax(0,1fr)}.content-share-message textarea{min-height:140px}}@media(max-width:560px){.content-share-dialog{width:100%;max-width:100%;max-height:calc(100svh - 8px)}.content-share-header,.content-share-footer{padding:10px 12px}.content-share-header{flex-wrap:nowrap;gap:10px}.content-share-header{padding:10px 12px}.content-share-header h2{font-size:17px}.content-share-close,.content-share-contact-trigger{width:36px;height:36px;flex-basis:36px}.content-share-body{overflow-x:hidden;gap:12px;padding:12px}.content-share-links,.content-share-contact{border:0;padding:0;background:transparent}.content-share-links ul{margin-top:8px}.content-share-links li{padding:8px}.content-share-message{margin-top:8px}.content-share-footer-actions{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px}.content-share-footer-actions>.teaching-quiet-button{width:100%;min-width:0}.content-share-handoff-actions{width:44px;min-width:44px}.content-share-open{width:44px;min-width:44px;padding:0}}.teaching-homework-ready>header,.teaching-homework-student-row,.teaching-last-lesson-card,.teaching-last-lesson-card>header,.teaching-last-lesson-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.teaching-homework-ready h3,.teaching-last-lesson-card h3,.teaching-homework-ready p,.teaching-last-lesson-card p{margin:0}.teaching-homework-ready>header p,.teaching-last-lesson-card header p{margin-top:4px;color:var(--muted);font-size:12px}.teaching-last-lesson-card{align-items:flex-end;border:1px solid var(--line);border-radius:var(--radius-panel);padding:16px;background:var(--surface-card)}.teaching-last-lesson-card>div:first-child{min-width:0;display:grid;gap:10px}.student-identity-header .student-context-link{flex:0 0 auto;margin:0}.teaching-empty-action{color:var(--text)}.teaching-detail-panel>.teaching-lesson-header{align-items:center;gap:12px;padding:8px 12px}.teaching-lesson-identity{gap:2px 8px}.teaching-lesson-title-row{gap:6px}.teaching-lesson-student-title{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.teaching-lesson-student-title .teaching-lesson-student-chip{min-height:30px;display:inline-flex;align-items:center;gap:5px;border:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 58%,#ffffff);border-radius:8px;padding:4px 8px;background:color-mix(in srgb,var(--student-color, #0a84ff) 32%,#ffffff);color:#172033;font-size:14px;line-height:1}.teaching-lesson-student-chip .student-color-dot{width:7px;height:7px;border-radius:50%;background:var(--student-color, #0a84ff)}.teaching-planning-ready-button.active{border-color:#239147;background:#239147;color:#fff;box-shadow:0 0 0 3px #2391471f}.teaching-icon-delete,.teacher-diary-delete,.teaching-danger-soft,.teaching-delete-small{border-color:#efb7bf!important;background:#fff1f3!important;color:#b42336!important}.teaching-modal-done{min-width:72px;min-height:40px;border:1px solid var(--action-control-border, var(--teach-green));border-radius:8px;padding:0 14px;background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));font-weight:var(--font-weight-label, 500);cursor:pointer}.teaching-next-lesson-modal{width:min(860px,calc(100vw - 32px));height:min(720px,calc(100dvh - 32px));max-height:min(820px,calc(100dvh - 32px));display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sheet, 20px);background:var(--surface-panel-strong, #ffffff);color:var(--text);box-shadow:var(--shadow-dialog, 0 4px 8px rgba(23, 42, 56, .22));text-align:start}.teaching-next-lesson-modal>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line)}.teaching-next-lesson-modal h2,.teaching-next-lesson-modal p{margin:0}.teaching-next-lesson-modal h2{color:var(--text);font-size:22px;line-height:1.2}.teaching-next-lesson-choice-modal{width:min(520px,calc(100vw - 32px));height:auto;grid-template-rows:auto auto}.teaching-next-lesson-choice-content{display:grid;gap:16px;padding:16px 20px 20px}.teaching-next-lesson-choice-content>p{color:var(--muted);font-size:14px;line-height:1.5}.teaching-next-lesson-student-picker{display:grid;gap:8px;border-block:1px solid var(--line);padding-block:12px}.teaching-next-lesson-student-picker>strong{color:var(--text);font-size:13px}.teaching-next-lesson-student-picker .teaching-upcoming-students button{min-height:38px;padding-inline:11px;cursor:pointer}.teaching-next-lesson-student-picker .teaching-upcoming-students button.selected{border-color:color-mix(in srgb,var(--student-color, #0a84ff) 58%,var(--line));background:color-mix(in srgb,var(--student-color, #0a84ff) 24%,var(--surface-card))}.teaching-next-lesson-student-picker .teaching-upcoming-students button svg{color:color-mix(in srgb,var(--student-color, #0a84ff) 74%,var(--text))}.teaching-next-lesson-choice-actions{display:grid;gap:12px}.teaching-next-lesson-choice-action{min-width:0;min-height:72px;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:var(--radius-control);padding:12px;background:var(--surface-card);color:var(--text);text-align:start;cursor:pointer}.teaching-next-lesson-choice-action:not(:disabled):hover{border-color:var(--teach-green);background:var(--teach-green-soft)}.teaching-next-lesson-choice-action:disabled{cursor:not-allowed;opacity:.5}.teaching-next-lesson-choice-action>span:nth-child(2){min-width:0;display:grid;gap:4px}.teaching-next-lesson-choice-action strong{font-size:14px;font-weight:var(--font-weight-selected, 600)}.teaching-next-lesson-choice-action small{color:var(--muted);font-size:12px;line-height:1.4}.teaching-next-lesson-choice-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teaching-next-lesson-modal-content{overflow-y:auto;padding:16px 20px 20px}.teaching-library-detail-modal.teaching-student-activity-choice-modal{width:min(520px,calc(100vw - 32px));height:auto;max-height:calc(100dvh - 32px);grid-template-rows:auto minmax(0,1fr)}.teaching-student-activity-choice-modal .teaching-next-lesson-choice-content{align-content:start;overflow-y:auto}.teaching-library-detail-modal.teaching-student-activity-create-modal{width:min(920px,calc(100vw - 32px))}.teaching-student-activity-create-modal .teaching-simple-activity-composer{margin-bottom:0;padding:0;border:0;background:transparent}.teaching-student-activity-create-modal .teaching-new-block-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--line)}.teaching-student-activity-create-modal .teaching-new-block-resources,.teaching-student-activity-create-modal .teaching-new-block-actions{align-items:center}.teaching-student-activity-create-modal .teaching-resource-attach-icon{width:44px;min-width:44px;height:44px;min-height:44px}.teaching-student-activity-create-modal .teaching-primary-action{min-height:44px;padding-inline:18px}@media(max-width:720px){.teaching-library-detail-modal.teaching-student-activity-create-modal{width:calc(100vw - 20px);height:calc(100dvh - 20px);max-height:calc(100dvh - 20px)}body[data-app-layout-mode=phone] .teaching-modal-backdrop.teaching-student-activity-choice-backdrop{place-items:center;padding:16px;background:#0f172a6b}body[data-app-layout-mode=phone] .teaching-library-detail-modal.teaching-student-activity-choice-modal{width:min(520px,calc(100vw - 32px));height:auto;max-height:calc(100dvh - 32px);border:1px solid var(--line);border-radius:var(--radius-sheet, 20px)}.teaching-student-activity-create-modal>header,.teaching-student-activity-create-modal .teaching-next-lesson-modal-content{padding-inline:14px}body[data-app-layout-mode=phone] .teaching-student-activity-create-modal .teaching-new-block-editor{padding-bottom:0}body[data-app-layout-mode=phone] .teaching-student-activity-create-modal .teaching-new-block-actions{position:static;width:auto;margin:0;padding:0;border:0;background:transparent;box-shadow:none}}.teaching-resource-note-field textarea{min-height:84px}.teaching-resource-line-item{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px}.teaching-resource-line-item small{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);line-height:1.35}.teaching-library-attached-resources .teaching-resource-line{align-items:start}.teaching-library-attached-resources .teaching-resource-line>svg{margin-top:10px}.teaching-resource-line-entry{min-width:0;flex:1 1 320px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.teaching-resource-line-preview{width:36px;min-width:36px;height:36px;min-height:36px;display:inline-grid;place-items:center;border:1px solid color-mix(in srgb,var(--teach-green) 35%,var(--line));border-radius:var(--radius-control, 8px);padding:0;background:color-mix(in srgb,var(--teach-green) 8%,var(--surface-input));color:var(--teach-action-soft-text);cursor:pointer}.teaching-resource-line-preview:hover{border-color:color-mix(in srgb,var(--teach-green) 60%,var(--line));background:color-mix(in srgb,var(--teach-green) 15%,var(--surface-input))}.teaching-resource-line-preview:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 25%,transparent);outline-offset:2px}.teaching-resource-rows{min-width:0;flex:1 1 320px;display:grid;gap:7px}.teaching-resource-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:48px;border:1px solid var(--line);border-radius:var(--radius-control);padding:5px 6px;background:var(--surface-card)}.teaching-resource-row-identity{min-width:0;min-height:44px;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:12px;border:0;border-radius:var(--radius-control);padding:0 6px;background:transparent;color:inherit;font:inherit;text-align:start}.teaching-resource-row button.teaching-resource-row-identity{width:100%;min-width:0;min-height:44px;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;justify-content:normal;gap:12px;border:0;padding:0 6px;background:transparent;color:inherit;text-align:start;cursor:pointer}@media(hover:hover)and (pointer:fine){.teaching-resource-row button.teaching-resource-row-identity:hover{background:color-mix(in srgb,var(--teach-green) 7%,transparent)}}.teaching-resource-row button.teaching-resource-row-identity:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 25%,transparent);outline-offset:1px}.teaching-resource-row-file{width:32px;height:32px;display:inline-grid;place-items:center;border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teaching-resource-row-file svg{width:17px;height:17px}.teaching-resource-row-copy{min-width:0;display:grid;gap:2px}.teaching-resource-row-copy strong,.teaching-resource-row-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teaching-resource-row-copy strong{color:var(--text);font-size:14px;font-weight:var(--font-weight-label, 600)}.teaching-resource-row-copy small{color:var(--muted);font-size:12px}.teaching-resource-row-actions{display:flex;align-items:center;gap:4px}.teaching-resource-line-open{width:36px;min-width:36px;height:36px;min-height:36px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0;background:var(--surface-input);color:var(--text)}.teaching-activity-resource-section{grid-column:1 / -1;min-width:0;display:grid;gap:8px;margin-top:4px;padding-top:10px;border-top:1px solid var(--line)}.teaching-activity-resource-section>header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0}.teaching-activity-resource-section>header>span{color:var(--muted);font-size:11px;font-weight:var(--font-weight-label, 600);letter-spacing:.08em;text-transform:uppercase}.teaching-activity-resource-section>header>small{min-width:22px;min-height:22px;display:inline-grid;place-items:center;border-radius:999px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-size:11px;font-weight:var(--font-weight-label, 600)}.summary-status-segmented button.active.done{border-color:#239147;background:#239147;color:#fff;box-shadow:0 2px 8px #23914738}.summary-status-segmented button.active.unfinished{border-color:#d89400;background:#e6a400;color:#312000;box-shadow:0 2px 8px #d8940033}.summary-status-segmented button.active.no_progress{border-color:#c53b4e;background:#c94759;color:#fff;box-shadow:0 2px 8px #c53b4e33}.teacher-diary-composer>header,.teacher-diary-composer>footer,.teacher-diary-toolbar,.teacher-diary-reflection>header,.teacher-diary-entry>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.teacher-diary-composer h2,.teacher-diary-composer p,.teacher-diary-toolbar h2,.teacher-diary-reflection h3,.teacher-diary-reflection h4,.teacher-diary-reflection p,.teacher-diary-entry p{margin:0}.teacher-diary-composer>header>div{display:grid;gap:4px}.teacher-diary-composer h2,.teacher-diary-toolbar h2{font-size:22px;line-height:1.2}.teacher-diary-composer>header p{color:var(--muted);font-size:12px}.teacher-diary-composer>textarea,.teacher-diary-editor>textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-input, var(--surface-card));color:var(--text);font:inherit}.teacher-diary-composer>textarea::placeholder,.teacher-diary-editor>textarea::placeholder{color:color-mix(in srgb,var(--text) 64%,var(--surface-input))}.teacher-diary-composer>textarea:focus,.teacher-diary-editor>textarea:focus{border-color:var(--teach-green);outline:3px solid color-mix(in srgb,var(--teach-green) 20%,transparent);outline-offset:1px}.teacher-diary-suggestion button,.teacher-diary-entry-actions button,.teacher-diary-editor-footer button,.teacher-diary-sources button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0 10px;background:var(--surface-card);color:var(--text);font:inherit;font-size:12px;font-weight:var(--font-weight-label, 500);cursor:pointer}.teacher-diary-suggestion button:hover,.teacher-diary-entry-actions button:hover,.teacher-diary-editor-footer button:hover,.teacher-diary-sources button:hover{background:var(--surface-input)}.teacher-diary-suggestion button:focus-visible,.teacher-diary-entry-actions button:focus-visible,.teacher-diary-editor-footer button:focus-visible,.teacher-diary-sources button:focus-visible,.teacher-diary-reflect:focus-visible,.teacher-diary-linked-lesson:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 24%,transparent);outline-offset:2px}.teacher-diary-suggestion .teacher-diary-suggestion-dismiss,.teacher-diary-entry-actions button{width:36px;padding:0}.teacher-diary-composer-fields,.teacher-diary-save-area{display:flex;align-items:flex-end;gap:8px}.teacher-diary-save-feedback{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.teacher-diary-save-area .app-icon-button{width:40px;min-width:40px;height:40px;min-height:40px}.teacher-diary-notebook{overflow:hidden}.teacher-diary-entry{gap:10px;border-bottom:1px solid var(--line);transition:background-color .18s ease-out,box-shadow .18s ease-out}.teacher-diary-entry.is-highlighted{background:var(--teach-green-soft);box-shadow:inset 0 0 0 2px var(--teach-green-mid)}.teacher-diary-entry>header>div:first-child{display:flex;align-items:center;gap:7px}.teacher-diary-entry time,.teacher-diary-entry>header small{color:var(--muted);font-size:12px}.teacher-diary-entry>footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.teacher-diary-editor>textarea{min-height:104px}.teacher-diary-editor-footer,.teacher-diary-editor-footer>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.teacher-diary-editor-footer>div:first-child{flex:1 1 auto;justify-content:flex-start}.teacher-diary-editor-footer .app-dropdown{min-width:140px}@media(prefers-reduced-motion:reduce){.teacher-diary-entry{transition:none}}@media(max-width:820px){.teaching-detail-panel>.teaching-lesson-header{align-items:flex-start}.teaching-modal-done{min-height:44px}.teacher-diary-composer{padding:12px}.teacher-diary-composer>header{align-items:flex-start}.teacher-diary-composer>footer,.teacher-diary-composer-fields,.teacher-diary-save-area,.teacher-diary-toolbar,.teacher-diary-filters,.teacher-diary-editor-footer{align-items:stretch;flex-direction:column}.teacher-diary-composer-fields>div,.teacher-diary-composer-fields .app-dropdown,.teacher-diary-composer-fields .teacher-diary-target-field .app-dropdown,.teacher-diary-student-filter,.teacher-diary-editor-footer .app-dropdown,.teacher-diary-editor-footer .teacher-diary-editor-target{width:100%}.teacher-diary-save-area{gap:6px}.teacher-diary-save-area .app-icon-button,.teacher-diary-reflect{width:100%;min-height:44px}.teacher-diary-toolbar{min-height:0;padding:12px}.teacher-diary-entry{padding:12px 0}.teacher-diary-entry-actions button,.teacher-diary-suggestion button,.teacher-diary-editor-footer button,.teacher-diary-editor-footer .app-icon-button,.teacher-diary-linked-lesson{min-height:44px}.teacher-diary-entry-actions button,.teacher-diary-suggestion .teacher-diary-suggestion-dismiss,.teacher-diary-editor-footer .app-icon-button{width:44px}.teacher-diary-editor-footer>div{width:100%}.teacher-diary-editor-footer>div:first-child{align-items:stretch;flex-direction:column}.teacher-diary-editor-footer>div:last-child>button{flex:1 1 0}}.resource-taxonomy-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;min-width:0}.resource-taxonomy-field{display:grid;gap:4px;min-width:0}.resource-taxonomy-field>span{color:var(--muted);font-size:var(--font-sm, 12px);font-weight:var(--font-weight-label, 500)}.teaching-resource-page .teaching-library-filter-panel>.teaching-filter-buttons{grid-template-columns:minmax(0,3fr) minmax(140px,1fr);align-items:end}.teaching-filter-buttons.compact{grid-template-columns:minmax(0,3fr) minmax(130px,1fr);align-items:end}.teaching-resource-ai-link>label,.teaching-resource-title-field,.teaching-resource-tags-field{min-width:0;display:grid;gap:6px}.teaching-resource-ai-link>label>span,.teaching-resource-title-field>span,.teaching-resource-tags-field>span{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}@media(max-width:760px){.resource-taxonomy-fields{grid-template-columns:1fr}.teaching-resource-page .teaching-library-filter-panel>.teaching-filter-buttons,.teaching-blocks-page .teaching-library-filter-panel>.teaching-filter-buttons,.teaching-filter-buttons.compact,.teaching-resource-meta-grid{grid-template-columns:1fr}body[data-app-layout-mode=phone] .teaching-resource-page .teaching-library-filter-panel>.teaching-filter-buttons,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-library-filter-panel>.teaching-filter-buttons{grid-template-columns:1fr}.teaching-new-block-button{min-width:132px;white-space:nowrap}}.teaching-lesson-attendance-dialog{width:min(660px,calc(100vw - 28px));max-height:min(760px,calc(100dvh - 28px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sheet, 20px);background:var(--surface-panel-strong, #ffffff);box-shadow:var(--shadow-dialog, 0 4px 8px rgba(23, 42, 56, .22))}.teaching-lesson-attendance-dialog>header,.teaching-lesson-attendance-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px}.teaching-lesson-attendance-dialog>header{border-bottom:1px solid var(--line)}.teaching-lesson-attendance-dialog>header h2,.teaching-lesson-attendance-dialog>header p{margin:0}.teaching-lesson-attendance-dialog>header h2{font-size:20px}.teaching-lesson-attendance-dialog>header>button{width:36px;min-width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;padding:0;background:var(--surface-card);color:var(--muted);cursor:pointer}.teaching-lesson-attendance-dialog>:is(.teaching-attendance-summary,.attendance-panel){overflow-y:auto;margin:0;border:0;border-radius:0;padding:12px 16px;background:transparent}.teaching-lesson-attendance-dialog>footer{border-top:1px solid var(--line);color:var(--muted);font-size:12px}.open-lesson-workspace{min-width:0;display:grid;gap:10px;padding:0 12px 16px}.open-lesson-workspace button,.open-lesson-workspace textarea{font:inherit}@media(max-width:820px){.open-lesson-workspace{padding-inline:8px}}@media(max-width:560px){.teaching-lesson-attendance-dialog{width:100%;max-width:100%;max-height:100dvh;border-radius:0;box-sizing:border-box}.teaching-lesson-attendance-dialog>footer{align-items:stretch;flex-direction:column}.teaching-lesson-attendance-dialog>footer .teaching-primary-action{min-height:44px}}body[data-app-layout-mode=phone] .open-lesson-workspace{padding-inline:8px}body[data-app-layout-mode=phone] .teaching-lesson-attendance-dialog{width:min(100%,430px);max-width:100%;max-height:100dvh;border-radius:0;box-sizing:border-box}body[data-app-layout-mode=phone] .teaching-upcoming-card{grid-template-columns:minmax(0,1fr)}@media(max-width:700px){.teaching-upcoming-card{grid-template-columns:minmax(0,1fr)}.teaching-upcoming-card-heading,.teaching-upcoming-card>p,.teaching-upcoming-card-actions,.teaching-upcoming-card-editor{grid-column:1;grid-row:auto}.teaching-upcoming-card-actions,.teaching-upcoming-card-editor-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}.teaching-upcoming-card-actions>button,.teaching-upcoming-card-editor-actions>button{width:100%;min-height:44px}}.learning-notebook{gap:12px}.learning-notebook>.teaching-tabs{width:fit-content;max-width:100%}.learning-notebook-layout{min-width:0;min-height:620px;display:grid;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card);box-shadow:var(--shadow-soft)}.learning-notebook-index,.learning-notebook-notes{min-width:0;background:var(--surface-panel)}.learning-notebook-index{border-inline-end:1px solid var(--line)}.learning-notebook-index>header,.learning-notebook-notes>header{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line);padding:0 12px}.learning-notebook-index>header strong,.learning-notebook-notes>header strong{color:var(--text);font-size:13px}.learning-notebook-index>header span{color:var(--muted);font-size:13px;font-weight:var(--font-weight-label, 500)}.learning-notebook-index-list{max-height:720px;overflow-y:auto;overscroll-behavior:contain}.learning-notebook .learning-notebook-index-list>button{width:100%;min-height:82px;display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:9px 11px;background:transparent;color:var(--text);text-align:start}.learning-notebook .learning-notebook-index-list>button:hover{background:color-mix(in srgb,var(--teach-green-soft) 52%,transparent)}.learning-notebook .learning-notebook-index-list>button.active{background:var(--teach-green-soft);box-shadow:inset 5px 0 0 var(--teach-green),inset 0 0 0 1px var(--teach-green-mid)}.learning-notebook .learning-notebook-index-list>button.active.attendance-missing{background:color-mix(in srgb,#f4c95d 24%,var(--surface-card));box-shadow:inset 5px 0 #b7791f,inset 0 0 0 1px color-mix(in srgb,#b7791f 42%,var(--line))}.learning-notebook .learning-notebook-index-list>button:focus-visible{position:relative;z-index:1;outline:3px solid color-mix(in srgb,var(--teach-green) 24%,transparent);outline-offset:-3px}.learning-notebook-index-content time{display:block;margin-bottom:5px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.learning-notebook-index-content{min-width:0;align-self:start;padding-top:1px}.learning-notebook-index-list strong,.learning-notebook-index-list small{display:block}.learning-notebook-index-list strong{color:var(--text);font-size:12px;line-height:1.35;overflow-wrap:anywhere}.learning-notebook-index-list small{margin-top:4px;color:var(--muted);font-size:12px;line-height:1.3;overflow-wrap:anywhere}.learning-notebook .learning-notebook-index-list>button.attendance-recorded{box-shadow:inset 5px 0 color-mix(in srgb,var(--teach-green) 72%,var(--line))}.learning-notebook .learning-notebook-index-list>button.attendance-missing{background:color-mix(in srgb,#f4c95d 16%,transparent);box-shadow:inset 5px 0 color-mix(in srgb,#b7791f 68%,var(--line))}.learning-notebook-document{min-width:0;padding:18px 20px;background:var(--surface-card)}.learning-notebook-document>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.learning-notebook-attendance{min-width:172px;display:grid;gap:5px;border:1px solid var(--line);border-radius:var(--radius-panel);padding:8px;background:var(--surface-card)}.learning-notebook-attendance>span{color:var(--muted);font-size:11px;font-weight:var(--font-weight-label, 600);letter-spacing:.05em;text-transform:uppercase}.learning-notebook-attendance.is-recorded{border-color:color-mix(in srgb,var(--teach-green) 46%,var(--line));background:var(--teach-green-soft)}.learning-notebook-attendance.is-missing{border-color:color-mix(in srgb,var(--app-warning-text) 42%,var(--line));background:var(--app-warning-soft)}.learning-notebook-document>header p,.learning-notebook-document>header h4,.learning-notebook-document>header small{margin:0}.learning-notebook-document>header p{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.learning-notebook-document>header h4{margin-top:4px;color:var(--text);font-size:18px;line-height:1.25;text-wrap:balance}.learning-notebook-document>header small{display:block;margin-top:5px;color:var(--muted);font-size:12px}.learning-notebook-attendance{flex:0 0 auto;width:152px;max-width:100%}.learning-notebook-attendance-select,.learning-notebook-attendance-select .app-dropdown-trigger{width:100%}.learning-notebook-attendance-select .app-dropdown-trigger{min-height:38px;font-weight:var(--font-weight-label, 600);box-shadow:none}.learning-notebook-attendance.state-not-marked .app-dropdown-trigger{border-color:color-mix(in srgb,#b7791f 56%,var(--line));background:color-mix(in srgb,#f4c95d 30%,var(--surface-card));color:color-mix(in srgb,#9a680e 84%,var(--text))}.learning-notebook-attendance.state-present .app-dropdown-trigger{border-color:color-mix(in srgb,var(--teach-green) 48%,var(--line));background:color-mix(in srgb,var(--teach-green-soft) 84%,var(--surface-card));color:color-mix(in srgb,var(--teach-green) 82%,var(--text))}.learning-notebook-attendance.state-late_cancel .app-dropdown-trigger{border-color:var(--danger-line);background:var(--danger-soft);color:color-mix(in srgb,var(--rose) 82%,#72152a)}.learning-notebook-attendance.state-cancelled_no_charge .app-dropdown-trigger{border-color:color-mix(in srgb,var(--mgmt-blue) 38%,var(--line));background:color-mix(in srgb,var(--mgmt-blue-soft) 76%,var(--surface-card));color:color-mix(in srgb,var(--mgmt-blue) 80%,var(--text))}.learning-notebook .learning-notebook-edit-link{width:fit-content;min-height:30px;display:inline-flex;align-items:center;gap:5px;border:0;border-radius:var(--radius-control);padding:0 6px;background:transparent;color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-label, 500)}.learning-notebook .learning-notebook-edit-link:hover{background:var(--teach-green-soft)}.learning-notebook .learning-notebook-carry-forward>button{width:fit-content;min-height:30px;display:inline-flex;align-items:center;gap:5px;justify-self:end;border:0;border-radius:var(--radius-control);padding:0 7px;background:color-mix(in srgb,var(--surface-card) 60%,transparent);color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-label, 500)}.learning-notebook-notes{border-inline-start:1px solid var(--line)}.learning-notebook-notes>header>div{display:flex;align-items:center;gap:6px}.learning-notebook .learning-notebook-notes>header>button{min-height:30px;border:0;border-radius:var(--radius-control);padding:0 6px;background:transparent;color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-label, 500)}.learning-notebook-notes article{display:grid;gap:6px;border-bottom:1px solid var(--line);padding:12px}.learning-notebook-notes article.ongoing{background:color-mix(in srgb,#fff5cf 74%,var(--surface-panel))}.learning-notebook-notes article small{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.learning-notebook-notes article p,.learning-notebook-no-note{margin:0;color:var(--ink);font-size:12px;line-height:1.45;text-wrap:pretty}.learning-notebook .learning-notebook-add-note{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);font-size:12px;font-weight:var(--font-weight-label, 500)}.learning-notebook-notes-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start}.learning-notebook-ongoing-editor,.learning-notebook-lesson-notes{min-width:0;display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius-panel);padding:16px;background:var(--surface-card)}.learning-notebook-ongoing-editor>header,.learning-notebook-lesson-notes>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.learning-notebook-ongoing-editor h4,.learning-notebook-ongoing-editor p,.learning-notebook-lesson-notes h4,.learning-notebook-lesson-notes p{margin:0}.learning-notebook-ongoing-editor h4,.learning-notebook-lesson-notes h4{color:var(--text);font-size:15px}.learning-notebook-ongoing-editor header p,.learning-notebook-lesson-notes header p{margin-top:3px;color:var(--muted);font-size:12px}.learning-notebook-lesson-notes>header>strong{color:var(--teach-action-soft-text);font-size:15px}.learning-notebook-lesson-notes>article{min-width:0;display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:start;gap:12px;border-top:1px solid var(--line);padding-top:12px}.learning-notebook-lesson-notes time{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.learning-notebook-lesson-notes article strong{color:var(--text);font-size:12px}.learning-notebook-lesson-notes article p{margin-top:4px;color:var(--ink);font-size:12px;line-height:1.45}.learning-notebook-lesson-notes article button{min-height:34px}.learning-notebook .learning-notebook-show-notes{min-height:36px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-panel);color:var(--text);font-size:12px;font-weight:var(--font-weight-label, 500)}@media(max-width:860px){.learning-notebook-layout,.learning-notebook-notes-workspace{grid-template-columns:minmax(0,1fr)}.learning-notebook-layout{overflow:visible}.learning-notebook-index,.learning-notebook-notes{border:0}.learning-notebook-index{border-bottom:1px solid var(--line)}.learning-notebook-index-list{display:flex;overflow-x:auto;overflow-y:hidden;padding:8px}.learning-notebook .learning-notebook-index-list>button{width:190px;min-width:190px;min-height:72px;border:1px solid var(--line);border-radius:var(--radius-control)}.learning-notebook .learning-notebook-index-list>button+button{margin-inline-start:8px}.learning-notebook-document{padding:16px}.learning-notebook-notes{border-top:1px solid var(--line)}}@media(max-width:620px){.learning-notebook>.teaching-tabs{width:100%}.learning-notebook>.teaching-tabs button{min-height:44px}.learning-notebook-document>header,.learning-notebook-ongoing-editor>header,.learning-notebook-lesson-notes>header{align-items:flex-start;flex-direction:column}.learning-notebook-attendance{width:100%}.learning-notebook-lesson-notes>article{grid-template-columns:minmax(0,1fr)}.learning-notebook-lesson-notes article button{width:100%;min-height:44px}.learning-notebook .learning-notebook-show-notes{min-height:44px}}@media(min-width:861px){.learning-notebook:not(.learning-notebook-notes-only) .learning-notebook-notes-workspace{gap:15px}.learning-notebook:not(.learning-notebook-notes-only) .learning-notebook-ongoing-editor{min-height:413px}.learning-notebook:not(.learning-notebook-notes-only) .learning-notebook-lesson-notes{min-height:741px}}body[data-app-layout-mode=phone] .learning-notebook>.teaching-tabs,body[data-app-layout-mode=phone] .learning-notebook-layout{width:100%}body[data-app-layout-mode=phone] .learning-notebook-layout,body[data-app-layout-mode=phone] .learning-notebook-notes-workspace{grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .learning-notebook-layout{min-height:0;overflow:visible}body[data-app-layout-mode=phone] .learning-notebook-index,body[data-app-layout-mode=phone] .learning-notebook-notes{border:0}body[data-app-layout-mode=phone] .learning-notebook-index{border-bottom:1px solid var(--line)}body[data-app-layout-mode=phone] .learning-notebook-index-list{display:flex;overflow-x:auto;overflow-y:hidden;padding:8px}body[data-app-layout-mode=phone] .learning-notebook .learning-notebook-index-list>button{width:176px;min-width:176px;min-height:76px;border:1px solid var(--line);border-radius:var(--radius-control)}body[data-app-layout-mode=phone] .learning-notebook .learning-notebook-index-list>button+button{margin-inline-start:8px}body[data-app-layout-mode=phone] .learning-notebook-document{padding:14px}body[data-app-layout-mode=phone] .learning-notebook-document>header,body[data-app-layout-mode=phone] .learning-notebook-ongoing-editor>header,body[data-app-layout-mode=phone] .learning-notebook-lesson-notes>header{align-items:flex-start;flex-direction:column}body[data-app-layout-mode=phone] .learning-notebook-attendance{width:100%}body[data-app-layout-mode=phone] .learning-notebook-document-actions button,body[data-app-layout-mode=phone] .learning-notebook-ongoing-editor>button,body[data-app-layout-mode=phone] .learning-notebook-lesson-notes article button,body[data-app-layout-mode=phone] .learning-notebook .learning-notebook-show-notes,body[data-app-layout-mode=phone] .learning-notebook>.teaching-tabs button{width:100%;min-height:44px}body[data-app-layout-mode=phone] .learning-notebook-notes{border-top:1px solid var(--line)}body[data-app-layout-mode=phone] .learning-notebook-lesson-notes>article{grid-template-columns:minmax(0,1fr)}.teaching-module .teaching-student-files-layout{grid-template-columns:minmax(144px,168px) minmax(0,1fr);gap:8px}.teaching-student-selector.teaching-list-panel{padding:10px}.teaching-module .teaching-student-selector .teaching-student-card{min-height:44px;justify-content:flex-start;padding:7px 8px;text-align:start}.teaching-module .teaching-student-selector .teaching-student-card>span{width:100%;min-width:0;justify-items:start;text-align:start}.teaching-module .teaching-student-selector .teaching-student-card strong,.teaching-module .teaching-student-selector .teaching-student-card small{overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap}.teaching-student-file-detail>.student-identity-header{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 10px;text-align:start}.student-identity-line{min-width:0;display:flex;align-items:baseline;gap:6px}.student-identity-line h2,.student-identity-line p{margin:0}.teaching-student-header .student-identity-line h2{overflow:hidden;font-size:1rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.student-identity-line>span,.student-identity-line p{flex:0 0 auto;color:color-mix(in srgb,var(--text) 72%,var(--student-color, #0a84ff));font-size:.82rem}.teaching-student-file-detail .student-context-link{min-height:34px;flex:0 0 auto;margin-inline-start:auto;padding-inline:9px}.learning-notebook .learning-notebook-edit-icon,.learning-notebook .learning-notebook-add-note{width:36px;min-width:36px;height:36px;min-height:36px;margin:0;padding:0;border:1px solid var(--line);background:var(--surface-card);color:var(--teach-action-soft-text)}.learning-notebook .learning-notebook-edit-icon{justify-self:end}.learning-notebook .learning-notebook-add-note{margin:12px;margin-inline-start:auto}.learning-notebook .learning-notebook-save-note{width:40px;min-width:40px;height:40px;min-height:40px;justify-self:end;padding:0;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.learning-notebook .learning-notebook-cancel-note{width:40px;min-width:40px;height:40px;min-height:40px;padding:0}.learning-notebook .learning-notebook-save-note.saved{border-color:color-mix(in srgb,var(--teach-green) 48%,var(--line));background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.learning-notebook .learning-notebook-save-note.dirty{border-color:color-mix(in srgb,#d49a00 56%,var(--line));background:#fff2bd;color:#765400}.learning-notebook .learning-notebook-save-note:disabled{cursor:default;opacity:1}.learning-notebook-lesson-notes>article.is-snapshot{grid-template-columns:82px minmax(0,1fr)}.learning-notebook-lesson-notes .learning-notebook-edit-icon{align-self:center}.learning-notebook-editor-backdrop{z-index:180;padding:18px}.learning-notebook-editor-dialog{width:min(720px,calc(100vw - 36px));max-height:calc(100dvh - 36px);display:grid;grid-template-rows:auto auto minmax(260px,1fr) auto;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sheet, 20px);background:var(--surface-card);box-shadow:var(--shadow-dialog)}.learning-notebook-editor-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:18px 20px 14px}.learning-notebook-editor-dialog>header h2,.learning-notebook-editor-dialog>header p,.learning-notebook-editor-dialog>header small{margin:0}.learning-notebook-editor-dialog>header h2{margin-top:3px;color:var(--text);font-size:1.15rem}.learning-notebook-editor-dialog>header small{display:block;margin-top:5px;color:var(--muted);font-size:.78rem}.learning-notebook-editor-dialog>label{padding:16px 20px 8px;color:var(--text);font-size:.82rem;font-weight:var(--font-weight-label, 500)}.learning-notebook-editor-dialog>textarea{width:auto;min-height:320px;margin:0 20px 18px;border-radius:var(--radius-control, 8px);resize:vertical;background:var(--surface-input);color:var(--text);font-family:inherit;font-size:var(--font-body, 15px);font-weight:var(--font-weight-body, 400);line-height:1.5}.learning-notebook-editor-dialog>footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);padding:12px 20px;background:var(--surface-panel)}.learning-notebook-editor-dialog>footer .learning-notebook-editor-save{width:40px;min-width:40px;height:40px;min-height:40px;border-color:var(--action-control-border, var(--teach-action-solid, var(--teach-green)));background:var(--action-control-bg, var(--teach-action-solid, var(--teach-green)));color:var(--action-control-text, var(--teach-action-solid-text, #fff))}.learning-notebook-editor-dialog>footer .learning-notebook-editor-save:disabled{cursor:not-allowed;opacity:.55}@media(max-width:980px){.teaching-module .teaching-student-files-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:620px){.learning-notebook .learning-notebook-edit-icon,.learning-notebook .learning-notebook-add-note,.learning-notebook .learning-notebook-save-note,.learning-notebook-lesson-notes article .learning-notebook-edit-icon{width:44px;min-width:44px;height:44px;min-height:44px}.learning-notebook-lesson-notes>article.is-snapshot{grid-template-columns:minmax(0,1fr)}.learning-notebook-editor-backdrop{align-items:end;padding:0}.learning-notebook-editor-dialog{width:100%;max-height:92dvh;border-radius:var(--radius-sheet, 20px) var(--radius-sheet, 20px) 0 0;box-shadow:var(--shadow-sheet)}.learning-notebook-editor-dialog>footer .learning-notebook-editor-save{width:44px;min-width:44px;height:44px;min-height:44px}.learning-notebook-editor-dialog>textarea{min-height:42dvh}}body[data-app-layout-mode=phone] .teaching-student-file-detail>.student-identity-header{min-height:46px;display:flex;align-items:center;justify-items:initial;justify-content:space-between}body[data-app-layout-mode=phone] .learning-notebook .learning-notebook-edit-icon,body[data-app-layout-mode=phone] .learning-notebook .learning-notebook-add-note,body[data-app-layout-mode=phone] .learning-notebook .learning-notebook-save-note,body[data-app-layout-mode=phone] .learning-notebook-lesson-notes article .learning-notebook-edit-icon{width:44px;min-width:44px;height:44px;min-height:44px}.learning-notebook-layout{grid-template-columns:minmax(190px,.72fr) minmax(0,2.3fr)}.learning-notebook-activity-review{display:grid;gap:12px;padding-top:16px}.learning-notebook-general-note,.learning-notebook-activity-review-item{min-width:0;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel)}.learning-notebook-general-note{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px}.learning-notebook-general-note>div,.learning-notebook-activity-note>div{min-width:0;display:grid;gap:4px}.learning-notebook-general-note small,.learning-notebook-activity-review-item small,.learning-notebook-activity-note small{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.learning-notebook-general-note p,.learning-notebook-activity-review-item p{margin:0;color:var(--text);font-size:13px;line-height:1.55;white-space:pre-wrap}.learning-notebook-activity-review-item{overflow:hidden}.learning-notebook-activity-review-item>header{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface-muted-band, var(--surface-card));transition:background-color .18s ease,border-color .18s ease}.learning-notebook-activity-review-item>header>div{min-width:0;display:grid;gap:3px}.learning-notebook-activity-review-item>header strong{overflow-wrap:anywhere;color:var(--text);font-size:14px}.learning-notebook-activity-description{padding:12px 12px 0;color:var(--muted)!important}.learning-notebook-activity-note{min-height:62px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:12px;border-top:1px solid var(--line);padding:10px 12px;background:var(--surface-card)}.learning-notebook-activity-note .learning-notebook-edit-icon,.learning-notebook-general-note .learning-notebook-edit-icon{width:40px;min-width:40px;height:40px;min-height:40px}@media(max-width:860px){.learning-notebook-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:620px){.learning-notebook-activity-review-item>header{align-items:stretch;flex-direction:column}.learning-notebook-activity-note .learning-notebook-edit-icon,.learning-notebook-general-note .learning-notebook-edit-icon{width:44px;min-width:44px;height:44px;min-height:44px}}body[data-app-layout-mode=phone] .learning-notebook-layout{grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .learning-notebook-activity-review-item>header{align-items:stretch;flex-direction:column}.teaching-lesson-activity-composer{margin-top:0}.teaching-plan-suggestions .teaching-upcoming-card .app-icon-button{width:40px;min-width:40px;height:40px;min-height:40px}.teaching-block-picker-modal{width:min(1380px,calc(100vw - 48px));grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto;border-color:var(--line);background:var(--surface-panel-strong, var(--surface-panel))}.teaching-block-picker-filters{grid-column:1;overflow:visible;padding:10px 12px}.teaching-block-picker-filters,.teaching-block-picker-row{border-color:var(--line);background:var(--surface-card)}.teaching-block-picker-filter-content{grid-template-columns:minmax(240px,1.15fr) minmax(0,2.4fr) auto;align-items:end}.teaching-block-picker-multi-filters{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.teaching-block-picker-multi-filters>label{min-width:0;display:grid;gap:5px}.teaching-block-picker-multi-filters>label>span{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.teaching-block-picker-multi-filters .app-dropdown{width:100%}.teaching-block-picker-filters .teaching-clear-filters{min-height:36px;align-self:end}.teaching-block-picker-copy{min-width:0;display:grid;align-content:start;gap:3px}.teaching-block-picker-kind{width:fit-content;border-radius:999px;padding:3px 8px;background:color-mix(in srgb,var(--teach-blue-soft, #e8f5ff) 86%,var(--surface-card));color:var(--teach-blue, #2b6f9d);font-size:11px;font-weight:var(--font-weight-label, 600);letter-spacing:.04em;text-transform:uppercase}.teaching-block-picker-copy>p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.teaching-block-picker-copy>.teaching-resource-rows{margin-top:8px}.teaching-block-picker-copy .teaching-resource-row{background:color-mix(in srgb,var(--surface-card) 82%,var(--teach-green-soft))}.teaching-block-picker-action .app-icon-button{width:40px;min-width:40px;height:40px;min-height:40px;padding:0}.teaching-block-picker-action{display:flex;align-items:center;justify-content:flex-end;gap:6px}.teaching-block-picker-preview-footer .teaching-primary-action{min-width:148px}.teaching-block-picker-footer{grid-column:1 / -1;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:12px}.teaching-block-picker-footer>span{color:var(--muted);font-size:12px}.teaching-block-picker-footer .teaching-modal-done{min-width:96px;min-height:40px;padding-inline:18px}@media(max-width:700px){.teaching-block-picker-modal{grid-template-rows:auto auto minmax(0,1fr) auto}.teaching-block-picker-filter-content,.teaching-block-picker-multi-filters{grid-template-columns:minmax(0,1fr)}.teaching-block-picker-row{gap:8px}.teaching-block-picker-row .teaching-block-picker-action{display:flex;align-items:center;justify-content:flex-end}.teaching-block-picker-copy>p{-webkit-line-clamp:3}.teaching-block-picker-copy .teaching-resource-row{grid-template-columns:minmax(0,1fr) auto}.teaching-block-picker-copy .teaching-resource-row-actions .app-icon-button{width:44px;min-width:44px;height:44px;min-height:44px}.teaching-block-picker-preview-footer .teaching-primary-action{min-width:0}.teaching-block-picker-row .teaching-block-picker-action .app-icon-button{width:44px;min-width:44px;height:44px;min-height:44px}.teaching-block-picker-footer .teaching-modal-done{min-height:44px}.teaching-suggestion-source-tabs{width:100%}}body[data-app-layout-mode=phone] .teaching-block-picker-modal{grid-template-rows:auto auto minmax(0,1fr) auto}body[data-app-layout-mode=phone] .teaching-block-picker-row .teaching-block-picker-action .app-icon-button{width:44px;min-width:44px;height:44px;min-height:44px}.teaching-module [hidden]{display:none!important}.teaching-modal-backdrop.teaching-target-backdrop{align-items:start}.teaching-resource-modal.teaching-target-modal{width:min(760px,100%);grid-template-rows:auto auto auto minmax(0,1fr) auto;background:var(--surface-panel-strong, var(--surface-panel))}.teaching-target-modal>.app-tabs{width:100%}.teaching-target-modal>.teaching-search-field{margin:0}.teaching-target-content{min-height:0;overflow:hidden}.teaching-target-content>.teaching-modal-list{max-height:100%}.teaching-target-group{display:grid;gap:8px}.teaching-target-group+.teaching-target-group,.teaching-target-group-heading:not(:first-child){margin-top:4px;padding-top:12px;border-top:1px solid var(--line)}.teaching-target-group-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:var(--text)}.teaching-target-group-heading>small{color:var(--muted);font-size:var(--font-caption, 12px)}.teaching-target-modal .teaching-lesson-pick-row.current{border-color:var(--teach-green-mid);background:color-mix(in srgb,var(--teach-green-soft) 72%,var(--surface-card))}.teaching-target-modal .teaching-lesson-pick-row>button,.teaching-target-student-actions>span>button,.teaching-target-empty>button{min-width:88px;border:1px solid var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}.teaching-target-modal button.added:disabled{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text);opacity:1}.teaching-target-student-list{align-content:start}.teaching-target-student-row{min-width:0;display:grid;grid-template-columns:minmax(130px,.72fr) minmax(0,1.4fr);gap:12px;align-items:center;border:1px solid color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 24%,var(--line));border-radius:var(--radius-control);padding:10px;background:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 7%,var(--surface-card))}.teaching-target-student-row>div:first-child{min-width:0}.teaching-target-student-row strong,.teaching-target-student-row small{display:block;overflow-wrap:anywhere}.teaching-target-student-row small{margin-top:3px;color:var(--muted)}.teaching-target-student-actions{min-width:0;display:grid;gap:6px}.teaching-target-student-actions>span{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;color:var(--text);font-size:var(--font-supporting, 13px);font-weight:var(--font-weight-label, 500)}.teaching-target-empty{display:grid;justify-items:start;gap:10px;border:1px dashed var(--line);border-radius:var(--radius-control);padding:14px;color:var(--muted)}.teaching-target-empty>p{margin:0}.teaching-target-footer{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--line)}.teaching-target-footer>small{max-width:46ch;color:var(--muted);font-size:var(--font-caption, 12px)}.teaching-target-footer>div{display:flex;justify-content:flex-end;gap:8px}.teaching-target-footer .teaching-modal-done{min-width:88px}.teaching-upcoming-card-heading>div{min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:7px}.teaching-upcoming-card.status-attached .teaching-upcoming-status{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teaching-upcoming-card.status-used .teaching-upcoming-status{border-color:color-mix(in srgb,var(--mgmt-blue) 42%,var(--line));background:color-mix(in srgb,var(--mgmt-blue) 10%,var(--surface-card));color:var(--text)}.teaching-upcoming-card.status-dismissed{opacity:.78}@media(max-width:700px){.teaching-resource-modal.teaching-target-modal{height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);grid-template-rows:auto auto auto minmax(0,1fr) auto;padding:12px}.teaching-target-student-row{grid-template-columns:minmax(0,1fr)}.teaching-target-modal .teaching-lesson-pick-row>button,.teaching-target-student-actions>span>button,.teaching-target-empty>button{min-height:var(--button-phone-h, 44px)}.teaching-target-footer{align-items:stretch;flex-direction:column;padding-bottom:env(safe-area-inset-bottom)}.teaching-target-footer>small{max-width:none}.teaching-target-footer>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.teaching-target-footer>div>button{width:100%;min-height:var(--button-phone-h, 44px)}}body[data-app-layout-mode=phone] .teaching-resource-modal.teaching-target-modal{height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);grid-template-rows:auto auto auto minmax(0,1fr) auto;padding:12px}body[data-app-layout-mode=phone] .teaching-target-student-row{grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .teaching-target-footer{align-items:stretch;flex-direction:column;padding-bottom:env(safe-area-inset-bottom)}body[data-app-layout-mode=phone] .teaching-target-footer>small{max-width:none}body[data-app-layout-mode=phone] .teaching-target-footer>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}body[data-app-layout-mode=phone] .teaching-target-footer>div>button{width:100%}body[data-app-layout-mode=phone] .teaching-target-modal .teaching-lesson-pick-row>button,body[data-app-layout-mode=phone] .teaching-target-student-actions>span>button,body[data-app-layout-mode=phone] .teaching-target-empty>button,body[data-app-layout-mode=phone] .teaching-target-footer>div>button{min-height:var(--button-phone-h, 44px)}body[data-app-layout-mode=phone] .teaching-simple-activity-composer{padding-bottom:14px}body[data-app-layout-mode=phone] .teaching-simple-activity-composer .teaching-new-block-actions{position:static;left:auto;right:auto;bottom:auto;z-index:auto;width:auto;margin:0;padding:0;border:0;background:transparent;box-shadow:none}.open-lesson-focus-workspace{padding:0}.open-lesson-activity-shell{display:grid;grid-template-columns:minmax(300px,340px) minmax(0,1fr);min-height:680px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-panel)}.open-lesson-activity-rail{display:flex;min-width:0;flex-direction:column;border-inline-end:1px solid var(--line);background:var(--surface-card)}.open-lesson-activity-rail>header{display:flex;align-items:center;justify-content:space-between;min-height:64px;padding:14px 18px;border-bottom:1px solid var(--line)}.open-lesson-activity-rail>header h2,.open-lesson-stage-header h2,.open-lesson-instruction-content h3,.open-lesson-activity-notes h3,.open-lesson-action-dialog h2{margin:0;color:var(--text)}.open-lesson-activity-rail>header h2{font-size:18px}.open-lesson-activity-rail>header>span,.open-lesson-activity-notes>header>div>span{display:inline-grid;min-width:28px;min-height:28px;place-items:center;border-radius:999px;border:1px solid var(--line);background:var(--surface-muted-band);color:var(--muted);font-size:13px;font-weight:var(--font-weight-label, 500)}.open-lesson-activity-list{display:grid;align-content:start;padding:12px;gap:10px}.open-lesson-activity-list>button{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;width:100%;min-height:76px;padding:12px 14px;gap:12px;border:1px solid var(--line);border-radius:var(--radius-card, 10px);background:var(--surface-card);color:var(--text);text-align:start}.open-lesson-activity-list>button:hover{border-color:var(--line);background:var(--teach-green-soft)}.open-lesson-activity-list>button.active{border-color:var(--teach-green-mid);background:var(--teach-green-soft);box-shadow:inset 3px 0 0 var(--teach-green)}html[dir=rtl] .open-lesson-activity-list>button.active{box-shadow:inset -3px 0 0 var(--teach-green)}.open-lesson-activity-list>button>span:first-child{display:grid;width:40px;height:40px;place-items:center;border:1px solid var(--line);border-radius:999px;background:var(--surface-card);color:var(--muted);font-weight:var(--font-weight-emphasis, 600)}.open-lesson-activity-list>button.active>span:first-child{border-color:var(--teach-green-mid);background:var(--surface-card);color:var(--teach-action-soft-text)}.open-lesson-activity-list>button>span:last-child{display:grid;min-width:0;gap:6px}.open-lesson-activity-list strong{display:-webkit-box;overflow:hidden;font-size:15px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-weight:var(--font-weight-label, 500)}.open-lesson-activity-list>button.active strong{font-weight:var(--font-weight-emphasis, 600)}.open-lesson-activity-list small{justify-self:start;padding:3px 7px;border-radius:999px;background:color-mix(in srgb,var(--teach-green) 10%,transparent);color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-label, 500)}.open-lesson-activity-stage{display:flex;min-width:0;flex-direction:column;padding:24px;background:var(--surface-panel)}.open-lesson-instruction-canvas{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-card)}.open-lesson-instruction-content{min-height:260px;padding:24px}.open-lesson-instruction-content h3{margin-bottom:18px;font-size:16px}.open-lesson-instruction-content>p{max-width:76ch;margin:0;color:var(--text);font-size:var(--font-body, 15px);line-height:var(--line-height-body, 1.5);white-space:pre-wrap}.teaching-upcoming-card .teaching-upcoming-status.source-ai{border-color:color-mix(in srgb,#7655d6 48%,var(--line));background:color-mix(in srgb,#7655d6 10%,var(--surface-card));color:#5840a5}.teaching-upcoming-card .teaching-upcoming-status.source-teacher{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}@media(max-width:820px){.open-lesson-focus-workspace{padding-top:8px}.open-lesson-activity-shell{display:block;min-height:0}.open-lesson-activity-rail{border-inline-end:0;border-bottom:1px solid var(--line)}.open-lesson-activity-rail>header{min-height:56px;padding:12px 14px}.open-lesson-activity-list{display:flex;overflow-x:auto;padding:8px 10px;scrollbar-width:none;scroll-snap-type:x proximity}.open-lesson-activity-list::-webkit-scrollbar{display:none}.open-lesson-activity-list>button{min-width:190px;min-height:62px;flex:0 0 auto;scroll-snap-align:start}.open-lesson-activity-list>button.active{box-shadow:inset 0 -3px 0 var(--teach-green)}.open-lesson-activity-stage{padding:18px 14px}.open-lesson-instruction-content{min-height:220px;padding:18px}}body[data-app-layout-mode=phone] .open-lesson-activity-shell{display:block;min-height:0}body[data-app-layout-mode=phone] .open-lesson-activity-rail{border-inline-end:0;border-bottom:1px solid var(--line)}body[data-app-layout-mode=phone] .open-lesson-activity-list{display:flex;overflow-x:auto;scrollbar-width:none}body[data-app-layout-mode=phone] .open-lesson-activity-list::-webkit-scrollbar{display:none}body[data-app-layout-mode=phone] .open-lesson-activity-list>button{min-width:190px;flex:0 0 auto}body[data-app-layout-mode=phone] .open-lesson-activity-stage{padding:18px 14px}.open-lesson-note-footer{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px 9px 14px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--teach-green-soft) 42%,var(--surface-input))}.open-lesson-note-footer>span{min-height:18px;color:var(--muted);font-size:13px}.open-lesson-note-save{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px}@media(max-width:820px){.open-lesson-note-footer{min-height:56px}}.teaching-current-plan .teaching-block-card>header>.teaching-card-icon.compact{width:auto;min-width:0;height:auto;min-height:0;overflow:visible}.teaching-current-plan .teaching-activity-order-control{display:inline-flex;align-items:center;gap:5px}.teaching-current-plan .teaching-activity-number{width:38px;min-width:38px;height:38px;min-height:38px;border-color:var(--mgmt-blue-mid);background:var(--mgmt-blue-soft);color:var(--app-action-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--surface-card) 52%,transparent)}.teaching-activity-order-buttons{display:grid;gap:2px}.teaching-current-plan .teaching-activity-order-buttons>button{width:24px;min-width:24px;height:18px;min-height:18px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--mgmt-blue) 62%,var(--line));border-radius:6px;padding:0;background:color-mix(in srgb,var(--mgmt-blue-soft) 72%,var(--surface-card));color:var(--app-action-text);cursor:pointer}.teaching-current-plan .teaching-activity-order-buttons>button:hover:not(:disabled){border-color:var(--mgmt-blue);background:var(--mgmt-blue-soft)}.teaching-current-plan .teaching-activity-order-buttons>button:focus-visible{outline:2px solid var(--app-action-text);outline-offset:1px}.teaching-current-plan .teaching-activity-order-buttons>button:disabled{opacity:.32;cursor:default}@media(max-width:700px){.teaching-current-plan .teaching-activity-order-buttons>button{width:28px;min-width:28px;height:21px;min-height:21px}}body .teaching-lessons-directory .teaching-lesson-student-names button{cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}@media(hover:hover){body .teaching-lessons-directory .teaching-lesson-student-names button:hover{border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 68%,var(--line));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 32%,var(--surface-card));color:color-mix(in srgb,var(--student-color, var(--teach-green)) 68%,var(--text));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--student-color, var(--teach-green)) 18%,transparent),0 2px 6px color-mix(in srgb,var(--student-color, var(--teach-green)) 18%,transparent);transform:translateY(-1px)}}body .teaching-lessons-directory .teaching-lesson-student-names button:focus-visible{border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 68%,var(--line));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 32%,var(--surface-card));color:color-mix(in srgb,var(--student-color, var(--teach-green)) 68%,var(--text));outline:2px solid color-mix(in srgb,var(--student-color, var(--teach-green)) 72%,var(--teach-green));outline-offset:2px}@media(min-width:821px){.open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-shell{grid-template-columns:260px minmax(0,1fr)}.open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-rail{align-items:stretch;padding:16px 12px}.open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list{width:100%;align-items:stretch;gap:8px}.open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button,.open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button:hover,.open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button.active,html[dir=rtl] .open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button.active{width:100%;min-width:0;height:auto;min-height:64px;grid-template-columns:34px minmax(0,1fr);justify-content:stretch;padding:10px 12px;gap:12px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-card);color:var(--text);text-align:start}.open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button:hover{border-color:var(--teach-green-mid);background:var(--teach-green-soft)}.open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button.active,html[dir=rtl] .open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button.active{border-color:var(--teach-green-mid);background:var(--teach-green-soft);box-shadow:inset 3px 0 0 var(--teach-green)}html[dir=rtl] .open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button.active{box-shadow:inset -3px 0 0 var(--teach-green)}.open-lesson-workspace.open-lesson-focus-workspace .teaching-activity-number{border-radius:999px;background:var(--surface-input);color:var(--muted)}.open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button:hover .teaching-activity-number{border-color:var(--teach-green-mid);background:var(--surface-card)}.open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button.active .teaching-activity-number,.open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button.active:hover .teaching-activity-number{border-color:var(--selection-control-border, var(--teach-green));background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text))}}.open-lesson-activity-copy{display:grid;min-width:0;align-content:center;gap:4px}.open-lesson-activity-copy small{overflow:hidden;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.open-lesson-activity-copy strong{display:-webkit-box;overflow:hidden;color:var(--text);font-size:14px;font-weight:var(--font-weight-label, 500);line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.open-lesson-activity-list>button.active .open-lesson-activity-copy strong{font-weight:var(--font-weight-emphasis, 600)}@media(max-width:820px){.open-lesson-activity-copy{display:none}}body[data-app-layout-mode=phone] .open-lesson-activity-copy{display:none}.open-lesson-resource-panel tbody td{border-bottom:0!important}.open-lesson-resource-panel tbody td:first-child{display:table-cell!important;min-width:220px}.open-lesson-resource-panel tbody tr:not(:last-child){background-image:linear-gradient(var(--line),var(--line));background-repeat:no-repeat;background-position:left bottom;background-size:100% 1px}@media(max-width:820px){.open-lesson-resource-panel tbody td:first-child{display:block!important;min-width:0}.open-lesson-resource-panel tbody tr:not(:last-child){border-bottom:1px solid var(--line);background-image:none}}.student-files-notes-workspace{display:grid;gap:0}.student-files-panel,.student-notes-panel{padding-top:16px}.student-collaborative-notebook{display:grid;grid-template-columns:minmax(220px,.6fr) minmax(280px,1.4fr);gap:12px 16px;align-items:center;margin-bottom:16px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--student-color, var(--teach-green)) 38%,var(--line));border-radius:var(--radius-panel, 12px);background:color-mix(in srgb,var(--student-color, var(--teach-green)) 8%,var(--surface-card))}.student-collaborative-notebook-heading{min-width:0;display:flex;align-items:center;gap:10px}.student-collaborative-notebook-icon{width:38px;min-width:38px;height:38px;display:inline-grid;place-items:center;border:1px solid color-mix(in srgb,var(--student-color, var(--teach-green)) 34%,var(--line));border-radius:11px;background:color-mix(in srgb,var(--student-color, var(--teach-green)) 20%,var(--surface-card));color:color-mix(in srgb,var(--student-color, var(--teach-green)) 58%,var(--text))}.student-collaborative-notebook-heading h3{margin:0;font-size:16px;line-height:1.3}.student-collaborative-notebook-edit{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:end}.student-collaborative-notebook-edit label{min-width:0;display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 600)}.student-collaborative-notebook-edit input{width:100%;min-width:0;height:var(--button-standard-h, 36px);padding:0 11px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-card);color:var(--text);font:inherit;font-weight:400}.student-collaborative-notebook-edit input:focus{outline:3px solid color-mix(in srgb,var(--student-color, var(--teach-green)) 20%,transparent);border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 62%,var(--line))}.student-collaborative-notebook-edit>small{grid-column:1 / -1;color:var(--danger, #b42318)}.student-collaborative-notebook-edit-actions,.student-collaborative-notebook-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end}.student-collaborative-notebook-edit-actions button,.student-collaborative-notebook-actions>a,.student-collaborative-notebook-actions>button{white-space:nowrap}.student-collaborative-notebook-linked{min-width:0;display:grid;grid-template-columns:minmax(140px,1fr) auto;gap:12px;align-items:center}.student-collaborative-notebook-url{min-width:0;display:flex;gap:8px;align-items:center;padding:9px 11px;overflow:hidden;border:1px solid color-mix(in srgb,var(--student-color, var(--teach-green)) 28%,var(--line));border-radius:var(--radius-control, 8px);background:var(--surface-card);color:color-mix(in srgb,var(--text) 72%,var(--teach-green));font-size:12px;text-decoration:none}.student-collaborative-notebook-url span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-collaborative-notebook-url svg{flex:0 0 auto}.student-collaborative-notebook-add{min-height:var(--button-standard-h, 36px);display:inline-flex;gap:7px;align-items:center;justify-self:end;padding:0 13px;border:1px dashed color-mix(in srgb,var(--student-color, var(--teach-green)) 48%,var(--line));border-radius:var(--radius-control, 8px);background:color-mix(in srgb,var(--surface-card) 88%,var(--student-color, var(--teach-green)));color:var(--text);cursor:pointer}.student-private-files{display:grid;gap:10px;padding-top:0}.student-private-files-header{display:flex;gap:18px;align-items:center;justify-content:space-between}.student-private-files-header h3{margin:0;font-size:18px}.student-private-files-header>button{flex:0 0 auto}.student-private-files-table-head,.student-private-file-row{grid-template-columns:minmax(250px,1.2fr) minmax(170px,.72fr) minmax(240px,1fr) 56px}.student-private-file-row{min-height:74px;cursor:pointer}.student-private-file-row .student-file-table-identity>div{min-width:0;display:grid;gap:4px}.student-private-file-row .student-file-table-identity small{overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.student-private-file-tags{min-width:0;display:flex;gap:5px;flex-wrap:wrap}.student-private-file-tags span{max-width:100%;overflow:hidden;padding:3px 7px;border:1px solid color-mix(in srgb,var(--teach-green) 22%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--teach-green-soft) 38%,var(--surface-card));color:color-mix(in srgb,var(--text) 70%,var(--teach-green));font-size:11px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.student-private-file-tags small{color:var(--muted);font-size:12px}.student-private-file-actions{grid-template-columns:var(--button-standard-h, 36px);justify-content:center}.student-private-files-empty{display:grid;place-items:center;padding:20px;border:1px dashed color-mix(in srgb,var(--teach-green) 30%,var(--line));border-radius:var(--radius-panel, 12px);background:color-mix(in srgb,var(--teach-green-soft) 20%,var(--surface-card));text-align:center}.student-private-files-empty svg{color:var(--teach-action-soft-text)}.student-private-files-empty h4{margin:9px 0 3px}.student-files-table{display:grid;width:100%}.student-files-table-head,.student-file-table-row{display:grid;grid-template-columns:minmax(280px,1.55fr) minmax(140px,.58fr) minmax(220px,1fr) 78px;gap:12px;align-items:center}.student-files-table-head{min-height:28px;padding:0 12px;color:var(--muted);font-size:var(--font-caption, 12px);font-weight:var(--font-weight-label, 500);letter-spacing:.08em;text-transform:uppercase}.student-files-table-head>span:last-child{text-align:center}.student-files-table-body{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-card)}.student-file-table-row{min-width:0;min-height:64px;padding:8px 12px;border-bottom:1px solid var(--line);cursor:pointer;transition:background-color .14s ease,box-shadow .14s ease}.student-file-table-row:last-child{border-bottom:0}.student-file-table-row:hover{background:color-mix(in srgb,var(--teach-green-soft) 44%,transparent)}.student-file-table-row:focus-visible{z-index:1;outline:3px solid color-mix(in srgb,var(--teach-green) 24%,transparent);outline-offset:-3px;background:color-mix(in srgb,var(--teach-green-soft) 58%,transparent)}.student-file-table-identity{min-width:0;display:flex;align-items:center;gap:12px}.student-file-table-identity .teaching-resource-file-badge{flex:0 0 48px}.student-file-table-identity strong{min-width:0;overflow:hidden;color:var(--text);font-size:13px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.student-file-table-description{min-width:0;display:grid;gap:3px}.student-file-table-description p{display:-webkit-box;margin:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--muted);font-size:13px;line-height:1.35}.student-file-table-actions{display:grid;grid-template-columns:repeat(2,var(--button-standard-h, 36px));gap:6px;place-items:center}.student-file-table-actions>button,.student-file-table-actions>a{width:var(--button-standard-h, 36px);min-width:var(--button-standard-h, 36px);height:var(--button-standard-h, 36px);min-height:var(--button-standard-h, 36px);display:inline-grid;place-items:center;align-items:center;border:1px solid color-mix(in srgb,var(--line) 72%,var(--teach-green));border-radius:var(--radius-control, 8px);background:color-mix(in srgb,var(--surface-card) 92%,var(--teach-green));color:color-mix(in srgb,var(--text) 58%,var(--teach-green));text-decoration:none}.student-file-table-actions>button{padding:0;cursor:pointer}.student-file-table-actions>button:hover,.student-file-table-actions>a:hover{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}@media(max-width:1100px)and (min-width:621px){.student-collaborative-notebook{grid-template-columns:minmax(220px,.7fr) minmax(0,1fr);gap:14px}.student-collaborative-notebook-linked{grid-template-columns:minmax(0,1fr)}.student-collaborative-notebook-actions{justify-content:flex-start}.student-files-table-head,.student-file-table-row{grid-template-columns:minmax(0,1fr) 120px 78px}.student-private-files-table-head,.student-private-file-row{grid-template-columns:minmax(0,1fr) 56px}.student-private-files-table-head>span:nth-child(2),.student-private-files-table-head>span:nth-child(3){display:none}.student-private-file-row .student-file-table-identity{grid-column:1;grid-row:1}.student-private-file-tags{grid-column:1;grid-row:2}.student-private-file-row .student-file-table-description{grid-column:1;grid-row:3}.student-private-file-actions{grid-column:2;grid-row:1 / 4}.student-files-table-head>span:nth-child(3){display:none}.student-file-table-identity{grid-column:1;grid-row:1}.student-file-table-description{grid-column:1 / 3;grid-row:2}.student-file-table-actions{grid-column:3;grid-row:1 / 3}}.learning-notebook-notes-only{display:block}.learning-notebook-notes-only .learning-notebook-notes-workspace{grid-template-columns:minmax(0,1fr);max-width:none;gap:38px}.learning-notebook-notes-only .learning-notebook-ongoing-editor,.learning-notebook-notes-only .learning-notebook-lesson-notes{gap:13px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.learning-notebook-notes-only .learning-notebook-ongoing-editor textarea{min-height:clamp(340px,42vh,440px)}.learning-notebook-notes-only .learning-notebook-lesson-notes>article{grid-template-columns:78px minmax(0,1fr) auto;gap:16px;padding-top:16px}.learning-notebook-notes-only .learning-notebook-lesson-notes article p{font-size:13px;line-height:1.5}@media(max-width:620px){.student-files-panel,.student-notes-panel{padding-top:14px}.student-collaborative-notebook{grid-template-columns:minmax(0,1fr);gap:10px;padding:12px}.student-collaborative-notebook-edit,.student-collaborative-notebook-linked{grid-template-columns:minmax(0,1fr)}.student-collaborative-notebook-edit-actions,.student-collaborative-notebook-actions{justify-content:stretch}.student-collaborative-notebook-edit-actions button,.student-collaborative-notebook-actions>a,.student-collaborative-notebook-actions>button{min-height:var(--button-phone-h, 44px);flex:1 1 auto;justify-content:center}.student-collaborative-notebook-add{width:100%;min-height:var(--button-phone-h, 44px);justify-self:stretch;justify-content:center}.student-private-files-header{align-items:stretch;flex-direction:column}.student-private-files-header>button{width:100%;min-height:var(--button-phone-h, 44px);justify-content:center}.student-files-toolbar .attach-file-control,.student-files-toolbar .attach-file-control>button{width:100%}.student-files-table-head{display:none}.student-files-table-body{border-inline:0;border-radius:0}.student-file-table-row{grid-template-columns:minmax(0,1fr) 92px;gap:6px 10px;align-items:center;padding:10px 8px}.student-private-file-row{grid-template-columns:minmax(0,1fr);padding:13px 8px}.student-private-file-row .student-file-table-identity,.student-private-file-tags,.student-private-file-row .student-file-table-description,.student-private-file-actions{grid-column:1;grid-row:auto}.student-private-file-actions{grid-template-columns:var(--button-phone-h, 44px);justify-content:start}.student-file-table-identity{grid-column:1;grid-row:1}.student-file-table-description{grid-column:1 / -1;grid-row:3}.student-file-table-actions{grid-column:2;grid-row:1 / 3;grid-template-columns:repeat(2,var(--button-phone-h, 44px));gap:4px}.student-file-table-actions>button,.student-file-table-actions>a{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px)}.learning-notebook-notes-only .learning-notebook-lesson-notes>article{grid-template-columns:64px minmax(0,1fr) auto;gap:10px}}body[data-app-layout-mode=phone] .student-files-toolbar .attach-file-control,body[data-app-layout-mode=phone] .student-files-toolbar .attach-file-control>button{width:100%}body[data-app-layout-mode=phone] .student-files-table-head{display:none}body[data-app-layout-mode=phone] .student-files-table-body{border-inline:0;border-radius:0}body[data-app-layout-mode=phone] .student-file-table-row{grid-template-columns:minmax(0,1fr) 92px;gap:6px 10px;align-items:center;padding:10px 8px}body[data-app-layout-mode=phone] .student-file-table-identity{grid-column:1;grid-row:1}body[data-app-layout-mode=phone] .student-file-table-description{grid-column:1 / -1;grid-row:3}body[data-app-layout-mode=phone] .student-file-table-actions{grid-column:2;grid-row:1 / 3;grid-template-columns:repeat(2,var(--button-phone-h, 44px));gap:4px}body[data-app-layout-mode=phone] .student-file-table-actions>button,body[data-app-layout-mode=phone] .student-file-table-actions>a{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px)}body[data-app-layout-mode=phone] .student-private-files-header{align-items:stretch;flex-direction:column}body[data-app-layout-mode=phone] .student-private-files-header>button{width:100%;min-height:var(--button-phone-h, 44px);justify-content:center}body[data-app-layout-mode=phone] .student-private-file-row{grid-template-columns:minmax(0,1fr);padding:13px 8px}body[data-app-layout-mode=phone] .student-private-file-row .student-file-table-identity,body[data-app-layout-mode=phone] .student-private-file-tags,body[data-app-layout-mode=phone] .student-private-file-row .student-file-table-description,body[data-app-layout-mode=phone] .student-private-file-actions{grid-column:1;grid-row:auto}body[data-app-layout-mode=phone] .student-private-file-actions{grid-template-columns:var(--button-phone-h, 44px);justify-content:start}.teaching-activity-number{width:34px;min-width:34px;height:34px;min-height:34px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-card);color:var(--text);font-size:14px;font-weight:var(--font-weight-emphasis, 600);font-variant-numeric:tabular-nums;line-height:1;text-align:center}.teaching-activity-number.active,.open-lesson-activity-list>button.active .teaching-activity-number{border-color:var(--selection-control-border, var(--teach-green))!important;background:var(--selection-control-bg, var(--teach-green))!important;color:var(--selection-control-text, var(--teach-action-solid-text))!important}.teaching-block-card>header>.teaching-card-icon.compact{width:34px;min-width:34px;height:34px;padding:0;border:0;background:transparent}.open-lesson-focus-workspace .open-lesson-activity-rail{align-items:center;padding:16px 0;background:color-mix(in srgb,var(--surface-muted-band) 74%,var(--surface-card))}.open-lesson-focus-workspace .open-lesson-activity-list>button,.open-lesson-focus-workspace .open-lesson-activity-list>button:hover,.open-lesson-focus-workspace .open-lesson-activity-list>button.active,html[dir=rtl] .open-lesson-focus-workspace .open-lesson-activity-list>button.active{width:42px;min-width:42px;height:42px;min-height:42px;display:grid;place-items:center;padding:0;border:0;border-radius:var(--radius-control, 8px);background:transparent;color:inherit;box-shadow:none}.open-lesson-focus-workspace .open-lesson-activity-list>button:hover .teaching-activity-number{border-color:var(--teach-green-mid);background:var(--teach-green-soft)}.open-lesson-focus-workspace .open-lesson-activity-list>button.active:hover .teaching-activity-number{border-color:var(--selection-control-border, var(--teach-green));background:var(--selection-control-bg, var(--teach-green))}@media(max-width:820px){.open-lesson-focus-workspace .open-lesson-activity-list>button,.open-lesson-focus-workspace .open-lesson-activity-list>button:hover,.open-lesson-focus-workspace .open-lesson-activity-list>button.active,html[dir=rtl] .open-lesson-focus-workspace .open-lesson-activity-list>button.active{width:190px;min-width:190px;height:auto;min-height:64px;grid-template-columns:34px minmax(0,1fr);place-items:center stretch;gap:10px;padding:9px 10px;border:1px solid var(--line);background:var(--surface-card);text-align:start}}body[data-app-layout-mode=phone] .open-lesson-focus-workspace .open-lesson-activity-list>button,body[data-app-layout-mode=phone] .open-lesson-focus-workspace .open-lesson-activity-list>button:hover,body[data-app-layout-mode=phone] .open-lesson-focus-workspace .open-lesson-activity-list>button.active{width:190px;min-width:190px;height:auto;min-height:64px;grid-template-columns:34px minmax(0,1fr);place-items:center stretch;gap:10px;padding:9px 10px;border:1px solid var(--line);background:var(--surface-card);text-align:start}.open-lesson-focus-workspace .open-lesson-instruction-canvas,.open-lesson-resource-panel,.open-lesson-note-composer{border-radius:var(--radius-panel, 12px);box-shadow:none}.open-lesson-resource-panel th,.open-lesson-resource-panel td{border-bottom-color:var(--line)}.open-lesson-resource-name,.open-lesson-resource-actions{display:inline-flex;align-items:center;gap:8px}.open-lesson-resource-actions{justify-content:flex-end}.open-lesson-resource-panel td:last-child>.open-lesson-resource-actions>.app-icon-button,.open-lesson-resource-panel td:last-child>.open-lesson-resource-actions>button{margin:0}.open-lesson-note-composer textarea{text-align:start}.open-lesson-note-label{display:block;margin-bottom:8px;color:var(--text);font-size:14px;font-weight:var(--font-weight-emphasis, 600)}.lesson-print-activity-list{display:grid;gap:28px}.lesson-print-activity{display:grid;gap:16px;padding-bottom:28px;border-bottom:1px solid #dce5e1}.lesson-print-activity:last-child{padding-bottom:0;border-bottom:0}.lesson-print-activity>header{display:flex;align-items:center;gap:10px}.lesson-print-activity>header h2{margin:0;color:#173d35;font-size:20px;line-height:1.25}.lesson-print-resources{display:grid;gap:10px}.lesson-print-resource{overflow:hidden;border:1px solid #dce5e1;border-radius:10px;background:#fff}.lesson-print-resource-controls{min-height:56px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:9px 12px;background:#f4f7f5}.lesson-print-resource-choice{min-width:0;display:flex;align-items:center;gap:9px;cursor:pointer}.lesson-print-resource-choice input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--teach-green)}.lesson-print-resource-choice>span{min-width:0;display:grid;gap:2px}.lesson-print-resource-choice strong{overflow:hidden;color:#173d35;text-overflow:ellipsis;white-space:nowrap}.lesson-print-resource-choice small,.lesson-print-page-range span,.lesson-print-page-range small{color:#61736e;font-size:11px}.lesson-print-page-range{display:grid;grid-template-columns:auto 96px;align-items:center;gap:5px 8px}.lesson-print-page-range input{width:96px;min-height:34px;border:1px solid #cbd8d3;border-radius:7px;padding:0 9px;background:#fff;color:#173d35;font:inherit;direction:ltr;text-align:start}.lesson-print-page-range.invalid input{border-color:var(--danger, #b54a4a)}.lesson-print-page-range small{grid-column:1 / -1;color:var(--danger, #b54a4a)}.lesson-print-open-separately{display:inline-flex;align-items:center;gap:5px;color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-label, 500);text-decoration:none;white-space:nowrap}.lesson-print-resource-content{display:grid;gap:0;border-top:1px solid #dce5e1}.lesson-print-resource-content>header{min-height:42px;display:flex;align-items:center;gap:8px;padding:9px 12px;color:#173d35}.lesson-print-resource-content .teaching-resource-preview-stage{min-height:0;border:0;border-radius:0;background:#fff}@media(max-width:820px){.open-lesson-focus-workspace .open-lesson-activity-shell{grid-template-columns:minmax(0,1fr)}.open-lesson-focus-workspace .open-lesson-activity-rail{border-inline-end:0;border-bottom:1px solid var(--line)}.open-lesson-resource-name{display:flex}.open-lesson-resource-panel td:first-child{display:block}.open-lesson-resource-actions{width:100%;justify-content:flex-start}.lesson-print-resource-controls{grid-template-columns:minmax(0,1fr)}.lesson-print-page-range{grid-template-columns:auto minmax(96px,1fr)}.lesson-print-page-range input{width:100%}.lesson-print-open-separately{justify-self:start}}@media print{.lesson-print-resource-controls,.lesson-print-resource.not-included{display:none!important}.lesson-print-activity{break-inside:auto}.lesson-print-activity+.lesson-print-activity{break-before:page}.lesson-print-resource,.lesson-print-resource-content{overflow:visible;border:0;border-radius:0}.lesson-print-resource-content>header{padding-inline:0;border-bottom:1px solid #dce5e1}.lesson-print-resource-content .teaching-resource-preview-frame{min-height:245mm}}.teacher-diary-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.teacher-diary-page{display:grid;gap:16px;width:100%;max-width:1120px;min-width:0;margin:0 auto}.teacher-diary-composer,.teacher-diary-notebook{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-panel-strong, var(--surface-card))}.teacher-diary-composer{display:grid;gap:0;padding:0;box-shadow:0 2px 8px color-mix(in srgb,var(--teach-green) 8%,transparent)}.teacher-diary-title-input,.teacher-diary-composer>textarea,.teacher-diary-editor>textarea{width:100%;border:0;border-radius:0;background:var(--surface-input, var(--surface-card));color:var(--text);font:inherit}.teacher-diary-title-input{min-height:44px;padding:11px 14px 6px;font-size:15px;font-weight:var(--font-weight-label, 500)}.teacher-diary-composer>textarea,.teacher-diary-editor>textarea{min-height:72px;resize:vertical;padding:7px 14px 12px;font-size:14px;line-height:1.55}.teacher-diary-title-input::placeholder,.teacher-diary-composer>textarea::placeholder,.teacher-diary-editor>textarea::placeholder{color:color-mix(in srgb,var(--text) 58%,var(--surface-input))}.teacher-diary-title-input:focus,.teacher-diary-composer>textarea:focus,.teacher-diary-editor>textarea:focus{outline:0;box-shadow:inset 3px 0 0 var(--teach-green)}.teacher-diary-composer>footer{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-top:1px solid var(--line);background:var(--surface-card)}.teacher-diary-save-area{display:flex;align-items:center;gap:8px}.teacher-diary-save-feedback{color:var(--teach-action-soft-text);font-size:12px}.teacher-diary-save-button,.teacher-diary-editor-save{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--action-control-border, var(--teach-green));border-radius:var(--radius-control, 8px);padding:0 13px;background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));font:inherit;font-size:13px;font-weight:var(--font-weight-label, 500);white-space:nowrap;cursor:pointer}.teacher-diary-save-button:disabled,.teacher-diary-editor-save:disabled{opacity:.52;cursor:not-allowed}.teacher-diary-resource-picker .app-dropdown-trigger{min-height:38px}.teacher-diary-selected-resources,.teacher-diary-entry-resources{display:flex;flex-wrap:wrap;gap:7px}.teacher-diary-selected-resources>span{display:inline-flex;overflow:hidden;border:1px solid var(--teach-green-mid)}.teacher-diary-selected-resources button,.teacher-diary-entry-resources button{min-height:30px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;padding:0 9px;background:transparent;color:var(--teach-action-soft-text);font:inherit;font-size:12px;cursor:pointer}.teacher-diary-selected-resources>span>button:last-child{width:30px;padding:0;border-inline-start:1px solid var(--teach-green-mid)}.teacher-diary-selected-resources button:disabled,.teacher-diary-entry-resources button:disabled{color:var(--muted);cursor:default}.teacher-diary-toolbar{min-height:58px;display:flex;align-items:stretch;flex-direction:column;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--surface-muted-band, var(--surface-panel))}.teacher-diary-toolbar-top{min-height:30px;display:flex;align-items:center;justify-content:space-between;gap:12px}.teacher-diary-toolbar-heading{display:flex;align-items:baseline;gap:8px}.teacher-diary-toolbar-heading h2{margin:0;font-size:20px}.teacher-diary-toolbar-heading>span{color:var(--muted);font-size:12px}.teacher-diary-list-controls{display:grid;grid-template-columns:minmax(220px,1fr) minmax(164px,auto) auto;align-items:center;gap:10px}.teacher-diary-search-field{position:relative;min-width:0;display:flex;align-items:center}.teacher-diary-search-field>svg{position:absolute;inset-inline-start:13px;color:var(--muted);pointer-events:none}.teacher-diary-search-field input,.teacher-diary-sort-field select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-card);color:var(--text);font:inherit;font-size:13px}.teacher-diary-search-field input{padding:0 42px}.teacher-diary-search-field input::placeholder{color:var(--muted)}.teacher-diary-search-field>button{position:absolute;inset-inline-end:4px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer}.teacher-diary-sort-field{min-width:164px}.teacher-diary-sort-field select{padding-inline:11px 34px}.teacher-diary-star-filter,.teacher-diary-clear-filters{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0 12px;background:var(--surface-card);color:var(--text);font:inherit;font-size:13px;font-weight:var(--font-weight-label, 500);white-space:nowrap;cursor:pointer}.teacher-diary-star-filter[aria-pressed=true]{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teacher-diary-search-field input:focus-visible,.teacher-diary-sort-field select:focus-visible,.teacher-diary-search-field>button:focus-visible,.teacher-diary-star-filter:focus-visible,.teacher-diary-clear-filters:focus-visible,.teacher-diary-entry-star:focus-visible,.teacher-diary-entry-expand:focus-visible,.teacher-diary-entry-title-toggle:focus-visible{outline:2px solid var(--teach-green);outline-offset:2px}.teacher-diary-notebook>.app-empty-state{margin:16px}.teacher-diary-entry-list{display:grid;gap:8px;padding:12px 16px 16px}.teacher-diary-entry{display:block;overflow:hidden;padding:0;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-card)}.teacher-diary-entry+.teacher-diary-entry{margin:0}.teacher-diary-entry-summary{min-height:62px;display:grid;grid-template-columns:minmax(0,1fr) 32px auto 44px;align-items:center;gap:6px;padding:8px 8px 8px 12px}.teacher-diary-entry-title-toggle{min-width:0;min-height:62px;display:flex;align-items:center;border:0;padding:4px 0;background:transparent;color:var(--text);font:inherit;text-align:start;cursor:pointer}.teacher-diary-entry-summary:hover{background:var(--surface-input)}.teacher-diary-entry-expand{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:var(--radius-control, 8px);background:transparent;color:var(--muted);cursor:pointer}.teacher-diary-entry-star{position:relative;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;padding:0;background:transparent;color:var(--muted);cursor:pointer}.teacher-diary-entry-star:before{position:absolute;inset:-6px;content:""}.teacher-diary-entry-expand:hover{background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teacher-diary-entry-star:hover{color:var(--teach-action-soft-text)}.teacher-diary-entry-star.is-starred{color:var(--warning-text, #a56b00)}.teacher-diary-entry-summary time{min-width:110px;color:var(--muted);font-size:12px;text-align:end;white-space:nowrap}.teacher-diary-entry-expand svg{transition:transform .16s ease-out}.teacher-diary-entry.is-expanded .teacher-diary-entry-expand svg{transform:rotate(180deg)}.teacher-diary-entry-heading{min-width:0;display:grid;gap:3px}.teacher-diary-entry-heading strong,.teacher-diary-entry-heading>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-diary-entry-heading strong{font-size:14px;font-weight:var(--font-weight-label, 500)}.teacher-diary-entry-heading>span{color:var(--muted);font-size:12px}.teacher-diary-entry-body{display:grid;gap:12px;padding:12px;border-top:1px solid var(--line)}.teacher-diary-entry-content{max-width:none;margin:0;font-size:14px;line-height:1.6}.teacher-diary-saved-resources{width:100%;min-width:0}.teacher-diary-resource-delete{width:36px;min-width:36px;height:36px;min-height:36px;display:inline-grid;place-items:center;border:1px solid color-mix(in srgb,var(--rose) 32%,var(--line));border-radius:var(--radius-control, 8px);padding:0;background:color-mix(in srgb,var(--rose) 7%,var(--surface-input));color:var(--rose);cursor:pointer}.teacher-diary-resource-delete:hover{border-color:color-mix(in srgb,var(--rose) 58%,var(--line));background:color-mix(in srgb,var(--rose) 13%,var(--surface-input))}.teacher-diary-resource-delete:focus-visible{outline:3px solid color-mix(in srgb,var(--rose) 22%,transparent);outline-offset:2px}.teacher-diary-entry-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px}.teacher-diary-entry-actions{display:flex;align-items:center;gap:6px}.teacher-diary-entry-actions button,.teacher-diary-editor-footer button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0 10px;background:var(--surface-card);color:var(--text);font:inherit;font-size:12px;cursor:pointer}.teacher-diary-entry-actions button{width:34px;padding:0}.teacher-diary-entry-actions .teacher-diary-delete{color:var(--rose)}.teacher-diary-editor{display:grid;overflow:hidden;gap:0;border:1px solid var(--line);border-radius:var(--radius-control, 8px)}.teacher-diary-editor .teacher-diary-selected-resources{padding-top:2px}.teacher-diary-editor-footer{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px;border-top:1px solid var(--line);background:var(--surface-card)}.teacher-diary-editor-footer>div{display:flex;align-items:center;gap:7px}.teacher-diary-editor-footer .teacher-diary-editor-save{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}@media(max-width:700px){.teacher-diary-page{gap:10px}.teacher-diary-save-area,.teacher-diary-editor-footer>div{width:100%}.teacher-diary-save-area{align-items:center;flex-direction:row}.teacher-diary-save-area .teacher-diary-save-button,.teacher-diary-editor-footer>div>button{flex:1 1 auto}.teacher-diary-save-area .app-icon-button{width:44px;min-width:44px;flex:0 0 44px}.teacher-diary-toolbar{min-height:52px;padding:10px 12px}.teacher-diary-toolbar-heading{width:100%;justify-content:flex-start}.teacher-diary-list-controls{grid-template-columns:minmax(0,1fr) auto}.teacher-diary-search-field{grid-column:1 / -1}.teacher-diary-sort-field{min-width:0}.teacher-diary-entry-list{gap:7px;padding:10px}.teacher-diary-entry-summary{min-height:68px;grid-template-columns:minmax(0,1fr) 32px 44px;gap:2px 6px}.teacher-diary-entry-title-toggle{min-height:44px;grid-column:1;grid-row:1}.teacher-diary-entry-summary time{grid-column:1;grid-row:2;min-width:0;text-align:start}.teacher-diary-entry-star{grid-column:2;grid-row:1 / span 2}.teacher-diary-entry-expand{grid-column:3;grid-row:1 / span 2}.teacher-diary-entry-footer{align-items:flex-start;flex-direction:column}.teacher-diary-entry-actions{align-self:flex-end}}.teacher-diary-composer .teacher-diary-rich-text-editor,.teacher-diary-editor .teacher-diary-rich-text-editor{border:0;border-top:1px solid var(--line);border-radius:0;background:var(--surface-input, var(--surface-card))}.teacher-diary-composer .teacher-diary-rich-text-editor .simple-rich-text-toolbar,.teacher-diary-editor .teacher-diary-rich-text-editor .simple-rich-text-toolbar{min-height:44px;padding:4px 10px;background:var(--surface-card)}.teacher-diary-composer .teacher-diary-rich-text-editor .simple-rich-text-tool,.teacher-diary-editor .teacher-diary-rich-text-editor .simple-rich-text-tool{min-width:36px;min-height:34px;border-radius:7px}.teacher-diary-composer .teacher-diary-rich-text-editor .simple-rich-text-writing-area,.teacher-diary-editor .teacher-diary-rich-text-editor .simple-rich-text-writing-area{min-height:96px;padding:12px 14px;font-size:14px;line-height:1.55}.teacher-diary-composer>footer,.teacher-diary-editor-footer{min-height:60px;flex-direction:row;align-items:center;padding:8px 12px}.teacher-diary-attach-button{position:relative;width:44px;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:0;background:var(--surface-card);color:var(--text);font:inherit;font-size:13px;font-weight:var(--font-weight-label, 500);cursor:pointer}.teacher-diary-attach-button:hover{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teacher-diary-attach-button:focus-visible{outline:2px solid var(--teach-green);outline-offset:2px}.teacher-diary-attach-button:disabled{opacity:.52;cursor:not-allowed}.teacher-diary-attach-button small{position:absolute;inset-block-start:-6px;inset-inline-end:-6px;min-width:20px;height:20px;display:inline-grid;place-items:center;border-radius:6px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-size:11px}.teacher-diary-star-filter{width:44px;min-width:44px;padding:0}.teaching-activity-add-to-lesson.app-icon-button{width:44px;min-width:44px;height:44px;min-height:44px;border-color:var(--action-control-border, color-mix(in srgb, var(--teach-green) 58%, var(--line)));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}.teacher-diary-save-area{margin-inline-start:auto}.teacher-diary-save-area .app-icon-button,.teacher-diary-editor-footer .app-icon-button,.teacher-diary-save-area .teacher-diary-save-button,.teacher-diary-editor-footer .teacher-diary-editor-save{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;border-radius:8px;padding:0}.teacher-diary-selected-resources{gap:8px;padding:8px 12px;border-top:1px solid var(--line);background:var(--surface-card)}.teacher-diary-selected-resources>span{max-width:min(360px,100%);min-height:36px;border-color:var(--line);border-radius:7px;background:var(--surface-input)}.teacher-diary-selected-resources button{min-height:36px;color:var(--text);font-size:13px}.teacher-diary-selected-resources .teacher-diary-resource-open{min-width:0;max-width:320px;justify-content:flex-start;padding-inline:10px}.teacher-diary-resource-open>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-diary-selected-resources .teacher-diary-resource-remove{width:36px;min-width:36px;padding:0;border-inline-start:1px solid var(--line);color:var(--muted)}.teacher-diary-selected-resources .teacher-diary-resource-remove:hover{background:var(--surface-panel);color:var(--text)}.teacher-diary-entry-content{white-space:normal}.teacher-diary-entry-content>:last-child{margin-bottom:0}@media(max-width:700px){.teacher-diary-title-input,.teacher-diary-composer .teacher-diary-rich-text-editor .simple-rich-text-writing-area,.teacher-diary-editor .teacher-diary-rich-text-editor .simple-rich-text-writing-area{font-size:16px}.teacher-diary-composer>footer,.teacher-diary-editor-footer{align-items:center;flex-direction:row}.teacher-diary-attach-button{min-width:44px;padding-inline:10px}.teacher-diary-composer .teacher-diary-rich-text-editor .simple-rich-text-toolbar,.teacher-diary-editor .teacher-diary-rich-text-editor .simple-rich-text-toolbar{overflow-x:auto;flex-wrap:nowrap}.teacher-diary-composer .teacher-diary-rich-text-editor .simple-rich-text-tool,.teacher-diary-editor .teacher-diary-rich-text-editor .simple-rich-text-tool{min-width:44px;min-height:44px}.teacher-diary-selected-resources>span,.teacher-diary-selected-resources .teacher-diary-resource-open{max-width:100%}.teacher-diary-editor-footer>div{width:auto;margin-inline-start:auto}}.teaching-resource-modal.teaching-target-modal{grid-template-rows:auto auto auto minmax(0,1fr);gap:8px}.teaching-target-modal>header{align-items:center}.teaching-target-modal>header h2{margin:0;font-size:clamp(22px,3.8vw,28px);line-height:1.12}.teaching-target-modal .teaching-lesson-pick-row{min-height:58px;border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 28%,var(--line));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 8%,var(--surface-card))}.teaching-target-modal .teaching-lesson-pick-row.current{border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 48%,var(--line));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 14%,var(--surface-card))}.teaching-target-content>.teaching-modal-list{max-height:none;height:100%;align-content:start}@media(max-width:700px){.teaching-resource-modal.teaching-target-modal{grid-template-rows:auto auto auto minmax(0,1fr);padding:10px 12px 12px}.teaching-target-modal .teaching-modal-list{gap:6px}.teaching-target-modal .teaching-lesson-pick-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:7px 8px 7px 10px}.teaching-target-modal .teaching-lesson-pick-row>button{width:auto;min-width:72px;min-height:44px;padding-inline:10px}}body[data-app-layout-mode=phone] .teaching-resource-modal.teaching-target-modal{grid-template-rows:auto auto auto minmax(0,1fr);padding:10px 12px 12px}body[data-app-layout-mode=phone] .teaching-target-modal .teaching-modal-list{gap:6px}body[data-app-layout-mode=phone] .teaching-target-modal .teaching-lesson-pick-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:7px 8px 7px 10px}body[data-app-layout-mode=phone] .teaching-target-modal .teaching-lesson-pick-row>button{width:auto;min-width:72px;min-height:44px;padding-inline:10px}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.is-editing{box-sizing:border-box;width:calc(100vw - var(--app-safe-left, 0px) - var(--app-safe-right, 0px));height:calc(100dvh - var(--app-safe-top, 0px) - var(--app-safe-bottom, 0px));max-width:none;max-height:calc(100dvh - var(--app-safe-top, 0px) - var(--app-safe-bottom, 0px));min-height:0;overflow:hidden;padding:0}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.is-editing .teaching-activity-editor-workspace{min-height:0;max-height:none;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.is-editing .teaching-activity-editor-main,body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.is-editing .teaching-activity-editor-sidebar{min-height:0}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.is-editing .teaching-template-editor-footer{box-sizing:border-box;min-height:60px;margin:0;padding:8px 12px}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.is-editing .teaching-template-editor-footer>button,body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.is-editing .teaching-template-editor-footer .app-action-menu-trigger{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;padding:0}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.is-editing .simple-rich-text-toolbar{min-height:44px;gap:4px;padding:0 4px;overflow-x:visible;flex-wrap:wrap}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.is-editing .simple-rich-text-tool,body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.is-editing button.voice-dictation-button{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;padding:0}body[data-app-layout-mode=phone] .teaching-student-file-detail .simple-rich-text-toolbar{min-height:44px;gap:4px;padding:0 4px;overflow-x:visible;flex-wrap:wrap}body[data-app-layout-mode=phone] .teaching-student-file-detail .simple-rich-text-tool,body[data-app-layout-mode=phone] .teaching-student-file-detail button.voice-dictation-button{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;padding:0}body[data-app-layout-mode=phone] .teaching-student-file-detail .student-collaborative-notebook-edit input{box-sizing:border-box;height:44px;min-height:44px}body[data-app-layout-mode=phone] .teaching-student-file-detail .student-collaborative-notebook-edit-actions button,body[data-app-layout-mode=phone] .teaching-student-file-detail .student-collaborative-notebook-actions>a,body[data-app-layout-mode=phone] .teaching-student-file-detail .student-collaborative-notebook-actions>button{min-height:44px}body[data-app-layout-mode=phone] .learning-notebook-index-list{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;max-height:none;width:100%;min-width:0;overflow:visible;padding:8px}body[data-app-layout-mode=phone] .learning-notebook .learning-notebook-index-list>button{box-sizing:border-box;width:100%;min-width:0;min-height:76px}body[data-app-layout-mode=phone] .learning-notebook .learning-notebook-index-list>button+button{margin-inline-start:0}body[data-app-layout-mode=phone] .teacher-diary-entry-summary{grid-template-columns:minmax(0,1fr) 44px 44px}body[data-app-layout-mode=phone] .teacher-diary-entry-star{width:44px;min-width:44px;height:44px;min-height:44px}body[data-app-layout-mode=phone] .teaching-add-to-lesson{gap:10px;padding-inline:0}body[data-app-layout-mode=phone] .teaching-add-section-heading{gap:10px}body[data-app-layout-mode=phone] .teaching-add-source-tabs{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}body[data-app-layout-mode=phone] .teaching-add-source-tabs button{min-width:0;min-height:44px;justify-content:center;gap:4px;padding:4px 5px;font-size:12px;line-height:1.15;text-align:center;white-space:normal}body[data-app-layout-mode=phone] .teaching-add-source-tabs button>svg{width:15px;min-width:15px;height:15px}body[data-app-layout-mode=phone] .teaching-add-source-tabs button span{min-width:18px;padding-inline:4px}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer{gap:10px;margin:0;padding:0;border:0;border-radius:0;background:transparent}.resource-import-workspace.import-journey{display:block;width:100%;max-width:1120px;margin-inline:auto;padding:20px 12px 32px;color:var(--text);font-size:var(--font-size-body, 16px);line-height:1.5}.import-journey :is(h2,h3,p){margin:0}.import-journey h2{font-size:26px;font-weight:var(--font-weight-heading);line-height:1.3}.import-journey h3{font-size:18px;font-weight:var(--font-weight-emphasis)}.import-journey-heading p{color:var(--muted);margin-block-start:8px;overflow-wrap:anywhere}.import-journey :is(button,summary,input,textarea){font:inherit}.import-journey button{min-height:44px;cursor:pointer;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-panel);color:var(--text);padding:10px 16px}.import-journey button:hover:not(:disabled){border-color:var(--teach-green);background:var(--teach-green-soft)}.import-journey button:disabled{cursor:default;opacity:.55}.import-journey button.is-primary{background:var(--teach-green);border-color:var(--teach-green);color:var(--teach-action-solid-text, #fff);font-weight:var(--font-weight-emphasis)}.import-journey button.is-primary:hover:not(:disabled){background:color-mix(in srgb,var(--teach-green) 88%,var(--text));color:var(--teach-action-solid-text, #fff)}.import-journey :is(button,input,textarea,summary):focus-visible{outline:2px solid var(--teach-green);outline-offset:3px}.import-journey input[type=checkbox]{width:19px;height:19px;flex-shrink:0;accent-color:var(--teach-green)}.import-journey small{display:block;font-size:13px;color:var(--muted)}.import-journey svg{flex-shrink:0}.import-journey-steps{display:flex;gap:24px;list-style:none;padding:0;margin:24px 0 28px;color:var(--muted)}.import-journey-steps li{display:flex;align-items:center;gap:8px;font-size:14px}.import-journey-steps li>span{display:grid;place-items:center;width:27px;height:27px;border:1px solid var(--line);border-radius:50%}.import-journey-steps li.is-reached{color:var(--teach-action-soft-text, var(--teach-green))}.import-journey-steps li.is-reached>span{background:var(--teach-green-soft);border-color:var(--teach-green-mid)}.import-journey-steps li[aria-current]{font-weight:var(--font-weight-emphasis)}.import-journey-sources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.import-journey-sources>button{display:flex;flex-direction:column;align-items:flex-start;text-align:start;gap:8px;min-height:170px;border-radius:var(--radius-panel);padding:24px}.import-journey-sources>button>span:last-child{font-size:14px;color:var(--muted)}.import-journey-source-icon{color:var(--teach-green);display:grid;place-items:center;width:44px;height:44px;margin-block-end:8px;border-radius:var(--radius-control);background:var(--teach-green-soft)}.import-journey-current{margin-block-start:32px}.import-journey-current h3{margin-block-end:12px}.import-journey-current-row{display:flex;align-items:center;gap:12px;margin-block-end:8px}.import-journey-current-row>button.import-journey-session{flex:1;min-width:0;margin:0}.import-journey-current-row>.import-journey-cancel{flex-shrink:0;display:flex;align-items:center;gap:6px}.import-journey button.import-journey-session{width:100%;display:flex;gap:14px;align-items:center;text-align:start;padding:18px;margin-block-end:8px;border-radius:var(--radius-panel)}.import-journey-session>span:nth-child(2){flex:1;min-width:0}.import-journey-session strong{display:block;overflow-wrap:anywhere}.import-journey-session-action{color:var(--teach-action-soft-text);font-size:14px}.import-journey-history{margin-block-start:28px;border-block-start:1px solid var(--line);padding-block-start:12px}.import-journey summary{cursor:pointer;min-height:44px;padding-block:10px;font-weight:var(--font-weight-emphasis)}.import-journey summary>span{margin-inline-start:10px;color:var(--muted);font-weight:var(--font-weight-body)}.import-journey button.import-journey-cancel{color:var(--muted)}.import-journey button.import-journey-back{border:0;background:transparent;padding-inline:0;color:var(--teach-action-soft-text);font-size:14px}.import-journey-review{max-width:1080px;margin-inline:auto}.import-journey-review-title{display:flex;flex-direction:row-reverse;align-items:center;justify-content:space-between;gap:20px;margin-block:8px 18px}.import-journey-review-title .import-journey-steps{margin:0;gap:14px}.import-journey-review-title .import-journey-heading{flex:1;min-width:0}.import-journey-review-grid{display:grid;grid-template-columns:1fr;gap:20px;align-items:start;margin-block-start:18px}.import-journey-materials{min-width:0;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel);overflow:hidden}.import-journey-materials>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;border-block-end:1px solid var(--line);font-size:14px}.import-journey-materials>header button{padding-inline:8px;font-size:13px;border:0;background:transparent}.import-journey-materials>header{flex-wrap:wrap}.import-journey-list-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.import-journey-materials>header .import-journey-assign-open{border:1px solid var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text);padding-inline:12px}.teaching-library-detail-modal.import-assignment-dialog{width:min(960px,calc(100vw - 48px));grid-template-rows:auto auto auto minmax(0,1fr)}.import-assignment-dialog .teaching-library-detail-header{align-items:center;flex-wrap:wrap}.import-assignment-dialog .teaching-library-detail-header h2{font-size:20px}.import-assignment-list-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 16px;font-size:14px}.import-assignment-list-heading button{border:0;background:transparent}.import-assignment-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain}.import-assignment-dialog .import-journey-bulk-status:empty{display:none}.import-journey-files{list-style:none;margin:0;padding:0}.import-journey-files li{border-block-end:1px solid var(--line)}.import-journey-files li:last-child{border-block-end:0}.import-journey-files label,.import-journey-file-columns{display:grid;grid-template-columns:minmax(0,1fr) 110px 140px;gap:24px;align-items:center;padding:12px 16px;min-height:64px;cursor:pointer}.import-journey-file-columns{min-height:40px;font-size:13px;color:var(--muted);border-block:1px solid var(--line);cursor:default}.import-journey-file-name{display:flex;align-items:center;gap:10px}.import-journey-file-name>span{min-width:0}.import-journey-file-name>input{flex-shrink:0}.import-journey-file-title{flex:1}.import-journey-file-columns>:nth-child(2){text-align:end}.import-journey-file-size,.import-journey-file-credits{font-variant-numeric:tabular-nums;font-size:14px}.import-journey-file-credits,.import-journey-file-columns>:last-child{text-align:end}.import-journey-bulk{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;align-items:end;padding:12px 16px}.import-journey-bulk .import-journey-field{margin:0;min-width:0}.import-journey-bulk-status{grid-column:1 / -1}.import-journey-files .is-included{background:color-mix(in srgb,var(--teach-green-soft) 48%,var(--surface-panel))}.import-journey-files label>span{min-width:0;flex:1}.import-journey-files bdi{display:block;overflow-wrap:anywhere}.import-journey-files .import-journey-file-size bdi{display:inline-block}.import-journey-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}.import-journey-option{padding:18px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel)}.import-journey-option p{margin-block-start:10px;color:var(--muted);font-size:14px}.import-journey-ai{display:flex;gap:10px;align-items:center;cursor:pointer;min-height:32px}.import-journey-ai strong{flex:1;font-size:15px}.import-journey-ai>svg{color:var(--teach-green)}.import-journey-option p.import-journey-consequence{color:var(--text);font-size:13px;border-block-start:1px solid var(--line);padding-block-start:12px}.import-journey-destination{display:flex;gap:10px;align-items:center}.import-journey-destination>span{flex:1}.import-journey-destination strong{display:block;font-size:14px}.import-journey-destination button{border:0;padding-inline:6px;font-size:13px;color:var(--teach-action-soft-text)}.import-journey-option>.app-dropdown{margin-block-start:12px}.import-journey-drive-storage{border:0;padding:0;margin:0;min-width:0;display:grid;gap:4px}.import-journey-drive-storage legend{padding:0;margin-block-end:10px;font-weight:var(--font-weight-label, 500)}.import-journey-drive-storage label{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}.import-journey-drive-storage input{flex:0 0 auto;accent-color:var(--teach-green)}.import-journey-field{display:flex;flex-direction:column;gap:6px;margin-block-start:16px}.import-journey-field>span{font-size:14px;font-weight:var(--font-weight-label)}.import-journey-field :is(input,textarea){width:100%;min-height:44px;border:1px solid var(--line);border-radius:var(--radius-control);padding:10px 12px;background:var(--surface-panel);color:var(--text)}.import-journey-check{display:flex;align-items:flex-start;gap:10px;margin-block-start:16px;font-size:14px;cursor:pointer}.import-journey-check input{margin-block-start:3px}.import-journey-notice{border:1px solid var(--line);background:var(--teach-green-soft);border-radius:var(--radius-panel);padding:18px;margin-block:18px;font-size:14px}.import-journey-notice p{margin-block-start:8px}.import-journey-warning{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--danger-text);font-size:14px}.import-journey-review-footer{position:sticky;z-index:3;top:0;display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-panel);background:linear-gradient(var(--surface-panel),var(--surface-panel)),var(--bg)}.import-journey-file-size{text-align:end}.import-journey-selection-summary{flex:1;min-width:180px}.import-journey-review-footer .import-journey-actions{margin:0}.import-journey-review-footer>.import-journey-warning{flex-basis:100%}.import-journey-save-status{color:var(--muted);display:flex;gap:7px;align-items:center;min-height:28px;font-size:13px}.import-journey-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-block-start:14px}.import-journey-actions button{display:inline-flex;justify-content:center;align-items:center;gap:8px}.import-journey button.import-journey-issue-link{display:block;margin:8px auto 0;color:var(--danger-text);border:0;background:transparent;text-decoration:underline}.import-journey-outcome{max-width:680px;margin:16px auto 24px;padding:28px;text-align:center;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel)}.import-journey-seal{color:var(--teach-green);width:64px;height:64px;background:var(--teach-green-soft);border-radius:50%;margin:0 auto 18px;display:grid;place-items:center}.import-journey-outcome>p{margin-block-start:16px}.import-journey-outcome progress{width:100%;height:8px;margin-block-start:18px;accent-color:var(--teach-green)}.import-journey-outcome .import-journey-actions{justify-content:center}.import-journey-outcome .import-journey-notice{text-align:start}.import-journey-saved-count{font-size:20px;font-weight:var(--font-weight-emphasis)}.import-journey button.import-journey-suggestions-link{display:flex;justify-content:center;gap:10px;align-items:center;width:100%;margin-block-start:20px;background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.import-journey :is(.import-journey-results,.import-journey-problems,.import-journey-file-progress){max-width:680px;margin:24px auto}.import-journey :is(.import-journey-results,.import-journey-problems,.import-journey-file-progress) ul{list-style:none;padding:0;margin:12px 0}.import-journey-results li button{display:flex;gap:12px;align-items:center;width:100%;text-align:start;margin-block-end:6px}.import-journey-results li button span{flex:1;overflow-wrap:anywhere}.import-journey-problems li{display:flex;align-items:center;gap:10px;padding-block:12px;border-block-end:1px solid var(--line)}.import-journey-problems li span{min-width:0;overflow-wrap:anywhere}.import-journey-file-progress li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-block:10px;border-block-end:1px solid var(--line)}.import-journey-file-progress li>span:first-child{min-width:0;overflow-wrap:anywhere}.import-journey-file-progress li>span:last-child{color:var(--muted);font-size:13px;white-space:nowrap}.import-journey-loading{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;min-height:180px}.import-journey-suggestion{max-width:680px;margin-inline:auto;border:1px solid var(--line);border-radius:var(--radius-panel);padding:24px;background:var(--surface-panel)}.import-journey-suggestion>p{color:var(--muted);margin-block:8px 16px}.import-journey-suggestion>.import-journey-save-status{margin-block-start:16px}.folder-import-direct-actions .import-journey-camera{border:1px solid var(--line);border-radius:var(--radius-control);display:flex;align-items:center;justify-content:center;gap:8px;min-height:58px;padding:12px;cursor:pointer}@media(max-width:700px){body[data-app-layout-mode=phone]:has(.import-journey-review),body[data-app-layout-mode=phone] #root:has(.import-journey-review){overflow-x:clip;overflow-y:visible}.resource-import-workspace.import-journey{padding:12px 0 24px}.import-journey h2{font-size:23px}.import-journey-steps{gap:18px;margin:20px 0}.import-journey-steps li{gap:6px;font-size:13px}.import-journey-sources{grid-template-columns:1fr;gap:10px}.import-journey-sources>button{display:grid;grid-template-columns:44px 1fr;column-gap:14px;row-gap:2px;min-height:94px;padding:16px;align-items:center}.import-journey-sources .import-journey-source-icon{grid-row:span 2;margin:0}.import-journey-review-grid{grid-template-columns:1fr;gap:18px}.import-journey-materials>header{padding:8px 12px}.import-journey-files label{padding:12px}.import-journey-review{padding-block-end:16px}.import-journey-review-title{display:flex;flex-direction:column;align-items:stretch;gap:14px}.import-journey-options{grid-template-columns:1fr}.import-journey-bulk{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.import-journey-bulk-apply{grid-column:1 / -1}.import-journey-file-columns{display:none}.import-journey-files label{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}.import-journey-file-name{grid-column:1 / -1}.import-journey-files .import-journey-file-size{text-align:start;padding-inline-start:29px}.import-journey-file-credits:after{content:" · " attr(data-label)}.import-journey-review-grid [data-guide]{scroll-margin-block:220px calc(var(--app-phone-nav-height, 64px) + 140px)}.import-journey-review-footer{padding:10px 12px;gap:6px}.import-journey-review-footer .import-journey-actions{display:grid;grid-template-columns:1fr 1.15fr;gap:8px;width:100%}.import-journey-review-footer .import-journey-actions>.import-journey-cancel{grid-column:1 / -1;grid-row:2}.import-journey-current-row{gap:8px}.import-journey-current-row>.import-journey-cancel{padding-inline:10px;font-size:13px}.import-journey-review-footer button{padding-inline:10px;font-size:14px}.import-journey-outcome{padding:22px 16px}.import-journey-outcome .import-journey-actions{flex-direction:column}.import-journey-outcome .import-journey-actions button{width:100%}.import-journey-suggestion{padding:18px}.import-journey-session-action{display:none}}.open-lesson-focus-workspace .open-lesson-activity-shell{grid-template-columns:88px minmax(0,1fr)}.open-lesson-focus-workspace .open-lesson-activity-rail{align-items:center;padding:20px 0}.open-lesson-focus-workspace .open-lesson-activity-list{display:flex;align-items:center;flex-direction:column;padding:0;gap:12px}.open-lesson-focus-workspace .open-lesson-activity-list>button{display:grid;width:44px;min-width:44px;height:44px;min-height:44px;place-items:center;padding:0;border:1px solid var(--line);border-radius:999px;background:var(--surface-card);color:var(--text);font:inherit;font-weight:var(--font-weight-emphasis, 600)}.open-lesson-focus-workspace .open-lesson-activity-list>button:hover{border-color:var(--teach-green-mid);background:var(--teach-green-soft)}.open-lesson-focus-workspace .open-lesson-activity-list>button.active,html[dir=rtl] .open-lesson-focus-workspace .open-lesson-activity-list>button.active{border-color:var(--selection-control-border, var(--teach-green));background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text));box-shadow:none}.open-lesson-focus-workspace .open-lesson-activity-stage{gap:20px;scroll-margin-top:16px}.open-lesson-focus-workspace .open-lesson-instruction-canvas{min-height:220px;padding:20px}.open-lesson-focus-workspace .open-lesson-instruction-canvas>time{display:block;color:var(--muted);font-size:13px}.open-lesson-focus-workspace .open-lesson-instruction-content{min-height:0;padding:12px 0 0}.open-lesson-focus-workspace .open-lesson-instruction-content .simple-rich-text-content,.open-lesson-focus-workspace .open-lesson-instruction-content>p{max-width:76ch;color:var(--text);font-size:var(--font-body, 15px);line-height:var(--line-height-body, 1.5)}.open-lesson-resource-panel{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-card)}.open-lesson-resource-panel>header{display:flex;min-height:48px;align-items:center;padding:10px 16px;border-bottom:1px solid var(--line)}.open-lesson-resource-panel h3{margin:0;color:var(--text);font-size:15px}.open-lesson-resource-table-wrap{overflow-x:auto}.open-lesson-resource-panel table{width:100%;border-collapse:collapse}.open-lesson-resource-panel th,.open-lesson-resource-panel td{padding:10px 14px;border-bottom:1px solid var(--line);text-align:start;vertical-align:middle}.open-lesson-resource-panel th{background:var(--surface-muted-band);color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.open-lesson-resource-panel tbody tr:last-child td{border-bottom:0}.open-lesson-resource-panel td:first-child{display:flex;min-width:220px;align-items:center;gap:8px}.open-lesson-resource-panel td:nth-child(2){color:var(--muted)}.open-lesson-resource-panel td:last-child{width:1%;white-space:nowrap}.open-lesson-resource-panel td:last-child>.app-icon-button,.open-lesson-resource-panel td:last-child>button{margin-inline-end:8px;vertical-align:middle}.open-lesson-resource-panel td:last-child>button:last-child{margin-inline-end:0}.open-lesson-resource-empty{margin:0;padding:18px 16px;color:var(--muted)}.open-lesson-note-composer{position:relative;overflow:hidden;min-height:260px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-input)}.open-lesson-note-composer:focus-within{border-color:var(--teach-green);box-shadow:0 0 0 3px color-mix(in srgb,var(--teach-green) 18%,transparent)}.open-lesson-note-composer textarea{width:100%;min-height:260px;resize:vertical;padding:16px 16px 34px;border:0;outline:0;background:transparent;color:var(--text);font:inherit;line-height:var(--line-height-body, 1.5)}.open-lesson-note-composer textarea::placeholder{color:var(--muted)}.open-lesson-note-composer>span{position:absolute;right:14px;bottom:10px;min-height:18px;color:var(--muted);font-size:12px}html[dir=rtl] .open-lesson-note-composer>span{right:auto;left:14px}@media(max-width:820px){.open-lesson-focus-workspace .open-lesson-activity-rail{padding:10px 12px}.open-lesson-focus-workspace .open-lesson-activity-list{overflow-x:auto;flex-direction:row;scrollbar-width:none}.open-lesson-focus-workspace .open-lesson-activity-list::-webkit-scrollbar{display:none}.open-lesson-focus-workspace .open-lesson-activity-list>button{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px}.open-lesson-focus-workspace .open-lesson-instruction-canvas{min-height:180px;padding:16px}.open-lesson-resource-panel thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.open-lesson-resource-panel table,.open-lesson-resource-panel tbody,.open-lesson-resource-panel tr,.open-lesson-resource-panel td{display:block;width:100%}.open-lesson-resource-panel tr{padding:12px;border-bottom:1px solid var(--line)}.open-lesson-resource-panel tr:last-child{border-bottom:0}.open-lesson-resource-panel td,.open-lesson-resource-panel td:first-child,.open-lesson-resource-panel td:last-child{width:100%;min-width:0;padding:0;border:0;white-space:normal}.open-lesson-resource-panel td:nth-child(2){margin-top:6px;font-size:13px}.open-lesson-resource-panel td:last-child{display:flex;margin-top:10px;gap:8px}.open-lesson-resource-panel td:last-child>.app-icon-button,.open-lesson-resource-panel td:last-child>button{margin-inline-end:0}.open-lesson-note-composer,.open-lesson-note-composer textarea{min-height:220px}}body[data-app-layout-mode=phone] .open-lesson-focus-workspace .open-lesson-activity-list{width:100%;min-width:0;display:flex;overflow-x:auto;flex-direction:row;gap:8px;padding:8px 12px;scroll-padding-inline:12px}body[data-app-layout-mode=phone] .open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-rail{width:100%;min-width:0;align-items:stretch;padding:0}body[data-app-layout-mode=phone] .open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button,body[data-app-layout-mode=phone] .open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button:hover,body[data-app-layout-mode=phone] .open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-list>button.active{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;gap:0;overflow:hidden;border:0;padding:0;background:transparent;box-shadow:none}body[data-app-layout-mode=phone] .open-lesson-workspace.open-lesson-focus-workspace .open-lesson-activity-copy{display:none}.open-lesson-note-composer:not(.open-lesson-presentation-note-composer){display:grid;min-height:0;overflow:visible;gap:8px;border:0;border-radius:0;background:transparent}.open-lesson-note-composer:not(.open-lesson-presentation-note-composer):focus-within{border-color:transparent;box-shadow:none}.open-lesson-note-composer:not(.open-lesson-presentation-note-composer) .open-lesson-note-label{margin-bottom:0}.open-lesson-note-composer:not(.open-lesson-presentation-note-composer) textarea{box-sizing:border-box;min-height:214px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-input)}.open-lesson-note-composer:not(.open-lesson-presentation-note-composer) textarea:focus,.open-lesson-note-composer:not(.open-lesson-presentation-note-composer) textarea:focus-visible{border-color:#0a84ff8c;outline:3px solid rgba(10,132,255,.18);outline-offset:1px;box-shadow:none}.open-lesson-note-composer:not(.open-lesson-presentation-note-composer) .open-lesson-note-footer{min-height:44px;padding:0;border-top:0;background:transparent}@media(max-width:820px){.open-lesson-note-composer:not(.open-lesson-presentation-note-composer) textarea{min-height:164px}}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.contact-import-backdrop{z-index:1000}.contact-import-dialog{width:min(1120px,100%);max-height:calc(100svh - 40px);padding:0;gap:0;overflow:hidden}.contact-import-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 22px 16px;border-bottom:1px solid var(--line)}.contact-import-header h2{margin:7px 0 3px;font-size:1.25rem;letter-spacing:-.02em}.contact-import-header p{max-width:72ch;margin:0;color:var(--muted);font-size:.86rem;line-height:1.45}.contact-import-file{display:inline-flex;align-items:center;gap:6px;max-width:min(65vw,680px);color:var(--accent-strong, #12634a);font-size:.78rem;font-weight:var(--font-weight-label, 500);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-import-header .icon-button{flex:0 0 auto;width:36px;height:36px;display:inline-grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-card, #fff);color:var(--muted)}.contact-import-loading{min-height:280px;display:grid;place-items:center;align-content:center;gap:9px;padding:32px;text-align:center}.contact-import-loading svg{color:var(--accent-strong, #12634a)}.contact-import-loading .spin{animation:contact-import-spin .9s linear infinite}@keyframes contact-import-spin{to{transform:rotate(360deg)}}.contact-import-error{min-height:180px;display:flex;align-items:flex-start;justify-content:center;gap:12px;padding:48px 24px;color:#8a341b}.contact-import-error p{max-width:60ch;margin:4px 0 0;color:#674239}.contact-import-results{min-height:0;display:flex;flex:1 1 auto;flex-direction:column;overflow:hidden}.contact-import-summary{display:grid;grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr);align-items:center;gap:14px;padding:9px 22px;border-bottom:1px solid color-mix(in srgb,var(--line) 76%,transparent);background:var(--surface-soft, #f7f8fa);color:var(--muted);font-size:.8rem}.contact-import-summary>span{display:inline-flex;align-items:center;gap:6px}.contact-import-summary>strong{justify-self:end;color:var(--text)}.contact-import-bulk-actions{display:flex;align-items:center;justify-content:center;gap:6px}.contact-import-bulk-actions .quiet-button{min-height:32px;padding:5px 10px;font-size:.76rem}.contact-import-list{display:grid;gap:10px;padding:14px 22px 18px;overflow-y:auto}.contact-import-record{display:grid;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-card, #fff);overflow:clip;transition:border-color .18s ease,background-color .18s ease}.contact-import-record.selected{border-color:color-mix(in srgb,var(--accent, #2f7d62) 48%,var(--line));background:color-mix(in srgb,var(--accent, #2f7d62) 3%,var(--surface-card, white))}.contact-import-record-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:64px;padding:10px 12px 10px 14px}.contact-import-record-toggle{min-width:0;flex:1 1 auto;display:grid;grid-template-columns:max-content minmax(130px,max-content) minmax(160px,1fr) 18px;align-items:center;gap:10px;min-height:42px;padding:3px 2px;border:0;background:transparent;color:var(--text);text-align:start}.contact-import-record-toggle:hover{color:var(--accent-strong, #12634a)}.contact-import-record-toggle:focus-visible{outline:2px solid var(--focus-ring, var(--accent));outline-offset:3px;border-radius:6px}.contact-import-record-toggle svg{color:var(--muted)}.contact-import-record-index{color:var(--muted);font-size:.7rem;font-weight:var(--font-weight-label, 500);letter-spacing:.02em;text-transform:uppercase}.contact-import-record-toggle strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem}.contact-import-record-summary{overflow:hidden;color:var(--muted);font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.contact-import-record-meta{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:7px}.contact-import-classification{display:flex;align-items:center;gap:7px}.contact-import-role-field{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:.68rem;font-weight:var(--font-weight-label, 500)}.contact-import-role-field>span{white-space:nowrap}.contact-import-role-field .app-dropdown{min-width:112px}.contact-import-parent-of-field .app-dropdown{min-width:170px;max-width:230px}.contact-import-dialog-phone .contact-import-classification{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%}.contact-import-dialog-phone .contact-import-role-field{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;font-size:12px}.contact-import-dialog-phone .contact-import-role-field .app-dropdown{width:100%;min-width:0;max-width:none}.contact-import-children{grid-column:1 / -1;display:grid;min-width:0;gap:12px}.contact-import-child{display:grid;min-width:0;gap:12px}.contact-import-child+.contact-import-child{padding-top:12px;border-top:1px solid var(--line)}.contact-import-child-heading{display:flex;align-items:center;justify-content:space-between;min-height:32px;font-size:12px}.contact-import-child-heading .icon-button{width:44px;min-height:44px}.contact-import-add-child{justify-self:start;min-height:44px}.contact-import-student-fields{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contact-import-student-fields label{display:grid;min-width:0;gap:4px;color:var(--muted);font-size:12px}.contact-import-student-fields input{width:100%;min-width:0;min-height:44px}.contact-import-dialog-phone .contact-import-parent-of-field,.contact-import-parent-hint{grid-column:1 / -1}.contact-import-parent-hint{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.contact-import-confidence,.contact-import-attention{display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border-radius:999px;background:#eef1f3;color:#4b5560;font-size:.68rem;font-weight:var(--font-weight-label, 500);white-space:nowrap}.contact-import-confidence.confidence-high{background:#e5f5ed;color:#176345}.contact-import-confidence.confidence-low,.contact-import-attention{background:#fff0df;color:#8a4a14}.contact-import-approve{min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-card, #fff);color:var(--text);font-size:.78rem;font-weight:var(--font-weight-label, 500);cursor:pointer}.selected .contact-import-approve{border-color:color-mix(in srgb,var(--accent, #2f7d62) 55%,var(--line));background:color-mix(in srgb,var(--accent, #2f7d62) 8%,white)}.contact-import-approve input{width:18px;height:18px;margin:0;accent-color:var(--accent, #2f7d62)}.contact-import-record-details{display:grid;gap:10px;padding:0 14px 14px;border-top:1px solid color-mix(in srgb,var(--line) 76%,transparent)}.contact-import-warning,.contact-import-info{display:flex;align-items:flex-start;gap:6px;margin:10px 0 0;font-size:.76rem;line-height:1.35}.contact-import-warning{color:#874312}.contact-import-info{color:var(--accent-strong, #12634a)}.contact-import-warning svg,.contact-import-info svg{flex:0 0 auto;margin-top:1px}.contact-import-section{padding:12px;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:var(--radius-control, 8px);background:color-mix(in srgb,var(--surface-soft, #f7f8fa) 76%,var(--surface-card, white))}.contact-import-section h3{margin:0 0 10px;font-size:.8rem;color:var(--text)}.contact-import-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.contact-import-fields label{min-width:0;display:grid;align-content:start;gap:5px;color:var(--muted);font-size:.7rem;font-weight:var(--font-weight-label, 500)}.contact-import-fields input,.contact-import-fields textarea,.contact-import-fields .app-dropdown{width:100%;min-width:0;min-height:36px;background:var(--surface-input, var(--surface-card));color:var(--text)}.contact-import-fields input,.contact-import-fields textarea{padding:7px 9px}.contact-import-fields textarea{min-height:70px;resize:vertical;font:inherit;line-height:1.4}.contact-import-field-wide{grid-column:span 2}.contact-import-empty-contact{margin:0;padding:8px 2px 0;color:var(--muted);font-size:.76rem}.contact-import-actions{flex:0 0 auto;padding:14px 22px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface-card, #fff)}.iphone-contact-import-guide .contact-import-guide-heading h2{font-size:21px}.iphone-contact-import-guide .contact-import-guide-heading p{margin:8px 0 0;color:var(--muted);font-size:.86rem;line-height:1.45}.iphone-contact-import-steps{display:grid;gap:10px;margin:0;padding-inline-start:22px;color:var(--text);font-size:.88rem;line-height:1.45}.iphone-contact-import-privacy{display:flex;align-items:flex-start;gap:8px;margin:0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--teach-green) 24%,var(--line));border-radius:var(--radius-control, 8px);background:color-mix(in srgb,var(--teach-green) 6%,var(--surface-card));color:var(--text);font-size:.78rem;line-height:1.4}.iphone-contact-import-privacy svg{flex:0 0 auto;color:var(--teach-green-deep)}.iphone-contact-import-error{margin:0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--danger) 28%,var(--line));border-radius:var(--radius-control, 8px);background:color-mix(in srgb,var(--danger) 7%,var(--surface-card));color:var(--danger);font-size:.78rem;line-height:1.4}.iphone-contact-import-guide .spin{animation:contact-import-spin .9s linear infinite}@media(max-width:980px){.contact-import-summary{grid-template-columns:1fr auto}.contact-import-bulk-actions{grid-column:1 / -1;grid-row:2;justify-content:flex-start}.contact-import-record-heading{align-items:flex-start}.contact-import-record-toggle{grid-template-columns:max-content minmax(120px,max-content) minmax(120px,1fr) 18px}.contact-import-record-meta{flex-wrap:wrap}.contact-import-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.contact-import-backdrop{display:block;padding:0;background:var(--surface-sheet, #fff)}.contact-import-dialog{display:block;width:100%;height:100svh;max-height:100svh;overflow-y:auto;overscroll-behavior:contain;border-radius:0;box-shadow:none;scroll-padding-bottom:calc(88px + env(safe-area-inset-bottom))}.contact-import-header{padding:14px}.contact-import-header h2{font-size:1.1rem}.contact-import-summary{position:sticky;top:0;z-index:2;padding:9px 14px}.contact-import-results{display:block;overflow:visible}.contact-import-list{padding:10px 14px 14px;overflow:visible}.contact-import-record-heading{display:grid}.contact-import-record-toggle{width:100%;grid-template-columns:max-content minmax(0,1fr) 18px}.contact-import-record-summary{grid-column:1 / 3;grid-row:2}.contact-import-record-toggle svg{grid-column:3;grid-row:1 / 3}.contact-import-record-meta{width:100%;justify-content:flex-start}.contact-import-classification{width:100%;display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.contact-import-role-field{display:grid;grid-template-columns:auto minmax(0,1fr)}.contact-import-role-field .app-dropdown,.contact-import-parent-of-field .app-dropdown{width:100%;min-width:0;max-width:none}.contact-import-approve{margin-inline-start:auto;min-height:44px}.contact-import-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-import-actions{position:sticky;bottom:0;z-index:3;padding-inline:14px}.contact-import-actions button{flex:1 1 0}.contact-import-header .icon-button,.contact-import-record-toggle,.contact-import-fields input,.contact-import-fields textarea,.contact-import-fields .app-dropdown-trigger{min-width:44px;min-height:44px}.contact-import-dialog-phone .contact-import-header h2{margin-bottom:0}.contact-import-dialog-phone .contact-import-record{position:relative}.contact-import-dialog-phone .contact-import-record-heading{width:100%;grid-template-columns:minmax(0,1fr);justify-content:stretch;gap:8px;min-height:0;padding-block:10px}.contact-import-dialog-phone .contact-import-device-details{width:100%;display:grid;gap:6px}.contact-import-dialog-phone .contact-import-device-detail{min-width:0;min-height:38px;display:grid;width:100%;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:7px;padding:6px 9px;border:1px solid color-mix(in srgb,var(--line) 74%,transparent);border-radius:var(--radius-control, 8px);background:color-mix(in srgb,var(--surface-soft, #f7f8fa) 72%,white);color:var(--text);text-align:start;cursor:pointer}.contact-import-dialog-phone .contact-import-device-detail input{grid-column:2;grid-row:1;width:17px;height:17px;margin:0;accent-color:var(--accent, #2f7d62)}.contact-import-dialog-phone .contact-import-device-detail-value{grid-column:1;grid-row:1;min-width:0;overflow-wrap:anywhere;font-size:.76rem;line-height:1.3;text-align:left}.contact-import-dialog-phone .contact-import-device-detail:dir(rtl) .contact-import-device-detail-value{text-align:right}.contact-import-dialog-phone .contact-import-record-meta{display:block}.contact-import-dialog-phone .contact-import-classification{padding-top:2px}}@media(max-width:430px){.contact-import-summary{display:flex;flex-wrap:wrap}.contact-import-summary>strong{margin-inline-start:auto}.contact-import-bulk-actions{width:100%;justify-content:stretch}.contact-import-bulk-actions button{flex:1 1 0}.contact-import-record-meta{gap:5px}.contact-import-classification{grid-template-columns:minmax(0,1fr)}.contact-import-attention{order:3}.contact-import-fields{grid-template-columns:minmax(0,1fr)}.contact-import-field-wide{grid-column:auto}}@media(prefers-reduced-motion:reduce){.contact-import-record{transition:none}.contact-import-loading .spin{animation:none}}body[data-app-layout-mode=phone] .contacts-roster .contact-primary-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}body[data-app-layout-mode=phone] .contacts-roster .contact-primary-actions .contact-primary-action{width:auto!important;min-width:0!important;min-height:44px;flex:1 1 0!important;display:flex;align-items:center;justify-content:center;gap:4px;padding-inline:8px;white-space:normal;line-height:1.15;text-align:center;overflow-wrap:anywhere}body[data-app-layout-mode=phone] .contacts-roster .contact-device-picker-notice{display:flex;align-items:center;gap:8px;margin:0 0 8px}body[data-app-layout-mode=phone] .contacts-roster .contact-device-picker-notice>span{min-width:0;flex:1 1 auto}body[data-app-layout-mode=phone] .contacts-roster .contact-device-manual-action{min-height:44px;flex:0 0 auto;white-space:nowrap}body[data-app-layout-mode=phone] .contacts-roster .contact-roster-search{margin-bottom:8px}body[data-app-layout-mode=phone] .contact-student-detail-header-actions{display:flex;flex-wrap:wrap;gap:8px}body[data-app-layout-mode=phone] .contact-student-detail-header-actions>button{min-height:44px}body[data-app-layout-mode=phone] .contact-overview-toolbar,body[data-app-layout-mode=phone] .contact-overview-learning-file{display:none}body[data-app-layout-mode=phone] .contact-overview-person{gap:8px}body[data-app-layout-mode=phone] .contact-overview-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}body[data-app-layout-mode=phone] .contact-overview-actions>a{min-width:0;min-height:44px;justify-content:center;gap:4px;padding-inline:4px;font-size:12px;white-space:nowrap}body[data-app-layout-mode=phone] .contact-detail-focused-task input:not([type=checkbox]),body[data-app-layout-mode=phone] .contact-detail-focused-task select,body[data-app-layout-mode=phone] .contact-detail-focused-task .app-dropdown-trigger{min-height:44px}body[data-app-layout-mode=phone] .contact-detail-focused-task .student-identity-edit-grid,body[data-app-layout-mode=phone] .contact-detail-focused-task .parent-edit-grid{row-gap:12px}body[data-app-layout-mode=phone] .contact-detail-focused-task .contact-inline-device-picker,body[data-app-layout-mode=phone] .contact-detail-focused-task .contact-existing-parent-toggle{min-height:44px;border-radius:var(--radius-control)!important}body[data-app-layout-mode=phone] .contact-detail-focused-task .app-dropdown-trigger[aria-label^="כותרת איש הקשר"]{border-radius:var(--radius-control)!important}.payment-debt-summary{grid-template-columns:minmax(0,1fr) 34px auto}.payment-reminder-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,#25d366 42%,var(--line));border-radius:50%;background:color-mix(in srgb,#25d366 14%,var(--surface-card, white));color:color-mix(in srgb,#147a3d 38%,var(--text));cursor:pointer;transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.payment-reminder-button:hover{transform:translateY(-1px);background:color-mix(in srgb,#25d366 22%,var(--surface-card, white));box-shadow:0 3px 10px #147a3d29}.payment-reminder-button:focus-visible{outline:3px solid color-mix(in srgb,#25d366 34%,transparent);outline-offset:2px}.payment-reminder-whatsapp-icon{width:14px;height:14px;flex:none}.mark-paid-modal.debt-reminder-modal{z-index:calc(var(--z-dialog, 1000) + 450);background:#0f172a7a}.mark-paid-modal>.debt-reminder-card{width:min(600px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;gap:14px;background:var(--surface-sheet, #fffdf8)}.debt-reminder-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.debt-reminder-heading h2{margin:0;font-size:22px}.debt-reminder-close{width:44px;height:44px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;background:var(--surface-card, white);color:var(--muted);cursor:pointer}.debt-reminder-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 12px;border:1px solid color-mix(in srgb,var(--mgmt-blue) 18%,var(--line));border-radius:10px;padding:11px 13px;background:var(--mgmt-blue-soft)}.debt-reminder-summary span{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 600)}.debt-reminder-summary strong{grid-column:2;grid-row:1 / span 2;font-size:22px}.debt-reminder-summary small{color:var(--text)}.debt-reminder-message{font-size:13px;font-weight:var(--font-weight-label, 600)}.debt-reminder-message{display:grid;gap:7px}.debt-reminder-message textarea{width:100%;resize:vertical;height:clamp(190px,28dvh,240px);min-height:190px;overflow-y:auto;border:1px solid var(--line);border-radius:9px;padding:10px 11px;background:var(--surface-input, white);color:var(--text);font:inherit;line-height:1.45}.debt-reminder-handoff{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.debt-reminder-handoff.warning{border-radius:8px;padding:8px 10px;background:#f59e0b1f;color:#8a5410}.debt-reminder-send{width:44px;min-width:44px;min-height:44px;flex:0 0 44px;display:inline-flex;align-items:center}.debt-reminder-copy{min-height:44px;display:inline-flex;align-items:center;gap:6px;margin-inline-end:auto}@media(max-width:560px){.mark-paid-modal.debt-reminder-modal{padding:8px}.mark-paid-modal>.debt-reminder-card{width:100%;max-height:calc(100dvh - 16px);box-sizing:border-box;gap:11px;padding:16px;-webkit-text-size-adjust:100%;text-size-adjust:100%}.debt-reminder-heading{align-items:center;gap:10px}.debt-reminder-heading h2{min-width:0;font-size:20px;line-height:1.25;overflow-wrap:anywhere}.debt-reminder-close{width:44px;height:44px}.debt-reminder-summary{min-width:0;gap:3px 10px;padding:10px 12px}.debt-reminder-summary :is(span,small,strong){min-width:0}.debt-reminder-summary strong{justify-self:end;font-size:20px;white-space:nowrap}.debt-reminder-message textarea{box-sizing:border-box;height:clamp(170px,28dvh,210px);min-height:170px;resize:none;font-size:15px}.debt-reminder-card .debt-reminder-actions{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px}.debt-reminder-card .debt-reminder-actions>button{min-width:0;min-height:44px;padding-inline:10px;justify-content:center;white-space:nowrap;font-size:13px}.debt-reminder-card .debt-reminder-actions .debt-reminder-copy{width:100%;grid-column:1;grid-row:1;justify-self:stretch;margin-inline-end:0}.debt-reminder-card .debt-reminder-actions .debt-reminder-send{grid-column:2;grid-row:1;padding-inline:0}}body:has(.debt-reminder-modal) :is(.assistant-launcher,.assistant-panel,.reminder-launcher,.reminder-popover){display:none}@media(max-width:980px){.payment-reminder-button{align-self:start}}body[data-app-layout-mode=phone] .payments-page .payment-debt-sort-field{min-height:44px;margin-block:8px;padding:0;background:transparent!important;border:0!important;box-shadow:none!important}body[data-app-layout-mode=phone] .payments-page .payment-debt-sort-options{gap:4px}body[data-app-layout-mode=phone] .payments-page .payment-debt-sort-option.active{min-height:44px;padding-inline:8px}body[data-app-layout-mode=phone] .record-payment-card .record-payment-fields{gap:12px}body[data-app-layout-mode=phone] .record-payment-card input:not([type=checkbox]),body[data-app-layout-mode=phone] .record-payment-card select,body[data-app-layout-mode=phone] .record-payment-card .app-dropdown-trigger{min-height:44px}body[data-app-layout-mode=phone] .record-payment-card .payment-allocation-preview{margin-top:12px}body[data-app-layout-mode=phone] .record-payment-card .payment-allocation-totals{gap:8px}body[data-app-layout-mode=phone] .record-payment-card .mobile-focused-payment-actions{position:sticky;bottom:0;z-index:2}.settings-workspace{position:fixed;inset:0;z-index:180;display:grid;grid-template-columns:284px minmax(0,1fr);grid-template-rows:minmax(0,1fr);overflow:hidden;color:var(--text);background:var(--bg)}html:has(.settings-workspace),body:has(.settings-workspace){overflow:hidden}.settings-workspace-sidebar{min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;gap:12px;padding:18px 16px 14px;overflow-y:auto;border-inline-end:1px solid var(--line);background:radial-gradient(circle at 15% 10%,color-mix(in srgb,var(--surface-panel-strong) 88%,transparent),transparent 30%),var(--surface-panel)}.settings-workspace-brand{min-height:42px;display:flex;align-items:center;gap:10px;padding-inline:8px}.settings-workspace-brand img{width:38px;height:38px;border-radius:10px;box-shadow:var(--shadow-action-compact)}.settings-workspace-brand>span,.settings-workspace-account>span,.settings-workspace-account-identity>span,.settings-workspace-installed-identity>span{min-width:0;display:grid;gap:1px}.settings-workspace-brand strong{font-size:16px;font-weight:var(--font-weight-heading)}.settings-workspace-brand small,.settings-workspace-account small,.settings-workspace-account-identity small,.settings-workspace-installed-identity small{color:var(--muted);font-size:12px}.settings-workspace-back{min-height:44px;display:inline-flex;align-items:center;gap:9px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-control);color:var(--text-soft, var(--text));background:var(--surface-card);font-weight:600;text-align:start}.settings-workspace-back:hover{border-color:color-mix(in srgb,var(--teach-green) 38%,var(--line));background:var(--surface-panel-strong)}[dir=rtl] .settings-workspace-back svg,[dir=rtl] .settings-workspace-chevron{transform:rotate(180deg)}.settings-workspace-sidebar-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:4px 10px 0}.settings-workspace .settings-workspace-sidebar-heading h1{margin:0;font-size:24px;line-height:1.2;letter-spacing:-.025em}.settings-workspace-sidebar-heading span{color:var(--muted);font-size:12px}.settings-workspace-search{min-height:40px;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input)}.settings-workspace-search:focus-within{border-color:var(--teach-green);box-shadow:0 0 0 3px color-mix(in srgb,var(--teach-green) 18%,transparent)}.settings-workspace-search svg{flex:0 0 auto;color:var(--muted)}.settings-workspace-search input{width:100%;min-width:0;height:38px;padding:0;border:0;outline:0;background:transparent}.settings-workspace-search-results{display:grid;gap:3px;padding:5px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card);box-shadow:var(--shadow-dropdown)}.settings-workspace-search-results button{min-height:44px;display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;padding:6px 8px;border:0;border-radius:var(--radius-control);color:var(--text);background:transparent;text-align:start}.settings-workspace-search-results button:hover,.settings-workspace-search-results button:focus-visible{background:var(--teach-green-soft)}.settings-workspace-search-results button>span{min-width:0;display:grid;gap:1px}.settings-workspace-search-results strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.settings-workspace-search-results small{color:var(--muted);font-size:11px}.settings-workspace-nav{display:grid;gap:10px}.settings-workspace-nav-group{display:grid;gap:3px}.settings-workspace-nav-group h2{margin:5px 10px 3px;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.settings-workspace-nav-group button{width:100%;min-height:40px;display:grid;grid-template-columns:22px minmax(0,1fr) 18px;align-items:center;gap:8px;padding:6px 9px;border:1px solid transparent;border-radius:var(--radius-control);color:var(--text-soft, var(--text));background:transparent;font-weight:500;text-align:start;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.settings-workspace-nav-group button:hover{border-color:var(--line);background:var(--surface-card)}.settings-workspace-nav-group button.active{border-color:color-mix(in srgb,var(--teach-green) 36%,var(--line));color:var(--teach-action-soft-text);background:var(--teach-green-soft);font-weight:600}.settings-workspace-nav-group button>span{min-width:0;display:grid;gap:1px}.settings-workspace-nav-group button strong{font-size:14px;font-weight:inherit}.settings-workspace-nav-group button small{color:var(--muted);font-size:11px;font-weight:400}.settings-workspace-nav-group button.active small{color:var(--teach-action-soft-text);opacity:.88}.settings-workspace-chevron{opacity:.58}.settings-workspace-no-results{margin:8px 10px;color:var(--muted);font-size:12px}.settings-workspace-account{min-height:56px;display:flex;align-items:center;gap:9px;margin-top:auto;padding:10px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.settings-workspace-account strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.settings-workspace-account small{color:var(--app-success-text)}.settings-workspace-avatar{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;color:var(--teach-action-solid-text);background:var(--teach-green);font-weight:var(--font-weight-heading)}.settings-workspace-account>img,.settings-workspace-account-identity>img{width:38px;height:38px;border-radius:10px;object-fit:cover}.settings-workspace-main{min-width:0;min-height:0;height:100%;overflow-y:auto;background:var(--bg)}.settings-workspace-topbar,.settings-workspace-page-header,.settings-workspace-content{width:min(1040px,calc(100% - 80px));margin-inline:auto}.settings-workspace-topbar{min-height:56px;display:flex;align-items:center;justify-content:flex-end;border-bottom:1px solid var(--line)}.settings-workspace-save-state{display:inline-flex;align-items:center;gap:7px;color:var(--app-success-text);font-size:12px;font-weight:500}.settings-workspace-save-state.tone-error{color:var(--rose)}.settings-workspace-mobile-back{display:none;min-height:44px;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-control);color:var(--text-soft, var(--text));background:var(--surface-card);font-weight:600}.settings-workspace-mobile-back:hover{border-color:color-mix(in srgb,var(--teach-green) 38%,var(--line));background:var(--surface-panel-strong)}[dir=rtl] .settings-workspace-mobile-back svg{transform:rotate(180deg)}.settings-workspace-page-header{padding-block:20px}.settings-workspace-page-header .app-eyebrow{margin:0 0 5px;color:var(--teach-action-soft-text);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.settings-workspace-page-header h1{margin:0;font-size:31px;line-height:1.2;letter-spacing:-.035em}.settings-workspace-page-header .app-page-description{display:block;max-width:700px;margin-top:7px;color:var(--muted);font-size:14px}.settings-workspace-content{padding-bottom:56px}.settings-workspace .settings-account-action-bar{flex-wrap:wrap;justify-content:flex-start}.settings-account-action-bar>button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.settings-workspace-content>:where(.app-settings-section,.app-settings-section-stack){width:100%;max-width:none}.settings-workspace .prompt-settings-section,.settings-workspace .app-settings-section-stack,.settings-workspace .app-settings-section-stack .settings-editor{max-width:none}.settings-workspace .storage-provider-copy strong small{color:var(--teach-action-soft-text)}.settings-workspace-group-stack{display:grid;gap:16px}.settings-workspace-group-stack>[data-settings-id]{scroll-margin-top:16px}.settings-workspace-compact-setting{grid-template-columns:minmax(0,1.5fr) minmax(230px,.7fr);align-items:center;gap:12px 24px;padding-block:18px}.settings-workspace-compact-setting>.app-settings-section-heading{margin:0}.settings-workspace-compact-setting>.settings-field{margin:0}.settings-workspace-inline-control{min-width:0;display:grid;grid-template-columns:auto minmax(160px,1fr);align-items:center;gap:10px}.settings-workspace-inline-control>span{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label)}.settings-workspace-inline-control .app-dropdown{width:100%}.settings-workspace-inline-link{grid-column:1 / -1;justify-self:start;padding:0;border:0;color:var(--muted);background:transparent;font-size:12px;text-align:start}.settings-workspace-inline-link strong{color:var(--teach-action-soft-text)}.settings-workspace-inline-link:hover strong{text-decoration:underline}.settings-workspace-disclosure{scroll-margin-top:16px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel);box-shadow:var(--shadow-panel)}.settings-workspace-disclosure>summary{min-height:76px;display:grid;grid-template-columns:24px minmax(0,1fr) 20px;align-items:center;gap:12px;padding:14px 18px;cursor:pointer;list-style:none}.settings-workspace-disclosure>summary::-webkit-details-marker{display:none}.settings-workspace-disclosure>summary:hover{background:var(--surface-card)}.settings-workspace-disclosure>summary>svg:first-child{color:var(--teach-action-soft-text)}.settings-workspace-disclosure>summary>svg:last-child{color:var(--muted);transition:transform .16s ease}.settings-workspace-disclosure[open]>summary>svg:last-child{transform:rotate(180deg)}.settings-workspace-disclosure>summary>span{min-width:0;display:grid;gap:3px}.settings-workspace-disclosure>summary strong{font-size:16px;font-weight:var(--font-weight-heading)}.settings-workspace-disclosure>summary small{color:var(--muted);font-size:12px;line-height:1.4}.settings-workspace-disclosure-body{border-top:1px solid var(--line)}.settings-workspace-disclosure-body>.app-settings-section{border:0;border-radius:0;box-shadow:none}.settings-workspace-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.settings-workspace-detail-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,.85fr);gap:18px;align-items:start}.settings-workspace-detail-grid>.app-settings-section-stack{display:grid;gap:16px}.settings-workspace-primary-card,.settings-workspace-side-card{min-width:0}.settings-workspace .app-settings-section-heading.with-icon{grid-template-columns:auto minmax(0,1fr) auto}.settings-workspace-status-pill{min-height:24px;display:inline-flex;align-items:center;justify-content:center;padding:2px 9px;border-radius:999px;color:var(--muted);background:var(--surface-input);font-size:11px;font-weight:600}.settings-workspace-status-pill.is-connected{color:var(--app-success-text);background:var(--teach-green-soft)}.settings-workspace-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settings-workspace-choice{min-height:116px;display:grid;grid-template-columns:36px minmax(0,1fr) 22px;align-items:start;gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-panel);color:var(--text);background:var(--surface-card);text-align:start}.settings-workspace-choice:hover{border-color:color-mix(in srgb,var(--teach-green) 44%,var(--line))}.settings-workspace-choice.is-selected{border-color:var(--teach-green);box-shadow:inset 0 0 0 1px var(--teach-green);background:var(--teach-green-soft)}.settings-workspace-choice-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:var(--radius-control);color:var(--teach-action-soft-text);background:var(--teach-green-soft)}.settings-workspace-choice>span:nth-child(2){min-width:0;display:grid;gap:4px}.settings-workspace-choice strong{font-weight:600}.settings-workspace-choice small{color:var(--muted);font-size:12px;line-height:1.45}.settings-workspace-choice-check{width:20px;height:20px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--teach-action-solid-text);background:var(--surface-card)}.is-selected>.settings-workspace-choice-check{border-color:var(--teach-green);background:var(--teach-green)}.settings-workspace-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.settings-workspace-actions :is(button,a,label){display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none}.settings-workspace-definition-list{display:grid;gap:0;margin:0}.settings-workspace-definition-list>div{display:grid;grid-template-columns:minmax(110px,.65fr) minmax(0,1fr);gap:16px;padding:11px 0;border-top:1px solid var(--line)}.settings-workspace-definition-list>div:first-child{border-top:0}.settings-workspace-definition-list dt{color:var(--muted)}.settings-workspace-definition-list dd{margin:0;font-weight:600;overflow-wrap:anywhere}.settings-workspace-language-list button.is-selected{border-color:var(--teach-green);background:var(--teach-green-soft)}.settings-workspace-segmented{width:fit-content;display:inline-grid;grid-auto-flow:column;gap:3px;padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--surface-input)}.settings-workspace-language-segmented{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:column;direction:ltr}.settings-workspace-segmented button{min-height:34px;padding:0 12px;border:0;border-radius:7px;color:var(--muted);background:transparent;font-weight:600}.settings-workspace-segmented button.active{color:var(--teach-action-soft-text);background:var(--surface-card);box-shadow:var(--shadow-action-compact)}.settings-workspace-account-identity,.settings-workspace-installed-identity{display:flex;align-items:center;gap:13px;padding-bottom:16px;border-bottom:1px solid var(--line)}.settings-workspace-account-identity .settings-workspace-avatar{width:44px;height:44px;border-radius:11px;font-size:16px}.settings-workspace-installed-identity img{width:52px;height:52px;border-radius:12px}.subscription-settings-stack{display:grid;gap:18px}.subscription-current-card{min-height:132px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px;border:1px solid color-mix(in srgb,var(--teach-green) 40%,var(--line));border-radius:var(--radius-panel);background:color-mix(in srgb,var(--teach-green-soft) 52%,var(--surface-card));box-shadow:var(--shadow-panel)}.subscription-current-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:var(--radius-control);color:var(--teach-action-soft-text);background:var(--teach-green-soft)}.subscription-current-card>div{min-width:0;display:grid;gap:4px}.subscription-current-card small{color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-emphasis);text-transform:uppercase;letter-spacing:.06em}.subscription-current-card h2{margin:0;font-size:21px;line-height:1.2}.subscription-current-card p{max-width:68ch;margin:0;color:var(--muted);font-size:14px;line-height:1.5}.subscription-plans-section,.subscription-referral-section{gap:18px}.subscription-section-toolbar{display:flex;align-items:start;justify-content:space-between;gap:16px}.subscription-cadence-control{display:grid;justify-items:end;gap:6px}.subscription-discount-pill{min-height:24px;display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;color:var(--app-success-text);background:color-mix(in srgb,var(--green) 5%,var(--surface-card));font-size:12px;font-weight:var(--font-weight-emphasis)}.subscription-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.subscription-plan-card{min-width:0;display:grid;grid-template-rows:auto auto auto 1fr auto;gap:14px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.subscription-plan-card.is-current{border-color:var(--teach-green);box-shadow:inset 0 0 0 1px var(--teach-green);background:color-mix(in srgb,var(--teach-green-soft) 40%,var(--surface-card))}.subscription-plan-card header{min-height:42px;display:flex;align-items:start;justify-content:space-between;gap:10px}.subscription-plan-card header>div{min-width:0;display:grid;gap:3px}.subscription-plan-card h3{margin:0;font-size:18px;line-height:1.2}.subscription-plan-card header>div>span{color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-emphasis)}.subscription-plan-card>p{min-height:60px;margin:0;color:var(--muted);font-size:13px;line-height:1.5}.subscription-current-check{width:24px;height:24px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:var(--teach-action-solid-text);background:var(--teach-green)}.subscription-plan-price{min-height:62px;display:flex;flex-wrap:wrap;align-content:start;align-items:baseline;gap:3px 7px}.subscription-plan-price strong{color:var(--text);font-size:22px;font-weight:var(--font-weight-heading);line-height:1.15;direction:ltr;unicode-bidi:isolate}.subscription-plan-price>span{color:var(--muted);font-size:12px}.subscription-plan-price>small{width:100%;color:var(--app-success-text);font-size:12px}.subscription-plan-card ul{display:grid;align-content:start;gap:9px;margin:0;padding:0;list-style:none}.subscription-plan-card li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:7px;color:var(--text-soft, var(--text));font-size:12px;line-height:1.4}.subscription-plan-card li svg{color:var(--app-success-text)}.subscription-plan-card footer{min-height:53px;display:flex;align-items:end;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:var(--font-weight-label)}.subscription-plan-card.is-current footer{color:var(--teach-action-soft-text)}.subscription-checkout-button{width:100%;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.subscription-billing-message,.subscription-paypal-note{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:start;gap:9px;padding:13px 14px;border:1px solid color-mix(in srgb,var(--teach-green) 28%,var(--line));border-radius:var(--radius-panel);color:var(--text);background:color-mix(in srgb,var(--teach-green-soft) 26%,var(--surface-card))}.subscription-billing-message svg,.subscription-paypal-note svg{color:var(--app-success-text)}.subscription-billing-message span{font-size:13px;line-height:1.5}.subscription-paypal-note{margin-top:14px}.subscription-paypal-note.needs-setup{border-color:color-mix(in srgb,#b38b2f 35%,var(--line));background:color-mix(in srgb,#f7e9bd 32%,var(--surface-card))}.subscription-paypal-note.needs-setup svg{color:#8a6417}.subscription-paypal-note p{display:grid;gap:3px;margin:0}.subscription-paypal-note p strong{font-size:13px}.subscription-paypal-note p span{color:var(--muted);font-size:12px;line-height:1.45}.subscription-paypal-note small{padding:3px 7px;border-radius:999px;color:#765719;background:color-mix(in srgb,#e4bc55 22%,var(--surface-card));font-size:10px;font-weight:var(--font-weight-emphasis);white-space:nowrap}.subscription-referral-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(250px,.75fr);gap:16px}.subscription-referral-main{min-width:0;display:grid;align-content:start;gap:14px}.subscription-referral-rules{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-muted-band, var(--surface-card))}.subscription-referral-rules>strong{font-size:14px;font-weight:var(--font-weight-emphasis)}.subscription-referral-rules ol{display:grid;gap:6px;margin:0;padding-inline-start:22px;color:var(--text-soft, var(--text));font-size:13px;line-height:1.45}.subscription-referral-rules>p{display:grid;grid-template-columns:18px minmax(0,1fr);gap:7px;margin:0;padding-top:8px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;line-height:1.45}.subscription-referral-rules>p svg{color:var(--teach-action-soft-text)}.subscription-referral-link{display:grid;gap:7px}.subscription-referral-link>span{display:inline-flex;align-items:center;gap:7px;color:var(--text);font-size:13px;font-weight:var(--font-weight-label)}.subscription-referral-link>span svg{color:var(--teach-action-soft-text)}.subscription-referral-link input{width:100%;min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius-control);color:var(--text);background:var(--surface-input);font:inherit;font-size:13px;direction:ltr;text-align:start}.subscription-referral-link input:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 22%,transparent);outline-offset:2px}.subscription-referral-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.subscription-referral-actions button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.subscription-referral-actions small{color:var(--muted);font-size:12px}.subscription-referral-progress{min-width:0;display:grid;align-content:start;justify-items:start;gap:12px;padding:16px;border:1px solid color-mix(in srgb,var(--teach-green) 30%,var(--line));border-radius:var(--radius-panel);background:color-mix(in srgb,var(--teach-green-soft) 30%,var(--surface-card))}.subscription-referral-progress>div:nth-of-type(1){display:grid;gap:3px}.subscription-referral-progress>div:nth-of-type(1) strong{font-size:14px;font-weight:var(--font-weight-emphasis)}.subscription-referral-progress>div:nth-of-type(1) span,.subscription-referral-progress>small{color:var(--muted);font-size:12px;line-height:1.4}.subscription-reward-dots{width:100%;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.subscription-reward-dots span{aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--muted);background:var(--surface-card);font-size:11px;font-weight:var(--font-weight-emphasis)}.subscription-reward-dots span.earned{border-color:var(--green);color:var(--app-success-text);background:color-mix(in srgb,var(--green) 5%,var(--surface-card))}.usage-credit-workspace{display:grid;gap:16px}.usage-credit-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;background:color-mix(in srgb,var(--surface-card) 94%,var(--green-soft));border:1px solid var(--line);border-radius:14px}.usage-credit-summary>div{min-width:0;padding:14px 16px;border-inline-end:1px solid var(--line)}.usage-credit-summary>div:last-child{border-inline-end:0}.usage-credit-summary span,.usage-credit-summary strong{display:block}.usage-credit-summary span{color:var(--muted);font-size:11px}.usage-credit-summary strong{margin-top:4px;color:var(--text);font-size:15px}.usage-credit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.usage-credit-card{min-width:0;padding:20px;background:var(--surface-card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-soft, none)}.usage-credit-card.tone-warning{border-color:#e4ca83;background:linear-gradient(145deg,var(--surface-card) 68%,#fff7df)}.usage-credit-card.tone-critical{border-color:#e2aaa3;background:linear-gradient(145deg,var(--surface-card) 68%,#fff0ed)}.usage-credit-card-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px}.usage-credit-card-heading strong,.usage-credit-card-heading small{display:block}.usage-credit-card-heading strong{color:var(--text);font-size:14px}.usage-credit-card-heading small{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.45}.usage-credit-icon{width:36px;height:36px;display:grid;place-items:center;color:var(--green);background:var(--green-soft);border-radius:10px}.usage-credit-status{padding:5px 8px;color:var(--green);background:var(--green-soft);border-radius:999px;font-size:9px;font-weight:var(--font-weight-heading, 700);white-space:nowrap}.usage-credit-status.tone-warning{color:#7a5c17;background:#f6eac2}.usage-credit-status.tone-critical{color:#903c36;background:#f4d7d3}.usage-credit-balance{margin-top:24px}.usage-credit-balance strong{display:block;color:var(--green-dark);font-size:clamp(30px,4vw,42px);line-height:1;font-variant-numeric:tabular-nums}.usage-credit-balance span{display:block;margin-top:5px;color:var(--muted);font-size:11px}.usage-credit-card progress{width:100%;height:9px;margin-top:18px;overflow:hidden;appearance:none;border:0;border-radius:999px;background:var(--green-soft)}.usage-credit-card progress::-webkit-progress-bar{background:var(--green-soft);border-radius:999px}.usage-credit-card progress::-webkit-progress-value{background:linear-gradient(90deg,#55917e,var(--green));border-radius:999px}.usage-credit-card.tone-warning progress::-webkit-progress-value{background:#ca9a34}.usage-credit-card.tone-critical progress::-webkit-progress-value{background:#bd625a}.usage-credit-card progress::-moz-progress-bar{background:var(--green);border-radius:999px}.usage-credit-numbers{display:flex;justify-content:space-between;gap:12px;margin-top:7px;color:var(--muted);font-size:10px}.usage-credit-guidance{margin:15px 0 0;padding:11px 12px;color:var(--text);background:color-mix(in srgb,currentColor 4%,transparent);border-radius:9px;font-size:10px;line-height:1.5}.usage-credit-loading{min-height:180px;display:grid;place-items:center;color:var(--muted)}body:has(.settings-workspace) .app-shell :is(.assistant-launcher,.assistant-panel){display:none}@media(max-width:1100px){.settings-workspace{grid-template-columns:260px minmax(0,1fr)}.settings-workspace-topbar,.settings-workspace-page-header,.settings-workspace-content{width:min(100% - 48px,1040px)}.settings-workspace-detail-grid,.settings-workspace-form-grid{grid-template-columns:1fr}.subscription-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.subscription-plan-card:first-child{grid-column:1 / -1}}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.settings-workspace-back{display:inline-flex}.settings-workspace-search{min-height:44px}.settings-workspace-search input{height:44px}.settings-workspace{box-sizing:border-box;display:block;height:100dvh;min-height:100dvh;overflow:hidden;padding-block-start:var(--app-safe-top);padding-block-end:var(--app-safe-bottom);padding-inline-start:var(--app-safe-left);padding-inline-end:var(--app-safe-right)}.settings-workspace-sidebar{box-sizing:border-box;width:100%;height:100%;min-height:0;border:0}.settings-workspace-main{box-sizing:border-box;display:none;height:100%;min-height:0}.settings-workspace.mobile-page-open .settings-workspace-sidebar{display:none}.settings-workspace.mobile-page-open .settings-workspace-main{display:block}.settings-workspace-topbar,.settings-workspace-page-header,.settings-workspace-content{width:calc(100% - 32px)}.settings-workspace-topbar{min-height:60px;justify-content:space-between;gap:12px}.settings-workspace-mobile-back{display:inline-flex}.settings-workspace-page-header{padding-block:20px}.settings-workspace-page-header h1{font-size:31px}.settings-workspace-content{padding-bottom:calc(32px + var(--app-safe-bottom))}.settings-workspace-compact-setting{grid-template-columns:1fr;align-items:stretch}.settings-workspace-inline-control{grid-template-columns:1fr}.settings-workspace-inline-control .settings-workspace-segmented{grid-auto-flow:column}.settings-workspace-disclosure>summary{min-height:72px;padding-inline:14px}.settings-workspace-choice-grid{grid-template-columns:1fr}.settings-workspace .app-settings-section{padding:16px}.settings-workspace .app-settings-section-heading.with-icon{grid-template-columns:auto minmax(0,1fr)}.settings-workspace .app-settings-section-heading.with-icon .settings-workspace-status-pill{grid-column:1 / -1;justify-self:start}.settings-workspace-actions>:is(button,a,label){min-height:44px;flex:1 1 180px}.settings-account-action-bar>button{flex:1 1 180px}.settings-workspace-nav-group button{min-height:44px}.settings-workspace-segmented{width:100%;grid-auto-flow:row}.settings-workspace-language-segmented{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:column}.settings-workspace-segmented button{min-height:44px}.settings-workspace :is(.settings-cancel-button,.app-action-menu-trigger){min-width:44px;min-height:44px}.settings-workspace .app-action-menu-trigger{width:44px;height:44px}.settings-workspace-inline-link{min-height:44px;padding-block:6px}.settings-workspace .settings-save-message a{display:inline-flex;align-items:center;min-height:44px}.subscription-current-card{grid-template-columns:44px minmax(0,1fr);padding:16px}.subscription-current-card>.settings-workspace-status-pill{grid-column:1 / -1;justify-self:start}.subscription-current-icon{width:44px;height:44px}.subscription-section-toolbar{align-items:stretch;flex-direction:column}.subscription-cadence-control{justify-items:stretch}.subscription-discount-pill{justify-self:start}.subscription-plan-grid,.subscription-referral-grid{grid-template-columns:1fr}.subscription-plan-card:first-child{grid-column:auto}.subscription-plan-card>p{min-height:0}.subscription-checkout-button{min-height:44px}.subscription-paypal-note{grid-template-columns:20px minmax(0,1fr)}.subscription-paypal-note small{grid-column:2;justify-self:start}.subscription-referral-link input{min-height:44px}.subscription-referral-actions button{min-height:44px;flex:1 1 160px}.usage-credit-summary,.usage-credit-grid{grid-template-columns:1fr}.usage-credit-summary>div{border-inline-end:0;border-bottom:1px solid var(--line)}.usage-credit-summary>div:last-child{border-bottom:0}.usage-credit-card{padding:16px}.usage-credit-card-heading{grid-template-columns:auto minmax(0,1fr)}.usage-credit-status{grid-column:2;justify-self:start}}@media(max-width:420px){.settings-workspace-definition-list>div{grid-template-columns:1fr;gap:2px}}@media(prefers-reduced-motion:reduce){.settings-workspace-nav-group button{transition:none}}.settings-workspace .app-settings-section-heading h2{font-size:1.125rem;line-height:1.35}.settings-workspace .app-settings-section-heading{margin-bottom:12px}.settings-workspace .settings-workspace-page-header{margin-bottom:20px}.settings-workspace .settings-workspace-group-stack{gap:14px}.settings-workspace .settings-workspace-disclosure>summary{display:flex;align-items:center;gap:12px;min-height:68px;padding:16px 18px}.settings-workspace .settings-workspace-disclosure>summary>span:first-of-type{flex:1;min-width:0}.settings-workspace .settings-disclosure-action{flex:0 0 auto;font-size:.875rem}.settings-workspace .settings-workspace-disclosure-body{padding:0 16px 16px}.settings-workspace .settings-workspace-disclosure-body>.app-settings-section{border:0;box-shadow:none}.settings-workspace .settings-session-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.settings-workspace .settings-session-row .app-settings-section-heading,.settings-workspace .settings-session-row .settings-workspace-actions{margin:0}.settings-workspace .settings-session-row .app-settings-section-heading p{overflow-wrap:anywhere}.settings-workspace .settings-cancellation-details>summary,.settings-workspace .settings-prompt-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;min-height:44px}.settings-workspace .settings-cancellation-details>summary>span{margin-inline-start:auto}.settings-workspace .settings-cancellation-details[open]>summary,.settings-workspace .settings-prompt-disclosure[open]>summary{margin-bottom:12px}.settings-workspace .settings-prompt-disclosure{padding:10px 0;border-bottom:1px solid var(--line)}.settings-workspace .settings-workspace-topbar{min-height:36px;padding-block:0;border:0}.settings-workspace .settings-workspace-main{padding-top:16px}@media(max-width:700px){.settings-workspace .settings-session-row{flex-wrap:wrap}.settings-workspace .settings-disclosure-action{font-size:.8125rem}}.settings-name-editor{flex:1;min-width:0}.settings-name-editor>summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;cursor:pointer;gap:12px}.settings-name-editor>summary>span{font-size:.8125rem}.settings-name-editor>input{width:100%}.settings-topic-summary{display:flex;flex-wrap:wrap;gap:6px;cursor:pointer;min-height:44px;align-items:center}.settings-topic-summary>span{background:var(--surface-panel-strong);border-radius:6px;padding:3px 8px;font-size:.8125rem}.settings-topic-summary>strong{margin-inline-start:auto}.settings-inactive-grades>summary{cursor:pointer;min-height:44px}.settings-workspace .settings-inactive-grades:not([open]){padding-block:8px;min-height:0}.settings-workspace .settings-workspace-disclosure:not([open]){box-shadow:none}.settings-workspace .settings-workspace-page-header{margin-top:0}.meeting-link-toggle{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-card);cursor:pointer}.meeting-link-toggle.is-checked{border-color:color-mix(in srgb,var(--teach-green) 45%,var(--line));background:color-mix(in srgb,var(--teach-green) 7%,var(--surface-card))}.meeting-link-toggle input{margin:0}.meeting-link-toggle-icon{display:grid;place-items:center;color:var(--teach-green)}.meeting-link-toggle strong,.meeting-link-toggle small{display:block}.meeting-link-toggle small{margin-top:2px;color:var(--muted)}.meeting-link-prompt-backdrop{z-index:calc(var(--z-dialog, 1000) + 12)}.meeting-link-prompt{width:min(500px,calc(100vw - 28px));overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface-card);box-shadow:var(--shadow-lg)}.meeting-link-prompt header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid var(--line)}.meeting-link-prompt header h2,.meeting-link-prompt header p{margin:0}.meeting-link-prompt header>button{display:grid;place-items:center;width:34px;height:34px;border:0;background:transparent}.meeting-link-prompt-mark{display:grid;width:40px;height:40px;place-items:center;border-radius:12px;color:var(--teach-green);background:color-mix(in srgb,var(--teach-green) 12%,var(--surface-card))}.meeting-link-prompt-body{display:grid;gap:9px;padding:20px}.meeting-link-prompt-body p{margin:0 0 5px;color:var(--muted);line-height:1.55}.meeting-link-prompt-body label{font-weight:var(--font-weight-heading, 700)}.meeting-link-prompt-body input{width:100%;min-height:44px}.meeting-link-prompt-error{color:var(--rose)}.meeting-link-prompt footer{display:flex;justify-content:flex-end;gap:9px;padding:14px 20px 18px}.meeting-link-prompt footer button{display:inline-flex;align-items:center;gap:7px}.meeting-link-settings .settings-action-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.meeting-link-settings .settings-action-row button{display:inline-flex;align-items:center;gap:7px}.meeting-link-settings .settings-inline-error{color:var(--rose)}.online-lesson-alert{position:fixed;z-index:70;inset-block-start:14px;inset-inline:max(14px,env(safe-area-inset-left)) max(14px,env(safe-area-inset-right));display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:min(480px,calc(100vw - 28px));margin-inline:auto;padding:12px 14px;border:1px solid color-mix(in srgb,var(--teach-green) 30%,var(--line));border-radius:15px;background:var(--surface-sheet);box-shadow:var(--shadow-lg)}.online-lesson-alert-mark{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;color:var(--teach-green);background:color-mix(in srgb,var(--teach-green) 12%,var(--surface-card))}.online-lesson-alert strong,.online-lesson-alert small{display:block}.online-lesson-alert small{margin-top:2px;color:var(--muted)}.online-lesson-alert-close{display:grid;place-items:center;align-self:start;width:44px;min-width:44px;height:44px;padding:0}.online-lesson-alert-actions{display:flex;grid-column:1 / -1;align-items:center;gap:7px}.online-lesson-alert-actions button{display:inline-flex;flex:1;justify-content:center;align-items:center;gap:6px}.online-lesson-alert-collapsed{position:fixed;z-index:70;inset-block-start:14px;inset-inline-end:max(14px,env(safe-area-inset-left),env(safe-area-inset-right))}.online-lesson-alert-collapsed button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;background:var(--surface-sheet);box-shadow:var(--shadow-lg)}@media(max-width:620px){.meeting-link-prompt footer{align-items:stretch;flex-direction:column-reverse}.meeting-link-prompt footer button{justify-content:center;width:100%}.online-lesson-alert{grid-template-columns:auto minmax(0,1fr) 44px;gap:8px}.online-lesson-alert-actions{grid-column:1 / -1}.online-lesson-alert-actions button{flex:1;justify-content:center}}.payment-source-badge{display:inline-flex;align-items:center;width:fit-content;padding:2px 7px;border:1px solid var(--mgmt-blue-mid);border-radius:999px;background:var(--mgmt-blue-soft);color:var(--app-action-text);font-size:.68rem;font-weight:var(--font-weight-label, 500);letter-spacing:.03em;text-transform:uppercase}.toast-notification{position:fixed;inset-inline-end:20px;bottom:calc(var(--toast-base-bottom, 20px) + var(--toast-stack-offset, 0px));z-index:9999;min-width:240px;max-width:360px;display:flex;align-items:center;gap:10px;padding-block:12px;padding-inline:14px 46px;border:1px solid color-mix(in srgb,currentColor 16%,transparent);border-radius:var(--radius-panel, 12px);box-shadow:var(--shadow-dialog, 0 4px 8px rgba(15, 23, 42, .24));font-size:14px;line-height:1.4}.toast-notification>span{flex:1;overflow-wrap:anywhere}.toast-action-stacked{flex-wrap:wrap}.toast-action-stacked>span{flex-basis:100%}.toast-action{min-height:32px;padding:0 11px;border:1px solid color-mix(in srgb,currentColor 34%,transparent);border-radius:var(--radius-control, 8px);background:color-mix(in srgb,currentColor 12%,transparent);color:inherit;font:inherit;font-weight:var(--font-weight-heading, 700);cursor:pointer}.toast-action:hover,.toast-action:focus-visible{background:color-mix(in srgb,currentColor 20%,transparent)}.toast-info{background:var(--text);color:var(--surface-panel-strong)}.toast-success{background:color-mix(in srgb,var(--teach-green) 84%,#0b3d32);color:#fff}.toast-warning{background:#fff0be;color:#6f4900}.toast-danger{background:color-mix(in srgb,var(--rose) 72%,#5b1420);color:#fff}.toast-dismiss{position:absolute;top:6px;inset-inline-end:6px;width:32px;min-width:32px;height:32px;min-height:32px;display:grid;place-items:center;padding:0;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:var(--radius-control, 8px);background:color-mix(in srgb,currentColor 8%,transparent);color:inherit;cursor:pointer}@media(max-width:700px){.toast-notification{inset-inline:12px;width:auto;max-width:none;padding-inline-end:58px}.toast-dismiss{width:44px;min-width:44px;height:44px;min-height:44px}.toast-action{min-height:44px}}.quick-capture-input{display:none}.voice-command-fab,.quick-capture-button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line, #dbe3ec);border-radius:var(--radius-control, 8px);background:var(--surface-card, #fff);color:var(--mgmt-blue, #2563eb);box-shadow:none;cursor:pointer}.quick-capture-button{color:var(--teach-green, #166534)}.quick-capture-button--offline-safe{position:relative;color:var(--app-action-text, var(--teach-green, #166534));background:var(--teach-green-soft, #e8f5ee)}.quick-capture-pending{position:absolute;inset-block-start:-4px;inset-inline-end:-4px;min-width:18px;height:18px;display:grid;place-items:center;padding-inline:4px;border:2px solid var(--surface-card, #fff);border-radius:999px;background:var(--teach-green, #166534);color:var(--teach-action-solid-text);font-size:10px;font-weight:var(--font-weight-label, 500);line-height:1}.quick-capture-button:disabled{opacity:.65;cursor:wait}.quick-capture-spinner{animation:voice-spin .8s linear infinite}.voice-command-backdrop{position:fixed;inset:0;z-index:1400;display:grid;align-items:end;background:#0f172a6b}.voice-command-sheet{box-sizing:border-box;position:relative;width:min(100%,540px);max-height:92dvh;overflow-y:auto;margin:0 auto;padding:16px 18px calc(20px + env(safe-area-inset-bottom));border-radius:var(--radius-sheet, 20px) var(--radius-sheet, 20px) 0 0;background:var(--surface-panel-strong, #fff);box-shadow:var(--shadow-sheet, 0 -4px 8px rgba(15, 23, 42, .18))}.voice-command-sheet header{position:absolute;z-index:2;top:14px;inset-inline-end:14px}.voice-command-sheet h2,.voice-command-sheet p{margin:0}.voice-command-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.voice-command-close{position:relative;display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line, #dbe3ec);border-radius:var(--radius-control, 8px);background:var(--surface-card, #fff);color:inherit}.voice-command-listener{min-height:118px;padding:18px 48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;border:0;border-radius:var(--radius-panel, 12px);background:transparent}.voice-command-listener p{line-height:1.55;font-size:1.05rem}.voice-command-listener small{color:var(--muted, #64748b)}.voice-command-live-capture{width:100%;display:grid;gap:14px;text-align:start}.voice-command-live-status{display:grid;justify-items:center;gap:7px;text-align:center}.voice-command-live-status small{max-width:34rem}.voice-command-live-transcript textarea{min-height:180px}.voice-command-preview{width:100%;display:grid;gap:12px;text-align:start}.voice-command-transcript{display:grid;gap:6px}.voice-command-transcript span{color:var(--muted, #64748b);font-size:.86rem;font-weight:var(--font-weight-label, 500)}.voice-command-transcript textarea{box-sizing:border-box;width:100%;min-height:76px;resize:vertical;padding:9px 11px;border:1px solid var(--line, #cbd5e1);border-radius:var(--radius-control, 8px);background:var(--surface-input, #fff);color:inherit;font:inherit;line-height:1.45}.voice-command-preview dl{margin:0;display:grid;gap:8px}.voice-command-preview dl div{display:flex;align-items:center;justify-content:space-between;gap:16px}.voice-command-preview dt{color:var(--muted, #64748b);font-size:.86rem}.voice-command-preview dd{margin:0;font-weight:var(--font-weight-label, 500);text-align:end}.voice-command-preview .app-dropdown,.voice-command-preview input{width:min(220px,56vw);min-height:var(--button-standard-h, 36px)}.voice-command-preview input{padding:6px 9px;border:1px solid var(--line, #cbd5e1);border-radius:var(--radius-control, 8px);background:var(--surface-input, #fff);color:inherit}.voice-command-warning{padding:10px 12px;border:1px solid var(--danger-line);border-radius:var(--radius-control, 8px);background:var(--danger-soft);color:color-mix(in srgb,var(--rose) 82%,#72152a);font-size:.88rem!important}.voice-assistant-message{color:var(--ink, #1f2937);line-height:1.5!important}.voice-assistant-proposals{display:grid;gap:12px}.voice-assistant-proposal{display:grid;gap:12px;padding:14px;border:1px solid var(--line, #dbe3ec);border-radius:var(--radius-panel, 12px);background:var(--surface-card, #fff)}.voice-assistant-proposal.is-saved{border-color:color-mix(in srgb,var(--teach-green) 45%,var(--line));background:color-mix(in srgb,var(--teach-green-soft) 55%,var(--surface-card))}.voice-assistant-proposal-title{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:var(--font-weight-label, 600)}.voice-assistant-proposal-title span{display:inline-flex;align-items:center;gap:6px}.voice-assistant-proposal>.voice-command-record{justify-self:end;min-height:var(--button-primary-h, 40px);padding:0 18px;display:inline-flex;align-items:center;gap:8px;border-radius:var(--radius-control, 8px);font-weight:var(--font-weight-label, 500)}.voice-command-pulse{width:58px;height:58px;border-radius:999px;background:var(--rose);box-shadow:0 0 color-mix(in srgb,var(--rose) 35%,transparent);animation:voice-pulse 1.35s infinite}.voice-command-spinner{width:42px;height:42px;border:4px solid var(--teach-green-soft);border-top-color:var(--teach-green);border-radius:999px;animation:voice-spin .8s linear infinite}.voice-command-actions{min-height:48px;margin-top:16px;display:flex;justify-content:center}.voice-command-actions button{min-height:var(--button-primary-h, 40px);padding:0 20px;display:inline-flex;align-items:center;gap:9px;border:1px solid transparent;border-radius:var(--radius-control, 8px);font-weight:var(--font-weight-label, 500)}.voice-command-actions button:disabled{opacity:.45;cursor:not-allowed}.voice-command-record{border-color:var(--action-control-border, var(--teach-green))!important;background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}.voice-command-stop{border-color:var(--danger-line)!important;background:var(--danger-soft);color:color-mix(in srgb,var(--rose) 82%,#72152a)}@keyframes voice-pulse{70%{box-shadow:0 0 0 18px #ef444400}}@keyframes voice-spin{to{transform:rotate(360deg)}}@media(max-width:700px),(max-height:700px)and (pointer:coarse){.voice-command-fab{position:relative;width:31px;height:31px}.voice-command-fab:after{content:"";position:absolute;inset:-7px}.voice-command-fab>svg{width:15px;height:15px}.voice-command-sheet{width:100%;max-width:none;max-height:96dvh;padding:12px 8px calc(16px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0}.voice-command-sheet header{top:2px;inset-inline-end:2px}.voice-command-close{width:44px;height:44px;border:0;background:transparent}.voice-command-close:before{content:"";position:absolute;inset:6px;border:1px solid var(--line, #dbe3ec);border-radius:var(--radius-control, 8px);background:var(--surface-card, #fff)}.voice-command-close svg{position:relative;z-index:1}.voice-command-listener{width:100%;min-height:96px;padding:12px 4px}.voice-command-live-capture{gap:10px}.voice-command-live-status{gap:5px}.voice-command-live-status .voice-command-pulse{width:42px;height:42px}.voice-command-live-status .voice-command-spinner{width:34px;height:34px}.voice-command-live-transcript textarea{min-height:clamp(220px,36dvh,340px)}.voice-command-preview{gap:10px}.voice-command-transcript textarea{min-height:clamp(220px,32dvh,320px);padding:10px 12px}.voice-assistant-proposal{padding:12px 10px}.voice-command-preview .app-dropdown-trigger,.voice-command-preview input,.voice-student-picker summary,.voice-command-actions button,.voice-assistant-proposal>.voice-command-record{min-height:var(--button-phone-h, 44px)}}@media(prefers-reduced-motion:reduce){.voice-command-pulse,.voice-command-spinner{animation:none}}.language-selector{display:grid;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card)}.language-selector-label{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:13px;font-weight:500}.language-selector-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:3px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input)}.language-selector .language-selector-options button{min-height:36px;padding:0 12px;border:0;border-radius:calc(var(--radius-control) - 2px);background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:500;cursor:pointer}.language-selector .language-selector-options button:not(.is-selected){background:transparent;color:var(--muted);box-shadow:none}.language-selector .language-selector-options button.is-selected{background:var(--teach-green-soft);color:var(--teach-action-soft-text);box-shadow:inset 0 0 0 1px var(--teach-green-mid)}.language-selector .language-selector-options button:focus-visible{outline:2px solid var(--teach-green);outline-offset:2px}.language-selector.is-compact{margin-block-end:12px;padding:8px}.language-selector.is-compact .language-selector-label{justify-content:center}@media(max-width:760px){.language-selector .language-selector-options button{min-height:44px}}.assistant-panel,.assistant-launcher{--assistant-panel-enter-x: 16px}:root[dir=rtl] .assistant-panel,:root[dir=rtl] .assistant-launcher{--assistant-panel-enter-x: -16px}.assistant-tools{position:relative;display:flex;flex-wrap:nowrap;align-items:center;gap:8px;padding-block:6px}.app-sidebar .assistant-tools .assistant-launcher{flex:1 1 0;min-width:0;min-height:44px;justify-content:center;font-size:14px}.app-sidebar .assistant-tools .student-guide-launcher{flex:0 0 44px;width:44px;min-width:44px;height:44px;min-height:44px}:root .assistant-tools .assistant-launcher{position:relative;inset:auto}.assistant-launcher{min-height:36px;display:inline-flex;align-items:center;gap:6px;padding:0 11px;border:1px solid var(--action-control-border, color-mix(in srgb, var(--teach-green) 44%, var(--line)));border-radius:var(--radius-control);background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));box-shadow:0 4px 8px #16653433;font-size:13px;font-weight:var(--font-weight-emphasis);cursor:pointer}.assistant-launcher:hover{background:var(--action-control-hover-bg, color-mix(in srgb, var(--teach-green) 86%, #000))}.assistant-launcher:before{position:absolute;inset:-6px;content:""}.assistant-panel{position:fixed;top:12px;inset-inline-end:12px;bottom:12px;z-index:1300;width:min(clamp(500px,38vw,600px),calc(100vw - 24px));min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border-radius:var(--radius-panel);background:var(--surface-popover, #fff);color:var(--text);box-shadow:0 6px 8px #1e2a3a33;font-size:var(--font-body);font-weight:var(--font-weight-body);line-height:var(--line-height-body);animation:assistant-panel-enter .18s cubic-bezier(.2,.75,.3,1)}body:has(.assistant-panel) .app-dropdown-menu{z-index:1400}.assistant-panel-header{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-bottom:1px solid var(--line)}.assistant-panel-heading{min-width:0;display:flex;align-items:center;gap:8px}.assistant-header-actions{display:flex;align-items:center;gap:6px}.assistant-panel-mark{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-green-dark, var(--teach-green))}.assistant-panel-heading h2,.assistant-panel-heading p,.assistant-message p,.assistant-voice-error,.assistant-voice-status,.assistant-voice-privacy{margin:0}.assistant-panel-heading h2{font-size:var(--font-md);line-height:var(--line-height-heading)}.assistant-panel-heading p{display:flex;align-items:center;gap:4px;margin-top:1px;color:var(--muted);font-size:var(--font-caption)}.assistant-icon-button,.assistant-composer-actions button{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);cursor:pointer}.assistant-icon-button:hover,.assistant-composer-actions button:hover:not(:disabled){border-color:var(--teach-green-mid);background:var(--teach-green-soft)}.assistant-icon-button:disabled{opacity:.48;cursor:not-allowed}.assistant-message-stream{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px;scrollbar-gutter:stable}.assistant-message{max-width:88%;padding:10px 12px;border:1px solid transparent;border-radius:var(--radius-control);box-shadow:0 1px 2px color-mix(in srgb,var(--text) 9%,transparent);font-size:var(--font-body);line-height:1.5;overflow-wrap:anywhere}.assistant-message>p{white-space:pre-wrap}.assistant-message-speaker{display:block;margin-bottom:4px;color:var(--muted);font-size:var(--font-caption);font-weight:var(--font-weight-emphasis);line-height:1.2}.assistant-message+.assistant-message,.assistant-message+.assistant-capabilities,.assistant-capabilities+.assistant-message,.assistant-message+.assistant-thinking{margin-top:10px}.assistant-message-assistant{margin-inline-start:auto;margin-inline-end:0;border-color:color-mix(in srgb,var(--line) 82%,#d49a42);border-start-end-radius:6px;background:color-mix(in srgb,var(--surface-card) 84%,#ffe6b8)}.assistant-message-user{margin-inline-start:0;margin-inline-end:auto;border-color:color-mix(in srgb,var(--teach-green) 34%,var(--line));border-start-start-radius:6px;background:color-mix(in srgb,var(--teach-green-soft) 78%,var(--teach-green-mid));color:var(--text)}.assistant-message-user .assistant-message-speaker{color:color-mix(in srgb,var(--teach-green) 50%,var(--text))}.assistant-message.is-error{background:var(--danger-soft);color:color-mix(in srgb,var(--rose) 78%,var(--text))}.assistant-retry-button{min-height:32px;display:inline-flex;align-items:center;gap:6px;margin-top:9px;padding:0 9px;border:1px solid var(--danger-line);border-radius:var(--radius-control);background:var(--surface-card);color:inherit;font-weight:var(--font-weight-label);cursor:pointer}.assistant-retry-button:disabled{opacity:.55;cursor:not-allowed}.assistant-sources{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.assistant-sources button{min-width:0;max-width:100%;min-height:32px;display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--muted);font-size:var(--font-caption);font-weight:var(--font-weight-label);text-align:start;cursor:pointer}.assistant-sources button:hover{border-color:var(--teach-green-mid);color:var(--text)}.assistant-sources span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assistant-proposal{margin-top:0;padding:10px;border:1px solid var(--teach-green-mid);border-radius:var(--radius-control);background:var(--surface-card)}.assistant-proposal-list{display:grid;gap:10px;margin-top:12px}.assistant-proposal.is-saved{background:color-mix(in srgb,var(--teach-green-soft) 62%,var(--surface-card))}.assistant-proposal.is-replaced{border-color:var(--line);background:var(--surface-muted-band)}.assistant-proposal-title{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:var(--font-weight-emphasis)}.assistant-proposal-title>span:first-child{min-width:0;display:inline-flex;align-items:center;gap:6px}.assistant-saved-label{display:inline-flex;align-items:center;gap:3px;color:var(--teach-green-dark, var(--teach-green));font-size:var(--font-caption)}.assistant-proposal dl{display:grid;gap:6px;margin:10px 0 0}.assistant-proposal dl div{display:grid;grid-template-columns:78px minmax(0,1fr);gap:9px}.assistant-proposal dt{color:var(--muted);font-size:var(--font-caption);font-weight:var(--font-weight-label)}.assistant-proposal dd{min-width:0;margin:0;white-space:pre-wrap}.assistant-proposal-error{margin:9px 0 0;padding:7px 8px;border-radius:var(--radius-control);background:var(--danger-soft);color:color-mix(in srgb,var(--rose) 78%,var(--text));font-size:var(--font-caption)}.assistant-proposal-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:12px}.assistant-proposal-actions button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);font-weight:var(--font-weight-label);cursor:pointer}.assistant-proposal-actions .assistant-confirm-button{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}.assistant-proposal-actions button:disabled,.assistant-composer-actions button:disabled{opacity:.55;cursor:not-allowed}.assistant-capabilities{margin-top:12px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card)}.assistant-capabilities summary{min-height:44px;display:flex;align-items:center;gap:8px;padding:7px 10px;color:var(--text);font-size:13px;font-weight:var(--font-weight-label);list-style:none;cursor:pointer;touch-action:manipulation}.assistant-capabilities summary::-webkit-details-marker{display:none}.assistant-capabilities summary:hover{background:var(--teach-green-soft)}.assistant-capabilities summary:focus-visible{outline:2px solid color-mix(in srgb,var(--teach-green) 64%,transparent);outline-offset:-2px}.assistant-capabilities-heading{min-width:0;flex:1;display:inline-flex;align-items:center;gap:7px}.assistant-capabilities-heading svg,.assistant-capabilities li svg{flex:0 0 auto;color:var(--teach-green-dark, var(--teach-green))}.assistant-capabilities-count{flex:0 0 auto;color:var(--muted);font-size:var(--font-caption);font-weight:var(--font-weight-body)}.assistant-capabilities-chevron{flex:0 0 auto;color:var(--muted);transition:transform .18s ease}.assistant-capabilities[open] .assistant-capabilities-chevron{transform:rotate(180deg)}.assistant-capabilities ul{display:grid;margin:0;padding:4px 10px 10px;border-top:1px solid var(--line);list-style:none}.assistant-capabilities li{display:flex;align-items:flex-start;gap:8px;padding:8px 2px;color:var(--text);font-size:13px;line-height:1.4}.assistant-capabilities li+li{border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.assistant-capabilities li svg{margin-top:2px}.assistant-thinking{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;color:var(--muted);font-size:13px}.assistant-thinking>span{display:inline-flex;align-items:center;gap:7px}.assistant-thinking button{min-height:32px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);font-weight:var(--font-weight-label);cursor:pointer}.assistant-composer{padding:10px 12px calc(10px + var(--app-safe-bottom, 0px));border-top:1px solid var(--line);background:var(--surface-popover, #fff)}.assistant-composer-control{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;padding:8px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-input)}.assistant-composer textarea{width:100%;min-height:50px;max-height:180px;resize:none;overflow-y:hidden;padding:3px 2px;border:0;outline:0;background:transparent;color:var(--text);font:inherit;line-height:1.45}.assistant-composer:has(.is-recording) textarea{min-height:clamp(150px,26dvh,230px)}.assistant-composer textarea::placeholder{color:var(--muted);opacity:1}.assistant-composer-actions{display:flex;gap:6px}.assistant-composer-actions .assistant-send-button{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}.assistant-composer-actions .is-recording{border-color:var(--danger-line);background:var(--danger-soft);color:var(--rose)}.assistant-composer>small{display:block;margin-top:6px;color:var(--muted);font-size:var(--font-caption);text-align:center}.assistant-voice-error,.assistant-voice-status,.assistant-voice-privacy{margin-bottom:7px;font-size:var(--font-caption)}.assistant-voice-error{color:color-mix(in srgb,var(--rose) 82%,#72152a)}.assistant-voice-status{color:var(--teach-green-dark, var(--teach-green))}.assistant-spin{animation:assistant-spin .8s linear infinite}@keyframes assistant-panel-enter{0%{opacity:0;transform:translate(var(--assistant-panel-enter-x, 16px))}to{opacity:1;transform:translate(0)}}@keyframes assistant-spin{to{transform:rotate(360deg)}}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.assistant-launcher{top:22px;inset-inline-end:208px;bottom:auto;z-index:850}.assistant-launcher span{display:none}.assistant-launcher{width:48px;padding:0;justify-content:center}.assistant-panel{inset:var(--app-safe-top, 0px) var(--app-safe-right, 0px) var(--app-phone-nav-height, 66px) var(--app-safe-left, 0px);width:auto;height:auto;border-radius:0;background:var(--surface-sheet, var(--surface-popover, #fff))}.assistant-panel-header{padding:6px 10px}.assistant-hide-button{display:none}.assistant-icon-button,.assistant-composer-actions button{width:44px;height:44px;flex-basis:44px}.assistant-retry-button,.assistant-thinking button{min-height:44px}.assistant-message-stream{padding:12px}.assistant-message{max-width:96%}.assistant-sources button,.assistant-proposal-actions button{min-height:44px}.assistant-proposal-actions button{flex:1}}body[data-app-layout-mode=phone] .assistant-launcher{top:22px;inset-inline-end:auto;bottom:auto;inset-inline-start:min(calc(100vw - 206px),184px);z-index:850;width:48px;padding:0;justify-content:center}body[data-app-layout-mode=phone] .assistant-launcher span{display:none}body[data-app-layout-mode=phone] .assistant-panel{inset:var(--app-safe-top, 0px) var(--app-safe-right, 0px) var(--app-phone-nav-height, 66px) var(--app-safe-left, 0px);width:auto;height:auto;border-radius:0;background:var(--surface-sheet, var(--surface-popover, #fff))}body[data-app-layout-mode=phone] .assistant-panel-header{padding:6px 10px}body[data-app-layout-mode=phone] .assistant-composer{padding-block-end:10px}body[data-app-layout-mode=phone] .assistant-hide-button{display:none}body[data-app-layout-mode=phone] .assistant-icon-button,body[data-app-layout-mode=phone] .assistant-composer-actions button{width:44px;height:44px;flex-basis:44px}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.assistant-composer-actions .assistant-voice-button{position:relative;width:44px;height:44px;flex-basis:44px}.assistant-composer-actions .assistant-voice-button:after{content:"";position:absolute;inset:0}}body[data-app-layout-mode=phone] .assistant-composer-actions .assistant-voice-button{position:relative;width:44px;height:44px;flex-basis:44px}body[data-app-layout-mode=phone] .assistant-composer-actions .assistant-voice-button:after{content:"";position:absolute;inset:0}body[data-app-layout-mode=phone] .assistant-retry-button,body[data-app-layout-mode=phone] .assistant-thinking button{min-height:44px}body[data-app-layout-mode=phone] .assistant-message-stream{padding:12px}body[data-app-layout-mode=phone] .assistant-message{max-width:96%}@supports selector(body:has(.assistant-composer textarea:focus)){body[data-app-layout-mode=phone]:has(.assistant-composer textarea:focus) .assistant-panel{inset-block-end:var(--app-safe-bottom, 0px)}}body[data-app-layout-mode=phone] .assistant-sources button,body[data-app-layout-mode=phone] .assistant-proposal-actions button{min-height:44px}body[data-app-layout-mode=phone] .assistant-proposal-actions button{flex:1}body:has(.lesson-drawer) .assistant-launcher,body:has(.teaching-modal-backdrop) .assistant-launcher,body:has(.teaching-lesson-filters.history-mode):not(:has(.teaching-detail-panel)) .assistant-launcher,body:has(.teaching-student-filter-popup.open) .assistant-launcher,body:has(.teaching-history-more-filter.open) .assistant-launcher,body:has(.global-search-backdrop) .assistant-launcher,body:has(.mobile-more-backdrop) .assistant-launcher,body:has(.voice-command-backdrop) .assistant-launcher{display:none}body:has(.lesson-drawer,.teaching-modal-backdrop,.teaching-student-filter-popup.open,.teaching-history-more-filter.open,.global-search-backdrop,.mobile-more-backdrop,.voice-command-backdrop,[data-modal-root]:not(.student-guide-backdrop),.assignment-sheet,.mark-paid-modal,.resource-source-dialog,.settings-workspace,.debt-reminder-modal,.reminder-dialog-backdrop) .assistant-tools,body:has(.teaching-lesson-filters.history-mode):not(:has(.teaching-detail-panel)) .assistant-tools{display:none}@media(prefers-reduced-motion:reduce){.assistant-panel,.assistant-spin,.assistant-capabilities-chevron{animation:none;transition:none}}body[data-app-layout-mode=phone] .assistant-launcher{top:calc(18px + var(--app-safe-top, 0px));inset-inline-end:calc(172px + var(--app-safe-right, 0px));inset-inline-start:auto;width:44px;height:44px}@media(min-width:981px){html[dir=rtl] .assistant-launcher{right:auto;left:20px}html[dir=rtl] .assistant-panel{right:auto;left:12px}}.assistant-student-proposal-editor{display:grid;gap:14px;margin-top:12px}.assistant-student-proposal-editor fieldset{min-width:0;margin:0;padding:12px;border:1px solid var(--line);border-radius:var(--radius-control)}.assistant-student-proposal-editor legend{padding-inline:5px;color:var(--text);font-size:var(--font-caption);font-weight:var(--font-weight-emphasis)}.assistant-student-proposal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.assistant-student-proposal-grid>label,.assistant-student-proposal-notes{min-width:0;display:grid;gap:5px;color:var(--muted);font-size:var(--font-caption);font-weight:var(--font-weight-label)}.assistant-student-proposal-grid :is(input,.app-dropdown-trigger),.assistant-student-proposal-grid select,.assistant-student-proposal-grid textarea,.assistant-student-proposal-notes textarea{box-sizing:border-box;width:100%;min-height:40px;padding:8px 9px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input, var(--surface-card));color:var(--text);font:inherit;font-weight:var(--font-weight-regular, 400)}.assistant-operation-impact{margin:0;padding:9px 10px;border-radius:var(--radius-control);background:var(--surface-soft, var(--surface-muted));color:var(--muted);font-size:var(--font-caption);line-height:1.45}.assistant-student-proposal-notes textarea{min-height:88px;resize:vertical}.assistant-student-proposal-wide{grid-column:1 / -1}.assistant-student-proposal-grid>.assistant-student-proposal-check{display:flex;align-items:center;gap:8px;min-height:40px}.assistant-student-proposal-check input{width:18px;min-height:18px;margin:0}body[data-app-layout-mode=phone] .assistant-student-proposal-grid{grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .assistant-student-proposal-wide{grid-column:auto}body[data-app-layout-mode=phone] .assistant-student-proposal-grid :is(input,.app-dropdown-trigger){min-height:var(--button-phone-h, 44px);font-size:16px}body[data-app-layout-mode=phone] .assistant-student-proposal-grid :is(select,textarea){min-height:var(--button-phone-h, 44px);font-size:16px}[data-voice-dictation-target=true][data-voice-dictation-side=right],.message-draft-editor:has(textarea[data-voice-dictation-target=true][data-voice-dictation-side=right]) .parent-message-text-highlight{padding-right:46px!important}[data-voice-dictation-target=true][data-voice-dictation-side=left],.message-draft-editor:has(textarea[data-voice-dictation-target=true][data-voice-dictation-side=left]) .parent-message-text-highlight{padding-left:46px!important}.voice-dictation-anchor{position:absolute;z-index:4;display:block;pointer-events:none}.voice-dictation-anchor>button.voice-dictation-button{position:absolute;inset-block-start:2px;inset-inline-end:2px;display:grid;place-items:center;width:var(--voice-dictation-button-size, 32px);height:var(--voice-dictation-button-size, 32px);min-width:0;min-height:0;padding:0;border:1px solid color-mix(in srgb,var(--teach-green, #174f48) 24%,var(--line, #cbd5e1));border-radius:999px;background:color-mix(in srgb,var(--surface-panel-strong, #fff) 94%,var(--teach-green, #174f48));color:var(--teach-action-soft-text, #174f48);box-shadow:0 1px 3px color-mix(in srgb,var(--ink, #102c27) 14%,transparent);cursor:pointer;pointer-events:auto;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.voice-dictation-anchor>button.voice-dictation-button:after{content:"";position:absolute;inset:-6px}@media(max-width:700px),(pointer:coarse)and (max-width:900px){body[data-app-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button,.app-shell[data-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button{width:44px;min-width:44px;height:44px;min-height:44px;flex-basis:44px;border-color:transparent;background:transparent;box-shadow:none}body[data-app-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button:before,.app-shell[data-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button:before{position:absolute;inset:6px;content:"";border:1px solid color-mix(in srgb,var(--teach-green, #174f48) 24%,var(--line, #cbd5e1));border-radius:999px;background:color-mix(in srgb,var(--surface-panel-strong, #fff) 94%,var(--teach-green, #174f48));box-shadow:0 1px 3px color-mix(in srgb,var(--ink, #102c27) 14%,transparent);pointer-events:none}body[data-app-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button:after,.app-shell[data-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button:after{inset:0}body[data-app-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button>svg,.app-shell[data-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button>svg{position:relative;z-index:1;width:16px;min-width:16px;height:16px;min-height:16px;flex:0 0 16px}body[data-app-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button:hover:not(:disabled),.app-shell[data-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button:hover:not(:disabled){border-color:transparent;background:transparent;box-shadow:none}body[data-app-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button:hover:not(:disabled):before,.app-shell[data-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button:hover:not(:disabled):before{border-color:color-mix(in srgb,var(--teach-green, #174f48) 54%,var(--line, #cbd5e1));background:color-mix(in srgb,var(--surface-panel-strong, #fff) 86%,var(--teach-green, #174f48));box-shadow:0 2px 5px color-mix(in srgb,var(--ink, #102c27) 18%,transparent)}body[data-app-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button.is-recording,.app-shell[data-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button.is-recording{border-color:transparent;background:transparent;box-shadow:none}body[data-app-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button.is-recording:before,.app-shell[data-layout-mode=phone] .voice-dictation-anchor>button.voice-dictation-button.is-recording:before{border-color:color-mix(in srgb,var(--danger, #b73535) 70%,transparent);background:color-mix(in srgb,var(--danger, #b73535) 12%,var(--surface-panel-strong, #fff))}}.voice-dictation-anchor>button.voice-dictation-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--teach-green, #174f48) 54%,var(--line, #cbd5e1));background:color-mix(in srgb,var(--surface-panel-strong, #fff) 86%,var(--teach-green, #174f48));box-shadow:0 2px 5px color-mix(in srgb,var(--ink, #102c27) 18%,transparent)}.voice-dictation-anchor>button.voice-dictation-button:focus-visible{outline:3px solid var(--focus-ring, #52a69a);outline-offset:2px}.voice-dictation-anchor>button.voice-dictation-button:disabled{margin:0;cursor:default;opacity:.42}.voice-dictation-anchor>button.voice-dictation-button.is-recording{border-color:color-mix(in srgb,var(--danger, #b73535) 70%,transparent);background:color-mix(in srgb,var(--danger, #b73535) 12%,var(--surface-panel-strong, #fff));color:var(--danger-text, #b73535);opacity:1}.voice-dictation-anchor>button.voice-dictation-button.is-busy{opacity:1}.voice-dictation-status{position:fixed!important;width:1px!important;height:1px!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;border:0!important;padding:0!important;white-space:nowrap!important;pointer-events:none!important}.voice-dictation-spin{animation:voice-dictation-spin .8s linear infinite}@keyframes voice-dictation-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.voice-dictation-button{transition:none}.voice-dictation-spin{animation:none}}.reminder-launcher{position:fixed;inset-inline-end:142px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:1200;min-height:44px;display:inline-flex;align-items:center;gap:8px;padding:0 14px;border:1px solid color-mix(in srgb,var(--app-warning-text, var(--rose)) 48%,var(--line));border-radius:var(--radius-control);background:var(--app-warning-soft-bg, color-mix(in srgb, var(--rose) 14%, var(--surface-card)));color:var(--app-warning-text, var(--text));box-shadow:var(--shadow-action-compact);font-weight:var(--font-weight-emphasis);cursor:pointer}.reminder-attention-dot{width:8px;height:8px;flex:0 0 8px;border-radius:999px;background:currentColor;animation:reminder-attention-pulse 1.7s ease-in-out 2}.reminder-attention-count{display:none}@keyframes reminder-attention-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.45}}@media(prefers-reduced-motion:reduce){.reminder-attention-dot{animation:none}}.reminder-popover{z-index:1250;width:min(360px,calc(100vw - 24px));padding:14px;border:1px solid color-mix(in srgb,var(--app-warning-text, var(--rose)) 44%,var(--line));border-radius:var(--radius-panel);background:var(--surface-popover);color:var(--text);box-shadow:var(--shadow-dropdown)}.reminder-popover-home{position:fixed;inset-inline-end:20px;bottom:calc(76px + env(safe-area-inset-bottom))}.calendar-tool{position:relative}.reminder-popover-calendar{position:absolute;inset-inline-end:16px;top:136px}.reminder-popover header{display:grid;grid-template-columns:36px minmax(0,1fr) 40px;align-items:start;gap:8px}.reminder-popover header>div{min-width:0}.reminder-popover header small,.reminder-popover-meta{color:var(--muted);font-size:var(--font-caption)}.reminder-popover .reminder-popover-eyebrow{display:block;color:var(--app-warning-text, var(--text));font-size:11px;font-weight:var(--font-weight-label);letter-spacing:.02em;text-transform:uppercase}.reminder-popover h2{margin:2px 0 0;font-size:var(--font-body);line-height:var(--line-height-control)}.reminder-popover-mark,.reminder-dialog-mark{width:36px;height:36px;display:inline-grid;place-items:center;border-radius:var(--radius-control);background:var(--app-warning-soft-bg, color-mix(in srgb, var(--rose) 14%, var(--surface-card)));color:var(--app-warning-text, var(--text))}.reminder-popover-meta{margin:10px 0 6px}.reminder-popover-note{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.reminder-popover footer,.reminder-dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px}.reminder-popover footer{margin-top:14px}.reminder-popover footer button{min-height:40px;display:inline-flex;align-items:center;gap:6px}.reminder-icon-button{width:40px;height:40px;display:inline-grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);cursor:pointer}.reminder-popover-pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;color:var(--muted);font-size:var(--font-caption)}.reminder-popover-pagination .reminder-icon-button{width:32px;height:32px}.reminder-dialog-backdrop{position:fixed;inset:0;z-index:var(--z-dialog);pointer-events:auto;touch-action:none;overscroll-behavior:contain;display:grid;place-items:center;padding:16px;background:color-mix(in srgb,var(--text) 34%,transparent)}.reminder-dialog{width:min(560px,100%);max-height:min(760px,calc(100dvh - 32px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--surface-popover);color:var(--text);box-shadow:var(--shadow-dialog)}.reminder-dialog-header{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}.reminder-dialog-header>div{display:flex;align-items:center;gap:10px}.reminder-dialog-header h2{margin:0;font-size:var(--font-section-title)}.reminder-dialog-body{display:grid;gap:14px;overflow:auto;padding:16px}.reminder-form-field{display:grid;gap:7px;font-size:var(--font-caption);font-weight:var(--font-weight-label)}.reminder-form-field>input,.reminder-form-field>textarea{width:100%;min-height:40px;padding:9px 11px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);font-size:var(--font-body);font-family:inherit;font-weight:var(--font-weight-body)}.reminder-form-field>textarea{min-height:84px;resize:vertical}.reminder-form-field>input[aria-invalid=true],.reminder-form-field>textarea[aria-invalid=true]{border-color:var(--rose)}.reminder-form-field>small{color:var(--muted);font-weight:var(--font-weight-body)}.reminder-form-field>.reminder-form-error{color:var(--rose)}.reminder-trigger-fieldset{min-width:0;margin:0;padding:0;border:0}.reminder-trigger-fieldset legend{margin-bottom:7px;font-size:var(--font-caption);font-weight:var(--font-weight-label)}.reminder-trigger-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel)}.reminder-trigger-options button{min-height:40px;padding:7px 9px;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--muted);font-weight:var(--font-weight-label);cursor:pointer}.reminder-trigger-options button.active{border-color:color-mix(in srgb,var(--teach-green) 40%,var(--line));background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.reminder-trigger-options button:disabled{opacity:.5;cursor:not-allowed}.reminder-dialog-footer{padding:12px 16px;border-top:1px solid var(--line)}.calendar-reminder-create,.calendar-phone-reminder{display:inline-flex;align-items:center;justify-content:center;gap:6px}.calendar-phone-reminder{display:none}.calendar-sidebar-stack{min-width:0;display:grid;align-self:start;gap:12px}.calendar-next-lesson-card{position:relative;min-width:0;display:grid;gap:9px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel);color:var(--text);box-shadow:var(--shadow-panel);transition:transform .16s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.calendar-next-lesson-card--interactive{cursor:pointer}.calendar-next-lesson-card--interactive:hover,.calendar-next-lesson-card--interactive:has(.calendar-next-lesson-card-link:focus-visible){z-index:1;transform:translateY(-2px);border-color:color-mix(in srgb,var(--teach-green) 34%,var(--line));background:color-mix(in srgb,var(--surface-panel) 90%,var(--teach-green-soft));box-shadow:var(--shadow-panel),0 8px 20px color-mix(in srgb,var(--teach-green) 13%,transparent)}.calendar-next-lesson-card--interactive:active{transform:translateY(0) scale(.995)}.calendar-next-lesson-card-link{position:absolute;inset:0;z-index:2;border-radius:inherit;cursor:pointer}.calendar-next-lesson-card-link:focus-visible{outline:3px solid color-mix(in srgb,var(--mgmt-blue) 42%,transparent);outline-offset:3px}.calendar-next-lesson-card header{min-width:0;display:flex;align-items:center;gap:8px}.calendar-next-lesson-card header>span{width:30px;height:30px;display:inline-grid;flex:0 0 auto;place-items:center;border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text);transition:transform .16s ease,background-color .16s ease}.calendar-next-lesson-card--interactive:hover header>span,.calendar-next-lesson-card--interactive:has(.calendar-next-lesson-card-link:focus-visible) header>span{transform:scale(1.06);background:color-mix(in srgb,var(--teach-green-soft) 70%,var(--teach-green-mid))}.calendar-next-lesson-card h2,.calendar-next-lesson-card p{margin:0}.calendar-next-lesson-card h2{overflow:hidden;font-size:14px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.calendar-next-lesson-details{min-width:0;display:grid;gap:3px;color:var(--teach-action-soft-text)}.calendar-next-lesson-details strong,.calendar-next-lesson-details small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-next-lesson-details strong{font-size:13px}.calendar-next-lesson-details small,.calendar-next-lesson-card p{color:var(--muted);font-size:12px;line-height:1.35}@media(prefers-reduced-motion:reduce){.calendar-next-lesson-card,.calendar-next-lesson-card header>span{transition:none}.calendar-next-lesson-card--interactive:hover,.calendar-next-lesson-card--interactive:active,.calendar-next-lesson-card--interactive:has(.calendar-next-lesson-card-link:focus-visible),.calendar-next-lesson-card--interactive:hover header>span,.calendar-next-lesson-card--interactive:has(.calendar-next-lesson-card-link:focus-visible) header>span{transform:none}}.calendar-reminder-panel{min-width:0;max-height:min(720px,calc(100dvh - 32px));display:grid;grid-template-rows:auto minmax(0,1fr);align-self:start;gap:10px;overflow:hidden;padding:12px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel);color:var(--text);box-shadow:var(--shadow-panel)}.calendar-reminder-panel-header{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px}.calendar-reminder-panel-header>div{min-width:0}.calendar-reminder-panel-header h2,.calendar-reminder-panel-header p{margin:0}.calendar-reminder-panel-header h2{overflow:hidden;color:var(--text);font-size:var(--font-md);line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.calendar-reminder-panel-header p{margin-top:2px;color:var(--muted);font-size:var(--font-caption)}.calendar-reminder-panel-mark{width:34px;height:34px;display:inline-grid;place-items:center;padding:0;border-radius:var(--radius-control)}.calendar-reminder-panel-mark{background:var(--app-warning-soft-bg, color-mix(in srgb, var(--rose) 14%, var(--surface-card)));color:var(--app-warning-text, var(--text))}.calendar-reminder-panel :is(button,[tabindex]):focus-visible{outline:3px solid color-mix(in srgb,var(--mgmt-blue) 42%,transparent);outline-offset:2px}.calendar-reminder-list{min-height:0;display:grid;align-content:start;gap:8px;overflow-y:auto;overscroll-behavior:contain;padding-inline-end:2px}.calendar-reminder-card{min-width:0;display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-inline-start:3px solid var(--student-color, var(--app-warning-text, var(--rose)));border-radius:var(--radius-control);background:var(--surface-card)}.calendar-reminder-card.is-overdue{border-color:color-mix(in srgb,var(--rose) 42%,var(--line));border-inline-start-color:var(--rose)}.calendar-reminder-card-context{min-width:0;display:grid;grid-template-columns:8px minmax(0,1fr);align-items:center;gap:7px}.calendar-reminder-card-context>div{min-width:0;display:grid;gap:2px}.calendar-reminder-context-dot{width:8px;height:8px;border-radius:50%;background:var(--student-color, var(--app-warning-text, var(--rose)))}.calendar-reminder-card-context strong,.calendar-reminder-card-context small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-reminder-card-context strong{color:var(--text);font-size:13px;line-height:1.2}.calendar-reminder-card-context small{color:var(--muted);font-size:11px;line-height:1.25}.calendar-reminder-card.is-overdue .calendar-reminder-card-context small{color:var(--rose)}.calendar-reminder-card>p{margin:0;color:var(--text);font-size:13px;line-height:1.38;overflow-wrap:anywhere;white-space:pre-wrap}.calendar-reminder-card footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.calendar-reminder-card footer button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 8px;border:1px solid var(--line);border-radius:var(--radius-control);font-size:12px;font-weight:var(--font-weight-label);cursor:pointer}.calendar-reminder-snooze{background:var(--surface-input);color:var(--text)}.calendar-reminder-done{border-color:color-mix(in srgb,var(--teach-green) 42%,var(--line))!important;background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.calendar-reminder-empty{min-width:0;display:grid;justify-items:center;gap:8px;padding:24px 8px 18px;text-align:center}.calendar-reminder-empty>span{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:50%;background:var(--surface-card);color:var(--muted)}.calendar-reminder-empty>strong{font-size:14px}.calendar-reminder-empty>p{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.calendar-reminder-create{border-color:color-mix(in srgb,var(--teach-green) 40%,var(--line))!important;background:var(--teach-green-soft)!important;color:var(--teach-action-soft-text)!important}.week-day-header-reminder{position:absolute;top:6px;inset-inline-end:5px;min-height:28px;display:inline-flex;align-items:center;gap:4px;margin:0;padding:3px 7px;border:1px solid color-mix(in srgb,var(--app-warning-text, var(--rose)) 48%,var(--line));border-radius:999px;background:var(--app-warning-soft-bg, color-mix(in srgb, var(--rose) 14%, var(--surface-card)));color:var(--app-warning-text, var(--text));font-size:var(--font-caption);font-weight:var(--font-weight-label);cursor:pointer}.calendar-management-page .week-day-header:has(.week-day-header-reminder){position:relative}.calendar-management-page .week-day-header:has(.week-day-header-reminder)>span,.calendar-management-page .week-day-header:has(.week-day-header-reminder)>small{padding-inline-end:30px}.calendar-selected-date-reminder{min-height:36px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;border:1px solid color-mix(in srgb,var(--app-warning-text, var(--rose)) 48%,var(--line));border-radius:var(--radius-control);background:var(--app-warning-soft-bg, color-mix(in srgb, var(--rose) 14%, var(--surface-card)));color:var(--app-warning-text, var(--text));font-weight:var(--font-weight-label);cursor:pointer}.month-reminder-count{display:inline-flex;align-items:center;gap:4px;color:var(--app-warning-text, var(--text))}body:has(.reminder-dialog-backdrop) .assistant-launcher,body:has(.reminder-dialog-backdrop) .reminder-launcher{visibility:hidden}body:has([data-modal-root]) :is(.reminder-launcher,.reminder-popover-home){visibility:hidden}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.reminder-dialog-backdrop{align-items:end;padding:0}.reminder-dialog{width:100%;max-height:calc(100dvh - env(safe-area-inset-top));border-radius:20px 20px 0 0;border-bottom:0}.reminder-dialog-header{padding-top:calc(12px + env(safe-area-inset-top))}.reminder-dialog-footer{padding-bottom:calc(12px + env(safe-area-inset-bottom))}.reminder-dialog-footer button,.reminder-form-field>input,.reminder-form-field>textarea,.reminder-trigger-options button,.reminder-icon-button{min-height:44px}.reminder-trigger-options{grid-template-columns:1fr}.reminder-launcher{inset:auto 66px calc(72px + env(safe-area-inset-bottom)) auto;z-index:46;width:48px;min-width:48px;height:48px;min-height:48px;justify-content:center;padding:0;border-radius:14px}.reminder-launcher-label,.reminder-launcher .reminder-attention-dot{display:none}.reminder-launcher .reminder-attention-count{position:absolute;inset-block-start:-6px;inset-inline-end:-6px;min-width:23px;height:23px;display:inline-grid;place-items:center;padding-inline:5px;border:2px solid var(--surface-card);border-radius:999px;background:var(--app-warning-text, var(--rose));color:var(--surface-card);font-size:11px;font-weight:var(--font-weight-label);font-variant-numeric:tabular-nums;line-height:1;animation:reminder-attention-pulse 1.7s ease-in-out 2}.reminder-popover-home,.reminder-popover-calendar{position:fixed;inset:auto 10px calc(130px + env(safe-area-inset-bottom)) 10px;width:auto}.reminder-popover footer button{min-height:44px}.app-shell[data-layout-mode=phone][data-workspace-mode=fake]:has(.training-data-reminder) .reminder-launcher{bottom:calc(224px + env(safe-area-inset-bottom))}.app-shell[data-layout-mode=phone][data-workspace-mode=fake]:has(.training-data-reminder) .reminder-popover-home{bottom:calc(280px + env(safe-area-inset-bottom))}.calendar-phone-reminder{display:inline-flex;min-width:44px;min-height:44px}}@media(prefers-reduced-motion:reduce){.reminder-launcher .reminder-attention-count{animation:none}}@media(max-width:860px){.calendar-sidebar-stack{display:none}.calendar-management-page.month-only{grid-template-columns:minmax(0,1fr)}}.global-file-import-intake{position:fixed;z-index:260;inset:12px;display:grid;place-items:center;border:2px dashed var(--teach-green, #2e8068);border-radius:22px;background:color-mix(in srgb,var(--surface-panel-strong, #fff) 91%,transparent);box-shadow:0 18px 60px #1440382e;pointer-events:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.global-file-import-intake-card{display:grid;max-width:min(520px,calc(100vw - 56px));justify-items:center;gap:10px;padding:30px 34px;border:1px solid color-mix(in srgb,var(--teach-green, #2e8068) 28%,var(--line));border-radius:18px;background:var(--surface-panel-strong, #fff);box-shadow:var(--shadow-dialog, 0 4px 8px rgb(15 23 42 / 22%));color:var(--text);text-align:center}.global-file-import-intake-icon{display:grid;width:54px;height:54px;place-items:center;border-radius:999px;background:var(--teach-green-soft, #e1efe5);color:var(--teach-green, #2e8068)}.global-file-import-intake-card strong{font-size:clamp(20px,2vw,26px);line-height:1.2}.global-file-import-intake-card span:last-child{max-width:420px;color:var(--muted);font-size:14px;line-height:1.45}body[data-app-layout-mode=phone] .global-file-import-intake{inset:8px;border-radius:18px}body[data-app-layout-mode=phone] .global-file-import-intake-card{max-width:calc(100vw - 36px);padding:24px 20px}@media(prefers-reduced-transparency:reduce){.global-file-import-intake{background:var(--surface-panel-strong, #fff);-webkit-backdrop-filter:none;backdrop-filter:none}}.content-portal-page{width:min(1280px,100%);margin:0 auto;padding:24px}.content-portal-header{margin-bottom:16px}.content-portal-header h1{margin:4px 0 8px;font-size:32px}.content-portal-header .app-page-description{max-width:720px}.portal-mode-tabs{width:fit-content;display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel)}.portal-mode-tabs button{min-height:36px;display:flex;align-items:center;gap:7px;padding:0 14px;border:0;border-radius:var(--radius-control);background:transparent;color:var(--muted);font-weight:var(--font-weight-label, 500);cursor:pointer;transition:background-color .16s ease,color .16s ease,transform .16s ease}.portal-mode-tabs button.active{background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text))}.portal-mode-tabs button:active{transform:translateY(1px)}.portal-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) 180px;gap:8px;margin:16px 0 8px}.portal-filter-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.portal-facet-filter-controls{min-width:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.portal-content-type-filter{width:min(360px,100%);min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-panel)}.portal-content-type-filter button{min-width:0;min-height:34px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 9px;border:0;border-radius:calc(var(--radius-control) - 3px);background:transparent;color:var(--muted);font:inherit;font-size:12px;font-weight:var(--font-weight-label, 500);white-space:nowrap;cursor:pointer}.portal-content-type-filter button.is-active{background:var(--surface-card);color:var(--teach-action-soft-text);box-shadow:var(--shadow-subtle)}.portal-toolbar .app-dropdown,.portal-filter-controls .app-dropdown,.portal-facet-filter-controls .app-dropdown,.portal-share-toolbar .app-dropdown{min-width:0}.portal-active-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.portal-active-filters button{min-height:32px;display:inline-flex;align-items:center;gap:5px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface-card);color:var(--text);font:inherit;font-size:12px;cursor:pointer}.portal-active-filters .portal-clear-filters{border-color:transparent;background:transparent;color:var(--teach-green);font-weight:var(--font-weight-label, 500)}.portal-error,.portal-share-intro{display:flex;align-items:center;gap:12px;margin-top:16px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel)}.portal-error{justify-content:space-between;color:var(--app-error-text, var(--rose))}.portal-error button,.portal-detail-error button{min-height:32px;border:0;background:transparent;color:inherit;font-weight:var(--font-weight-label, 500);cursor:pointer}.portal-catalog-layout{margin-top:16px}.portal-catalog-list{width:100%;min-width:0;display:grid;gap:0}.portal-catalog-list.has-items{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.portal-catalog-columns,.portal-item-card{grid-template-columns:minmax(320px,1.8fr) minmax(150px,.72fr) 92px 108px 92px;column-gap:12px}.portal-catalog-columns{display:grid;align-items:center;min-height:36px;padding:0 12px;border-bottom:1px solid var(--line);background:var(--surface-panel);color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);letter-spacing:.04em;text-transform:uppercase}.portal-catalog-columns span:nth-last-child(-n+3){text-align:center}.portal-item-card{min-width:0;display:grid;align-items:center;min-height:64px;padding:8px 12px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:var(--surface-card);cursor:pointer;transition:border-color .16s ease,background-color .16s ease}.portal-item-card:last-of-type{border-bottom:0}.portal-item-card:hover,.portal-item-card.is-selected{background:color-mix(in srgb,var(--teach-green) 5%,var(--surface-card))}.portal-item-card.is-selected{box-shadow:inset 3px 0 0 var(--teach-green)}.portal-vote-rail,.portal-score-static{display:flex;align-items:center;justify-items:center;justify-content:center}.portal-vote-rail{gap:2px}.portal-vote-rail button{width:32px;height:32px;display:grid;place-items:center;padding:0;border:0;border-radius:var(--radius-control);background:transparent;color:var(--muted);cursor:pointer}.portal-vote-rail button[aria-pressed=true]{background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.portal-vote-rail button:disabled{cursor:default;opacity:.55}.portal-vote-rail strong,.portal-score-static strong{min-width:24px;color:var(--text);font-size:14px;font-variant-numeric:tabular-nums;text-align:center}.portal-score-static{gap:2px;color:var(--teach-green)}.portal-card-identity,.portal-card-copy,.portal-card-details{min-width:0}.portal-card-identity,.portal-card-usage,.portal-card-actions{display:flex;align-items:center}.portal-card-identity{gap:10px}.portal-format-badge{min-width:48px;justify-content:center;border:1px solid var(--line);border-radius:6px;padding:3px 6px}.portal-format-badge.format-activity{border-color:color-mix(in srgb,var(--mgmt-blue) 34%,var(--line));background:var(--mgmt-blue-soft);color:var(--mgmt-blue)}.portal-card-title{width:100%;display:block;margin:0 0 3px;padding:0;overflow:hidden;border:0;background:transparent;color:var(--text);font:inherit;font-size:14px;font-weight:var(--font-weight-selected, 600);text-align:start;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.portal-card-copy>p{margin:0;overflow:hidden;color:var(--muted);font-size:12px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.portal-card-linked-resources{width:fit-content;display:inline-flex;align-items:center;gap:4px;margin-top:5px;padding:2px 7px;border-radius:999px;background:var(--mgmt-blue-soft);color:var(--mgmt-blue);font-size:11px;line-height:1.3;white-space:nowrap}.portal-card-linked-resources strong{font-variant-numeric:tabular-nums}.portal-card-details{display:grid;gap:4px}.portal-card-details .portal-taxonomy{min-width:0;flex-wrap:nowrap;margin:0;overflow:hidden}.portal-card-details .portal-taxonomy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-card-details>small{overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.portal-card-usage{justify-content:center;gap:4px;color:var(--muted);font-size:12px;white-space:nowrap}.portal-card-usage strong{color:var(--text);font-size:14px;font-variant-numeric:tabular-nums}.portal-card-score{min-width:0}.portal-card-actions{justify-content:flex-end;gap:8px}.portal-card-actions .portal-card-action{width:40px;min-width:40px;height:40px;min-height:40px;padding:0}.portal-card-actions .portal-card-action>svg{width:18px;height:18px}.portal-card-actions .portal-card-import.is-in-library:disabled{border-color:var(--line);background:var(--surface-panel);color:var(--teach-green);opacity:1}.portal-type-icon{width:36px;height:36px;display:grid;flex:0 0 auto;place-items:center;border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.portal-type-icon.activity{background:var(--mgmt-blue-soft);color:var(--mgmt-blue)}.portal-type-icon.compact{width:28px;height:28px}.portal-type-label{display:block;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);letter-spacing:.06em;text-transform:uppercase}.portal-taxonomy{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.portal-taxonomy span{max-width:180px;padding:3px 7px;overflow:hidden;border-radius:999px;background:var(--surface-panel);color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.portal-detail-panel{border:1px solid var(--line);border-radius:var(--radius-sheet);background:var(--surface-panel-strong);box-shadow:var(--shadow-dialog)}.portal-detail-panel{min-width:0}.portal-detail-backdrop{position:fixed;inset:0;z-index:calc(var(--z-dialog, 1000) + 1);display:grid;place-items:center;padding:24px;background:#0f172a85}.portal-detail-panel.is-modal{width:min(760px,100%);max-height:calc(100dvh - 48px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.portal-detail-panel.is-modal .portal-detail-body{min-height:0;overflow-y:auto;overscroll-behavior:contain}.portal-detail-header{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:12px;align-items:start;padding:18px 20px;border-bottom:1px solid var(--line)}.portal-detail-header>div,.portal-resource-preview>div,.portal-detail-resource-copy{min-width:0}.portal-detail-header h2{margin:4px 0 0;font-size:22px;line-height:1.25;overflow-wrap:anywhere}.portal-detail-close{width:44px;height:44px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);cursor:pointer}.portal-detail-body{display:grid;gap:16px;padding:20px}.portal-detail-description,.portal-detail-muted{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.portal-detail-integrity-error{display:flex;align-items:flex-start;gap:6px;margin:0;color:var(--app-error-text, var(--rose));font-size:12px;font-weight:var(--font-weight-label, 500);line-height:1.45}.portal-detail-signals{display:grid;grid-template-columns:1fr 1fr;gap:8px}.portal-detail-signals>div{min-height:72px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr auto;gap:0 8px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card)}.portal-detail-signals>div>svg,.portal-detail-signals>div>.portal-score-static,.portal-detail-signals>div>.portal-vote-rail{grid-row:1 / 3}.portal-detail-signals strong{align-self:end;font-size:18px}.portal-detail-signals span{align-self:start;color:var(--muted);font-size:12px}.portal-detail-signals>.portal-detail-score-signal{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;justify-items:center;gap:3px;text-align:center}.portal-detail-signals>.portal-detail-score-signal>:is(.portal-score-static,.portal-vote-rail){grid-row:auto}.portal-detail-signals>.portal-detail-score-signal>span{align-self:center}.portal-detail-section{display:grid;gap:8px}.portal-detail-section h3{display:flex;align-items:center;gap:6px;margin:0;font-size:14px}.portal-detail-section h3 span{color:var(--muted);font-size:12px}.portal-activity-content{padding:12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);font-size:13px;line-height:1.6;white-space:pre-wrap}.portal-resource-preview{width:100%;display:grid;grid-template-columns:minmax(76px,auto) minmax(0,1fr);gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);font:inherit;text-align:start;cursor:pointer}.portal-resource-preview:hover{border-color:var(--teach-green-mid);background:var(--teach-green-soft)}.portal-resource-preview:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 28%,transparent);outline-offset:2px}.portal-resource-kind-label{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding-inline:9px;border-radius:8px;background:var(--surface-muted-band);color:var(--teach-action-soft-text);font-size:12px;white-space:nowrap}.portal-resource-preview-copy{min-width:0}.portal-resource-preview-copy strong,.portal-resource-preview-copy small{display:block;overflow-wrap:anywhere}.portal-resource-preview-copy small{margin-top:2px;color:var(--muted);font-size:12px}.portal-resource-preview .portal-resource-action{grid-column:1 / -1;justify-content:center}.portal-detail-resources{display:grid;gap:6px}.portal-detail-resources>div{min-height:44px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card)}.portal-detail-resource-copy{min-width:0;display:grid;gap:4px}.portal-detail-resource-copy strong,.portal-detail-resource-copy small{display:block}.portal-detail-resource-copy strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.portal-detail-resource-copy small{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:12px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.portal-resource-action{min-height:36px;display:inline-flex;align-items:center;gap:6px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-panel);color:var(--teach-green);font-size:12px;font-weight:var(--font-weight-label, 500);text-decoration:none}.portal-resource-action.is-compact{min-width:112px;justify-content:center}.portal-detail-author{display:flex;align-items:center;padding-top:4px}.portal-detail-author>div{min-width:0;width:100%;display:grid;gap:2px}.portal-detail-author-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.portal-detail-author-heading>strong{min-width:0;overflow-wrap:anywhere}.portal-detail-author-heading>span{flex:0 0 auto;padding:4px 8px;border-radius:999px;background:var(--surface-muted-band);color:var(--text);font-size:11px;font-weight:var(--font-weight-label, 500)}.portal-detail-author strong,.portal-detail-author small{display:block}.portal-detail-author small{color:var(--muted);font-size:12px}.portal-report-section{padding-top:8px;border-top:1px solid var(--line)}.portal-report-toggle{min-height:36px;display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}.portal-report-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:8px}.portal-report-form>button{min-height:36px;padding:0 12px;border:0;border-radius:var(--radius-control);background:var(--rose);color:var(--teach-action-solid-text);font:inherit;font-size:12px;font-weight:var(--font-weight-label, 500);cursor:pointer}.portal-report-form>small{grid-column:1 / -1;color:var(--muted);font-size:12px}.portal-reported{display:flex;align-items:center;gap:6px;margin:0;color:var(--muted);font-size:12px}.portal-detail-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 20px;border-top:1px solid var(--line);background:var(--surface-panel-strong)}.portal-detail-actions>button:only-child{grid-column:1 / -1;width:100%}.portal-detail-actions>button{min-width:240px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;border:0;border-radius:var(--radius-control);background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));font:inherit;font-weight:var(--font-weight-label, 500);cursor:pointer}.portal-detail-actions>button:disabled{background:var(--surface-panel);color:var(--muted);cursor:default}.portal-detail-actions>span{grid-column:1 / -1;min-height:40px;display:flex;align-items:center;gap:7px;color:var(--green);font-size:13px;font-weight:var(--font-weight-label, 500)}.portal-import-copy{min-width:0}.portal-import-copy strong,.portal-import-copy span{display:block}.portal-import-copy strong{font-size:14px}.portal-import-copy span{margin-top:3px;color:var(--muted);font-size:12px;line-height:1.45}.portal-resource-format{width:fit-content;min-height:24px;display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border-radius:999px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-size:11px;line-height:1;white-space:nowrap}.portal-resource-format i{color:var(--muted);font-style:normal}.portal-resource-format svg{flex:0 0 auto}.portal-resource-format b{font-size:inherit;font-weight:var(--font-weight-label, 500)}.portal-detail-loading,.portal-detail-error,.portal-loading{min-height:72px;display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;color:var(--muted);font-size:13px}.portal-detail-error{justify-content:space-between;color:var(--app-error-text, var(--rose))}.portal-share-layout{margin-top:16px}.portal-share-intro{margin-top:0}.portal-share-intro>svg{flex:0 0 auto;color:var(--teach-green)}.portal-share-intro p{margin:3px 0 0;color:var(--muted);font-size:13px}.portal-share-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) minmax(300px,360px);gap:8px;margin-top:12px}.portal-candidate-list,.portal-candidate-group{display:grid;gap:8px}.portal-candidate-list{margin-top:12px}.portal-candidate-group>h2{display:flex;align-items:center;gap:7px;margin:12px 0 2px;font-size:15px}.portal-candidate-group>h2 span{color:var(--muted);font-size:12px}.portal-candidate-card{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:start;padding:12px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.portal-candidate-card.is-unavailable{background:color-mix(in srgb,var(--surface-panel) 78%,var(--surface-card))}.portal-candidate-copy{min-width:0}.portal-candidate-copy .portal-type-label{margin:0}.portal-candidate-copy h3,.portal-candidate-copy p{margin:3px 0}.portal-candidate-copy h3{font-size:16px}.portal-candidate-copy>p,.portal-candidate-copy>small{color:var(--muted);font-size:12px;line-height:1.45}.portal-candidate-actions{min-width:40px;display:grid;grid-template-columns:40px;justify-content:end;gap:8px}.portal-candidate-actions.has-resource-actions{min-width:136px;grid-template-columns:repeat(3,40px)}.portal-candidate-actions button{width:40px;min-width:40px;height:40px;min-height:40px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--action-control-border, color-mix(in srgb, var(--teach-green) 82%, black));border-radius:var(--radius-control);background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));font:inherit;box-shadow:0 5px 12px color-mix(in srgb,var(--teach-green) 18%,transparent);cursor:pointer;transition:background-color .14s ease,box-shadow .14s ease,transform .14s ease}.portal-candidate-actions button:enabled:hover{background:color-mix(in srgb,var(--teach-green) 86%,black);box-shadow:0 7px 16px color-mix(in srgb,var(--teach-green) 24%,transparent);transform:translateY(-1px)}.portal-candidate-actions button:disabled{border-color:var(--line);background:var(--surface-panel);color:var(--muted);box-shadow:none;cursor:default}.portal-candidate-actions button.is-shared{background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.portal-candidate-actions .portal-candidate-secondary{min-width:0;border-color:color-mix(in srgb,var(--teach-green) 34%,var(--line));background:var(--surface-card);color:var(--teach-action-soft-text);box-shadow:none}.portal-candidate-actions .portal-candidate-secondary:enabled:hover{background:var(--teach-green-soft);box-shadow:none}.portal-candidate-actions .portal-candidate-share{min-width:40px}.portal-candidate-resources{display:grid;gap:4px;margin-top:9px}.portal-candidate-resources>div{min-height:28px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;padding:4px 7px;border-radius:var(--radius-control);background:var(--surface-panel);color:var(--muted)}.portal-candidate-resources strong{overflow:hidden;color:var(--text);font-size:12px;font-weight:var(--font-weight-label, 500);text-overflow:ellipsis;white-space:nowrap}.portal-candidate-copy .portal-share-unavailable,.portal-candidate-copy .portal-share-drive-copy,.portal-candidate-copy .portal-share-error{display:flex;align-items:flex-start;gap:6px;margin-top:8px;font-weight:var(--font-weight-label, 500)}.portal-candidate-copy .portal-share-unavailable{color:var(--muted)}.portal-candidate-copy .portal-share-drive-copy{color:var(--teach-action-soft-text)}.portal-candidate-copy .portal-share-error{color:var(--app-error-text, var(--rose))}.portal-empty{grid-column:1 / -1;margin:0;padding:32px;border:1px dashed var(--line);border-radius:var(--radius-panel);background:var(--surface-panel);color:var(--muted);font-size:13px;text-align:center}.portal-load-more{grid-column:1 / -1;justify-self:center;min-width:160px;min-height:38px;padding:0 18px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);font:inherit;font-weight:var(--font-weight-label, 500);cursor:pointer}.portal-load-more:disabled{cursor:progress;opacity:.65}.portal-spin{animation:portal-spin .9s linear infinite}@keyframes portal-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.portal-spin{animation-duration:1.8s}.portal-item-card,.portal-mode-tabs button{transition:none}}@media(pointer:coarse),(max-height:500px)and (max-width:900px){.content-portal-page button,.content-portal-page a,.content-portal-page .portal-mode-tabs button{min-height:44px}body:has(.content-portal-page) .voice-dictation-button{min-width:44px;min-height:44px}}@media(max-width:1040px){.portal-filter-controls{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.app-shell[data-layout-mode=phone]:has(.content-portal-page) .assistant-launcher,body[data-app-layout-mode=phone]:has(.content-portal-page) .assistant-launcher{inset-inline-start:10px;inset-inline-end:auto}.content-portal-header{display:none}.content-portal-header h1{font-size:30px;line-height:1.08}.portal-mode-tabs{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.portal-mode-tabs button{min-width:0;min-height:44px;justify-content:center;padding:0 8px;font-size:12px}.portal-mode-tabs button svg{display:none}.portal-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin:12px 0 8px}.portal-toolbar .portal-search{grid-column:1 / -1}.portal-filter-controls{grid-template-columns:minmax(0,1fr)}.portal-facet-filter-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-facet-filter-controls .app-dropdown:last-child{grid-column:1 / -1}.portal-content-type-filter button,.portal-toolbar .app-dropdown-trigger,.portal-filter-controls .app-dropdown-trigger,.portal-share-toolbar .app-dropdown-trigger{min-height:44px}.portal-active-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.portal-active-filters::-webkit-scrollbar{display:none}.portal-active-filters button{min-height:44px;flex:0 0 auto}.portal-catalog-layout{display:block;margin-top:12px}.portal-catalog-columns{display:none}.portal-item-card{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"identity identity" "details usage" "score actions";gap:10px 12px;padding:12px}.portal-card-identity{grid-area:identity}.portal-card-details{grid-area:details}.portal-card-usage{grid-area:usage;justify-content:flex-end}.portal-card-score{grid-area:score;justify-self:start}.portal-card-actions{grid-area:actions}.portal-vote-rail button{width:44px;height:44px}.portal-card-actions .portal-card-action{width:44px;min-width:44px;height:44px;min-height:44px}.portal-card-details .portal-taxonomy span:nth-child(n+2){display:none}.portal-detail-backdrop{place-items:initial;align-items:end;padding:0}.portal-detail-panel.is-modal{width:100%;max-height:94dvh;border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;box-shadow:var(--shadow-sheet)}.portal-detail-panel.is-modal .portal-detail-actions{padding-bottom:max(12px,env(safe-area-inset-bottom));box-shadow:var(--shadow-sheet)}.portal-detail-signals{grid-template-columns:minmax(0,1fr)}.portal-detail-actions>button{width:100%;min-height:44px}.portal-detail-actions{grid-template-columns:minmax(0,1fr);gap:10px}.portal-detail-resources a{width:44px;height:44px}body:has(.content-portal-page) .voice-dictation-button{min-width:44px;min-height:44px;margin-top:-9px;margin-inline-start:-9px}.portal-report-toggle{min-height:44px}.portal-report-form{grid-template-columns:minmax(0,1fr)}.portal-report-form>button{min-height:44px}.portal-share-toolbar{grid-template-columns:minmax(0,1fr)}.portal-candidate-card{grid-template-columns:36px minmax(0,1fr)}.portal-candidate-actions{grid-column:1 / -1;width:100%}.portal-candidate-actions.has-resource-actions{min-width:0;grid-template-columns:repeat(3,44px)}.portal-candidate-actions button{width:44px;min-width:44px;height:44px;min-height:44px}.portal-candidate-resources>div{min-height:44px}.portal-error,.portal-share-intro{align-items:flex-start}}.support-page{display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;max-width:1380px;min-height:calc(100dvh - 48px)}.support-page-header{display:flex;align-items:center;justify-content:space-between;gap:24px}.support-page-header h1{margin:0;font-size:24px;line-height:1.1}.support-page-header>div>p:last-child{margin:0;color:var(--muted);font-size:15px}.support-thread-status,.support-linked-issue{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface-card);color:var(--muted);font-size:13px;font-weight:600;white-space:nowrap}.support-thread-status.waiting{color:var(--rose);background:color-mix(in srgb,var(--rose) 9%,var(--surface-card))}.support-thread-status.reply{color:var(--mgmt-blue);background:color-mix(in srgb,var(--mgmt-blue) 9%,var(--surface-card))}.support-thread-status.resolved{color:var(--app-success-text);background:color-mix(in srgb,var(--green) 10%,var(--surface-card))}.support-private-notice{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 14px;border:1px solid color-mix(in srgb,var(--mgmt-blue) 26%,var(--line));border-radius:var(--radius-control);background:color-mix(in srgb,var(--mgmt-blue) 7%,var(--surface-panel));color:var(--muted);font-size:13px}.support-private-notice svg{flex:0 0 auto;color:var(--mgmt-blue)}.support-private-notice strong{color:var(--text);font-weight:600}.support-private-notice-mobile,.support-thread-status-mobile,.support-metadata-label-mobile{display:none}.support-workspace{display:grid;grid-template-columns:minmax(260px,300px) minmax(0,1fr);gap:16px;min-height:600px}.support-issue-sidebar,.support-thread-panel{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel-strong);box-shadow:var(--shadow-soft)}.support-issue-sidebar{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.support-issue-sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 14px;border-bottom:1px solid var(--line)}.support-issue-sidebar-header .eyebrow{margin-bottom:2px}.support-issue-sidebar-header h2{margin:0;font-size:20px;line-height:1.15}.support-issue-sidebar-header>button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 11px;border:1px solid color-mix(in srgb,var(--teach-green) 52%,var(--line));border-radius:var(--radius-control);background:color-mix(in srgb,var(--teach-green) 10%,var(--surface-card));color:var(--text);font-size:13px;font-weight:var(--font-weight-emphasis, 600);cursor:pointer}.support-issue-sidebar-header>button:hover,.support-issue-sidebar-header>button.active{border-color:var(--teach-green);background:color-mix(in srgb,var(--teach-green) 18%,var(--surface-card))}.support-issue-list{display:grid;align-content:start;gap:7px;min-height:0;padding:10px;overflow-y:auto}.support-issue-list>button{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-height:64px;padding:9px;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--text);text-align:start;cursor:pointer}.support-issue-list>button:hover{border-color:var(--line);background:var(--surface-card)}.support-issue-list>button.active{border-color:color-mix(in srgb,var(--teach-green) 46%,var(--line));background:color-mix(in srgb,var(--teach-green) 11%,var(--surface-card))}.support-issue-icon,.support-team-mark{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border-radius:50%;background:color-mix(in srgb,var(--teach-green) 13%,var(--surface-card));color:var(--teach-green)}.support-issue-copy{display:grid;gap:5px;min-width:0}.support-issue-copy strong{overflow:hidden;font-size:13px;font-weight:var(--font-weight-emphasis, 600);line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.support-issue-copy small{display:flex;align-items:center;min-width:0;color:var(--muted);font-size:11px;white-space:nowrap}.support-issue-copy small svg{flex:0 0 auto;margin-inline-end:4px}.support-issue-copy small>span[aria-hidden=true]{margin-inline:3px}.support-issue-unread{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--mgmt-blue);color:var(--surface-card);font-size:11px;font-weight:var(--font-weight-heading, 700)}.support-sidebar-empty{display:flex;align-items:center;justify-content:center;gap:7px;min-height:96px;padding:16px;color:var(--muted);font-size:13px;line-height:1.45;text-align:center}.support-sidebar-footer{display:grid;gap:12px;margin-top:auto;padding:14px 14px 13px;border-top:1px solid var(--line)}.support-sidebar-footer .support-private-notice{min-height:0;padding:0;border:0;background:transparent;line-height:1.45}.support-sidebar-footer .support-private-notice span{font-size:11px}.support-details-toggle{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:start;gap:8px;color:var(--text);cursor:pointer}.support-details-toggle input{margin-top:3px;accent-color:var(--teach-green)}.support-details-toggle>svg{margin-top:1px;color:var(--mgmt-blue)}.support-details-toggle span{display:grid;gap:3px}.support-details-toggle strong{font-size:13px;font-weight:600}.support-details-toggle small{color:var(--muted);font-size:11px;line-height:1.4}.support-response-note{display:flex;align-items:flex-start;gap:7px;margin:0;color:var(--muted);font-size:11px;line-height:1.4}.support-response-note svg{flex:0 0 auto;margin-top:1px}.support-thread-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.support-thread-header{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:64px;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--surface-panel-strong)}.support-thread-header>div{display:flex;align-items:center;gap:10px;min-width:0}.support-thread-header>div>span:last-child{display:grid;gap:2px;min-width:0}.support-thread-header strong{overflow:hidden;font-size:15px;font-weight:var(--font-weight-emphasis, 600);text-overflow:ellipsis;white-space:nowrap}.support-thread-header small{overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.support-linked-issue{color:var(--mgmt-blue);text-transform:capitalize}.support-message-stream{display:flex;flex-direction:column;gap:12px;min-height:0;padding:18px;overflow-y:auto;background:color-mix(in srgb,var(--app-bg) 42%,var(--surface-card))}.support-loading,.support-empty-thread,.support-load-failed{display:grid;place-items:center;align-content:center;gap:10px;min-height:100%;color:var(--muted);text-align:center}.support-empty-thread>span,.support-load-failed>span{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:color-mix(in srgb,var(--teach-green) 14%,var(--surface-card));color:var(--teach-green)}.support-empty-thread h2{margin:0;color:var(--text);font-size:22px}.support-empty-thread p{max-width:440px;margin:0;font-size:14px}.support-load-failed>span{background:color-mix(in srgb,var(--rose) 10%,var(--surface-card));color:var(--app-error-text, var(--rose))}.support-load-failed h2{margin:0;color:var(--text);font-size:22px}.support-load-failed p{max-width:440px;margin:0;font-size:14px}.support-load-failed button{min-height:var(--button-standard-h, 36px);display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--teach-green-mid);border-radius:var(--radius-control);padding:0 13px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font:inherit;font-weight:var(--font-weight-label, 500);cursor:pointer}.support-sidebar-error{min-height:88px;display:flex;align-items:center;justify-content:center;gap:7px;padding:14px;color:var(--app-error-text, var(--rose));font-size:13px;line-height:1.4;text-align:center}.support-sidebar-error svg{flex:0 0 auto}.support-message{display:grid;gap:7px;width:min(76%,720px);padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card);box-shadow:var(--shadow-soft)}.support-message-user{margin-inline:auto 0;border-color:color-mix(in srgb,var(--teach-green) 38%,var(--line));background:color-mix(in srgb,var(--teach-green) 7%,var(--surface-card))}.support-message-admin{margin-inline:0 auto}.support-message-author{color:var(--mgmt-blue);font-size:12px;font-weight:600}.support-message p{margin:0;color:var(--text);font-size:15px;line-height:1.5;overflow-wrap:anywhere;white-space:pre-wrap}.support-message time{justify-self:end;color:var(--muted);font-size:12px}.support-message-attachments{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,260px));gap:8px}.support-message-attachments a{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);text-decoration:none}.support-message-attachments img{display:block;width:100%;max-height:220px;object-fit:cover;border-bottom:1px solid var(--line)}.support-message-attachments span{display:flex;align-items:center;gap:6px;padding:7px 8px;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.support-message-metadata{color:var(--muted);font-size:12px}.support-message-metadata summary{display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-weight:500}.support-message-metadata span{display:block;margin-top:4px}.support-composer{display:grid;gap:8px;padding:10px 14px 12px;border-top:1px solid var(--line);background:var(--surface-panel-strong)}.support-selected-images{display:flex;gap:8px;overflow-x:auto;padding:2px 0}.support-selected-images>div{position:relative;flex:0 0 84px;height:64px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card)}.support-selected-images img{width:100%;height:100%;object-fit:cover}.support-selected-images button{position:absolute;inset-inline-end:4px;top:4px;display:grid;place-items:center;width:24px;height:24px;border:0;border-radius:50%;background:color-mix(in srgb,var(--text) 78%,transparent);color:var(--surface-card)}.support-error{display:flex;align-items:center;gap:7px;margin:0;color:var(--app-error-text, var(--rose));font-size:13px}.support-error svg{flex:0 0 auto}.support-composer-control{display:grid;grid-template-columns:minmax(0,1fr) 42px 42px;grid-template-areas:"message message message" "hint attach send";align-items:end;gap:8px;direction:inherit}.support-attach-button{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--teach-green);cursor:pointer;grid-area:attach}.support-composer textarea{width:100%;min-height:132px;max-height:280px;grid-area:message;padding:14px;padding-inline-end:48px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);font:inherit;line-height:1.45;overflow-y:hidden;resize:none}.support-composer textarea:focus{outline:2px solid color-mix(in srgb,var(--teach-green) 30%,transparent);border-color:var(--teach-green)}.support-send-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:42px;min-width:42px;min-height:42px;grid-area:send;padding:0;border:0;border-radius:var(--radius-control);background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--surface-card));font-weight:var(--font-weight-emphasis, 600);cursor:pointer}.support-composer-hint{grid-area:hint;align-self:center;color:var(--muted);font-size:11px;line-height:1.35}.support-send-button:disabled{cursor:not-allowed;opacity:.48}.support-spin{animation:support-spin .8s linear infinite}@keyframes support-spin{to{transform:rotate(360deg)}}@media(max-width:1050px)and (min-width:701px){.support-workspace{grid-template-columns:250px minmax(0,1fr)}.support-issue-sidebar-header{align-items:stretch;flex-direction:column}.support-issue-sidebar-header>button{width:100%}}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.app-shell[data-layout-mode=phone]:has(.support-page) .assistant-launcher,body[data-app-layout-mode=phone]:has(.support-page) .assistant-launcher{display:none}.support-page{grid-template-rows:auto minmax(0,1fr);gap:10px;width:100%;height:auto;min-height:calc(100dvh - 132px - env(safe-area-inset-bottom));padding:0!important;overflow:visible;border:0;border-radius:0!important;background:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.support-page-header,.support-private-notice,.support-thread-status-desktop,.support-sidebar-footer,.support-metadata-label-desktop{display:none}.support-thread-status-mobile,.support-metadata-label-mobile{display:inline-flex}.support-workspace{display:flex;flex-direction:column;gap:8px;min-height:0}.support-issue-sidebar{order:2;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;min-height:0;border-radius:var(--radius-control)}.support-issue-sidebar-header{padding:10px;border-bottom:1px solid var(--line)}.support-issue-sidebar-header>div{display:block;min-width:0}.support-issue-sidebar-header .eyebrow{display:none}.support-issue-sidebar-header h2{font-size:16px}.support-issue-sidebar-header>button{min-width:96px;min-height:44px;padding:0 9px}.support-issue-list{display:grid;gap:6px;padding:8px;overflow:visible}.support-issue-list>button{grid-template-columns:32px minmax(0,1fr) auto;min-height:56px;padding:6px 8px}.support-issue-icon{width:32px;height:32px}.support-issue-copy{gap:2px}.support-issue-copy strong{font-size:12px}.support-issue-copy small{font-size:10px}.support-sidebar-empty{min-height:56px;padding:6px 10px;font-size:11px}.support-thread-panel{order:1;min-height:0;grid-template-rows:auto auto auto;border-radius:var(--radius-control);overflow:visible}.support-thread-header{min-height:48px;padding:6px 9px}.support-thread-header>div{gap:7px;min-width:0}.support-team-mark{width:32px;height:32px}.support-team-mark>svg{width:16px;height:16px}.support-thread-header strong{font-size:13px}.support-thread-header small{display:none}.support-thread-status-mobile{min-height:28px;padding:0 8px;font-size:11px}.support-linked-issue{display:none}.support-message-stream{gap:8px;min-height:clamp(180px,34dvh,300px);padding:8px;overflow:visible}.support-empty-thread,.support-load-failed{gap:7px}.support-empty-thread>span,.support-load-failed>span{width:42px;height:42px}.support-empty-thread h2,.support-load-failed h2{font-size:17px}.support-empty-thread p,.support-load-failed p{max-width:280px;font-size:12px}.support-load-failed button{min-height:var(--button-phone-h, 44px)}.support-message{width:90%;gap:5px;padding:8px 10px;border-radius:var(--radius-control)}.support-message p{font-size:13px;line-height:1.42}.support-message time,.support-message-author,.support-message-metadata{font-size:10px}.support-message-metadata summary{list-style:none}.support-message-metadata summary::-webkit-details-marker{display:none}.support-message-metadata>span{display:none}.support-composer{gap:7px;padding:10px 14px 12px}.support-attach-button,.support-send-button{height:44px;padding:0}.support-attach-button,.support-send-button{width:44px;min-width:44px}.support-send-button span,.support-composer-hint{display:none}.support-composer textarea{height:auto;min-height:112px;max-height:280px;padding:14px;padding-inline-end:48px;resize:none;font-size:16px}}@media(prefers-reduced-motion:reduce){.support-spin{animation-duration:1.6s}}.parent-message-studio{overflow-anchor:none;width:min(1280px,100%);min-width:0;margin-inline:auto}:is(.parent-message-studio,.lesson-message-recipient-grid) .parent-message-student-trigger[data-accent=true]{border-color:color-mix(in srgb,var(--app-dropdown-accent) 44%,var(--line));background:color-mix(in srgb,var(--app-dropdown-accent) 14%,var(--surface-input));box-shadow:inset 4px 0 0 var(--app-dropdown-accent)}[dir=rtl] :is(.parent-message-studio,.lesson-message-recipient-grid) .parent-message-student-trigger[data-accent=true]{box-shadow:inset -4px 0 0 var(--app-dropdown-accent)}:is(.parent-message-studio,.lesson-message-recipient-grid) .parent-message-student-trigger[data-accent=true]:hover,:is(.parent-message-studio,.lesson-message-recipient-grid) .app-dropdown.open .parent-message-student-trigger[data-accent=true]{border-color:color-mix(in srgb,var(--app-dropdown-accent) 68%,var(--line));background:color-mix(in srgb,var(--app-dropdown-accent) 20%,var(--surface-input))}.app-dropdown-menu.parent-message-student-menu button[data-accent=true]{border:1px solid color-mix(in srgb,var(--app-dropdown-accent) 28%,transparent);background:color-mix(in srgb,var(--app-dropdown-accent) 10%,var(--surface-popover, var(--surface-card)));box-shadow:inset 4px 0 0 var(--app-dropdown-accent)}[dir=rtl] .app-dropdown-menu.parent-message-student-menu button[data-accent=true]{box-shadow:inset -4px 0 0 var(--app-dropdown-accent)}.app-dropdown-menu.parent-message-student-menu button[data-accent=true]:hover,.app-dropdown-menu.parent-message-student-menu button[data-accent=true]:focus-visible,.app-dropdown-menu.parent-message-student-menu button[data-accent=true].selected{border-color:color-mix(in srgb,var(--app-dropdown-accent) 48%,transparent);background:color-mix(in srgb,var(--app-dropdown-accent) 20%,var(--surface-popover, var(--surface-card)))}.lesson-update-dialog .parent-message-studio{padding:0}.lesson-update-dialog .parent-message-page-header{align-items:center;margin-bottom:10px}.lesson-update-dialog .parent-message-page-header h1{font-size:30px}.lesson-update-dialog .parent-message-page-header p:last-child{display:none}.lesson-update-dialog .parent-message-routing{margin-bottom:10px;padding:10px}.lesson-update-dialog .parent-message-panel-header{min-height:64px}.lesson-update-dialog .parent-message-panel-body{padding:12px}.lesson-update-dialog .parent-message-textarea textarea{height:240px;min-height:240px}.parent-message-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:16px}.parent-message-page-header h1{margin:0;font-size:var(--font-page-title);line-height:var(--line-height-heading);font-weight:var(--font-weight-heading)}.parent-message-page-header p:last-child{max-width:680px;margin:6px 0 0;color:var(--muted);font-size:var(--font-body)}.parent-message-routing{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(340px,1.4fr);gap:12px;align-items:end;margin-bottom:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.parent-message-recipient-copy{min-width:0;display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px}.parent-message-recipient-name{min-width:0;overflow-wrap:anywhere}.parent-message-recipient-phone{direction:ltr;unicode-bidi:isolate;white-space:nowrap}.parent-message-field{min-width:0}.parent-message-field>span,.parent-message-textarea>span{display:block;margin-bottom:5px;color:var(--muted);font-size:var(--font-caption);font-weight:var(--font-weight-label)}.parent-message-field-heading{min-height:19px;margin-bottom:5px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:var(--font-caption);font-weight:var(--font-weight-label)}.parent-message-field-heading em,.parent-message-field-heading button{padding:2px 7px;border:0;border-radius:999px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-size:11px;font-style:normal;font-weight:var(--font-weight-emphasis)}.parent-message-field-heading button:hover:not(:disabled),.parent-message-history-trigger:hover{background:var(--teach-green-soft)}.parent-message-default-button.is-default{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text);opacity:1}.parent-message-workspace{display:grid;grid-template-columns:minmax(270px,300px) minmax(0,1fr);gap:12px;align-items:start}.parent-message-panel{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.parent-message-panel-header{min-height:72px;padding:12px 14px 10px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.parent-message-panel-header h2{margin:0;font-size:var(--font-section-title);line-height:var(--line-height-heading);font-weight:var(--font-weight-heading)}.parent-message-panel-header>span{padding:4px 7px;border-radius:999px;background:var(--mgmt-blue-soft);color:var(--mgmt-blue);font-size:var(--font-caption);font-weight:var(--font-weight-emphasis);white-space:nowrap}.parent-message-panel-header>button{min-width:40px;min-height:36px;padding:0 7px;border:0;border-radius:var(--radius-control);background:transparent;color:var(--teach-action-soft-text);font-size:13px;font-weight:var(--font-weight-label)}.parent-message-panel-header>button:hover{background:var(--teach-green-soft)}.parent-message-panel-body{padding:14px}.parent-message-lesson-picker{display:block;margin-bottom:10px}.parent-message-review-row{min-height:40px;padding:4px 2px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}.parent-message-review-status{padding-inline-start:6px;color:var(--muted);font-size:var(--font-caption);font-weight:var(--font-weight-emphasis)}.parent-message-review-row.needs-review .parent-message-review-status{color:var(--app-warning-text, var(--text))}.parent-message-summary-source{padding:5px 0 10px;border-top:1px solid var(--line);display:grid;gap:9px}.parent-message-summary-source .parent-message-review-row{padding-top:0;border-top:0}.parent-message-summary-source.has-note .parent-message-review-status{color:var(--teach-action-soft-text)}.parent-message-summary-source.needs-note .parent-message-review-status{color:var(--app-warning-text, var(--muted))}.parent-message-summary-ai-row{display:grid}.parent-message-create-summary-action{width:100%;min-height:38px;padding:0 10px;border:1px solid var(--teach-green-mid);border-radius:var(--radius-control);background:var(--surface-card);color:var(--teach-action-soft-text);display:inline-flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:12px;font-weight:var(--font-weight-label)}.parent-message-create-summary-action:hover:not(:disabled){border-color:var(--teach-action);background:color-mix(in srgb,var(--surface-card) 78%,var(--teach-green-soft))}.parent-message-create-summary-action:disabled{opacity:.52}.parent-message-summary-error{margin:0;padding:8px 9px;border:1px solid color-mix(in srgb,var(--rose) 32%,var(--line));border-radius:var(--radius-control);background:var(--danger-soft);color:var(--rose);font-size:11px;line-height:1.45}.parent-message-open-lesson-notes{min-height:36px;padding:0 10px;border:1px solid var(--teach-green-mid);border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text);display:flex;align-items:center;justify-content:center;gap:8px;font-size:var(--font-supporting);font-weight:var(--font-weight-label)}.parent-message-open-lesson-notes:hover{background:var(--teach-green-mid)}.parent-message-source-note{margin:0 0 10px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--radius-control);display:flex;align-items:flex-start;gap:7px;font-size:var(--font-caption);line-height:1.5}.parent-message-source-note{background:var(--surface-soft);color:var(--muted)}.parent-message-source-note svg{flex:0 0 auto;margin-top:1px}.parent-message-section-list{display:grid;gap:10px}.parent-message-source-group{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.parent-message-source-group .parent-message-section-choice{border:0;border-radius:0}.parent-message-source-group .parent-message-section-choice[data-message-section]{border-inline-start:4px solid var(--line)}.parent-message-source-group .parent-message-section-choice.selected[data-message-section]{border-inline-start-color:var(--message-context-accent)}.parent-message-source-group .parent-message-section-choice:disabled{opacity:1}.parent-message-source-group .parent-message-section-choice:disabled .parent-message-section-icon{color:var(--message-context-accent)}.parent-message-source-group .parent-message-summary-source{padding:10px;border-top:1px solid var(--line)}.parent-message-section-copy{min-width:0;display:grid;gap:2px}.parent-message-section-copy small{overflow:hidden;color:var(--muted);font-size:11px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.parent-message-homework-source{padding:9px 10px 10px;border-top:1px solid var(--line);display:grid;gap:9px;background:color-mix(in srgb,#d89a45 6%,var(--surface-card))}.parent-message-select-homework{width:100%;min-height:38px;padding:0 10px;border:1px solid color-mix(in srgb,#ad6c22 42%,var(--line));border-radius:var(--radius-control);background:var(--surface-card);color:color-mix(in srgb,#ad6c22 72%,var(--text));display:inline-flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:12px;font-weight:var(--font-weight-label)}.parent-message-select-homework:hover:not(:disabled){border-color:#ad6c22;background:color-mix(in srgb,#d89a45 14%,var(--surface-card))}.parent-message-select-homework:disabled{opacity:.52}.parent-message-section-choice{--message-context-accent: var(--teach-green);--message-context-soft: var(--teach-green-soft);position:relative;width:100%;min-height:44px;padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);display:grid;grid-template-columns:28px minmax(0,1fr) max-content;gap:8px;align-items:center;text-align:start;transition:background-color .18s ease,border-color .18s ease,color .18s ease}:is(.parent-message-studio,.lesson-message-studio) [data-message-section=lesson_summary]{--message-context-accent: #7868b5;--message-context-soft: color-mix(in srgb, #7868b5 14%, var(--surface-input))}:is(.parent-message-studio,.lesson-message-studio) [data-message-section=homework]{--message-context-accent: #ad6c22;--message-context-soft: color-mix(in srgb, #d89a45 16%, var(--surface-input))}:is(.parent-message-studio,.lesson-message-studio) [data-message-section=next_lesson]{--message-context-accent: #267760;--message-context-soft: color-mix(in srgb, #45a887 14%, var(--surface-input))}.parent-message-section-choice[data-message-section]{border-inline-start:3px solid var(--line)}.parent-message-section-choice:hover:not(:disabled){border-color:color-mix(in srgb,var(--message-context-accent) 48%,var(--line));background:color-mix(in srgb,var(--message-context-accent) 5%,var(--surface-input))}.parent-message-section-choice.selected{border-color:color-mix(in srgb,var(--message-context-accent) 56%,var(--line));background:var(--message-context-soft);color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--message-context-accent) 12%,transparent)}.parent-message-section-choice:disabled{cursor:default;opacity:.58}.parent-message-section-choice.selected:disabled{border-color:var(--line);background:var(--surface-soft);color:var(--muted)}.parent-message-section-choice.selected:disabled .parent-message-section-icon{background:var(--surface-input);color:var(--muted)}.parent-message-section-icon{width:28px;height:28px;border-radius:var(--radius-control);background:var(--surface-soft);color:var(--muted);display:grid;place-items:center}.parent-message-section-choice.selected .parent-message-section-icon{background:var(--message-context-accent);color:#fff}.parent-message-section-state{min-height:24px;padding:0 7px;border:1px solid var(--line);border-radius:999px;background:var(--surface-card);color:var(--muted);display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:10px;font-weight:var(--font-weight-emphasis);white-space:nowrap}.parent-message-section-choice.selected .parent-message-section-state{border-color:var(--message-context-accent);background:var(--message-context-accent);color:#fff}.parent-message-section-choice:focus-visible{outline:3px solid color-mix(in srgb,var(--message-context-accent) 34%,transparent);outline-offset:2px}.parent-message-section-choice>strong{font-size:13px;font-weight:var(--font-weight-emphasis)}.parent-message-section-copy>strong{font-size:13px;font-weight:var(--font-weight-emphasis)}.parent-message-source .meeting-link-toggle{margin-top:10px}.parent-message-type-control button.active{background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text))}.parent-message-secondary-action{min-height:var(--button-standard-h);padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:13px;font-weight:var(--font-weight-label)}.parent-message-secondary-action:hover:not(:disabled){border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.parent-message-textarea-shell{position:relative;display:block}.parent-message-line-motion{position:absolute;inset:0 auto auto 0;width:100%;z-index:2;pointer-events:none}.parent-message-line-motion>span{position:absolute;display:block;overflow:clip}.parent-message-text-highlight,.message-draft-editor textarea{width:100%;min-height:420px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-control);font:inherit;font-size:var(--font-body);font-weight:var(--font-weight-body);line-height:1.7;white-space:pre-wrap;overflow-wrap:break-word}.parent-message-text-highlight{position:absolute;inset:0;overflow:auto;background:var(--surface-input);color:var(--text);pointer-events:none;scrollbar-width:none}.parent-message-text-highlight::-webkit-scrollbar{display:none}.parent-message-text-highlight mark{border-radius:2px;background:var(--message-context-soft);color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone}.message-draft-editor textarea{position:relative;z-index:1;resize:vertical;background:transparent;color:transparent;caret-color:var(--text);-webkit-text-fill-color:transparent}.parent-message-composer .parent-message-text-highlight,.parent-message-composer .parent-message-textarea textarea{padding:2px 0;border:0;border-radius:0;background:transparent}.message-draft-editor textarea::selection{background:color-mix(in srgb,var(--mgmt-blue) 30%,transparent)}.lesson-message-studio [data-message-section]{--homework-context-accent: var(--message-context-accent);--homework-context-soft: var(--message-context-soft)}.homework-message-field .message-draft-editor :is(textarea,.parent-message-text-highlight){min-height:clamp(390px,50vh,560px);padding:14px;font-size:14px;line-height:1.55;text-align:start;border:1px solid var(--teach-green-mid)}.homework-message-field .message-draft-editor textarea{background:transparent;color:transparent;-webkit-text-fill-color:transparent}.parent-message-warning{margin:10px 0 0;padding:9px 10px;border-radius:var(--radius-control);display:flex;align-items:flex-start;gap:7px;font-size:var(--font-caption);line-height:1.5}.parent-message-warning{border:1px solid color-mix(in srgb,var(--rose) 32%,var(--line));background:var(--danger-soft);color:var(--rose)}.parent-message-actions{min-height:64px;padding-block:10px;padding-inline:14px 110px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.parent-message-actions>span{overflow:hidden;color:var(--muted);font-size:var(--font-caption);text-overflow:ellipsis;white-space:nowrap}.parent-message-actions>div{display:flex;gap:8px;flex:0 0 auto}.parent-message-composer{position:relative}.parent-message-composer>.parent-message-panel-header{min-height:52px;padding-block:8px;padding-inline-end:62px;align-items:center}.parent-message-composer>.parent-message-panel-header h2{font-size:18px}.parent-message-reset-action{width:max-content;min-height:36px;margin-bottom:8px;padding:0 6px;border:0;background:transparent;color:var(--muted);display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:var(--font-weight-label)}.parent-message-reset-action:hover:not(:disabled){color:var(--teach-action-soft-text)}.parent-message-primary-action{min-height:var(--button-primary-h);padding:0 14px;border:0;border-radius:var(--radius-control);background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));box-shadow:var(--shadow-action-strong);display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:var(--font-weight-emphasis)}.parent-message-primary-action:hover:not(:disabled){background:var(--action-control-hover-bg, var(--teach-green-strong, var(--teach-green)))}.parent-message-primary-action:disabled{cursor:not-allowed;opacity:.48;box-shadow:none}.parent-message-action-spinner{animation:parent-message-action-spin .8s linear infinite}@keyframes parent-message-action-spin{to{transform:rotate(360deg)}}.parent-message-history-list{display:grid;gap:8px}.parent-message-history-item{width:100%;min-height:108px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);display:grid;gap:6px;text-align:start}.parent-message-history-item.parent-message-history-disclosure{min-height:0;padding:0;display:block}.parent-message-history-disclosure>summary{min-height:108px;padding:10px;display:grid;gap:6px;border-radius:inherit;cursor:pointer;list-style:none;text-align:start}.parent-message-history-disclosure>summary::-webkit-details-marker,.parent-message-history-page-disclosure>summary::-webkit-details-marker{display:none}.parent-message-history-disclosure>summary::marker,.parent-message-history-page-disclosure>summary::marker{content:""}.parent-message-history-disclosure>summary:focus-visible,.parent-message-history-page-disclosure>summary:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-action) 40%,transparent);outline-offset:-3px}.parent-message-history-read{justify-self:end;color:var(--teach-action);display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:var(--font-weight-emphasis, 600)}.parent-message-history-read svg,.parent-message-history-page-read svg{transition:transform .16s ease}.parent-message-history-disclosure[open] .parent-message-history-read svg,.parent-message-history-page-disclosure[open] .parent-message-history-page-read svg{transform:rotate(180deg)}@media(prefers-reduced-motion:reduce){.parent-message-history-read svg,.parent-message-history-page-read svg{transition:none}}.parent-message-history-expanded{padding:10px;border-top:1px solid var(--line)}.parent-message-history-expanded>strong{color:var(--muted);font-size:11px}.parent-message-history-expanded>p{margin:7px 0 0;overflow-wrap:anywhere;white-space:pre-wrap;font-size:var(--font-caption);line-height:1.6}.parent-message-history-item:hover,.parent-message-history-item.active{border-color:var(--teach-green-mid);background:var(--teach-green-soft)}.parent-message-history-top,.parent-message-history-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.parent-message-history-top strong{font-size:13px;font-weight:var(--font-weight-emphasis)}.parent-message-history-top time,.parent-message-history-meta{color:var(--muted);font-size:11px}.parent-message-history-copy{display:-webkit-box;overflow:hidden;color:var(--text-soft, var(--text));font-size:var(--font-caption);line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.parent-message-history-meta em{padding:3px 6px;border-radius:999px;background:var(--surface-soft);font-style:normal;font-weight:var(--font-weight-emphasis)}.parent-message-history-meta em.opened,.parent-message-history-meta em.sent_email{background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.parent-message-history-empty,.parent-message-empty-note{color:var(--muted);text-align:center}.parent-message-history-empty{min-height:220px;display:grid;place-content:center;justify-items:center;gap:6px}.parent-message-history-empty strong{color:var(--text);font-size:14px}.parent-message-history-empty p{max-width:190px;margin:0;font-size:var(--font-caption)}.parent-message-history-note{padding:10px 12px;border-top:1px solid var(--line);color:var(--muted);display:flex;align-items:flex-start;gap:6px;font-size:11px;line-height:1.45}.parent-message-history-backdrop{position:fixed;inset:0;z-index:1200;padding:18px;background:color-mix(in srgb,#10241c 42%,transparent);display:flex;justify-content:flex-end}[dir=rtl] .parent-message-history-backdrop{justify-content:flex-start}.parent-message-history-drawer{width:min(420px,100%);height:100%;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card);box-shadow:var(--shadow-sheet);display:grid;grid-template-rows:auto minmax(0,1fr) auto}.parent-message-history-drawer>header{min-height:72px;padding:14px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.parent-message-history-drawer h2{margin:0;font-size:var(--font-section-title)}.parent-message-history-drawer>header button{width:40px;min-height:40px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--muted);display:grid;place-items:center}.parent-message-history-drawer-body{overflow-y:auto;padding:14px}.parent-message-empty{min-height:360px;display:grid;place-content:center;justify-items:center;text-align:center}.parent-message-empty h1{margin:10px 0 4px;font-size:var(--font-page-title)}.parent-message-empty p{margin:0;color:var(--muted)}.parent-message-hub{width:min(1480px,100%);min-width:0;min-height:calc(100vh - 126px);margin-inline:auto;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card);box-shadow:var(--shadow-card);display:grid;grid-template-columns:220px minmax(0,1fr);align-items:stretch;overflow:hidden}.parent-message-hub-toolbar{min-width:0;padding:18px 12px;border-inline-end:1px solid var(--line);background:color-mix(in srgb,var(--surface-panel) 68%,var(--surface-card));display:flex;flex-direction:column;gap:16px}.parent-message-hub-title,.parent-message-hub-title>span,.parent-message-hub-toolbar nav button,.parent-message-hub-history{display:flex;align-items:center}.parent-message-hub-toolbar nav button{justify-content:center;text-align:center}.parent-message-hub-toolbar nav button>span{min-width:0;text-align:center}.parent-message-hub-toolbar nav button strong{overflow:visible;text-overflow:clip;white-space:normal}.parent-message-hub-title{padding:2px 4px 14px;border-bottom:1px solid var(--line);gap:10px}.parent-message-hub-title>span{width:38px;height:38px;justify-content:center;border-radius:10px;background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.parent-message-hub-title strong,.parent-message-hub-title small,.parent-message-hub-toolbar nav strong,.parent-message-hub-toolbar nav small,.parent-message-hub-history strong,.parent-message-hub-history small{display:block}.parent-message-hub-title strong{font-size:14px}.parent-message-hub-title small,.parent-message-hub-toolbar nav small,.parent-message-hub-history small{margin-top:2px;color:var(--muted);font-size:11px;font-weight:450}.parent-message-hub-toolbar nav{min-width:0;padding:0;border:0;background:transparent;display:grid;grid-template-columns:1fr;gap:6px}.parent-message-hub-toolbar nav button,.parent-message-hub-history{min-width:0;min-height:58px;padding:9px 10px;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--text-soft, var(--text));gap:9px;font:inherit;font-weight:var(--font-weight-emphasis, 600);text-align:start}.parent-message-hub-toolbar nav button:hover,.parent-message-hub-history:hover{background:var(--surface-input)}.parent-message-hub-toolbar nav button.active svg{color:var(--teach-action)}.parent-message-hub-toolbar nav button>span,.parent-message-hub-history>span{min-width:0}.parent-message-hub-toolbar nav strong,.parent-message-hub-history strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.parent-message-hub-content{min-width:0;padding:18px}.parent-message-hub-content>.parent-message-studio{width:100%}.parent-message-history-page{min-width:0;display:grid;align-content:start;gap:16px}.parent-message-history-page>header{min-height:54px;display:flex;align-items:center}.parent-message-history-page>header h1{margin:0;color:var(--text-strong, var(--text));font-size:26px;line-height:1.15}.parent-message-history-page>header p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.parent-message-history-page-list{display:grid;gap:8px}.parent-message-history-page-item{min-width:0;min-height:104px;content-visibility:auto;contain-intrinsic-size:auto 104px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-card);color:var(--text);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;font:inherit;text-align:start;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease,transform .14s ease}.parent-message-history-page-item.parent-message-history-page-disclosure{min-height:0;padding:0;content-visibility:visible;contain-intrinsic-size:none;display:block}.parent-message-history-page-disclosure>summary{min-height:116px;width:100%;padding:16px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:inherit;cursor:pointer;list-style:none;text-align:start}.parent-message-history-page-expanded{padding:14px 16px 16px;border-top:1px solid var(--line)}.parent-message-history-page-expanded>strong{color:var(--muted);font-size:11px}.parent-message-history-page-expanded>p{margin:8px 0 0;overflow-wrap:anywhere;white-space:pre-wrap;font-size:14px;line-height:1.6}.parent-message-history-page-item:hover{border-color:color-mix(in srgb,var(--teach-action) 38%,var(--line));background:color-mix(in srgb,var(--teach-green-soft) 38%,var(--surface-card));box-shadow:0 4px 14px #1b3b3314;transform:translateY(-1px)}.parent-message-history-page-item.is-read-only,.parent-message-history-item.is-read-only{cursor:default}.parent-message-history-page-item.is-read-only:hover{border-color:var(--line);background:var(--surface-card);box-shadow:none;transform:none}.parent-message-history-page-main{min-width:0;display:grid;gap:5px}.parent-message-history-page-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.parent-message-history-page-heading time,.parent-message-history-page-audience{color:var(--muted);font-size:11px}.parent-message-history-page-audience,.parent-message-history-page-main .parent-message-history-copy{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parent-message-history-page-side{min-width:104px;display:grid;justify-items:end;gap:10px}.parent-message-history-page-side em{padding:4px 7px;border-radius:999px;background:var(--surface-panel);color:var(--muted);font-size:10px;font-style:normal;font-weight:var(--font-weight-emphasis, 600)}.parent-message-history-page-side em.opened,.parent-message-history-page-side em.sent_email{background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.parent-message-history-page-side>span{color:var(--teach-action);display:flex;align-items:center;gap:5px;font-size:11px;font-weight:var(--font-weight-emphasis, 600)}.parent-message-batch-studio{min-width:0;display:grid;gap:12px}.parent-message-batch-header{min-height:42px;display:flex;align-items:center}.parent-message-batch-header .teaching-eyebrow{margin-bottom:3px}.parent-message-batch-studio .parent-message-batch-header h1{margin:0;color:var(--text-strong, var(--text));font-size:26px;line-height:1.15}.parent-message-batch-header p:last-child{max-width:760px;margin:5px 0 0;color:var(--muted);font-size:var(--font-body-small);line-height:1.45}.parent-message-batch-steps li.complete{color:var(--teach-action-soft-text)}.parent-message-batch-steps li.complete>span{border-color:transparent;background:var(--teach-green-soft);color:var(--teach-action)}.parent-message-batch-steps li.current{background:var(--surface-card);color:var(--text);box-shadow:0 1px 4px #1b3b3314}.parent-message-batch-steps li.current>span{border-color:color-mix(in srgb,var(--teach-action) 40%,var(--line));color:var(--teach-action)}.parent-message-schedule-title{align-self:stretch;padding-inline-end:12px;border-inline-end:1px solid var(--line);color:var(--teach-action);display:flex;align-items:center;gap:8px}.parent-message-schedule-strip{padding:12px;border:1px solid var(--line);border-radius:var(--radius-panel);background:color-mix(in srgb,var(--surface-panel) 55%,var(--surface-card));display:grid;grid-template-columns:minmax(160px,.75fr) minmax(220px,1.3fr) repeat(2,minmax(150px,1fr));align-items:end;gap:10px}.parent-message-schedule-title h2{margin:0;color:var(--text);font-size:14px}.parent-message-schedule-title small{display:block;margin-top:2px;color:var(--muted);font-size:10px;line-height:1.35}.parent-message-schedule-strip label,.parent-message-batch-preview label{min-width:0;display:grid;gap:5px}.parent-message-schedule-strip label>span,.parent-message-batch-preview label>span{color:var(--muted);font-size:11px;font-weight:var(--font-weight-emphasis, 600)}.parent-message-schedule-strip input{width:100%;min-height:38px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);font:inherit}.parent-message-batch-workspace{min-width:0;display:grid;grid-template-columns:340px minmax(0,1fr);align-items:stretch;gap:14px}.parent-message-batch-recipients,.parent-message-batch-composer{min-width:0;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.parent-message-batch-recipients{min-height:620px;padding:12px;display:flex;flex-direction:column;gap:8px}.parent-message-batch-recipients h2,.parent-message-batch-composer h2{margin:0;font-size:var(--font-section-title)}.parent-message-batch-recipients>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.parent-message-batch-recipients header p:last-child{margin:3px 0 0;color:var(--muted);font-size:11px}.parent-message-recipient-readiness span.warning,.parent-message-recipient-readiness span.warning strong{color:var(--app-warning-text, #78540e)}.parent-message-recipient-controls{display:flex;justify-content:flex-end;gap:5px}.parent-message-recipient-controls>button{width:auto;min-height:34px;padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);display:flex;align-items:center;justify-content:space-between;gap:8px;font:inherit;font-size:12px;font-weight:var(--font-weight-emphasis, 600)}.parent-message-recipient-controls>button{white-space:nowrap}.parent-message-recipient-controls>button:disabled{opacity:.45;cursor:default}.parent-message-recipient-controls>.parent-message-clear-selection{background:transparent;color:var(--teach-action)}.parent-message-selected-students{min-height:0;flex:1;overflow-y:auto;padding-inline-end:3px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:min-content;align-content:start;gap:5px}.parent-message-student-toggle{min-width:0;min-height:48px;padding:6px 7px;border:1px solid color-mix(in srgb,var(--student-color, var(--line)) 34%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--student-color, var(--surface-panel)) 11%,var(--surface-card));color:var(--text);display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:5px;font:inherit;text-align:start;transition:opacity .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.parent-message-student-toggle:hover{border-color:var(--student-color, var(--teach-action));box-shadow:0 3px 10px #1b3b3317;transform:translateY(-1px)}.parent-message-student-toggle.unselected{opacity:.55;background:var(--surface-panel)}.parent-message-student-toggle.unselected:hover{opacity:.82}.parent-message-student-toggle>span:last-child{min-width:0}.parent-message-student-toggle strong,.parent-message-student-toggle small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parent-message-student-toggle strong{font-size:12px}.parent-message-student-toggle small{margin-top:1px;color:var(--muted);font-size:9.5px}.parent-message-selected-students article{min-width:0;min-height:54px;padding:7px 7px 7px 9px;border:1px solid color-mix(in srgb,var(--student-color, var(--line)) 30%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--student-color, var(--surface-panel)) 10%,var(--surface-card));color:var(--text);display:grid;grid-template-columns:26px minmax(0,1fr) 30px;align-items:center;gap:8px}.parent-message-student-status{width:22px;height:22px;border-radius:999px;background:var(--surface-card);color:var(--teach-action);display:grid;place-items:center}.parent-message-selected-students article.missing .parent-message-student-status{color:var(--app-warning-text, #78540e)}.parent-message-selected-students article strong,.parent-message-selected-students article small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parent-message-selected-students article strong{font-size:12px}.parent-message-selected-students article small{margin-top:2px;color:var(--muted);font-size:10px}.parent-message-selected-students article>button{width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:var(--muted);display:grid;place-items:center}.parent-message-selected-students article>button:hover{background:var(--surface-card);color:var(--text)}.parent-message-selection-note,.parent-message-batch-warning{margin:0;color:var(--muted);display:flex;align-items:flex-start;gap:6px;font-size:11px;line-height:1.45}.parent-message-batch-warning{padding:8px;border-radius:8px;background:#fff6df;color:#78540e}.parent-message-batch-composer{min-height:620px;padding:15px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px}.parent-message-batch-composer-header,.parent-message-batch-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.parent-message-batch-header-actions{display:flex;align-items:center;gap:8px}.parent-message-batch-composer-header>div{min-width:0}.parent-message-batch-composer-header h2{font-size:18px}.parent-message-batch-composer-header span,.parent-message-batch-actions>span{color:var(--muted);font-size:11px}.parent-message-batch-composer-header span{display:block;margin-top:3px}.parent-message-batch-header-actions>button:not(.message-template-button){min-height:34px;padding:6px 10px;border:0;background:transparent;color:var(--teach-action);display:flex;align-items:center;gap:6px;font:inherit;font-size:12px;font-weight:var(--font-weight-emphasis, 600)}.parent-message-composer-workspace{min-width:0;display:grid;grid-template-columns:minmax(430px,1fr) minmax(220px,260px);align-items:stretch;gap:12px}.parent-message-template-editor{min-width:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;align-content:start;gap:10px}.parent-message-batch-textarea>span{color:var(--text-soft, var(--text));font-size:12px;font-weight:var(--font-weight-emphasis, 600)}.parent-message-batch-textarea{min-height:420px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:5px}.parent-message-batch-textarea textarea,.parent-message-batch-textarea .template-token-editor{width:100%;height:100%;min-height:420px;resize:vertical;padding:15px;border:1px solid var(--line);border-radius:var(--radius-control);outline:none;background:var(--surface-input);color:var(--text);font:inherit;font-size:15px;line-height:1.65}.parent-message-batch-textarea .template-token-editor{min-height:420px;overflow-y:auto;outline:none;font-weight:400;white-space:pre-wrap;overflow-wrap:anywhere}.parent-message-batch-textarea .template-token-editor:focus{border-color:var(--teach-action);box-shadow:0 0 0 3px color-mix(in srgb,var(--teach-action) 12%,transparent)}.template-token-editor:empty:before{content:attr(data-placeholder);color:var(--muted);pointer-events:none}.template-token-editor-chip{display:inline-flex;align-items:center;min-height:24px;margin-inline:2px;padding:2px 7px;border:1px solid color-mix(in srgb,var(--mgmt-blue) 34%,var(--line));border-radius:var(--radius-control);background:var(--mgmt-blue-soft);color:var(--mgmt-blue);font:inherit;font-weight:var(--font-weight-emphasis, 600);line-height:1.35;vertical-align:baseline}.prompt-settings-field .settings-template-token-editor{min-height:176px;max-height:320px;overflow-y:auto;padding:12px;border:1px solid var(--line);border-radius:var(--radius-control);outline:none;background:var(--surface-input);color:var(--text);font:inherit;font-weight:400;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.prompt-settings-field .settings-template-token-editor:focus{border-color:var(--teach-action);box-shadow:0 0 0 3px color-mix(in srgb,var(--teach-action) 12%,transparent)}.parent-message-batch-textarea textarea:focus{border-color:var(--teach-action);box-shadow:0 0 0 3px color-mix(in srgb,var(--teach-action) 12%,transparent)}.parent-message-template-help{margin:0;color:var(--muted);display:flex;align-items:flex-start;gap:6px;font-size:10px;line-height:1.45}.parent-message-cancellation-link-option{min-height:58px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--teach-action) 28%,var(--line));border-radius:var(--radius-control);background:color-mix(in srgb,var(--teach-green-soft) 52%,var(--surface-card));color:var(--text);display:grid;grid-template-columns:20px 34px minmax(0,1fr);align-items:center;gap:9px;cursor:pointer}.parent-message-cancellation-link-option:focus-within{border-color:var(--teach-action);box-shadow:0 0 0 3px color-mix(in srgb,var(--teach-action) 12%,transparent)}.parent-message-cancellation-link-option>input{width:18px;height:18px;margin:0;accent-color:var(--teach-action)}.parent-message-cancellation-link-option>span:nth-of-type(1){width:34px;height:34px;border-radius:10px;background:var(--surface-card);color:var(--teach-action);display:grid;place-items:center}.parent-message-cancellation-link-option strong,.parent-message-cancellation-link-option small{display:block}.parent-message-cancellation-link-option strong{font-size:12px}.parent-message-cancellation-link-option small{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.4}.parent-message-template-picker{min-width:0;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--surface-panel);display:flex;flex-direction:column;align-items:stretch;gap:8px}.parent-message-template-picker h3{margin:0 0 2px;font-size:14px}.parent-message-template-picker>button{min-width:0;min-height:54px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface-card);color:var(--text);display:flex;align-items:center;gap:9px;font:inherit;text-align:start}.parent-message-template-picker>button:hover{border-color:color-mix(in srgb,var(--teach-action) 45%,var(--line))}.parent-message-template-picker>button.active{border-color:var(--teach-action);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.parent-message-template-picker>button svg{flex:0 0 auto}.parent-message-template-picker>button span{min-width:0}.parent-message-template-picker>button strong,.parent-message-template-picker>button small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parent-message-template-picker>button strong{font-size:12px}.parent-message-template-picker>button small{margin-top:2px;color:var(--muted);font-size:10px}.parent-message-batch-preview>header>span.ready{background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.parent-message-batch-actions{padding-top:12px;border-top:1px solid var(--line)}.parent-message-batch-actions>div{display:flex;gap:8px}.parent-message-save-draft-icon{width:40px;min-width:40px;padding-inline:0;justify-content:center}.parent-message-send-readiness{min-width:0;display:flex!important;align-items:center;gap:9px!important}.parent-message-send-readiness>span{width:34px;min-width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--app-warning-text, #78540e) 10%,var(--surface-panel));color:var(--app-warning-text, #78540e);display:grid;place-items:center}.parent-message-send-readiness.ready>span{background:var(--teach-green-soft);color:var(--teach-action)}.parent-message-send-readiness p{min-width:0;margin:0}.parent-message-send-readiness strong,.parent-message-send-readiness small{display:block}.parent-message-send-readiness strong{font-size:12px}.parent-message-send-readiness small{margin-top:2px;color:var(--muted);font-size:10px}.parent-message-student-picker-dialog,.parent-message-batch-review-dialog{width:min(860px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 32px))}.parent-message-student-picker-dialog .assignment-list{overflow-y:auto}.parent-message-batch-review-dialog{width:min(720px,calc(100vw - 32px));height:min(780px,calc(100dvh - 32px));max-height:none;grid-template-rows:auto auto minmax(190px,.9fr) minmax(170px,1fr) auto}.parent-message-review-summary{margin:12px 14px 0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--teach-action) 22%,var(--line));border-radius:10px;background:var(--teach-green-soft);display:flex;align-items:center;gap:9px}.parent-message-review-summary>span{width:34px;height:34px;border-radius:9px;background:var(--surface-card);color:var(--teach-action);display:grid;place-items:center}.parent-message-review-summary p{margin:0}.parent-message-review-summary strong,.parent-message-review-summary small{display:block}.parent-message-review-summary small{margin-top:2px;color:var(--muted);font-size:11px}.parent-message-whatsapp-progress-list{margin:0;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:14px;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-content:start}.parent-message-whatsapp-progress-list li{min-width:0;padding:9px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);display:grid;grid-template-columns:27px minmax(0,1fr);align-items:center;gap:8px;text-align:start}.parent-message-whatsapp-progress-list li>span{width:27px;height:27px;border-radius:999px;background:var(--surface-panel);display:grid;place-items:center;color:var(--muted);font-size:11px;font-weight:var(--font-weight-heading, 700)}.parent-message-whatsapp-progress-list li.current{border-color:var(--teach-action);background:var(--teach-green-soft);box-shadow:inset 3px 0 0 var(--teach-action)}[dir=rtl] .parent-message-whatsapp-progress-list li.current{box-shadow:inset -3px 0 0 var(--teach-action)}.parent-message-whatsapp-progress-list li.complete{border-color:color-mix(in srgb,var(--teach-action) 28%,var(--line));background:color-mix(in srgb,var(--teach-green-soft) 62%,var(--surface-card))}.parent-message-whatsapp-progress-list li.complete>span{background:var(--teach-action);color:var(--teach-action-solid-text)}.parent-message-whatsapp-progress-list strong,.parent-message-whatsapp-progress-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parent-message-whatsapp-progress-list small{margin-top:2px;color:var(--muted);font-size:10px}.parent-message-whatsapp-progress-list li.current small{color:var(--teach-action-soft-text);font-weight:var(--font-weight-emphasis, 600)}.parent-message-whatsapp-current{min-height:0;margin:0 14px 14px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-panel);font-size:12px;overflow-y:auto}.parent-message-whatsapp-current>header{padding-bottom:10px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:9px}.parent-message-whatsapp-current>header>span,.parent-message-whatsapp-complete>span{width:36px;min-width:36px;height:36px;border-radius:10px;background:var(--teach-green-soft);color:var(--teach-action);display:grid;place-items:center}.parent-message-whatsapp-current>header div{min-width:0}.parent-message-whatsapp-current>header small,.parent-message-whatsapp-current>header strong,.parent-message-whatsapp-current>header p{display:block}.parent-message-whatsapp-current>header small{color:var(--muted)}.parent-message-whatsapp-current>header strong{margin-top:1px;font-size:14px}.parent-message-whatsapp-current>header p{margin:2px 0 0;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parent-message-whatsapp-current-copy{padding-top:10px}.parent-message-whatsapp-current-copy>strong{font-size:11px}.parent-message-whatsapp-current-copy>p{margin:7px 0 0;white-space:pre-wrap;line-height:1.55}.parent-message-whatsapp-current.complete{display:grid;place-items:center}.parent-message-whatsapp-complete{max-width:440px;display:flex;align-items:center;gap:11px}.parent-message-whatsapp-complete strong{display:block;font-size:14px}.parent-message-whatsapp-complete p{margin:3px 0 0;color:var(--muted);line-height:1.45}.parent-message-batch-review-dialog>.assignment-footer{position:relative;z-index:1;margin:0 -16px -16px;padding:12px 16px 16px;border-top:1px solid var(--line);background:var(--surface-card);box-shadow:0 -8px 18px #1b3b3312}@media(max-width:1220px){.parent-message-hub{grid-template-columns:190px minmax(0,1fr)}.parent-message-hub-toolbar{padding-inline:10px}.parent-message-hub-content{padding:16px}.parent-message-schedule-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.parent-message-schedule-title{grid-column:1 / -1;padding:0 0 8px;border-inline-end:0;border-bottom:1px solid var(--line)}.parent-message-composer-workspace{grid-template-columns:1fr}.parent-message-template-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.parent-message-template-picker>header{grid-column:1 / -1}.parent-message-workspace{grid-template-columns:286px minmax(420px,1fr)}.parent-message-history{grid-column:1 / -1}.parent-message-history-list{grid-template-columns:1fr}}@media(max-width:860px){.parent-message-hub{display:flex;flex-direction:column}.parent-message-hub-toolbar{min-height:70px;padding:8px;border-inline-end:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.parent-message-hub-title{display:none}.parent-message-hub-toolbar nav{padding:3px;border:1px solid var(--line);border-radius:11px;background:var(--surface-panel);grid-template-columns:repeat(3,minmax(0,1fr));gap:3px}.parent-message-hub-toolbar nav button{justify-content:center}.parent-message-batch-workspace{grid-template-columns:1fr}.parent-message-batch-recipients{min-height:auto}.parent-message-selected-students{max-height:260px;grid-template-columns:repeat(2,minmax(0,1fr))}.parent-message-routing{grid-template-columns:1fr 1fr}.parent-message-workspace{grid-template-columns:1fr}.parent-message-source,.parent-message-composer,.parent-message-history{grid-column:auto}.parent-message-history-list{grid-template-columns:1fr}}@media(max-width:700px){.parent-message-hub{min-height:100dvh;border-inline:0;border-radius:0;box-shadow:none}.parent-message-hub-toolbar{position:sticky;top:0;z-index:10;min-height:0;display:block;padding:6px 10px;background:var(--surface-panel)}.parent-message-hub-toolbar nav{width:100%;border:0;background:var(--surface-input)}.parent-message-hub-toolbar nav small{display:none}.parent-message-hub-toolbar nav button{min-height:48px;padding:6px 4px;justify-content:center;gap:5px;text-align:center}.parent-message-hub-toolbar nav button>span{display:block}.parent-message-hub-toolbar nav button strong{display:block;font-size:13px;line-height:1.2;white-space:normal}.parent-message-hub-toolbar nav button svg{width:17px;height:17px}.parent-message-hub-toolbar nav button.active{border-color:var(--selection-control-border, transparent);background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text));box-shadow:none}.parent-message-hub-toolbar nav button.active svg{color:currentColor}.parent-message-hub-content{padding:10px}.parent-message-history-page>header h1{font-size:23px}.parent-message-history-page-list>.parent-message-history-page-item,.parent-message-history-page-disclosure>summary{grid-template-columns:minmax(0,1fr);gap:9px}.parent-message-history-page-side{min-width:0;grid-column:1;display:flex;align-items:center;justify-content:space-between}.parent-message-batch-header{min-height:auto}.parent-message-batch-studio .parent-message-batch-header h1{font-size:23px}.parent-message-schedule-strip{grid-template-columns:1fr 1fr}.parent-message-schedule-title,.parent-message-schedule-strip label:first-of-type{grid-column:1 / -1}.parent-message-selected-students{grid-template-columns:1fr}.parent-message-batch-composer{min-height:auto;padding:10px}.parent-message-batch-composer-header{align-items:flex-start}.parent-message-batch-composer-header>button{min-height:44px;padding-inline:8px}.parent-message-batch-composer-header>div>span,.parent-message-batch-actions>span{display:none}.parent-message-batch-textarea,.parent-message-batch-textarea textarea{min-height:280px}.parent-message-template-picker{grid-template-columns:1fr 1fr}.parent-message-cancellation-link-option{min-height:68px;grid-template-columns:20px 34px minmax(0,1fr)}.parent-message-batch-actions{align-items:stretch;flex-direction:column}.parent-message-batch-actions>div{width:100%}.parent-message-batch-actions>div:last-child{display:grid;grid-template-columns:48px 44px;justify-content:end}.parent-message-batch-actions button{min-height:48px}.parent-message-batch-review-dialog{width:100%;height:100dvh;max-height:100dvh;border-radius:0;grid-template-rows:auto auto minmax(170px,.9fr) minmax(150px,1fr) auto}.parent-message-whatsapp-progress-list{grid-template-columns:1fr}body[data-app-layout-mode=phone] .parent-message-studio,.parent-message-studio{padding:12px}.lesson-update-dialog .parent-message-studio{padding:0}.parent-message-open-lesson-notes{min-height:44px}.parent-message-page-header{display:none}.parent-message-page-header h1{font-size:28px}.parent-message-routing{grid-template-columns:1fr;gap:10px}.parent-message-default-button,.parent-message-secondary-action,.parent-message-primary-action,.parent-message-panel-header>button{min-height:var(--button-phone-h)}.parent-message-panel-header{min-height:68px}.parent-message-panel-body{padding:12px}.parent-message-composer{overflow:visible;border:0;border-radius:0;background:transparent}.parent-message-composer>.parent-message-panel-header{min-height:auto;padding:0 0 10px;border-bottom:0;align-items:center}.parent-message-composer>.parent-message-panel-header h2{font-size:20px}.parent-message-composer .parent-message-composer-header-actions{min-width:0;flex:0 1 auto}.parent-message-composer>.parent-message-panel-body{padding:0}.parent-message-reset-action{min-height:44px;margin-bottom:6px;padding-inline:4px}.parent-message-section-choice{min-height:var(--button-phone-h)}.parent-message-text-highlight,.parent-message-textarea textarea{min-height:400px;font-size:16px}.parent-message-actions{position:sticky;bottom:calc(64px + env(safe-area-inset-bottom));z-index:20;padding-bottom:10px;padding-inline:12px;background:color-mix(in srgb,var(--surface-card) 94%,transparent);box-shadow:var(--shadow-sheet)}.lesson-update-dialog .parent-message-actions{bottom:0}.parent-message-actions>span{display:none}.parent-message-actions>div{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 44px}.parent-message-history-list{grid-template-columns:1fr}.parent-message-history-backdrop{padding:10px}}@media(prefers-reduced-motion:reduce){.parent-message-section-choice,.parent-message-action-spinner{animation:none;transition:none}}.parent-message-composer-header-actions{display:flex;align-items:center;gap:8px}body[data-app-layout-mode=phone] :is(.parent-message-studio,.parent-message-batch-studio) :is(.parent-message-field-heading>button,.parent-message-create-summary-action,.parent-message-open-lesson-notes,.parent-message-select-homework,.parent-message-secondary-action,.parent-message-primary-action,.parent-message-reset-action,.parent-message-panel-header>button,.parent-message-batch-header-actions>button){min-height:44px}body[data-app-layout-mode=phone] :is(.parent-message-studio,.parent-message-batch-studio) .parent-message-field-heading>button{min-width:44px;padding-block:0}body[data-app-layout-mode=phone] .parent-message-studio .parent-message-source .meeting-link-toggle{min-height:44px}body[data-app-layout-mode=phone] :is(.parent-message-studio,.parent-message-batch-studio) button.voice-dictation-button{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;padding:0}.parent-message-templates-page{display:grid;align-content:start;gap:14px}.parent-message-templates-page>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.parent-message-templates-page>header h1{margin:0;font-size:24px}.parent-message-templates-page>header p{max-width:720px;margin:5px 0 0;color:var(--muted);line-height:1.5}.parent-message-template-preferences,.parent-message-template-group,.parent-message-template-row{border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.parent-message-template-preferences{width:min(360px,100%);flex:0 0 min(360px,38%)}.parent-message-template-preferences summary,.parent-message-template-group>summary{min-height:54px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 13px;cursor:pointer;list-style:none}.parent-message-template-preferences summary{grid-template-columns:minmax(0,1fr) auto}.parent-message-template-preferences summary::-webkit-details-marker,.parent-message-template-group>summary::-webkit-details-marker{display:none}.parent-message-template-preferences summary span,.parent-message-template-group>summary span{min-width:0;display:grid;gap:2px}.parent-message-template-preferences summary small,.parent-message-template-group>summary small{color:var(--muted);font-size:12px}.parent-message-template-preferences[open] summary svg,.parent-message-template-group[open]>summary svg,.parent-message-template-row.is-open .parent-message-template-toggle>svg{transform:rotate(180deg)}.parent-message-template-preferences>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;padding:0 13px 13px;border-top:1px solid var(--line)}.parent-message-template-preferences label{min-width:0;display:grid;align-content:start;gap:5px;padding-top:12px;font-size:12px;font-weight:var(--font-weight-label)}.parent-message-template-preferences input{min-width:0;min-height:38px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);font:inherit}.parent-message-template-preferences footer{grid-column:1 / -1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.parent-message-template-preferences footer button,.parent-message-template-actions button,.parent-message-template-insertions button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);font:inherit;font-size:12px}.parent-message-template-preferences footer button.primary,.parent-message-template-actions button.primary{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}.parent-message-template-preferences button:disabled,.parent-message-template-actions button:disabled{opacity:.45}.parent-message-template-marker-help{max-width:none;display:flex;align-items:flex-start;gap:8px;margin:0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--teach-green) 22%,var(--line));border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-size:13px;line-height:1.45}.parent-message-template-search{width:min(430px,100%);min-height:40px;display:flex;align-items:center;gap:8px;padding-inline:11px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input)}.parent-message-template-search svg{flex:0 0 auto;color:var(--muted)}.parent-message-template-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit}.parent-message-template-groups{display:grid;gap:10px}.parent-message-template-group{overflow:clip}.parent-message-template-group>summary:hover{background:var(--surface-soft)}.parent-message-template-group>summary strong{font-size:15px}.parent-message-template-group>summary em{min-width:28px;padding:3px 8px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:12px;font-style:normal;text-align:center}.parent-message-template-group>div{display:grid;padding:0 10px 10px;border-top:1px solid var(--line)}.parent-message-template-row{border-width:0 0 1px;border-radius:0}.parent-message-template-row:last-child{border-bottom:0}.parent-message-template-toggle{width:100%;min-height:60px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 4px;border:0;background:transparent;color:var(--text);text-align:start;font:inherit}.parent-message-template-toggle>span:first-child{min-width:0;display:grid;gap:3px}.parent-message-template-toggle strong{font-size:14px}.parent-message-template-toggle small{color:var(--muted);font-size:12px}.parent-message-template-usage{max-width:230px;color:var(--muted);font-size:11px;text-align:end}.parent-message-template-expanded{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(260px,.92fr);gap:14px;margin:0 4px 12px;padding:13px;border-radius:var(--radius-control);background:var(--surface-soft)}.parent-message-template-editor{min-width:0;display:grid;gap:10px}.parent-message-template-editor>label{display:grid;gap:6px;font-size:12px;font-weight:var(--font-weight-label)}.parent-message-template-editor-field{min-height:190px;max-height:390px;overflow-y:auto;padding:10px 11px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);font-size:14px;line-height:1.55;white-space:pre-wrap}.parent-message-template-insertions{display:flex;flex-wrap:wrap;gap:5px}.parent-message-template-insertions button{min-height:30px;padding:4px 7px;color:var(--teach-action-soft-text)}.parent-message-template-source{display:flex;align-items:flex-start;gap:7px;margin:0;padding:8px 9px;border-radius:var(--radius-control);background:var(--teach-yellow-soft);color:var(--text);font-size:12px;line-height:1.45}.parent-message-template-source svg{flex:0 0 auto;margin-top:1px}.parent-message-template-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.parent-message-template-error{margin:0;color:var(--danger);font-size:12px}.parent-message-template-preview{min-width:0;display:grid;align-content:start;gap:5px}.parent-message-template-preview>small{color:var(--muted);font-size:11px}.parent-message-template-structure{min-width:0;margin:4px 0 0;padding:11px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--teach-action-soft-text);font-size:13px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.parent-message-template-structure>.parent-message-template-data-chip{display:inline-flex;max-width:100%;align-items:center;margin:1px 3px;padding:1px 7px;border:1px solid color-mix(in srgb,var(--teach-blue, #3978d4) 30%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--teach-blue, #3978d4) 13%,var(--surface-card));color:var(--teach-blue, #285f9d);font-size:11px;font-weight:var(--font-weight-label);line-height:1.45;white-space:normal}.parent-message-template-empty{margin:0;padding:18px;border:1px dashed var(--line);border-radius:var(--radius-panel);color:var(--muted);text-align:center}@media(max-width:840px){.parent-message-templates-page>header{flex-direction:column}.parent-message-template-preferences{width:100%;flex-basis:auto}.parent-message-template-expanded{grid-template-columns:1fr}}body[data-app-layout-mode=phone] .parent-message-templates-page{gap:11px}body[data-app-layout-mode=phone] .parent-message-templates-page>header h1{font-size:21px}body[data-app-layout-mode=phone] .parent-message-template-preferences>div{grid-template-columns:1fr}body[data-app-layout-mode=phone] .parent-message-template-preferences footer{grid-column:1;flex-direction:column-reverse}body[data-app-layout-mode=phone] .parent-message-template-preferences footer button,body[data-app-layout-mode=phone] .parent-message-template-actions button{width:100%;min-height:44px}body[data-app-layout-mode=phone] .parent-message-template-toggle{grid-template-columns:minmax(0,1fr) auto;align-items:start}body[data-app-layout-mode=phone] .parent-message-template-usage{grid-column:1;max-width:none;text-align:start}body[data-app-layout-mode=phone] .parent-message-template-toggle>svg{grid-column:2;grid-row:1 / span 2;margin-top:3px}body[data-app-layout-mode=phone] .parent-message-template-expanded{margin-inline:0;padding:10px}body[data-app-layout-mode=phone] .parent-message-template-editor-field{min-height:230px;font-size:16px}body[data-app-layout-mode=phone] .parent-message-template-actions{flex-direction:column-reverse}.teaching-detail-panel>.teaching-lesson-header.teaching-lesson-command-header{display:grid;grid-template-columns:auto auto minmax(24px,1fr) auto;grid-template-areas:"back identity . meta" "navigation navigation . tools";align-items:center;justify-content:stretch;column-gap:18px;row-gap:12px;padding:10px 12px 12px;border-bottom:1px solid var(--line);background:var(--surface-panel)}.teaching-lesson-command-back{grid-area:back;width:44px;min-width:44px;height:44px;min-height:44px;justify-content:center;padding:0}[dir=rtl] .teaching-lesson-command-back svg{transform:scaleX(-1)}.teaching-lesson-command-identity{grid-area:identity;width:fit-content;min-width:0;display:flex;align-items:center}.teaching-lesson-command-identity .teaching-lesson-title-row{display:flex;align-items:center;gap:6px}.teaching-lesson-command-identity .teaching-lesson-student-title{min-width:0;gap:6px}.teaching-lesson-command-identity .teaching-lesson-student-chip{min-height:44px;padding:0 11px;font-size:13px}.teaching-lesson-command-identity .teaching-edit-header-students{width:62px;min-width:62px;height:44px;min-height:44px}.teaching-lesson-command-identity .teaching-workflow-attendance{width:auto;min-width:64px;height:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;margin-inline-start:10px;white-space:nowrap}.teaching-lesson-command-identity .teaching-workflow-attendance strong{font-size:13px;line-height:1}.teaching-lesson-command-meta{grid-area:meta;justify-self:end;min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:8px;color:var(--muted);font-size:12.5px;line-height:1.25;text-align:end;white-space:nowrap}.teaching-lesson-command-date{white-space:nowrap}.teaching-lesson-command-meta .teaching-workflow-print{width:44px;min-width:44px;height:44px;min-height:44px}.teaching-lesson-command-lock{display:inline-flex;align-items:center;min-height:22px;border-radius:999px;padding:2px 7px;background:color-mix(in srgb,var(--surface-card) 84%,var(--line));color:var(--text);font-size:12px;font-weight:var(--font-weight-label, 500)}.teaching-detail-panel .teaching-lesson-command-tools{grid-area:tools;align-self:center;display:flex;align-items:center;gap:7px}.teaching-detail-panel .teaching-lesson-command-tools>button,.teaching-detail-panel .teaching-lesson-command-tools>details>summary{min-height:44px}.teaching-detail-panel .teaching-lesson-command-tools .teaching-message-trigger,.teaching-detail-panel .teaching-lesson-command-tools .teaching-cancel-lesson-button{width:44px;min-width:44px;height:44px;min-height:44px;padding:0}.teaching-detail-panel .teaching-lesson-command-tools .teaching-message-trigger{border-color:color-mix(in srgb,#25d366 45%,var(--line));background:color-mix(in srgb,#25d366 12%,var(--surface-card));color:#128c4a}.teaching-detail-panel .teaching-lesson-command-tools .teaching-message-trigger:hover:not(:disabled){border-color:color-mix(in srgb,#25d366 68%,var(--line));background:color-mix(in srgb,#25d366 20%,var(--surface-card))}.teaching-detail-panel .teaching-lesson-command-tools .teaching-lesson-attendance-trigger,.teaching-detail-panel .teaching-lesson-command-tools .teaching-next-lesson-trigger,.teaching-detail-panel .teaching-lesson-command-tools .teaching-share-update-trigger{min-width:0;height:44px;min-height:44px;display:inline-flex;grid-template-columns:none;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius-control);padding:0 11px;white-space:nowrap;font-size:12.5px}.teaching-detail-panel .teaching-lesson-command-tools .teaching-share-update-trigger{border:1px solid color-mix(in srgb,var(--teach-green) 34%,var(--line));background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-weight:var(--font-weight-label)}.teaching-detail-panel .teaching-lesson-command-tools .teaching-share-update-trigger:hover:not(:disabled){border-color:var(--teach-green-mid);background:color-mix(in srgb,var(--teach-green-soft) 72%,var(--teach-green-mid))}.teaching-detail-panel .teaching-lesson-command-tools .teaching-cancel-lesson-button{width:44px;min-width:44px;height:44px;min-height:44px;border:1px solid color-mix(in srgb,var(--rose) 38%,var(--line));border-radius:var(--radius-control);padding:0;background:color-mix(in srgb,var(--rose) 8%,var(--surface-card));color:var(--rose);font-size:12.5px;font-weight:var(--font-weight-label, 500);white-space:nowrap}.teaching-detail-panel .teaching-lesson-command-tools .teaching-cancel-lesson-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--rose) 58%,var(--line));background:color-mix(in srgb,var(--rose) 13%,var(--surface-card))}.teaching-detail-panel .teaching-lesson-command-tools .teaching-next-lesson-trigger{border-color:var(--line);background:var(--surface-card);color:var(--text)}.teaching-lesson-command-navigation{grid-area:navigation;width:fit-content;max-width:100%}.teaching-lesson-command-tabs{width:fit-content;max-width:100%;display:inline-grid;grid-template-columns:repeat(2,minmax(82px,1fr));gap:2px;border:1px solid var(--line);border-radius:var(--radius-control);padding:2px;background:color-mix(in srgb,var(--surface-card) 78%,var(--line))}.teaching-lesson-command-tabs button{min-width:0;min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:calc(var(--radius-control) - 3px);padding:4px 10px;background:transparent;color:var(--muted);font:inherit;font-size:12px;font-weight:var(--font-weight-label, 500);cursor:pointer}.teaching-lesson-command-tabs button:hover:not(:disabled){background:var(--surface-card);color:var(--text)}.teaching-lesson-command-tabs button.active{background:var(--surface-card);color:var(--teach-green);box-shadow:0 1px 2px color-mix(in srgb,var(--text) 12%,transparent)}.teaching-lesson-command-tabs button:focus-visible{outline:2px solid var(--teach-green);outline-offset:1px}.teaching-lesson-command-tabs button:disabled{cursor:not-allowed;opacity:.5}.teaching-lesson-command-tabs strong{min-width:20px;min-height:20px;display:inline-grid;place-items:center;border-radius:999px;padding-inline:4px;background:color-mix(in srgb,var(--surface-card) 64%,var(--line));color:inherit;font-size:12px;line-height:1}.teaching-lesson-command-tabs button.active strong{background:var(--teach-green-soft)}@media(max-width:820px){.teaching-lesson-command-meta,.teaching-lesson-command-identity,.teaching-lesson-command-identity .teaching-lesson-title-row{width:100%}.teaching-lesson-command-identity .teaching-lesson-title-row{flex-wrap:wrap}.teaching-detail-panel .teaching-lesson-command-tools{align-self:auto;width:100%;justify-content:flex-end}.teaching-detail-panel .teaching-lesson-command-tools .teaching-lesson-attendance-trigger,.teaching-detail-panel .teaching-lesson-command-tools .teaching-next-lesson-trigger{min-height:44px;height:44px;flex:1 1 0}.teaching-detail-panel .teaching-lesson-command-tools .teaching-cancel-lesson-button{flex:0 0 auto}.teaching-lesson-command-tabs{width:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.teaching-lesson-command-tabs button{min-height:44px;padding-inline:6px}}body[data-app-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-header.teaching-lesson-command-header{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"back identity" "meta meta" "navigation navigation" "tools tools";align-items:start;gap:7px;padding:8px}body[data-app-layout-mode=phone] .teaching-lesson-command-back{width:44px;min-width:44px;height:44px;padding:0}body[data-app-layout-mode=phone] .teaching-lesson-command-identity .teaching-lesson-title-row{display:flex;width:100%;gap:4px}body[data-app-layout-mode=phone] .teaching-lesson-command-identity .teaching-lesson-student-title{flex:0 1 auto}body[data-app-layout-mode=phone] .teaching-detail-panel .teaching-lesson-command-tools{width:100%;display:flex;gap:6px}body[data-app-layout-mode=phone] .teaching-detail-panel .teaching-lesson-command-tools .teaching-lesson-attendance-trigger,body[data-app-layout-mode=phone] .teaching-detail-panel .teaching-lesson-command-tools .teaching-next-lesson-trigger{min-height:44px;height:44px;flex:1 1 0}body[data-app-layout-mode=phone] .teaching-lesson-command-tabs{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}body[data-app-layout-mode=phone] .teaching-lesson-command-tabs button{min-height:44px;padding-inline:4px}@media(max-width:420px){.teaching-detail-panel .teaching-lesson-command-tools .teaching-lesson-attendance-trigger>span,.teaching-detail-panel .teaching-lesson-command-tools .teaching-next-lesson-trigger>span,body[data-app-layout-mode=phone] .teaching-detail-panel .teaching-lesson-command-tools .teaching-lesson-attendance-trigger>span,body[data-app-layout-mode=phone] .teaching-detail-panel .teaching-lesson-command-tools .teaching-next-lesson-trigger>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}@media(max-width:700px){.teaching-detail-panel .teaching-lesson-command-tools{flex-wrap:wrap}.teaching-detail-panel .teaching-lesson-command-tools .teaching-next-lesson-trigger{flex:1 1 auto}}.teaching-detail-panel>.teaching-lesson-header.teaching-lesson-command-header{column-gap:12px;row-gap:12px;padding:12px 16px}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-student-group{width:fit-content;max-width:100%;min-width:0;margin:0;border:1px solid color-mix(in srgb,var(--teach-green) 25%,var(--line));border-radius:12px;padding:0 6px 6px;background:color-mix(in srgb,var(--teach-green) 5%,var(--surface-card))}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-student-group-label{margin-inline-start:7px;padding:0 6px;color:var(--muted);font-size:11px;font-weight:var(--font-weight-label, 500);line-height:1;white-space:nowrap}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-student-group-label svg{margin-inline-end:5px;vertical-align:-2px}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-title-row{width:100%;flex-wrap:nowrap;gap:6px}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-student-title{flex:1 1 auto;flex-wrap:wrap;overflow:visible}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-student-chip{min-width:0;max-width:160px;height:44px;overflow:hidden;padding:0 11px;text-overflow:ellipsis;white-space:nowrap}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-edit-header-students{display:inline-flex;flex:0 0 62px;align-items:center;justify-content:center;gap:5px;width:62px;min-width:62px;height:44px;min-height:44px;border:0;border-radius:999px;padding:0;background:transparent;color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-label, 500);line-height:1;box-shadow:none;cursor:pointer}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-edit-header-students:hover:not(:disabled){background:color-mix(in srgb,var(--teach-green) 9%,transparent);box-shadow:none}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-edit-header-students:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 28%,transparent);outline-offset:-3px;background:transparent;box-shadow:none}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-tools .teaching-workflow-attendance{flex:0 0 auto;min-width:126px;width:auto;height:44px;min-height:44px;justify-content:center;gap:6px;margin:0;padding:0 12px;font-size:13px;font-weight:var(--font-weight-label, 500)}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-tools .teaching-workflow-attendance strong{min-width:24px;font-size:13px;font-weight:var(--font-weight-heading, 700);font-variant-numeric:tabular-nums;text-align:end}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-meta{gap:8px;font-size:15px}.teaching-lesson-tab-cluster{position:relative;width:244px;max-width:100%;height:48px}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-command-tabs{width:244px;max-width:100%;height:48px;display:grid;grid-template-columns:104px minmax(0,1fr);gap:4px;border:1px solid var(--line);border-radius:12px;padding:4px;background:color-mix(in srgb,var(--surface-card) 78%,var(--line))}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-command-tabs button{height:38px;min-height:38px;border:0;border-radius:8px;padding:0 10px;font-size:13px;font-weight:var(--font-weight-label, 500)}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-command-tabs button:last-of-type{padding-inline-end:46px}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-command-tabs button.active{background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text, #fff));box-shadow:none}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-open-external{position:absolute;transition:none;z-index:2;inset-block-start:5px;inset-inline-end:5px;width:36px;min-width:36px;height:38px;min-height:38px;display:grid;place-items:center;border:0;border-inline-start:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:0 8px 8px 0;padding:0;background:var(--teach-green-soft);color:var(--teach-action-soft-text);box-shadow:none}[dir=rtl] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-open-external{border-radius:8px 0 0 8px}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-command-tabs:has(button:last-of-type.active)+.teaching-lesson-open-external{border-inline-start-color:#ffffff47;background:color-mix(in srgb,var(--selection-control-bg, var(--teach-green)) 88%,white);color:var(--teach-action-solid-text, #fff)}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-open-external:hover:not(:disabled){background:color-mix(in srgb,var(--teach-green-mid) 42%,var(--surface-card))}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-command-tabs:has(button:last-of-type.active)+.teaching-lesson-open-external:hover:not(:disabled){background:color-mix(in srgb,var(--selection-control-bg, var(--teach-green)) 78%,white)}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-tools{width:auto;min-width:230px;height:44px;display:flex;flex:0 0 auto;flex-wrap:nowrap;align-items:center;gap:8px;justify-self:end}.teaching-lesson-command-more-menu{width:44px;height:44px}.teaching-lesson-command-more-menu .teaching-lesson-command-more-trigger{width:44px;min-width:44px;height:44px;min-height:44px;border:1px solid color-mix(in srgb,var(--teach-green) 24%,var(--line));border-radius:8px;padding:0;background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teaching-lesson-command-more-menu .teaching-lesson-command-more-trigger:hover,.teaching-lesson-command-more-menu .teaching-lesson-command-more-trigger[aria-expanded=true]{border-color:var(--teach-green-mid);background:color-mix(in srgb,var(--teach-green-soft) 72%,var(--teach-green-mid))}.teaching-lesson-command-more-menu .teaching-lesson-command-more-trigger:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 28%,transparent);outline-offset:2px}.app-action-menu.teaching-lesson-command-more-popover{width:216px;min-width:216px}.app-action-menu.teaching-lesson-command-more-popover>button{height:44px;min-height:44px;font-size:13px}.teaching-current-plan .teaching-block-card>header{min-height:44px;padding-inline-end:52px}.teaching-current-plan .teaching-block-card>header>strong{min-width:0;overflow-wrap:anywhere}.teaching-current-plan .teaching-activity-card-action-menu{position:absolute;z-index:3;inset-block-start:12px;inset-inline-end:14px}.teaching-current-plan .teaching-activity-card-action-trigger{width:44px;min-width:44px;height:44px;min-height:44px;border:1px solid color-mix(in srgb,var(--teach-green) 24%,var(--line));border-radius:8px;padding:0;background:var(--teach-green-soft);color:var(--teach-action-soft-text);box-shadow:none}.teaching-current-plan .teaching-activity-card-action-trigger:hover:not(:disabled),.teaching-current-plan .teaching-activity-card-action-trigger[aria-expanded=true]{border-color:var(--teach-green-mid);background:color-mix(in srgb,var(--teach-green-soft) 72%,var(--teach-green-mid))}.teaching-current-plan .teaching-activity-card-action-trigger:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 28%,transparent);outline-offset:2px}body[data-app-layout-mode=phone] .teaching-current-plan .teaching-activity-card-action-trigger{position:relative;border:0;padding:0;background:transparent}body[data-app-layout-mode=phone] .teaching-current-plan .teaching-activity-card-action-trigger:before{position:absolute;inset:4px;border:1px solid color-mix(in srgb,var(--teach-green) 24%,var(--line));border-radius:8px;background:var(--teach-green-soft);content:"";pointer-events:none}body[data-app-layout-mode=phone] .teaching-current-plan .teaching-activity-card-action-trigger[aria-expanded=true]:before{border-color:var(--teach-green-mid);background:color-mix(in srgb,var(--teach-green-soft) 72%,var(--teach-green-mid))}body[data-app-layout-mode=phone] .teaching-current-plan .teaching-activity-card-action-trigger>svg{position:relative;width:18px;height:18px}.app-action-menu.teaching-activity-card-action-popover{width:216px;min-width:216px}.app-action-menu.teaching-activity-card-action-popover>button{height:44px;min-height:44px;font-size:13px}.teaching-activity-card-hidden-attach[hidden]{display:none}body:has(.teaching-lesson-presentation) .app-sidebar,body:has(.teaching-lesson-presentation) .assistant-launcher,body:has(.teaching-lesson-presentation) .assistant-panel,body:has(.teaching-lesson-presentation) .training-data-reminder,body:has(.teaching-lesson-presentation) .training-data-reminder-collapsed{display:none!important}body:has(.teaching-lesson-presentation) .app-shell{min-height:100dvh;display:block;padding:0;background:var(--surface-page)}body:has(.teaching-lesson-presentation) .app-main{width:100%;max-width:none;min-height:100dvh;margin:0;padding:0}body:has(.teaching-lesson-presentation) .teaching-page,body:has(.teaching-lesson-presentation) .teaching-module,body:has(.teaching-lesson-presentation) .teaching-pages,body:has(.teaching-lesson-presentation) .teaching-detail-panel.teaching-lesson-presentation{width:100%;max-width:none;margin:0}body:has(.teaching-lesson-presentation) .teaching-detail-panel.teaching-lesson-presentation{min-height:100dvh;gap:0;border:0;border-radius:0;padding:0;background:var(--surface-page);box-shadow:none}.teaching-lesson-presentation>.teaching-lesson-command-header{display:none!important}.open-lesson-presentation-mode{width:min(1440px,100%);min-height:100dvh;margin:0 auto;gap:20px;padding:24px}.open-lesson-presentation-header{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding:0 4px 16px}.open-lesson-presentation-header>div{min-width:0;display:grid;gap:4px}.open-lesson-presentation-header span,.open-lesson-presentation-header time{color:var(--muted);font-size:14px}.open-lesson-presentation-header h1{margin:0;color:var(--text);font-size:clamp(24px,3vw,34px);line-height:1.15}.open-lesson-presentation-header time{flex:0 0 auto;white-space:nowrap}.open-lesson-presentation-mode{gap:0}.open-lesson-presentation-header{min-height:88px;border:1px solid var(--line);border-radius:16px 16px 0 0;padding:14px 18px;background:var(--surface-card)}.open-lesson-presentation-header-actions{min-width:0;display:flex!important;flex:0 0 auto;align-items:center;justify-content:flex-end;gap:16px!important}.open-lesson-presentation-header>div:first-child{min-width:0;flex:1 1 auto}.open-lesson-student-view-toggle{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0 14px;background:var(--surface-card);color:var(--text);font:inherit;font-weight:var(--font-weight-label, 500);white-space:nowrap}.open-lesson-student-view-toggle:hover,.open-lesson-student-view-toggle.active{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.open-lesson-student-view-toggle>span{color:inherit;font-size:inherit}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-shell{grid-template-columns:minmax(250px,280px) minmax(0,1fr);min-height:calc(100dvh - 136px);border-top:0;border-radius:0 0 16px 16px}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-shell.is-student-view{grid-template-columns:minmax(0,1fr)}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-rail{align-items:stretch;padding:0;background:color-mix(in srgb,var(--surface-muted-band) 72%,var(--surface-card))}.open-lesson-presentation-flow-header{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:12px 18px;background:var(--surface-card)}.open-lesson-presentation-flow-header>span{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list{width:100%;display:grid;align-content:start;padding:12px;gap:8px}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button,.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button:hover,.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button.active,html[dir=rtl] .open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button.active{width:100%;min-width:0;height:auto;min-height:64px;display:grid;grid-template-columns:36px minmax(0,1fr);place-items:initial;align-items:center;gap:10px;border:1px solid transparent;border-radius:var(--radius-card, 10px);padding:9px 10px;background:transparent;color:var(--text);text-align:start;box-shadow:none}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button:hover{border-color:var(--line);background:var(--surface-card)}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button.active,html[dir=rtl] .open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button.active{border-color:var(--teach-green-mid);background:color-mix(in srgb,var(--teach-green) 16%,var(--surface-card))}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button.active .open-lesson-activity-copy strong,.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button.active .open-lesson-activity-copy small{color:var(--text)}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button.active .open-lesson-activity-copy small{color:var(--muted)}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-copy{display:grid}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list .teaching-activity-number{width:34px;min-width:34px;height:34px;min-height:34px;border-radius:999px}.open-lesson-presentation-planning,.open-lesson-presentation-note{border-top:1px solid var(--line)}.open-lesson-presentation-planning{display:grid;gap:12px;padding:18px;background:color-mix(in srgb,var(--teach-green-soft) 34%,var(--surface-card))}.open-lesson-presentation-planning>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.open-lesson-presentation-planning>header>span,.open-lesson-presentation-planning>p.is-empty{color:var(--muted);font-size:12px}.open-lesson-presentation-planning>p{margin:0;color:var(--text);font-size:14px;line-height:1.55;white-space:pre-wrap}.open-lesson-presentation-note{padding:16px;background:var(--surface-card)}.open-lesson-presentation-note-composer,.open-lesson-presentation-note-composer:focus-within{min-height:0;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}.open-lesson-presentation-note-composer .open-lesson-note-label{margin-bottom:10px}.open-lesson-presentation-note-composer textarea{min-height:132px;resize:vertical;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:12px 12px 36px;background:var(--surface-input)}.open-lesson-presentation-note-composer textarea:focus{border-color:var(--teach-green);outline:3px solid color-mix(in srgb,var(--teach-green) 18%,transparent);outline-offset:0}.open-lesson-presentation-note-composer .open-lesson-note-footer{margin-top:8px}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-stage{gap:16px;padding:24px}.open-lesson-presentation-mode .open-lesson-instruction-canvas{min-height:360px;padding:24px}.open-lesson-presentation-mode .open-lesson-instruction-content{padding-top:14px}.open-lesson-presentation-resources{display:grid}.open-lesson-presentation-resources>article{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px}.open-lesson-presentation-resources>article+article{border-top:1px solid var(--line)}.open-lesson-presentation-resources>article.active{background:color-mix(in srgb,var(--teach-green-soft) 58%,transparent)}.open-lesson-presentation-resource-copy{min-width:0;display:flex;align-items:center;gap:10px}.open-lesson-presentation-resource-copy>span:last-child{min-width:0;display:grid;gap:3px}.open-lesson-presentation-resource-copy strong,.open-lesson-presentation-resource-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.open-lesson-presentation-resource-copy small{color:var(--muted);font-size:12px}.open-lesson-presentation-resource-icon{width:36px;height:36px;display:grid;flex:0 0 36px;place-items:center;border-radius:var(--radius-control, 8px);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.open-lesson-presentation-resource-actions{display:flex;flex:0 0 auto;align-items:center;gap:8px}.open-lesson-presentation-resource-actions>button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0 12px;background:var(--surface-card);color:var(--text);font:inherit;font-weight:var(--font-weight-label, 500)}.open-lesson-presentation-resource-actions>button:hover:not(:disabled){border-color:var(--teach-green-mid);background:var(--teach-green-soft)}.open-lesson-presentation-resource-actions>button:disabled{cursor:not-allowed;opacity:.48}.open-lesson-inline-resource-preview{min-width:0;overflow:hidden;display:grid;grid-template-rows:auto minmax(420px,68vh);border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-card)}.open-lesson-inline-resource-preview>header{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:8px 12px 8px 16px}.open-lesson-inline-resource-preview>header>div{min-width:0;display:grid;gap:2px}.open-lesson-inline-resource-preview h3,.open-lesson-inline-resource-preview small{overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap}.open-lesson-inline-resource-preview small{color:var(--muted);font-size:12px}.open-lesson-inline-resource-preview .teaching-resource-preview-stage{min-height:420px}@media(max-width:900px){.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-shell{grid-template-columns:minmax(0,1fr)}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-inline-end:0;border-bottom:1px solid var(--line)}.open-lesson-presentation-flow-header,.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list{grid-column:1 / -1}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list{overflow-x:auto;display:flex;flex-direction:row}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button,.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button:hover,.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button.active,html[dir=rtl] .open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button.active{width:210px;min-width:210px;flex:0 0 210px}.open-lesson-presentation-planning,.open-lesson-presentation-note{border-top:1px solid var(--line)}.open-lesson-presentation-note{border-inline-start:1px solid var(--line)}}@media(max-width:620px){.open-lesson-presentation-mode{padding:12px}.open-lesson-presentation-header{align-items:flex-start;flex-direction:column;gap:12px;padding:14px}.open-lesson-presentation-header>div:first-child{width:100%}.open-lesson-presentation-header-actions{width:100%;flex-wrap:wrap;justify-content:space-between}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-rail{grid-template-columns:minmax(0,1fr)}.open-lesson-presentation-planning,.open-lesson-presentation-note{grid-column:1}.open-lesson-presentation-note{border-inline-start:0}.open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-stage{padding:14px}.open-lesson-presentation-mode .open-lesson-instruction-canvas{min-height:260px;padding:16px}.open-lesson-presentation-resources>article{align-items:stretch;flex-direction:column}.open-lesson-presentation-resource-actions{width:100%}.open-lesson-presentation-resource-actions>button{flex:1 1 0}.open-lesson-inline-resource-preview{grid-template-rows:auto minmax(340px,60vh)}.open-lesson-inline-resource-preview .teaching-resource-preview-stage{min-height:340px}body[data-app-layout-mode=phone] .open-lesson-presentation-header h1{font-size:24px}body[data-app-layout-mode=phone] .open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button,body[data-app-layout-mode=phone] .open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button:hover,body[data-app-layout-mode=phone] .open-lesson-presentation-mode.open-lesson-focus-workspace .open-lesson-activity-list>button.active{width:210px;min-width:210px;height:auto;min-height:64px;display:grid;grid-template-columns:36px minmax(0,1fr);flex:0 0 210px;place-items:initial;align-items:center;padding:9px 10px}body[data-app-layout-mode=phone] .open-lesson-presentation-mode .open-lesson-activity-copy{display:grid}}@media(max-width:820px){.teaching-detail-panel>.teaching-lesson-header.teaching-lesson-command-header{grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"meta meta meta" "back identity identity" "navigation navigation tools";align-items:center;column-gap:8px;row-gap:12px;padding:12px}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity,.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-student-group,.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-title-row{width:100%}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-student-title{flex:1 1 auto;min-width:44px;flex-wrap:wrap}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-student-chip{max-width:100%}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-meta{width:100%;justify-content:flex-start;justify-self:stretch;text-align:start}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-navigation{width:100%}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster,.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-command-tabs{width:244px}.teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-tools{justify-self:end}}body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-header.teaching-lesson-command-header{grid-template-columns:minmax(0,1fr);grid-template-areas:"meta" "identity" "navigation" "tools";align-items:center;column-gap:8px;row-gap:12px;padding:12px}body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity,body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-student-group,body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-title-row{width:100%;display:flex;flex-wrap:nowrap;align-items:center;gap:6px}body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-student-title{flex:1 1 auto;min-width:44px;flex-wrap:wrap}body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-edit-header-students{display:inline-flex;grid-column:auto;grid-row:auto;flex:0 0 62px}body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-tools .teaching-workflow-attendance{position:static;width:auto;min-width:134px;height:44px;display:inline-flex!important;flex:0 0 auto;margin:0;padding-inline:10px;overflow:visible;clip:auto;white-space:nowrap}body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-tools .teaching-workflow-attendance>span{position:static;width:auto;height:auto;display:inline;overflow:visible;clip:auto;white-space:nowrap}body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-meta{width:100%;justify-self:stretch;justify-content:flex-start;font-size:12px;text-align:start}body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-navigation{width:100%;display:flex;flex-direction:row;grid-column:1 / -1;grid-row:3}body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster,body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-command-tabs{width:100%}body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-command-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-command-tabs button{height:38px;min-height:38px}body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-tab-cluster .teaching-lesson-command-tabs button:last-of-type{padding-inline-end:10px}body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-status-actions.teaching-lesson-command-tools{width:auto;min-width:238px;height:44px;display:flex!important;grid-column:1 / -1;grid-row:4;align-self:center;justify-self:end;gap:8px}@media(max-width:420px){body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .teaching-detail-panel>.teaching-lesson-command-header .teaching-lesson-command-identity .teaching-lesson-student-chip{max-width:72px}.open-lesson-presentation-mode{gap:0;padding:12px}.open-lesson-presentation-header{min-height:0;align-items:flex-start;flex-direction:column;gap:12px;padding:14px}.open-lesson-presentation-header h1{font-size:24px}}.teaching-activity-detail-dialog .teaching-resource-row{min-height:56px}.teaching-activity-detail-dialog .teaching-resource-row-actions .app-icon-button{width:44px;min-width:44px;height:44px;min-height:44px}.teaching-resource-line-remove{border-color:color-mix(in srgb,var(--rose) 34%,var(--line));background:color-mix(in srgb,var(--rose) 7%,var(--surface-card));color:var(--rose)}.teaching-resource-line-remove:hover:not(:disabled){border-color:color-mix(in srgb,var(--rose) 56%,var(--line));background:color-mix(in srgb,var(--rose) 12%,var(--surface-card))}.student-messages-section{display:grid;gap:12px}body:has(.student-messages-section) .assistant-launcher{bottom:12px;right:12px}.student-messages-intro,.student-message-history,.student-message-composer{border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card);box-shadow:none}.student-messages-intro h3,.student-messages-intro p,.student-message-panel-heading h3,.student-message-panel-heading p,.student-message-empty-state p,.student-message-history-body p,.student-message-history-status-note{margin:0}.student-messages-intro>div,.student-message-panel-heading>div{display:grid;gap:4px}.student-messages-intro>div>p:last-child,.student-message-panel-heading>div>p:last-child{color:var(--muted);line-height:1.45}.student-messages-layout{display:grid;grid-template-columns:minmax(390px,.94fr) minmax(440px,1.06fr);gap:12px;align-items:stretch}.student-messages-layout.history-only{grid-template-columns:minmax(0,1fr)}.student-message-history,.student-message-composer{min-width:0;min-height:520px;padding:20px}.student-message-panel-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.student-message-panel-heading>span{flex:0 0 auto;padding:6px 10px;border-radius:999px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-size:12px;font-weight:600}.student-message-history-status-note{margin-top:12px;padding:10px 12px;border-radius:var(--radius-control);background:var(--surface-panel);color:var(--muted);font-size:12px;line-height:1.5}.student-message-history-filters,.student-message-kind-picker{display:grid;gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel)}.student-message-history-filters{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px}.student-message-history-filters button,.student-message-kind-picker button{padding:0 10px;border:0;border-radius:var(--radius-control);background:transparent;color:var(--muted);font-weight:500;white-space:nowrap}.student-message-history-filters button{min-height:44px}.student-message-history-filters button[aria-pressed=true],.student-message-kind-picker button[aria-pressed=true]{background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text));box-shadow:none}.student-message-empty-state{display:grid;justify-items:center;gap:8px;margin-top:16px;padding:40px 24px;border:1px dashed var(--line);border-radius:var(--radius-panel);color:var(--muted);text-align:center}.student-message-empty-state strong{color:var(--text);font-size:14px}.student-message-history-groups{display:grid;gap:16px;max-height:610px;margin-top:16px;padding-right:4px;overflow-y:auto}.student-message-date-group{display:grid;gap:8px}.student-message-date-group h4{margin:0;padding-bottom:6px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:600}.student-message-date-group>div{display:grid;gap:8px}.student-message-history-item{width:100%;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-input);color:var(--text)}.student-message-history-summary{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:8px;width:100%;min-height:44px;padding-block:12px;padding-inline:12px 8px;list-style:none;text-align:start;cursor:pointer}.student-message-history-summary::-webkit-details-marker{display:none}.student-message-history-summary:hover{background:var(--surface-panel)}.student-message-history-summary:active,.student-message-history-item[open]>.student-message-history-summary{background:var(--surface-panel-strong)}.student-message-history-summary:focus-visible{position:relative;z-index:1;outline:none;box-shadow:var(--focus-ring)}.student-message-history-chevron{display:grid;place-items:center;width:44px;height:44px;border-radius:999px;color:var(--muted)}.student-message-history-item[open] .student-message-history-chevron{transform:rotate(180deg)}.student-message-history-copy{display:grid;min-width:0;gap:6px}.student-message-history-identity{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;min-width:0}.student-message-history-copy strong,.student-message-history-meta span,.student-message-history-meta time{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-message-history-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px;color:var(--muted);font-size:12px}.student-message-history-preview{display:-webkit-box;overflow:hidden;color:var(--text);font-size:12px;font-weight:400;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.student-message-history-body{padding-block:0 14px;padding-inline:12px 56px;border-top:1px solid var(--line)}.student-message-history-body p{padding-top:12px;color:var(--text);font-size:13px;line-height:1.6;overflow-wrap:anywhere;white-space:pre-wrap}.student-message-status{flex:0 0 auto;padding:4px 8px;border-radius:999px;background:var(--surface-panel-strong);color:var(--muted);font-size:12px;font-weight:600;white-space:nowrap}.student-message-status.opened{background:var(--mgmt-blue-soft);color:var(--mgmt-blue)}.student-message-status.sent_email{background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.student-message-actions .teaching-primary-action{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}@media(max-width:1120px){.student-messages-layout{grid-template-columns:1fr}.student-message-history-groups{max-height:520px}}@media(max-width:720px){.student-messages-intro>button,.student-message-history-filters button,.student-message-kind-picker button,.student-message-actions button{min-height:44px}.student-message-history,.student-message-composer{min-height:0;padding:16px}.student-message-panel-heading{align-items:start;flex-direction:column}.student-message-edit-actions>button:not(.app-icon-button),.student-message-handoff-actions>.teaching-primary-action{flex:1}}body[data-app-layout-mode=phone] .student-messages-layout{grid-template-columns:1fr}body[data-app-layout-mode=phone] .student-messages-section{padding-bottom:calc(76px + env(safe-area-inset-bottom))}body[data-app-layout-mode=phone] .student-messages-intro>button,body[data-app-layout-mode=phone] .student-message-history-filters button,body[data-app-layout-mode=phone] .student-message-kind-picker button,body[data-app-layout-mode=phone] .student-message-actions button{min-height:44px}body[data-app-layout-mode=phone] .student-message-history,body[data-app-layout-mode=phone] .student-message-composer{min-height:0;padding:16px}body[data-app-layout-mode=phone] .student-message-edit-actions>button:not(.app-icon-button),body[data-app-layout-mode=phone] .student-message-handoff-actions>.teaching-primary-action{flex:1}.first-use-tip{margin-block:8px;padding:8px 12px;border:1px solid #cee0dc;border-radius:10px;background:#f2f8f5;color:#254e45;font-size:13px;font-weight:400}.first-use-tip-title{border:0;background:transparent;color:inherit;padding:4px 0;text-align:start;cursor:pointer}.first-use-tip-body p{margin:6px 0 10px;line-height:1.6}.first-use-tip .first-use-tip-body label{display:flex;align-items:center;gap:8px;font-weight:400}.first-use-tip .first-use-tip-body input{width:auto;min-height:auto;flex:0 0 auto}.message-resume-panel{padding:14px;margin-block:12px;background:#f2f8f5;border:1px solid #cee0dc;border-radius:12px}.message-resume-panel p{margin:0 0 10px}.message-resume-panel button{margin-inline-end:10px;min-height:40px}.lesson-message-approved-summary{display:grid;gap:8px;margin-block:10px}.lesson-message-approved-summary textarea{min-height:90px;width:100%;padding:10px 12px;border:1px solid var(--teach-border, #d8e1db);border-radius:10px;background:var(--teach-surface, #fffdf9);color:inherit;font:inherit;line-height:1.5;resize:vertical}@media(max-width:760px){.first-use-tip-title,.first-use-tip-body label,.message-resume-panel button{min-height:44px}}.student-progress-summary{display:grid;gap:12px;padding-top:24px;border-top:1px solid var(--line, #dfe7e3)}.student-progress-summary>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.student-progress-summary h3,.student-progress-summary p{margin:0}.student-progress-summary h3{color:var(--text);font-size:22px}.student-progress-summary header p,.student-progress-ai-privacy{color:var(--muted);font-size:14px;line-height:1.5}.student-progress-ai-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:8px 13px;border:1px solid color-mix(in srgb,var(--accent, #146b61) 32%,transparent);border-radius:10px;background:color-mix(in srgb,var(--accent, #146b61) 7%,white);color:var(--accent, #146b61);font:inherit;font-weight:var(--font-weight-emphasis, 600);cursor:pointer}.student-progress-ai-button:disabled{cursor:not-allowed;opacity:.5}.student-progress-summary-editor,.student-progress-review-dialog textarea{width:100%;box-sizing:border-box;resize:vertical;border:1px solid var(--line, #d8e3df);border-radius:12px;background:var(--surface, #fff);color:var(--text);padding:14px 16px;font:inherit;line-height:1.6}.student-progress-summary-editor{min-height:132px;overflow-y:hidden;resize:none}.student-progress-summary-editor:focus,.student-progress-review-dialog textarea:focus{outline:3px solid color-mix(in srgb,var(--accent, #146b61) 18%,transparent);border-color:var(--accent, #146b61)}.student-progress-ai-privacy{max-width:760px}.student-progress-review-message{color:var(--accent, #146b61);font-size:14px}.student-progress-review-dialog{width:min(620px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;box-sizing:border-box;padding:24px;border-radius:18px;background:var(--surface, #fff);box-shadow:var(--shadow-dialog, 0 18px 48px rgba(15, 23, 42, .24))}.student-progress-review-dialog>header,.student-progress-review-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:16px}.student-progress-review-dialog h2,.student-progress-review-dialog p{margin:0}.student-progress-review-dialog>header{margin-bottom:14px}.student-progress-review-dialog textarea{margin-top:4px;font-weight:400}.student-progress-review-dialog>footer{justify-content:flex-end;margin-top:14px}@media(max-width:700px){.student-progress-summary>header{align-items:stretch;flex-direction:column}.student-progress-ai-button{align-self:flex-start}.student-progress-review-dialog{padding:20px;border-radius:16px}}body[data-app-layout-mode=phone] .student-progress-summary{gap:8px;padding-top:12px}body[data-app-layout-mode=phone] .student-progress-summary>header{display:block}body[data-app-layout-mode=phone] .student-progress-ai-button{min-height:44px}body[data-app-layout-mode=phone] .student-progress-summary-editor{min-height:240px;overflow-y:auto}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.quick-booking-sheet{place-items:start center;padding-block:10px;overflow-y:auto;overscroll-behavior:contain}body[data-app-layout-mode=phone] .quick-booking-sheet{align-items:start;overflow-y:auto;overscroll-behavior:contain}.assignment-card.quick-booking-card,body[data-app-layout-mode=phone] .assignment-card.quick-booking-card{height:auto;min-height:100dvh;max-height:none;grid-template-rows:none;align-content:start;overflow:visible}.quick-booking-card>.assignment-list,.quick-booking-card>.assignment-inquiry-grid,body[data-app-layout-mode=phone] .quick-booking-card>.assignment-list,body[data-app-layout-mode=phone] .quick-booking-card>.assignment-inquiry-grid{min-height:auto;overflow:visible;overscroll-behavior:auto}.quick-booking-card .calendar-student-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.quick-booking-card .calendar-student-picker-grid .assignment-student{grid-template-columns:14px minmax(0,1fr);column-gap:4px;padding:4px 5px}.quick-booking-card .calendar-student-picker-grid .assignment-check{width:14px;height:14px}.quick-booking-card .calendar-student-picker-grid .assignment-check svg{width:13px;height:13px}.quick-booking-card .calendar-student-picker-grid .assignment-student strong{font-size:12px}.quick-booking-card .calendar-student-picker-grid .assignment-student small{font-size:10px}.quick-booking-card .assignment-footer{position:relative;bottom:auto;z-index:2;margin:0;padding:10px 0 env(safe-area-inset-bottom);background:var(--surface-panel-strong, #fff)}.quick-booking-card .assignment-footer .secondary-button,body[data-app-layout-mode=phone] .quick-booking-card .assignment-footer .secondary-button{min-height:var(--button-phone-h, 44px)}.quick-booking-card .assignment-confirmation-grid{grid-template-columns:1fr}.quick-booking-card .assignment-confirmation-grid label:last-child{grid-column:1 / -1}}.booking-recurrence{border-top:1px solid var(--line);padding-top:8px}.booking-repeat-toggle{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer;font-weight:var(--font-weight-label, 500)}.booking-repeat-toggle input{width:18px;height:18px;accent-color:var(--teach-green-mid)}.booking-repeat-toggle svg{margin-inline-start:auto}.booking-repeat-toggle .is-expanded{transform:rotate(180deg)}.booking-repeat-options{display:grid;gap:8px;padding:6px 0 10px}.booking-repeat-options>small{color:var(--muted)}.booking-repeat-options input{min-width:0;width:100%}@media(min-width:901px){body:not([data-app-layout-mode=phone]) .assignment-sheet .unified-booking-card{grid-template-rows:auto auto minmax(80px,1fr) auto auto auto;max-height:calc(100dvh * var(--app-display-scale-inverse, 1) - 40px);gap:12px;overflow:hidden}}.assignment-student-search{grid-column:1 / -1;width:100%}.assignment-no-results{margin:6px 0 0;color:var(--muted);text-align:center}.calendar-mobile-google{display:none}@media(max-width:700px){.calendar-mobile-actions,body[data-app-layout-mode=phone] .calendar-mobile-actions,body[data-app-layout-mode=phone] .calendar-management-page.month-only .calendar-mobile-actions{position:relative;width:100%;display:grid;grid-template-columns:minmax(0,1fr) repeat(2,44px);gap:6px;align-items:center}.calendar-phone-reminder,body[data-app-layout-mode=phone] .calendar-phone-reminder{width:44px;min-width:44px;height:44px;min-height:44px;padding:0;border-color:var(--line);background:var(--surface-card, #fff)}.calendar-phone-reminder span,body[data-app-layout-mode=phone] .calendar-phone-reminder span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.calendar-mobile-google,body[data-app-layout-mode=phone] .calendar-mobile-google{position:relative;display:block}.calendar-mobile-google summary,body[data-app-layout-mode=phone] .calendar-mobile-google summary{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-card, #fff);color:var(--muted);cursor:pointer;list-style:none;touch-action:manipulation}.calendar-mobile-google summary::-webkit-details-marker,body[data-app-layout-mode=phone] .calendar-mobile-google summary::-webkit-details-marker{display:none}.calendar-mobile-google[open] summary,body[data-app-layout-mode=phone] .calendar-mobile-google[open] summary{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.calendar-mobile-google summary:active,body[data-app-layout-mode=phone] .calendar-mobile-google summary:active{background:var(--teach-green-soft)}.calendar-mobile-google-menu,body[data-app-layout-mode=phone] .calendar-mobile-google-menu{position:absolute;top:calc(100% + 6px);inset-inline-end:0;z-index:20;width:min(260px,calc(100vw - 16px));max-width:calc(100vw - 16px);display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-sheet, #fff);box-shadow:var(--shadow-panel)}.calendar-mobile-google-menu strong,body[data-app-layout-mode=phone] .calendar-mobile-google-menu strong{font-size:13px;line-height:1.25}.calendar-mobile-google-menu button,body[data-app-layout-mode=phone] .calendar-mobile-google-menu button{min-height:44px;border:1px solid var(--teach-green-mid);border-radius:var(--radius-control, 8px);padding:0 12px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font:inherit;font-weight:var(--font-weight-label, 500);cursor:pointer}.calendar-sync-panel:not(.lesson-actions-only),body[data-app-layout-mode=phone] .calendar-sync-panel:not(.lesson-actions-only){display:none}.today-timeline,body[data-app-layout-mode=phone] .today-timeline{gap:4px}.today-slot,body[data-app-layout-mode=phone] .today-slot{min-height:52px;grid-template-columns:44px minmax(0,1fr);gap:2px;align-items:start;padding:4px 4px 4px 6px}.today-slot-time,body[data-app-layout-mode=phone] .today-slot-time{align-self:start;padding-top:14px;font-size:12px}.today-slot-body,body[data-app-layout-mode=phone] .today-slot-body{grid-template-columns:minmax(0,1fr) 44px;gap:8px;align-items:start}.today-calendar .calendar-chip:not(.google-external-chip),body[data-app-layout-mode=phone] .today-calendar .calendar-chip:not(.google-external-chip){min-height:44px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.today-calendar .calendar-chip>.chip-time,.today-calendar .calendar-chip>.chip-grip,body[data-app-layout-mode=phone] .today-calendar .calendar-chip>.chip-time,body[data-app-layout-mode=phone] .today-calendar .calendar-chip>.chip-grip{display:none}.today-calendar .calendar-student-chips,body[data-app-layout-mode=phone] .today-calendar .calendar-student-chips{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.today-calendar .calendar-chip[data-student-count="1"] .calendar-student-chips,body[data-app-layout-mode=phone] .today-calendar .calendar-chip[data-student-count="1"] .calendar-student-chips{grid-template-columns:minmax(0,1fr);max-width:168px}.today-calendar .calendar-student-chip,body[data-app-layout-mode=phone] .today-calendar .calendar-student-chip{min-height:44px;padding:0 10px;border-radius:10px;font-size:13px;line-height:1.1;justify-content:center;text-align:center;touch-action:manipulation}.today-slot-empty,body[data-app-layout-mode=phone] .today-slot-empty{min-height:44px;padding-inline-start:4px}.slot-add-button,body[data-app-layout-mode=phone] .slot-add-button{width:44px;min-width:44px;height:44px;min-height:44px;border-radius:0;background:transparent;touch-action:manipulation}.slot-add-button svg,body[data-app-layout-mode=phone] .slot-add-button svg{width:30px;height:30px;box-sizing:border-box;padding:7px;border-radius:999px;background:var(--mgmt-blue-soft)}.slot-add-button:active svg,body[data-app-layout-mode=phone] .slot-add-button:active svg{background:color-mix(in srgb,var(--mgmt-blue-soft) 72%,var(--mgmt-blue))}}.calendar-management-page.month-only .calendar-tool{gap:8px}.calendar-management-page.month-only .calendar-nav-row{margin-bottom:8px}.calendar-management-page.month-only .calendar-view-toggle{gap:8px}.calendar-management-page.month-only .cal-range-label{font-size:18px;line-height:1.15}.calendar-management-page.month-only .calendar-sync-panel{min-height:0;margin:0 0 10px;border:0;padding:0;background:transparent}.calendar-management-page.month-only .calendar-sync-panel>span{display:none}.calendar-management-page.month-only .calendar-sync-actions{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:8px}.calendar-management-page.month-only .calendar-sync-panel.is-google-connected .calendar-sync-actions{display:flex}.calendar-sync-panel.is-google-connected .calendar-sync-actions{width:100%}.calendar-google-status{width:34px;height:34px;flex:0 0 34px;display:inline-grid;place-items:center;margin-inline-start:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface-card);color:var(--app-action-text)}.calendar-management-page.month-only .calendar-google-status{width:36px;height:36px;margin-inline-start:auto}.calendar-management-page.month-only .calendar-sync-actions button{width:auto;min-height:36px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:8px;padding-inline:14px}.calendar-management-page.month-only .calendar-sync-actions button:disabled{display:none}.calendar-management-page.month-only .desktop-month-calendar .month-weekdays,.calendar-management-page.month-only .desktop-month-calendar .month-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:0}.calendar-management-page.month-only .desktop-month-calendar{overflow:hidden;border:1px solid var(--calendar-grid-line, var(--line));border-radius:14px;background:var(--surface-card, #fffdf9)}.calendar-management-page.month-only .desktop-month-calendar .month-weekdays{min-height:42px;align-items:center;border-bottom:1px solid var(--calendar-grid-line, var(--line));background:color-mix(in srgb,var(--teach-green-soft, #e6f2ec) 46%,var(--surface-card, #fffdf9))}.calendar-management-page.month-only .desktop-month-calendar .month-weekdays span{height:100%;display:grid;place-items:center;border-inline-end:1px solid var(--calendar-grid-line, var(--line));color:color-mix(in srgb,var(--text) 76%,var(--teach-green, #2d856a));font-size:12px;font-weight:var(--font-weight-heading, 700);letter-spacing:.045em;text-transform:uppercase}.calendar-management-page.month-only .desktop-month-calendar .month-weekdays span:last-child{border-inline-end:0}.calendar-management-page.month-only .desktop-month-calendar .month-grid{padding:0;background:var(--surface-card, #fffdf9)}.calendar-management-page.month-only .desktop-month-calendar .month-cell{min-width:0;min-height:126px;border:0;border-inline-end:1px solid var(--calendar-grid-line, var(--line));border-bottom:1px solid var(--calendar-grid-line, var(--line));border-radius:0;padding:4px 5px;background:var(--surface-card, #fffdf9);box-shadow:none;cursor:pointer;transition:background-color .12s ease,box-shadow .12s ease}.calendar-management-page.month-only .desktop-month-calendar .month-cell:hover,.calendar-management-page.month-only .desktop-month-calendar .month-cell:focus-visible{background:color-mix(in srgb,var(--teach-green-soft, #e6f2ec) 30%,var(--surface-card, #fffdf9));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--teach-green, #2d856a) 42%,transparent);outline:none}.calendar-management-page.month-only .desktop-month-calendar .month-cell:nth-child(6n){border-inline-end:0}.calendar-management-page.month-only .desktop-month-calendar .month-cell:nth-last-child(-n+6){border-bottom:0}.calendar-management-page.month-only .desktop-month-calendar .month-cell.outside-month{background:color-mix(in srgb,var(--surface-subtle, #f5f5f2) 58%,var(--surface-card, #fffdf9))}.calendar-management-page.month-only .desktop-month-calendar .month-cell.is-current-week{background:color-mix(in srgb,var(--mgmt-blue-soft) 22%,var(--surface-card, #fffdf9))}.calendar-management-page.month-only .desktop-month-calendar .month-cell.outside-month.is-current-week{background:color-mix(in srgb,var(--mgmt-blue-soft) 17%,var(--surface-subtle, #f5f5f2))}.calendar-management-page.month-only .desktop-month-calendar .month-cell-heading{min-height:22px;display:flex;align-items:center;justify-content:space-between;gap:4px}.calendar-management-page.month-only .desktop-month-calendar .month-date-button{min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;gap:3px;border:0;border-radius:999px;padding:0 5px;background:transparent;color:var(--text);font-size:12px;font-weight:var(--font-weight-emphasis, 600);cursor:pointer}.calendar-management-page.month-only .desktop-month-calendar .outside-month .month-date-button{color:var(--muted)}.calendar-management-page.month-only .desktop-month-calendar .month-date-button small{color:inherit;font-size:10px;font-weight:var(--font-weight-heading, 700);text-transform:uppercase}.calendar-management-page.month-only .desktop-month-calendar .month-date-button:hover,.calendar-management-page.month-only .desktop-month-calendar .month-date-button:focus-visible{background:var(--teach-green-soft, #e6f2ec);color:var(--teach-green, #2d856a)}.calendar-management-page.month-only .desktop-month-calendar .month-cell.is-today .month-date-button{background:var(--teach-green, #2d856a);color:var(--teach-action-solid-text, #fff);box-shadow:0 2px 7px color-mix(in srgb,var(--teach-green, #2d856a) 28%,transparent)}.calendar-management-page.month-only .desktop-month-calendar .month-cell-items{gap:3px;margin-top:1px}.calendar-management-page.month-only .desktop-month-calendar .month-cell-item{min-width:0;min-height:23px;display:flex;align-items:center;gap:5px;border:1px solid transparent;border-radius:6px;padding:2px 5px;font-size:11px;line-height:1.2}.calendar-management-page.month-only .desktop-month-calendar .month-lesson-button{width:100%;background:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 13%,var(--surface-card));border-color:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 25%,var(--line));color:var(--text);text-align:start;cursor:pointer}.calendar-management-page.month-only .desktop-month-calendar .month-lesson-button[data-attendance-warning=true]{border:2px solid color-mix(in srgb,var(--rose, #ba4058) 94%,#8f1028);background:color-mix(in srgb,var(--rose, #ba4058) 22%,var(--surface-card, #fffdf9));color:color-mix(in srgb,var(--rose, #ba4058) 90%,#35040d);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rose, #ba4058) 42%,transparent)}.calendar-management-page.month-only .desktop-month-calendar .month-lesson-button[data-proposal-state=waiting_parent]{border:2px dashed color-mix(in srgb,#d99a00 76%,var(--line));background:repeating-linear-gradient(0deg,color-mix(in srgb,#d99a00 10%,transparent) 0,color-mix(in srgb,#d99a00 10%,transparent) 1px,transparent 1px,transparent 7px),color-mix(in srgb,#d99a00 12%,var(--surface-card, #fffdf9));color:var(--text);box-shadow:none}.calendar-management-page.month-only .desktop-month-calendar .month-cell.is-crowded .month-cell-items{gap:2px}.calendar-management-page.month-only .desktop-month-calendar .month-cell.is-crowded .month-cell-item{min-height:21px;padding-block:1px}.calendar-management-page.month-only .desktop-month-calendar .month-cancelled-icon{flex:0 0 12px;color:color-mix(in srgb,var(--muted) 90%,var(--text))}.calendar-management-page.month-only .desktop-month-calendar .month-lesson-button[data-status=cancelled]{border-color:color-mix(in srgb,var(--muted) 48%,var(--line));background:color-mix(in srgb,var(--muted) 13%,var(--surface-card));color:var(--muted);box-shadow:none;filter:grayscale(1)}.calendar-management-page.month-only .desktop-month-calendar .month-lesson-button[data-status=cancelled] .month-student-names>span,.calendar-management-page.month-only .desktop-month-calendar .month-lesson-button[data-status=cancelled] .month-item-time{color:var(--muted)}.calendar-management-page.month-only .desktop-month-calendar .month-lesson-button:hover,.calendar-management-page.month-only .desktop-month-calendar .month-lesson-button:focus-visible{border-color:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 58%,var(--line));background:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 22%,var(--surface-card))}.calendar-management-page.month-only .desktop-month-calendar .month-item-time{flex:0 0 auto;color:var(--muted);font-variant-numeric:tabular-nums;font-weight:var(--font-weight-label, 500)}.calendar-management-page.month-only .desktop-month-calendar .month-student-names,.calendar-management-page.month-only .desktop-month-calendar .month-cell-item>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-management-page.month-only .desktop-month-calendar .month-student-names{display:flex;flex-wrap:nowrap;align-items:baseline;line-height:1.2}.calendar-management-page.month-only .desktop-month-calendar .month-student-names>span{color:color-mix(in srgb,var(--student-color, var(--text)) 78%,var(--text));font-weight:var(--font-weight-emphasis, 600);white-space:nowrap}.calendar-management-page.month-only .desktop-month-calendar .month-student-names>span:not(:last-child):after{content:", ";color:var(--muted)}body[data-app-layout-mode=phone] .calendar-management-page .calendar-tool{gap:8px;padding:8px 3px 12px;overflow:clip;overscroll-behavior:contain}body[data-app-layout-mode=phone] .calendar-management-page .calendar-nav-row{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:8px;margin-bottom:2px}body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-actions,body[data-app-layout-mode=phone] .calendar-management-page.month-only .calendar-mobile-actions{order:1;width:100%;min-width:0;display:flex;align-items:center;gap:6px}body[data-app-layout-mode=phone] .calendar-management-page .calendar-range-nav{order:2;width:100%;min-width:0;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:4px;border:0;background:transparent}body[data-app-layout-mode=phone] .calendar-management-page .calendar-range-nav button,body[data-app-layout-mode=phone] .calendar-management-page .cal-arrow{width:44px;height:44px;display:inline-grid;place-items:center;border:0;border-radius:50%;background:transparent}body[data-app-layout-mode=phone] .calendar-management-page .calendar-range-nav button:hover,body[data-app-layout-mode=phone] .calendar-management-page .calendar-range-nav button:focus-visible{background:color-mix(in srgb,var(--mgmt-blue-soft) 52%,transparent)}body[data-app-layout-mode=phone] .calendar-management-page .cal-range-label,body[data-app-layout-mode=phone] .calendar-management-page .cal-range-label.day-label{min-width:0;overflow:hidden;color:var(--text);font-size:17px;font-weight:var(--font-weight-emphasis, 600);line-height:1.2;text-align:center;text-overflow:ellipsis;white-space:nowrap}body[data-app-layout-mode=phone] .calendar-management-page .cal-range-label.week-transition-next,body[data-app-layout-mode=phone] .mobile-week-calendar.week-transition-next{animation:mobile-week-enter-next .17s cubic-bezier(.22,1,.36,1) both}body[data-app-layout-mode=phone] .calendar-management-page .cal-range-label.week-transition-previous,body[data-app-layout-mode=phone] .mobile-week-calendar.week-transition-previous{animation:mobile-week-enter-previous .17s cubic-bezier(.22,1,.36,1) both}@keyframes mobile-week-enter-next{0%{opacity:.84;transform:translate3d(22px,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes mobile-week-enter-previous{0%{opacity:.84;transform:translate3d(-22px,0,0)}to{opacity:1;transform:translateZ(0)}}body[data-app-layout-mode=phone] .calendar-mobile-month-title{min-width:0;display:flex;align-items:center;justify-content:center;gap:2px}body[data-app-layout-mode=phone] .calendar-mobile-month-title>.cal-range-label{flex:0 1 auto}body[data-app-layout-mode=phone] .mobile-calendar-legend{position:relative;flex:0 0 44px}body[data-app-layout-mode=phone] .mobile-calendar-legend>summary{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;color:var(--muted);cursor:pointer;list-style:none}body[data-app-layout-mode=phone] .mobile-calendar-legend>summary::-webkit-details-marker{display:none}body[data-app-layout-mode=phone] .mobile-calendar-legend>summary:hover,body[data-app-layout-mode=phone] .mobile-calendar-legend>summary:focus-visible,body[data-app-layout-mode=phone] .mobile-calendar-legend[open]>summary{background:color-mix(in srgb,var(--mgmt-blue-soft) 52%,transparent);color:var(--text)}body[data-app-layout-mode=phone] .mobile-calendar-legend>summary:focus-visible{outline:2px solid var(--mgmt-blue);outline-offset:-4px}body[data-app-layout-mode=phone] .mobile-calendar-legend-panel{position:absolute;z-index:20;top:calc(100% + 2px);inset-inline-end:-36px;width:min(264px,calc(100vw - 28px));display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-card, #ffffff);color:var(--text);box-shadow:0 12px 28px color-mix(in srgb,var(--text) 18%,transparent);text-align:start;white-space:normal}body[data-app-layout-mode=phone] .mobile-calendar-legend-panel>strong{font-size:13px;line-height:1.25}body[data-app-layout-mode=phone] .mobile-calendar-legend-panel>span{min-width:0;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:8px;color:var(--text);font-size:12px;line-height:1.3}body[data-app-layout-mode=phone] .legend-swatch{width:32px;height:14px;border:1px solid color-mix(in srgb,var(--teach-green, #2d856a) 52%,transparent);border-radius:4px;background:color-mix(in srgb,var(--teach-green, #2d856a) 24%,var(--surface-card, #ffffff))}body[data-app-layout-mode=phone] .legend-swatch.google{border-color:color-mix(in srgb,#4285f4 52%,transparent);background:color-mix(in srgb,#4285f4 22%,var(--surface-card, #ffffff))}body[data-app-layout-mode=phone] .legend-swatch.blocked{border-color:color-mix(in srgb,var(--muted) 52%,transparent);background:color-mix(in srgb,var(--muted) 18%,var(--surface-card, #ffffff))}body[data-app-layout-mode=phone] .legend-swatch.reminder{border-color:color-mix(in srgb,var(--mgmt-gold-text, #95420f) 46%,transparent);background:color-mix(in srgb,var(--mgmt-gold-soft, #fff0d8) 74%,var(--surface-card, #ffffff))}body[data-app-layout-mode=phone] .legend-swatch.proposal{border:1px dashed var(--mgmt-gold-text, #95420f);background:color-mix(in srgb,var(--mgmt-gold-soft, #fff0d8) 58%,var(--surface-card, #ffffff))}body[data-app-layout-mode=phone] .calendar-management-page .calendar-view-toggle{min-width:0;flex:1 1 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;border:1px solid var(--line);border-radius:10px;padding:3px;background:var(--surface-card, #ffffff)}body[data-app-layout-mode=phone] .calendar-management-page .calendar-view-toggle button{min-width:0;min-height:44px;border:0;border-radius:7px;padding:0 5px;background:transparent;color:var(--muted);font-size:12px;font-weight:var(--font-weight-emphasis, 600);touch-action:manipulation}body[data-app-layout-mode=phone] .calendar-management-page .calendar-view-toggle button.active{background:var(--selection-control-bg, var(--teach-green, #2d856a));color:var(--selection-control-text, var(--teach-action-solid-text, #ffffff));box-shadow:none}body[data-app-layout-mode=phone] .calendar-management-page .calendar-phone-today,body[data-app-layout-mode=phone] .calendar-management-page .calendar-phone-reminder,body[data-app-layout-mode=phone] .calendar-management-page .calendar-selected-date-reminder,body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-google>summary{width:44px;height:44px;flex:0 0 44px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:10px;padding:0;background:var(--surface-card, #ffffff);color:var(--app-action-text);cursor:pointer;touch-action:manipulation}body[data-app-layout-mode=phone] .calendar-management-page .calendar-phone-today:hover,body[data-app-layout-mode=phone] .calendar-management-page .calendar-phone-reminder:hover,body[data-app-layout-mode=phone] .calendar-management-page .calendar-selected-date-reminder:hover,body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-google>summary:hover{border-color:var(--teach-green-mid);background:var(--teach-green-soft)}body[data-app-layout-mode=phone] .calendar-management-page .calendar-phone-reminder span,body[data-app-layout-mode=phone] .calendar-management-page .calendar-selected-date-reminder span{display:none}body[data-app-layout-mode=phone] .calendar-management-page .calendar-selected-date-reminder{gap:1px;color:var(--mgmt-gold-text, #95420f);font-size:11px;font-weight:var(--font-weight-heading, 700)}body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-actions:has(.calendar-selected-date-reminder) .calendar-phone-reminder{display:none}body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-google{position:relative;flex:0 0 44px}body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-google>summary{list-style:none}body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-google>summary::-webkit-details-marker{display:none}body[data-app-layout-mode=phone] .calendar-management-page .calendar-sync-panel,body[data-app-layout-mode=phone] .calendar-management-page .calendar-sync-panel.lesson-actions-only{display:none}body[data-app-layout-mode=phone] .compact-month-calendar{gap:0;border:1px solid var(--line);border-radius:12px;background:var(--surface-card, #ffffff);overflow:hidden}body[data-app-layout-mode=phone] .compact-month-calendar .month-weekdays{min-height:30px;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;align-items:center;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface-card, #ffffff) 86%,var(--teach-green-soft))}body[data-app-layout-mode=phone] .compact-month-calendar .month-weekdays span{color:var(--muted);font-size:11px;font-weight:var(--font-weight-heading, 700);text-transform:none}body[data-app-layout-mode=phone] .compact-month-calendar .month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:0;padding:0;background:transparent}body[data-app-layout-mode=phone] .compact-month-calendar .month-cell{min-width:0;min-height:86px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:3px;border:0;border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;padding:3px 1px 4px;background:var(--surface-card, #ffffff);color:var(--text);text-align:center;box-shadow:none;touch-action:manipulation}body[data-app-layout-mode=phone] .compact-month-calendar .month-cell:nth-child(7n){border-inline-end:0}body[data-app-layout-mode=phone] .compact-month-calendar .month-cell:nth-last-child(-n+7){border-bottom:0}body[data-app-layout-mode=phone] .compact-month-calendar .month-cell:hover,body[data-app-layout-mode=phone] .compact-month-calendar .month-cell:focus-visible,body[data-app-layout-mode=phone] .compact-month-calendar .month-cell.active{background:color-mix(in srgb,var(--mgmt-blue-soft) 48%,var(--surface-card, #ffffff))}body[data-app-layout-mode=phone] .compact-month-calendar .month-cell:focus-visible{position:relative;z-index:2;outline:2px solid var(--mgmt-blue);outline-offset:-2px}body[data-app-layout-mode=phone] .compact-month-calendar .month-cell.outside-month{background:color-mix(in srgb,var(--surface-slot, #f7f7f5) 74%,var(--surface-card, #ffffff));color:color-mix(in srgb,var(--muted) 64%,transparent)}body[data-app-layout-mode=phone] .compact-month-calendar .month-cell-date{width:22px;height:22px;flex:0 0 22px;align-self:center;display:grid;place-items:center;border:2px solid transparent;border-radius:50%;background:transparent;color:inherit;font-size:12px;font-weight:var(--font-weight-emphasis, 600);line-height:1}body[data-app-layout-mode=phone] .compact-month-calendar .month-cell.active .month-cell-date{border-color:var(--mgmt-blue, #3978a8);color:var(--app-action-text)}body[data-app-layout-mode=phone] .compact-month-calendar .month-cell.is-today .month-cell-date{border-color:var(--teach-green, #2d856a);background:var(--teach-green, #2d856a);color:var(--teach-action-solid-text, #ffffff)}body[data-app-layout-mode=phone] .mobile-month-bars{width:100%;min-width:0;display:grid;gap:2px;overflow:hidden}body[data-app-layout-mode=phone] .mobile-month-bar{min-width:0;height:16px;display:block;overflow:hidden;border:1px solid color-mix(in srgb,var(--student-color, var(--teach-green, #2d856a)) 48%,transparent);border-radius:4px;padding:1px 2px;background:color-mix(in srgb,var(--student-color, var(--teach-green, #2d856a)) 24%,var(--surface-card, #ffffff));color:var(--text);font-size:9px;font-weight:var(--font-weight-emphasis, 600);line-height:12px;text-align:start;text-overflow:ellipsis;white-space:nowrap}body[data-app-layout-mode=phone] .mobile-month-bar.cancelled{opacity:.64;text-decoration:line-through}body[data-app-layout-mode=phone] .mobile-month-bar.proposal{border-style:dashed;border-color:var(--mgmt-gold-text, #95420f)}body[data-app-layout-mode=phone] .mobile-month-bar.attendance-warning{border-width:2px;border-color:color-mix(in srgb,var(--rose, #ba4058) 94%,#8f1028);background:color-mix(in srgb,var(--rose, #ba4058) 26%,var(--surface-card, #ffffff));color:color-mix(in srgb,var(--rose, #ba4058) 90%,#35040d)}body[data-app-layout-mode=phone] .mobile-month-bar.google{border-color:color-mix(in srgb,#4285f4 70%,var(--line));background:color-mix(in srgb,#4285f4 28%,var(--surface-card, #ffffff));color:var(--text);box-shadow:inset 2px 0 #4285f4}body[data-app-layout-mode=phone] .mobile-month-bar.blocked{border-color:color-mix(in srgb,var(--muted) 48%,transparent);background:color-mix(in srgb,var(--muted) 16%,var(--surface-card, #ffffff));color:var(--text)}body[data-app-layout-mode=phone] .mobile-month-bar.reminder{border-color:color-mix(in srgb,var(--mgmt-gold-text, #95420f) 46%,transparent);background:color-mix(in srgb,var(--mgmt-gold-soft, #fff0d8) 74%,var(--surface-card, #ffffff));color:var(--text)}body[data-app-layout-mode=phone] .mobile-month-more{color:var(--muted);font-size:9px;font-weight:var(--font-weight-heading, 700);line-height:12px;text-align:start}body[data-app-layout-mode=phone] .mobile-week-calendar{width:100%;min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--surface-card, #ffffff);overflow:clip;touch-action:pan-y;overscroll-behavior-inline:contain}body[data-app-layout-mode=phone] .mobile-week-head,body[data-app-layout-mode=phone] .mobile-week-grid{display:grid;grid-template-columns:28px repeat(7,minmax(0,1fr))}body[data-app-layout-mode=phone] .mobile-week-head{position:sticky;top:0;z-index:5;min-height:64px;border-bottom:1px solid var(--line);background:var(--surface-panel-strong, #ffffff)}body[data-app-layout-mode=phone] .mobile-week-time-corner,body[data-app-layout-mode=phone] .mobile-week-day-button{border:0;background:transparent}body[data-app-layout-mode=phone] .mobile-week-day-button{min-width:0;min-height:64px;display:grid;grid-template-rows:auto 28px 10px;place-items:center;gap:1px;padding:5px 1px 3px;color:var(--muted);touch-action:manipulation}body[data-app-layout-mode=phone] .mobile-week-day-button span{font-size:10px;font-weight:var(--font-weight-heading, 700);text-transform:uppercase}body[data-app-layout-mode=phone] .mobile-week-day-button strong{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:var(--text);font-size:13px}body[data-app-layout-mode=phone] .mobile-week-day-button.is-today strong{background:var(--teach-green, #2d856a);color:var(--teach-action-solid-text, #ffffff)}body[data-app-layout-mode=phone] .mobile-week-day-button small{min-height:10px;display:flex;align-items:center;justify-content:center;gap:2px;color:var(--mgmt-gold-text, #95420f)}body[data-app-layout-mode=phone] .mobile-week-day-button small i{width:5px;height:5px;border-radius:50%;background:var(--teach-green, #2d856a)}body[data-app-layout-mode=phone] .mobile-week-scroll{width:100%;min-width:0;overflow:hidden}body[data-app-layout-mode=phone] .mobile-week-grid{position:relative;isolation:isolate;align-items:start;--mobile-week-half-hour-line: color-mix(in srgb, var(--line) 24%, transparent);--mobile-week-hour-line: color-mix(in srgb, var(--text) 16%, var(--line));background-color:var(--surface-card, #ffffff)}body[data-app-layout-mode=phone] .mobile-week-grid:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--mobile-week-slot-height, 30px) - 1px),var(--mobile-week-half-hour-line) calc(var(--mobile-week-slot-height, 30px) - 1px),var(--mobile-week-half-hour-line) var(--mobile-week-slot-height, 30px),transparent var(--mobile-week-slot-height, 30px),transparent calc(var(--mobile-week-slot-height, 30px) * 2 - 1px),var(--mobile-week-hour-line) calc(var(--mobile-week-slot-height, 30px) * 2 - 1px),var(--mobile-week-hour-line) calc(var(--mobile-week-slot-height, 30px) * 2))}body[data-app-layout-mode=phone] .mobile-week-time-rail,body[data-app-layout-mode=phone] .mobile-week-day-lane{height:calc(var(--calendar-slot-count, 27) * var(--mobile-week-slot-height, 30px))}body[data-app-layout-mode=phone] .mobile-week-time-rail{position:relative;z-index:2;background:transparent}body[data-app-layout-mode=phone] .mobile-week-time-rail span{height:var(--mobile-week-slot-height, 30px);display:block;border-bottom:0;padding:3px 0 0;color:var(--muted);font-size:10px;font-weight:var(--font-weight-label, 500);line-height:1;text-align:center}body[data-app-layout-mode=phone] .mobile-week-day-lane{position:relative;min-width:0;border-inline-start:1px solid var(--line);background:transparent}body[data-app-layout-mode=phone] .mobile-week-day-lane.is-today{background:color-mix(in srgb,var(--teach-green-soft) 24%,transparent)}body[data-app-layout-mode=phone] .mobile-week-slots{position:relative;z-index:2;display:grid;grid-template-rows:repeat(var(--calendar-slot-count, 27),var(--mobile-week-slot-height, 30px))}body[data-app-layout-mode=phone] .mobile-week-slots button{width:100%;min-width:0;min-height:var(--mobile-week-slot-height, 30px);border:0;border-bottom:0;border-radius:0;padding:0;background:transparent;touch-action:manipulation}body[data-app-layout-mode=phone] .mobile-week-slots button:hover,body[data-app-layout-mode=phone] .mobile-week-slots button:focus-visible{background:color-mix(in srgb,var(--mgmt-blue-soft) 52%,transparent);outline:2px solid var(--mgmt-blue);outline-offset:-2px}body[data-app-layout-mode=phone] .mobile-week-events{position:absolute;inset:0;z-index:3;pointer-events:none}body[data-app-layout-mode=phone] .mobile-week-event{z-index:2;position:absolute;top:var(--mobile-week-top);inset-inline-start:var(--mobile-week-event-start);inset-inline-end:var(--mobile-week-event-end);height:var(--mobile-week-height);min-width:0;min-height:0;overflow:hidden;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--student-color, var(--teach-green)) 54%,var(--line));border-radius:5px;padding:4px 2px;background:color-mix(in srgb,var(--student-color, var(--teach-green)) 24%,var(--surface-card, #ffffff));color:var(--text);font:inherit;font-size:9px;font-weight:var(--font-weight-heading, 700);line-height:1.15;text-align:center;pointer-events:auto;touch-action:manipulation}body[data-app-layout-mode=phone] button.mobile-week-event{cursor:pointer}body[data-app-layout-mode=phone] .mobile-week-event:not(.google){--surface-card: var(--surface-sheet, var(--bg))}body[data-app-layout-mode=phone] .mobile-week-event[data-short-duration=true]{padding-block:0}body[data-app-layout-mode=phone] .mobile-week-event[data-short-duration=true] span{-webkit-line-clamp:1}body[data-app-layout-mode=phone] .mobile-week-event span{min-width:0;max-width:100%;display:-webkit-box;overflow:hidden;white-space:pre-line;text-align:center;-webkit-box-orient:vertical;-webkit-line-clamp:4}body[data-app-layout-mode=phone] .mobile-week-event.google{z-index:1;inset-inline-start:calc(var(--mobile-week-event-start) - 1px);inset-inline-end:calc(var(--mobile-week-event-end) - 1px);border-color:color-mix(in srgb,#4285f4 70%,var(--line));background:color-mix(in srgb,#4285f4 28%,var(--surface-card, #ffffff));color:var(--text);box-shadow:inset 3px 0 #4285f4;pointer-events:none;-webkit-user-select:none;user-select:none}body[data-app-layout-mode=phone] .mobile-week-event.blocked{border-color:color-mix(in srgb,var(--muted) 42%,var(--line));background:color-mix(in srgb,var(--muted) 14%,var(--surface-card, #ffffff));color:var(--muted)}body[data-app-layout-mode=phone] .mobile-week-event.cancelled{border-color:color-mix(in srgb,var(--muted) 62%,var(--line));background:color-mix(in srgb,var(--muted) 22%,var(--surface-card, #ffffff));color:var(--muted);text-decoration:line-through}body[data-app-layout-mode=phone] .mobile-week-event .mobile-week-cancelled-label{display:inline-flex;align-items:center;justify-content:center;gap:2px;font-size:8px;line-height:1;text-decoration:none}body[data-app-layout-mode=phone] .mobile-week-event.proposal{border-style:dashed;border-color:color-mix(in srgb,var(--mgmt-gold-text, #95420f) 52%,var(--line));background:color-mix(in srgb,var(--mgmt-gold-soft, #fff0bd) 42%,var(--surface-card, #ffffff));color:var(--mgmt-gold-text, #95420f)}body[data-app-layout-mode=phone] .mobile-week-event[data-attendance-warning=true]{border-width:2px;border-color:color-mix(in srgb,var(--rose, #ba4058) 94%,#8f1028);background:color-mix(in srgb,var(--rose, #ba4058) 30%,var(--surface-card, #ffffff));color:color-mix(in srgb,var(--rose, #ba4058) 90%,#35040d);box-shadow:0 0 0 2px color-mix(in srgb,var(--rose, #ba4058) 34%,transparent)}@media(prefers-reduced-motion:reduce){body[data-app-layout-mode=phone] .calendar-management-page .cal-range-label.week-transition-next,body[data-app-layout-mode=phone] .calendar-management-page .cal-range-label.week-transition-previous,body[data-app-layout-mode=phone] .mobile-week-calendar.week-transition-next,body[data-app-layout-mode=phone] .mobile-week-calendar.week-transition-previous{animation:none}}body[data-app-layout-mode=phone] .today-calendar{gap:0;border:1px solid var(--line);border-radius:12px;background:var(--surface-card, #ffffff);overflow:hidden}body[data-app-layout-mode=phone] .today-calendar-head{min-height:42px;padding:10px 12px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:var(--surface-panel-strong, #ffffff)}body[data-app-layout-mode=phone] .today-agenda-date{display:none}body[data-app-layout-mode=phone] .today-agenda-summary{margin:0;color:var(--muted);font-size:13px;font-weight:var(--font-weight-emphasis, 600)}body[data-app-layout-mode=phone] .today-timeline{gap:0}body[data-app-layout-mode=phone] .today-slot{min-height:64px;grid-template-columns:46px minmax(0,1fr);gap:0;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0;background:var(--surface-card, #ffffff)}body[data-app-layout-mode=phone] .today-slot:last-child{border-bottom:0}body[data-app-layout-mode=phone] .today-slot:hover,body[data-app-layout-mode=phone] .today-slot.drop-target-active{background:color-mix(in srgb,var(--mgmt-blue-soft) 36%,var(--surface-card, #ffffff))}.calendar-management-page .desktop-week-calendar .hour-slot.drop-target-blocked,.calendar-management-page .today-slot.drop-target-blocked{background:color-mix(in srgb,var(--rose) 14%,var(--surface-slot));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--rose) 62%,transparent);cursor:not-allowed}body[data-app-layout-mode=phone] .today-slot-time{padding:8px 5px 0;color:var(--muted);font-size:11px;text-align:end}body[data-app-layout-mode=phone] .today-slot-body{min-height:64px;gap:6px;align-items:stretch;border-inline-start:1px solid var(--line);padding:5px}body[data-app-layout-mode=phone] .today-slot-empty{min-height:44px;color:color-mix(in srgb,var(--muted) 66%,transparent);font-size:12px}body[data-app-layout-mode=phone] .today-slot .slot-add-button{width:44px;min-height:44px;border-radius:50%;touch-action:manipulation}body[data-app-layout-mode=phone] .today-hours-disclosure{border-top:1px solid var(--line);padding:10px}@media(max-width:370px){body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-actions,body[data-app-layout-mode=phone] .calendar-management-page.month-only .calendar-mobile-actions{gap:4px}body[data-app-layout-mode=phone] .calendar-management-page .calendar-view-toggle button{padding-inline:2px;font-size:11px}body[data-app-layout-mode=phone] .compact-month-calendar .month-cell{min-height:82px}}body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-overview{order:2;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card);box-shadow:var(--shadow-panel)}body[data-app-layout-mode=phone] .calendar-management-page .calendar-range-nav{order:3}body[data-app-layout-mode=phone] .calendar-mobile-overview-heading{width:100%;min-height:54px;display:grid;grid-template-columns:minmax(0,1fr) auto 24px;align-items:center;gap:9px;padding:8px 12px;border:0;background:color-mix(in srgb,var(--mgmt-blue-soft) 34%,var(--surface-card));color:var(--text);text-align:start;cursor:pointer;touch-action:manipulation}body[data-app-layout-mode=phone] .calendar-mobile-overview-heading-copy,body[data-app-layout-mode=phone] .calendar-mobile-overview-copy{min-width:0;display:grid;gap:2px}body[data-app-layout-mode=phone] .calendar-mobile-overview-heading-copy strong{font-size:14px;line-height:1.2}body[data-app-layout-mode=phone] .calendar-mobile-overview-heading-copy small,body[data-app-layout-mode=phone] .calendar-mobile-overview-copy small{min-width:0;overflow:hidden;color:var(--muted);font-size:12px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}body[data-app-layout-mode=phone] .calendar-mobile-overview-heading>svg,body[data-app-layout-mode=phone] .calendar-mobile-overview-chevron{color:var(--muted);transition:transform .16s ease}body[data-app-layout-mode=phone] .calendar-mobile-overview-heading[aria-expanded=true]>svg,body[data-app-layout-mode=phone] .calendar-mobile-overview-row[aria-expanded=true] .calendar-mobile-overview-chevron{transform:rotate(180deg)}body[data-app-layout-mode=phone] .calendar-mobile-overview-total,body[data-app-layout-mode=phone] .calendar-mobile-overview-count{min-width:24px;height:24px;display:inline-grid;place-items:center;padding-inline:6px;border-radius:999px;background:var(--mgmt-blue-soft);color:var(--mgmt-action-soft-text, var(--text));font-size:12px;font-weight:var(--font-weight-label);font-variant-numeric:tabular-nums}body[data-app-layout-mode=phone] .calendar-mobile-overview-content{display:grid;border-top:1px solid var(--line)}body[data-app-layout-mode=phone] .calendar-mobile-overview-row{width:100%;min-height:60px;display:grid;grid-template-columns:38px minmax(0,1fr) auto 20px;align-items:center;gap:9px;padding:7px 11px;border:0;border-bottom:1px solid var(--line);background:var(--surface-card);color:var(--text);text-align:start;cursor:pointer;touch-action:manipulation}body[data-app-layout-mode=phone] .calendar-mobile-overview-row:last-child{border-bottom:0}body[data-app-layout-mode=phone] .calendar-mobile-overview-row:hover,body[data-app-layout-mode=phone] .calendar-mobile-overview-row:focus-visible,body[data-app-layout-mode=phone] .calendar-mobile-overview-row[aria-expanded=true]{background:color-mix(in srgb,var(--mgmt-blue-soft) 32%,var(--surface-card))}body[data-app-layout-mode=phone] .calendar-mobile-overview-row:focus-visible,body[data-app-layout-mode=phone] .calendar-mobile-overview-heading:focus-visible{position:relative;z-index:1;outline:3px solid color-mix(in srgb,var(--mgmt-blue) 42%,transparent);outline-offset:-3px}body[data-app-layout-mode=phone] .calendar-mobile-overview-row:disabled{opacity:.72;cursor:default}body[data-app-layout-mode=phone] .calendar-mobile-overview-icon{width:36px;height:36px;display:inline-grid;place-items:center;border-radius:11px;background:var(--surface-panel);color:var(--muted)}body[data-app-layout-mode=phone] .calendar-mobile-overview-icon.is-approval,body[data-app-layout-mode=phone] .calendar-mobile-overview-icon.is-reminder{background:var(--app-warning-soft-bg, color-mix(in srgb, var(--rose) 14%, var(--surface-card)));color:var(--app-warning-text, var(--text))}body[data-app-layout-mode=phone] .calendar-mobile-overview-icon.is-lesson{background:var(--teach-green-soft);color:var(--teach-action-soft-text)}body[data-app-layout-mode=phone] .calendar-mobile-overview-icon.is-message{background:var(--mgmt-blue-soft);color:var(--mgmt-action-soft-text, var(--text))}body[data-app-layout-mode=phone] .calendar-mobile-overview-copy strong{overflow:hidden;font-size:13px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}body[data-app-layout-mode=phone] .calendar-mobile-overview-row.is-due .calendar-mobile-overview-count{background:var(--app-warning-soft-bg, color-mix(in srgb, var(--rose) 14%, var(--surface-card)));color:var(--app-warning-text, var(--text))}body[data-app-layout-mode=phone] .calendar-mobile-overview-details{min-width:0;padding:8px 10px 10px;border-bottom:1px solid var(--line);background:var(--surface-panel)}body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-proposal-panel--headerless,body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-reminder-panel--headerless{max-height:none;overflow:visible;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-proposal-panel--headerless .calendar-proposal-list,body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-reminder-panel--headerless .calendar-reminder-list{overflow:visible;padding:0}body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-proposal-panel--headerless .calendar-proposal-list article,body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-proposal-panel--headerless .calendar-proposal-card-actions button,body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-reminder-panel--headerless .calendar-reminder-card{background:var(--surface-card)}body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-proposal-panel--headerless .calendar-proposal-summary,body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-proposal-panel--headerless .calendar-proposal-dismiss,body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-proposal-panel--headerless .calendar-proposal-card-actions button,body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-reminder-panel--headerless .calendar-reminder-card footer button{min-height:44px}body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-proposal-panel--headerless .calendar-proposal-card-actions{display:grid;grid-template-columns:1fr;gap:7px}body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-proposal-panel--headerless .calendar-proposal-card-actions button{width:100%;font-size:12px;cursor:pointer}body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-proposal-panel--headerless .calendar-proposal-dismiss{width:44px}body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-proposal-panel--headerless .calendar-proposal-result-summary{min-height:84px}body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-reminder-panel--headerless{grid-template-rows:auto auto;gap:8px}body[data-app-layout-mode=phone] .calendar-reminder-panel-create{width:100%;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:1px solid color-mix(in srgb,var(--teach-green) 40%,var(--line));border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-weight:var(--font-weight-label);cursor:pointer}body[data-app-layout-mode=phone] .calendar-mobile-overview .calendar-reminder-empty{padding-block:14px 8px}@media(prefers-reduced-motion:reduce){body[data-app-layout-mode=phone] .calendar-mobile-overview-heading>svg,body[data-app-layout-mode=phone] .calendar-mobile-overview-chevron{transition:none}}@media(max-width:370px){body[data-app-layout-mode=phone] .calendar-mobile-overview-row{grid-template-columns:36px minmax(0,1fr) auto 18px;gap:7px;padding-inline:9px}}.calendar-extra-calendars{position:relative;flex:0 0 auto}.calendar-extra-calendars>summary{position:relative;min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0 12px;background:var(--surface-card, #ffffff);color:var(--app-action-text);font-size:13px;font-weight:var(--font-weight-label, 500);cursor:pointer;list-style:none;touch-action:manipulation}.calendar-extra-calendars>summary::-webkit-details-marker{display:none}.calendar-extra-calendars>summary:hover,.calendar-extra-calendars>summary:focus-visible,.calendar-extra-calendars[open]>summary{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.calendar-extra-calendars>summary:focus-visible{outline:2px solid var(--teach-green, #2d856a);outline-offset:2px}.calendar-extra-calendars-active{position:absolute;inset-block-start:5px;inset-inline-end:5px;width:7px;height:7px;border:1px solid var(--surface-card, #ffffff);border-radius:50%;background:var(--mgmt-gold-text, #95420f)}.calendar-extra-calendars-panel{position:absolute;z-index:40;inset-block-start:calc(100% + 6px);inset-inline-end:0;width:min(310px,calc(100vw - 24px));display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-sheet, var(--surface-card, #ffffff));box-shadow:var(--shadow-dropdown, 0 12px 28px color-mix(in srgb, var(--text) 18%, transparent));color:var(--text);text-align:start}.calendar-extra-calendars-panel>strong{font-size:14px;line-height:1.25}.calendar-source-toggle{min-width:0;min-height:58px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:color-mix(in srgb,var(--mgmt-gold-soft, #fff0d8) 28%,var(--surface-card, #ffffff));cursor:pointer}.calendar-source-toggle-copy{min-width:0;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:8px}.calendar-source-toggle-copy>svg{margin-block-start:2px;color:var(--mgmt-gold-text, #95420f)}.calendar-source-toggle-copy>span{min-width:0;display:grid;gap:2px}.calendar-source-toggle-copy strong,.calendar-extra-google-source strong{font-size:13px;line-height:1.25}.calendar-source-toggle-copy small,.calendar-extra-google-source small{color:var(--muted);font-size:11px;line-height:1.3}.calendar-source-toggle input{width:22px;height:22px;margin:0;accent-color:var(--teach-green, #2d856a);cursor:pointer}.calendar-source-toggle input:focus-visible{outline:2px solid var(--teach-green, #2d856a);outline-offset:2px}.calendar-holiday-load-state{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:11px;line-height:1.3}.calendar-holiday-load-state.is-error{color:var(--rose, #ba4058)}.calendar-holiday-load-state button,.calendar-extra-google-source button{min-height:36px;border:1px solid var(--teach-green-mid);border-radius:var(--radius-control, 8px);padding:0 10px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font:inherit;font-weight:var(--font-weight-label, 500);cursor:pointer}.calendar-holiday-source{width:fit-content;color:var(--muted);font-size:11px;line-height:1.3;text-decoration:underline;text-underline-offset:2px}.calendar-extra-google-source{min-width:0;display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;padding-block-start:10px;border-block-start:1px solid var(--line)}.calendar-extra-google-source>span{min-width:0;display:grid;gap:2px}.calendar-management-page .week-day-header.is-holiday{min-height:64px;border-block-end:2px solid var(--mgmt-gold-text, #95420f);background:color-mix(in srgb,var(--mgmt-gold-soft, #fff0d8) 52%,var(--surface-panel-strong, #ffffff))}.calendar-management-page .week-day-header .week-day-holiday{max-width:100%;overflow:hidden;color:var(--mgmt-gold-text, #95420f);font-size:11px;font-weight:var(--font-weight-heading, 700);line-height:1.15;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.calendar-management-page .desktop-month-calendar .month-cell.is-holiday{background:color-mix(in srgb,var(--mgmt-gold-soft, #fff0d8) 20%,var(--surface-card, #ffffff));box-shadow:inset 0 3px color-mix(in srgb,var(--mgmt-gold-text, #95420f) 78%,transparent)}.calendar-management-page .month-holiday-label{display:block;margin:0 6px 3px;overflow:hidden;color:var(--mgmt-gold-text, #95420f);font-size:11px;font-weight:var(--font-weight-heading, 700);line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.legend-swatch.holiday{border-color:color-mix(in srgb,var(--mgmt-gold-text, #95420f) 52%,transparent);background:color-mix(in srgb,var(--mgmt-gold-soft, #fff0d8) 72%,var(--surface-card, #ffffff))}body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-actions,body[data-app-layout-mode=phone] .calendar-management-page.month-only .calendar-mobile-actions{grid-template-columns:minmax(0,1fr) repeat(2,44px)}body[data-app-layout-mode=phone] .calendar-extra-calendars.is-mobile{width:44px;min-width:44px;height:44px}body[data-app-layout-mode=phone] .calendar-extra-calendars.is-mobile>summary{width:44px;min-width:44px;height:44px;min-height:44px;padding:0;border-radius:10px}body[data-app-layout-mode=phone] .calendar-extra-calendars-panel{width:min(310px,calc(100vw - 18px))}body[data-app-layout-mode=phone] .calendar-source-toggle,body[data-app-layout-mode=phone] .calendar-extra-google-source{min-height:60px}body[data-app-layout-mode=phone] .calendar-holiday-load-state button,body[data-app-layout-mode=phone] .calendar-extra-google-source button{min-height:44px}body[data-app-layout-mode=phone] .mobile-week-day-button{position:relative;grid-template-rows:auto 28px minmax(18px,auto)}body[data-app-layout-mode=phone] .mobile-week-day-button.is-holiday{min-height:76px;background:color-mix(in srgb,var(--mgmt-gold-soft, #fff0d8) 52%,var(--surface-panel-strong, #ffffff));box-shadow:inset 0 -3px 0 var(--mgmt-gold-text, #95420f)}body[data-app-layout-mode=phone] .mobile-week-day-button .mobile-week-holiday{max-width:100%;display:-webkit-box;overflow:hidden;color:var(--mgmt-gold-text, #95420f);font-size:8px;font-weight:var(--font-weight-heading, 700);line-height:1.05;text-align:center;text-transform:none;-webkit-box-orient:vertical;-webkit-line-clamp:2}body[data-app-layout-mode=phone] .compact-month-calendar .month-cell.is-holiday{background:color-mix(in srgb,var(--mgmt-gold-soft, #fff0d8) 28%,var(--surface-card, #ffffff));box-shadow:inset 0 2px 0 var(--mgmt-gold-text, #95420f)}body[data-app-layout-mode=phone] .mobile-month-bar.holiday{border-color:color-mix(in srgb,var(--mgmt-gold-text, #95420f) 58%,transparent);background:color-mix(in srgb,var(--mgmt-gold-soft, #fff0d8) 80%,var(--surface-card, #ffffff));color:var(--mgmt-gold-text, #95420f);box-shadow:inset 2px 0 0 var(--mgmt-gold-text, #95420f)}@media(max-width:370px){body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-actions,body[data-app-layout-mode=phone] .calendar-management-page.month-only .calendar-mobile-actions{grid-template-columns:minmax(0,1fr) repeat(2,44px)}}@media(prefers-reduced-motion:reduce){.calendar-management-page .calendar-chip{transition:none}}@media(prefers-reduced-motion:no-preference){.calendar-management-page .calendar-chip[data-motion-dragging=true]{transform:translateY(-3px) scale(1.018);transition:transform .14s cubic-bezier(.23,1,.32,1);box-shadow:0 7px 14px #1b362b29,0 2px 4px #1b362b1a;z-index:12;cursor:grabbing}}body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-overview{flex:1 1 100%;margin:0;padding:0;background:transparent!important;border:0!important;box-shadow:none!important}body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-overview-heading{min-height:44px;justify-content:flex-end;padding:4px 8px;background:transparent!important;border:0!important;box-shadow:none!important}body[data-app-layout-mode=phone]:dir(rtl) .calendar-management-page .calendar-mobile-overview-heading>svg,body[data-app-layout-mode=phone]:dir(rtl) .calendar-management-page .calendar-mobile-overview-row .calendar-mobile-overview-chevron{transform:rotate(90deg)}body[data-app-layout-mode=phone]:dir(ltr) .calendar-management-page .calendar-mobile-overview-heading>svg,body[data-app-layout-mode=phone]:dir(ltr) .calendar-management-page .calendar-mobile-overview-row .calendar-mobile-overview-chevron{transform:rotate(-90deg)}body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-overview-heading[aria-expanded=true]>svg,body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-overview-row[aria-expanded=true] .calendar-mobile-overview-chevron{transform:rotate(0)}body[data-app-layout-mode=phone] .calendar-management-page .calendar-mobile-overview-clear{flex:0 0 auto;min-height:44px;display:flex;align-items:center;margin:0;padding:4px 8px;color:var(--muted);font-size:12px}body[data-app-layout-mode=phone] .calendar-management-page .mobile-week-event.google{background:var(--surface-muted)!important;border-color:var(--line)!important;color:var(--muted)!important;box-shadow:none!important}body[data-app-layout-mode=phone] .assignment-sheet,body[data-app-layout-mode=phone] .repeat-scheduler-card{background:var(--surface-sheet)!important}body[data-app-layout-mode=phone] .lesson-drawer-section{margin-block:8px}body[data-app-layout-mode=phone] .lesson-drawer-command-row{display:flex;flex-wrap:wrap;gap:8px}body[data-app-layout-mode=phone] .lesson-drawer-open-lesson{min-height:44px;flex:1 1 140px}body[data-app-layout-mode=phone] .attendance-choice-grid{gap:8px}body[data-app-layout-mode=phone] .attendance-panel-compact .attendance-choice-grid button{min-width:44px;min-height:44px;gap:4px}body[data-app-layout-mode=phone] .attendance-panel-compact .attendance-compact-legend{display:none}body[data-app-layout-mode=phone] .attendance-panel-compact .attendance-compact-label{line-height:1.1;text-align:center}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.app-shell[data-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-history-meta{align-self:start;justify-self:end}.app-shell[data-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-history-meta button{width:44px;min-width:44px;border-radius:8px;padding-inline:0;font-size:0}.app-shell[data-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-history-meta button:before{content:"";width:20px;height:20px;flex:0 0 20px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 7v14'/%3E%3Cpath d='M3 18a1 1 0 0 1-1-1V5a2 2 0 0 1 2-2h5a3 3 0 0 1 3 3v15a3 3 0 0 0-3-3Z'/%3E%3Cpath d='M21 18a1 1 0 0 0 1-1V5a2 2 0 0 0-2-2h-5a3 3 0 0 0-3 3v15a3 3 0 0 1 3-3Z'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 7v14'/%3E%3Cpath d='M3 18a1 1 0 0 1-1-1V5a2 2 0 0 1 2-2h5a3 3 0 0 1 3 3v15a3 3 0 0 0-3-3Z'/%3E%3Cpath d='M21 18a1 1 0 0 0 1-1V5a2 2 0 0 0-2-2h-5a3 3 0 0 0-3 3v15a3 3 0 0 1 3-3Z'/%3E%3C/svg%3E") center / contain no-repeat}.app-shell[data-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-history-row{min-height:68px;grid-template-columns:minmax(0,1fr) 18px;grid-template-rows:auto auto;align-items:center;gap:2px 8px;padding:9px 11px}.app-shell[data-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-student-cell{min-width:0;display:grid;grid-column:1;grid-row:1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.app-shell[data-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-student-names{min-width:0;display:flex;flex-wrap:wrap;gap:4px;overflow:hidden}.app-shell[data-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-student-cell>small{justify-self:end;margin:0;white-space:nowrap}.app-shell[data-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-content-cell{min-width:0;grid-column:1;grid-row:2}.app-shell[data-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-history-meta{display:none}.app-shell[data-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-row-chevron{grid-column:2;grid-row:1 / span 2}.app-shell[data-layout-mode=phone] .teaching-upcoming-list-simple{gap:8px}.app-shell[data-layout-mode=phone] .student-next-lesson-activity-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:stretch;overflow:hidden;border:1px solid color-mix(in srgb,var(--student-color, var(--teach-green)) 28%,var(--line));border-radius:var(--radius-panel, 12px);background:color-mix(in srgb,var(--student-color, var(--teach-green)) 5%,var(--surface-card))}.app-shell[data-layout-mode=phone] .student-next-lesson-activity-open{min-width:0;min-height:76px;display:grid;grid-template-areas:"copy chevron" "meta chevron";grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:4px 8px;border:0;padding:10px 8px 10px 12px;background:transparent;color:var(--text);text-align:start;cursor:pointer}.app-shell[data-layout-mode=phone] .student-next-lesson-activity-copy{min-width:0;display:grid;grid-area:copy;gap:2px}.app-shell[data-layout-mode=phone] .student-next-lesson-activity-copy :is(strong,small){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell[data-layout-mode=phone] .student-next-lesson-activity-copy strong{font-size:14px}.app-shell[data-layout-mode=phone] .student-next-lesson-activity-copy small,.app-shell[data-layout-mode=phone] .student-next-lesson-activity-meta>small{color:var(--muted);font-size:12px}.app-shell[data-layout-mode=phone] .student-next-lesson-activity-meta{min-width:0;display:flex;grid-area:meta;align-items:center;gap:7px}.app-shell[data-layout-mode=phone] .student-next-lesson-activity-open>svg{grid-area:chevron}.app-shell[data-layout-mode=phone] .student-next-lesson-activity-dismiss{width:44px;min-width:44px;height:100%;min-height:44px;border-width:0 0 0 1px;border-radius:0;background:transparent}html[dir=rtl] .app-shell[data-layout-mode=phone] .student-next-lesson-activity-dismiss{border-width:0 1px 0 0}}.app-action-menu.resource-library-action-menu{background:var(--surface-sheet)}.teaching-target-modal .teaching-target-student-row.is-compact-destination{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:8px 10px}.teaching-target-student-row.is-compact-destination strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teaching-target-student-row.is-compact-destination small{margin-top:2px;font-size:var(--font-caption, 12px)}.teaching-target-student-row.is-compact-destination .teaching-target-student-actions>span{display:flex;justify-content:flex-end}.teaching-target-student-row.is-compact-destination .teaching-target-student-actions button{min-height:44px}.resource-picker-filter-disclosure.app-mobile-filter-disclosure{width:100%;min-height:44px;grid-template-columns:minmax(0,1fr) auto;margin:0}.resource-picker-filter-disclosure.app-mobile-filter-disclosure>small:empty{display:none}body[data-app-layout-mode=phone] .teaching-resource-card--library.is-compact-mobile-actions .teaching-resource-compact-row{grid-template-columns:minmax(0,1fr) 132px;gap:0;padding-inline-end:0}body[data-app-layout-mode=phone] .teaching-resource-card.teaching-resource-card--library.is-compact-mobile-actions .teaching-resource-compact-actions{width:132px;grid-template-columns:repeat(3,44px);gap:0;margin:0;justify-self:end;align-self:center}body[data-app-layout-mode=phone] .teaching-resource-card--library.is-compact-mobile-actions .teaching-resource-compact-actions button.teaching-resource-icon-action{width:44px;min-width:44px;height:44px;min-height:44px}html body[data-app-layout-mode=phone] .teaching-student-file-detail .teaching-tabs{display:flex;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overscroll-behavior-inline:contain;padding-inline-end:28px;-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 30px),transparent 100%);mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 30px),transparent 100%)}html body[data-app-layout-mode=phone] .teaching-student-file-detail .teaching-tabs button{flex:0 0 auto;width:auto;min-width:max-content;white-space:nowrap;overflow-wrap:normal}html[dir=rtl] body[data-app-layout-mode=phone] .teaching-student-file-detail .teaching-tabs{-webkit-mask-image:linear-gradient(to left,#000 0,#000 calc(100% - 30px),transparent 100%);mask-image:linear-gradient(to left,#000 0,#000 calc(100% - 30px),transparent 100%)}body[data-app-layout-mode=phone] .teaching-resource-filter-sheet .teaching-resource-mobile-sheet-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}body[data-app-layout-mode=phone] .teaching-resource-filter-sheet .resource-taxonomy-fields{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}body[data-app-layout-mode=phone] .teaching-resource-filter-sheet .resource-taxonomy-field:nth-child(3){grid-column:1 / -1}body[data-app-layout-mode=phone] .teaching-resource-filter-sheet .teaching-resource-type-filter,body[data-app-layout-mode=phone] .teaching-resource-filter-sheet .teaching-resource-favorites-filter{min-width:0;width:100%}body[data-app-layout-mode=phone] .teaching-resource-filter-sheet .teaching-mobile-filter-sheet-sort{grid-column:1 / -1}body[data-app-layout-mode=phone] .teaching-resource-results-head h2{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px}body[data-app-layout-mode=phone] .teaching-resource-results-head h2 small{color:var(--muted);font:inherit;font-size:var(--font-caption, 12px);font-weight:var(--font-weight-label, 500)}body[data-app-layout-mode=phone] .teaching-resource-results-head h2{margin-block:0}body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-block-library-toolbar .teaching-eyebrow{display:none}body[data-app-layout-mode=phone] .teacher-diary-entry-summary{min-height:68px;grid-template-columns:minmax(0,1fr) auto 44px;gap:2px 6px;cursor:pointer}body[data-app-layout-mode=phone] .teacher-diary-entry-summary:focus-visible{outline:2px solid var(--teach-green);outline-offset:-2px}body[data-app-layout-mode=phone] .teacher-diary-entry-title-toggle{grid-column:1;grid-row:1;width:100%}body[data-app-layout-mode=phone] .teacher-diary-entry-summary time{grid-column:2;grid-row:1;min-width:0;text-align:end}body[data-app-layout-mode=phone] .teacher-diary-entry-star{grid-column:3;grid-row:1;width:44px;min-width:44px;height:44px;min-height:44px}body[data-app-layout-mode=phone] .teacher-diary-entry-star svg{width:16px;height:16px}body[data-app-layout-mode=phone] .teacher-diary-entry-expand{display:none}.student-import-page{min-width:0;display:grid;gap:18px;padding:2px 2px 24px}.student-import-page-header{min-width:0;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:2px 4px 14px;border-bottom:1px solid var(--line)}.student-import-page-header h1,.student-import-page-header p{margin:0}.student-import-page-header h1{margin-top:8px;color:var(--text);font-size:clamp(28px,3vw,38px)!important;line-height:1.05}.student-import-page-header p{margin-top:8px;color:var(--muted);font-size:14px}.student-import-back,.student-import-another,.student-import-skip{border:0;background:transparent;color:var(--teaching-accent, var(--accent));box-shadow:none}.student-import-back,.student-import-another{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:4px 0;font-weight:600}.student-import-review-layout{min-width:0;display:grid;grid-template-columns:248px minmax(0,1fr);align-items:start}.student-import-candidates{min-width:0;padding-inline-end:22px;border-inline-end:1px solid var(--line)}.student-import-candidates>button{width:100%;min-height:64px;display:grid;grid-template-columns:36px minmax(0,1fr) auto 16px;align-items:center;gap:10px;padding:8px 6px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--text);box-shadow:none;text-align:start}.student-import-candidates>button.selected{background:color-mix(in srgb,var(--student-color, var(--teaching-soft, #e9f4ee)) 15%,transparent)}.student-import-candidates>button:focus-visible{outline:2px solid var(--focus-ring, var(--accent));outline-offset:-2px}.student-import-candidates strong,.student-import-candidates small{min-width:0}.student-import-candidates strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.student-import-candidates small{font-size:12px;font-weight:600}.student-import-candidates small.status-approved{color:var(--success-text, #17643a)}.student-import-candidates small.status-skipped{color:var(--muted)}.student-import-candidates small.status-needs_review{color:var(--teaching-accent, var(--accent))}.student-import-initials{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--student-color, var(--teaching-accent, #2b7d67)) 25%,white);color:var(--text);font-size:12px;font-weight:var(--font-weight-heading, 700)}.student-import-candidate-review{min-width:0;padding-inline-start:30px}.student-import-candidate-header{min-width:0;display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:12px;padding:7px 0 17px;border-bottom:1px solid var(--line)}.student-import-candidate-header h2{margin:0;color:var(--text);font-size:24px}.student-import-candidate-header span{font-size:12px;font-weight:600}.student-import-candidate-header .confidence-high{color:var(--success-text, #17643a)}.student-import-candidate-header .confidence-medium{color:var(--warning-text, #9a5b00)}.student-import-candidate-header .confidence-low{color:var(--danger-text, #a43b35)}.student-import-candidate-header small{justify-self:end;color:var(--muted);font-size:12px}.student-import-match{display:grid;grid-template-columns:126px minmax(220px,370px);align-items:center;gap:8px 14px;padding:18px 14px}.student-import-match>label{font-weight:600}.student-import-match>p{grid-column:2;margin:0;color:var(--muted);font-size:12px}.student-import-review-section,.student-import-other{padding:18px 14px;border-top:1px solid var(--line)}.student-import-section-heading{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:9px}.student-import-section-heading label{min-width:0;display:inline-flex;align-items:center;gap:10px}.student-import-section-heading input{position:absolute;width:1px;height:1px;opacity:0}.student-import-section-heading label>span{width:20px;height:20px;display:grid;place-items:center;border:1px solid var(--line-strong, var(--line));border-radius:4px;background:transparent;color:transparent}.student-import-section-heading input:checked+span{border-color:var(--teaching-accent, var(--accent, #006b3c));background:var(--teaching-accent, var(--accent, #006b3c));color:#fff}.student-import-section-heading input:focus-visible+span{outline:2px solid var(--focus-ring, var(--accent));outline-offset:2px}.student-import-section-heading small{color:var(--link, #1769d2);font-size:12px}.student-import-review-section>textarea{width:calc(100% - 30px);min-height:58px;margin-inline-start:30px;padding:4px 0 8px;resize:vertical;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--text);font:inherit;line-height:1.5;box-shadow:none}.student-import-review-section>textarea:focus{border-bottom-color:var(--teaching-accent, var(--accent));outline:0}.student-import-identity-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.4fr);gap:18px;margin-inline-start:30px}.student-import-identity-fields>label{display:grid;gap:5px;color:var(--muted);font-size:12px}.student-import-identity-fields>label>input{min-height:38px;padding:5px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--text);font:inherit}.student-import-history-scroll{margin-inline-start:30px;overflow-x:auto}.student-import-history-scroll table{width:100%;min-width:560px;border-collapse:collapse;font-size:13px}.student-import-history-scroll th,.student-import-history-scroll td{padding:0;border:1px solid var(--line);text-align:start}.student-import-history-scroll th{padding:8px 10px;background:var(--surface-subtle, color-mix(in srgb, var(--surface-card, white) 88%, var(--line)));color:var(--muted);font-weight:600}.student-import-history-scroll td input{width:100%;min-height:38px;padding:7px 10px;border:0;border-radius:0;background:transparent;color:var(--text);font:inherit}.student-import-history-scroll td small{display:block;min-width:120px;padding:7px 10px;color:var(--link, #1769d2)}.student-import-ideas{display:grid;gap:4px;margin:0 0 0 46px;padding:0}.student-import-ideas input{width:100%;min-height:34px;padding:3px 0;border:0;border-bottom:1px solid transparent;border-radius:0;background:transparent;color:var(--text);font:inherit}.student-import-ideas input:focus{border-bottom-color:var(--line);outline:0}.student-import-other summary{display:flex;align-items:center;gap:9px;color:var(--warning-text, #a76000);font-weight:600;cursor:pointer}.student-import-other p{margin:8px 0 0 25px;color:var(--muted)}.student-import-actions{position:sticky;bottom:0;display:flex;align-items:center;justify-content:flex-end;gap:18px;padding:14px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface-card, white) 94%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.student-import-actions .student-import-skip{min-width:120px;color:var(--text)}.student-import-approve{min-width:260px;background:var(--teaching-accent, var(--accent, #006b3c));color:#fff}.student-import-empty{min-height:360px;display:grid;place-items:center;align-content:center;gap:10px;color:var(--muted);text-align:center}.student-import-empty h2,.student-import-empty p{margin:0}.student-import-empty p{max-width:520px}.student-import-empty>button{min-height:40px;padding:0 16px;border:1px solid var(--action-control-border, var(--teach-green));border-radius:var(--radius-control);background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));font-weight:var(--font-weight-label, 500)}.student-import-source-backdrop{position:fixed;inset:0;z-index:var(--z-modal, 1000);display:grid;place-items:center;padding:16px;background:color-mix(in srgb,#14231d 45%,transparent)}.student-import-source-dialog{width:min(600px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow-y:auto;display:grid;gap:16px;padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--surface-sheet);box-shadow:var(--shadow-dialog)}.student-import-source-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.student-import-source-dialog h2,.student-import-source-dialog p{margin:0}.student-import-source-intro,.student-import-privacy{color:var(--muted);line-height:1.5}.student-import-privacy{font-size:12px}.student-import-file-choice{width:100%;min-height:64px;display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);text-align:start}.student-import-file-choice:hover:not(:disabled){border-color:var(--teach-green-mid);background:var(--teach-green-soft)}.student-import-file-choice span{display:grid;gap:3px}.student-import-file-choice small{color:var(--muted);font-weight:400}.student-import-drive-choice{display:grid;gap:7px}.student-import-drive-choice>label{font-weight:600}.student-import-drive-choice>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.student-import-drive-choice input{min-width:0;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text)}.student-import-drive-choice button{min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);font-weight:var(--font-weight-label, 500)}.student-import-source-status,.student-import-source-error{display:flex;align-items:center;gap:8px}.student-import-source-error{color:var(--danger-text, #a43b35)}.student-files-import-button{flex:0 0 40px;border-color:var(--line);background:var(--surface-input);color:var(--teach-green);box-shadow:none}.student-files-import-button:hover,.student-files-import-button:focus-visible{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-green)}.student-files-list-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.student-files-list-controls{display:flex;align-items:center;gap:8px}.student-files-list-controls .teaching-student-search{min-width:0;flex:1 1 auto}body[data-app-layout-mode=phone] .student-files-list-header{display:none}body[data-app-layout-mode=phone] .student-files-list-controls{margin-bottom:10px}body[data-app-layout-mode=phone] .student-files-list-controls .teaching-student-search{min-height:40px;margin-bottom:0}.learning-notebook-imported-history{border-bottom:1px solid var(--line)}.learning-notebook-imported-history>summary{padding:13px 2px;color:var(--text);font-weight:var(--font-weight-emphasis, 600);cursor:pointer}.learning-notebook-imported-history>div{overflow-x:auto;padding-bottom:14px}.learning-notebook-imported-history table{width:100%;min-width:520px;border-collapse:collapse;font-size:13px}.learning-notebook-imported-history th,.learning-notebook-imported-history td{padding:8px 10px;border:1px solid var(--line);text-align:start;vertical-align:top}.learning-notebook-imported-history th{color:var(--muted);font-weight:600}@media(max-width:860px){.student-import-page{padding:0 0 18px}.student-import-page-header{align-items:flex-start;padding-inline:4px}.student-import-another{width:44px;min-width:44px;font-size:0;justify-content:center}.student-import-review-layout{grid-template-columns:minmax(0,1fr)}.student-import-candidates{display:flex;gap:0;overflow-x:auto;padding:0 0 8px;border-inline-end:0;border-bottom:1px solid var(--line)}.student-import-candidates>button{min-width:190px;grid-template-columns:36px minmax(0,1fr) auto}.student-import-candidates>button>svg{display:none}.student-import-candidate-review{padding-inline-start:0}.student-import-candidate-header{grid-template-columns:minmax(0,1fr) auto;padding-inline:10px}.student-import-candidate-header small{grid-column:1 / -1;justify-self:start}.student-import-match{grid-template-columns:minmax(0,1fr);padding-inline:10px}.student-import-match>p{grid-column:1}.student-import-review-section,.student-import-other{padding-inline:10px}.student-import-section-heading{align-items:flex-start}.student-import-section-heading small{text-align:end}.student-import-identity-fields{grid-template-columns:minmax(0,1fr)}.student-import-review-section>textarea,.student-import-identity-fields,.student-import-history-scroll{width:auto;margin-inline-start:30px}.student-import-actions{justify-content:stretch}.student-import-actions button{flex:1 1 0;min-width:0}.student-import-drive-choice>div{grid-template-columns:minmax(0,1fr)}.student-import-empty>button{min-height:44px}.student-files-import-button{width:40px;min-width:40px;height:40px;min-height:40px;flex-basis:40px}}body[data-app-layout-mode=phone] .student-import-review-layout{grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .student-files-list-controls .student-files-import-button{box-sizing:border-box;width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;padding:0}body[data-app-layout-mode=phone] .student-import-source-dialog>header>button{box-sizing:border-box;width:44px;min-width:44px;height:44px;min-height:44px;padding:0}body[data-app-layout-mode=phone] .student-import-drive-choice input,body[data-app-layout-mode=phone] .student-import-drive-choice button{min-height:44px}body[data-app-layout-mode=phone] .student-import-page :is(.student-import-back,.student-import-another,.student-import-skip){min-height:44px}.onboarding-page{box-sizing:border-box;width:100%;min-height:min(780px,calc(100dvh - 64px));margin:0;padding:clamp(24px,5vw,56px) 24px 64px;display:grid;place-items:start center}.onboarding-wizard{width:min(100%,760px);display:grid;gap:14px}.onboarding-wizard-header,.onboarding-brand,.onboarding-step-actions,.onboarding-step-actions>div,.onboarding-connected-status,.onboarding-footnote{display:flex;align-items:center}.onboarding-wizard-header{min-height:48px;justify-content:space-between;gap:16px}.onboarding-brand{gap:10px;color:var(--text)}.onboarding-brand img{width:36px;height:36px;border-radius:10px}.onboarding-brand strong{font-size:16px;font-weight:var(--font-weight-emphasis, 600)}.onboarding-skip-button{min-height:44px}.onboarding-progress{width:100%;display:grid;gap:8px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-emphasis, 600)}.onboarding-progress>span{text-align:end}.onboarding-progress>div{height:auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;overflow:visible;background:transparent}.onboarding-progress>div>span{height:4px;display:block;border-radius:999px;background:var(--line);transition:background .18s ease-out}.onboarding-progress>div>span.is-ready{background:var(--teach-green)}.onboarding-step-card{min-height:460px;display:grid;align-content:start;gap:22px;padding:clamp(24px,4vw,40px);border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel-strong);box-shadow:var(--shadow-panel)}.onboarding-step-heading{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:16px}.onboarding-step-heading>div{min-width:0;display:grid;gap:7px}.onboarding-step-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;color:var(--teach-action-soft-text);background:var(--teach-green-soft)}.onboarding-step-icon svg{width:23px;height:23px}.onboarding-step-heading p,.onboarding-step-heading h1,.onboarding-trust-note p,.onboarding-connected-status,.onboarding-policy-link,.onboarding-inline-message,.onboarding-storage-caveat,.onboarding-privacy-points p,.onboarding-legal-links,.onboarding-required-note,.onboarding-settings-note p,.onboarding-real-data-note,.onboarding-footnote{margin:0}.onboarding-step-heading p{color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-emphasis, 600);letter-spacing:.08em;text-transform:uppercase}body .onboarding-step-heading h1{max-width:640px;font-size:clamp(27px,4vw,36px);line-height:1.12}.onboarding-step-heading h1:focus{outline:none}.onboarding-step-heading>div>span{max-width:620px;color:var(--muted);font-size:15px;line-height:1.55}.onboarding-choice-grid,.onboarding-subject-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.onboarding-choice-grid>button,.onboarding-subject-grid>button{position:relative;min-height:112px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-control);color:var(--text);background:var(--surface-card);text-align:start;cursor:pointer}.onboarding-choice-grid>button:hover,.onboarding-choice-grid>button:focus-visible,.onboarding-subject-grid>button:hover,.onboarding-subject-grid>button:focus-visible{border-color:color-mix(in srgb,var(--teach-green) 54%,var(--line));background:color-mix(in srgb,var(--teach-green-soft) 34%,var(--surface-card))}.onboarding-choice-grid>button:focus-visible,.onboarding-subject-grid>button:focus-visible,.onboarding-terms-check:has(input:focus-visible){outline:3px solid color-mix(in srgb,var(--teach-green) 32%,transparent);outline-offset:2px}.onboarding-choice-grid>button.is-selected,.onboarding-subject-grid>button.is-selected{border-color:var(--teach-green);box-shadow:inset 0 0 0 1px var(--teach-green)}.onboarding-choice-grid>button:disabled,.onboarding-subject-grid>button:disabled{cursor:wait;opacity:.68}.onboarding-choice-grid button>svg:first-child,.onboarding-subject-grid button>svg:first-child{width:36px;height:36px;padding:8px;border-radius:11px;color:var(--teach-action-soft-text);background:var(--teach-green-soft)}.onboarding-choice-grid button>svg:last-child,.onboarding-subject-grid button>svg:last-child{width:20px;height:20px;color:var(--app-success-text)}.onboarding-choice-grid button>span,.onboarding-subject-grid button>span{min-width:0;display:grid;gap:5px}.onboarding-choice-grid strong,.onboarding-subject-grid strong{font-size:15px;font-weight:var(--font-weight-emphasis, 600)}.onboarding-choice-grid small,.onboarding-subject-grid small{color:var(--muted);font-size:13px;line-height:1.45}.onboarding-choice-grid em{position:absolute;inset-block-start:10px;inset-inline-end:10px;padding:3px 7px;border-radius:999px;color:var(--teach-action-soft-text);background:var(--teach-green-soft);font-size:11px;font-style:normal;font-weight:var(--font-weight-emphasis, 600)}.onboarding-language-grid>button{min-height:104px;grid-template-columns:minmax(0,1fr) auto}.onboarding-language-grid strong{font-size:20px}.onboarding-trust-note,.onboarding-settings-note{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 16px;border:1px solid color-mix(in srgb,var(--teach-green) 30%,var(--line));border-radius:var(--radius-control);background:color-mix(in srgb,var(--teach-green-soft) 42%,var(--surface-card))}.onboarding-trust-note>svg,.onboarding-settings-note>svg{color:var(--teach-action-soft-text)}.onboarding-trust-note p,.onboarding-settings-note p{color:var(--text);font-size:14px;line-height:1.55}.onboarding-settings-note p{display:grid;gap:2px}.onboarding-settings-note p:not(strong){color:var(--muted)}.onboarding-settings-note strong{color:var(--text)}.onboarding-connected-status{gap:8px;color:var(--app-success-text);font-size:14px;font-weight:var(--font-weight-emphasis, 600)}.onboarding-policy-link,.onboarding-legal-links{font-size:13px}.onboarding-policy-link a,.onboarding-legal-links a{color:var(--teach-action-soft-text);text-underline-offset:3px}.onboarding-inline-message,.onboarding-storage-caveat,.onboarding-real-data-note,.onboarding-required-note{color:var(--muted);font-size:13px;line-height:1.5}.onboarding-storage-caveat{padding-inline-start:4px}.onboarding-privacy-points{display:grid;gap:10px}.onboarding-privacy-points p{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;color:var(--muted);font-size:14px;line-height:1.5}.onboarding-privacy-points p>svg{margin-top:2px;color:var(--app-success-text)}.onboarding-privacy-points p>span{display:grid;gap:2px}.onboarding-privacy-points strong{color:var(--text);font-weight:var(--font-weight-emphasis, 600)}.onboarding-terms-check{min-height:60px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-control);color:var(--text);background:var(--surface-card);cursor:pointer}.onboarding-terms-check input{width:22px;height:22px;margin:0;accent-color:var(--teach-green)}.onboarding-terms-check span{font-size:14px;line-height:1.45}.onboarding-legal-links{display:flex;align-items:center;gap:8px}.onboarding-required-note{color:var(--teach-action-soft-text);font-weight:var(--font-weight-emphasis, 600)}.onboarding-subject-grid>button{min-height:96px}.onboarding-topic-preview{display:grid;gap:10px;padding:14px;border-radius:var(--radius-control);background:var(--surface-card)}.onboarding-topic-preview>strong{font-size:13px;font-weight:var(--font-weight-emphasis, 600)}.onboarding-topic-preview>div{display:flex;flex-wrap:wrap;gap:7px}.onboarding-topic-preview span{padding:5px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--surface-panel);font-size:12px}.onboarding-step-actions{align-self:end;justify-content:space-between;gap:16px;padding-top:4px}.onboarding-step-actions>div{gap:8px}.onboarding-step-actions button{min-height:44px}.onboarding-step-actions .primary-button,.onboarding-step-actions .quiet-button{gap:7px}.onboarding-footnote{justify-content:center;gap:6px;color:var(--muted);font-size:12px;text-align:center}.onboarding-spinner{animation:onboarding-spin .9s linear infinite}@media(max-width:760px){.onboarding-page{min-height:0;padding:18px 12px 108px}.onboarding-wizard{gap:12px}.onboarding-step-card{min-height:0;gap:19px;padding:22px 16px}.onboarding-step-heading{grid-template-columns:40px minmax(0,1fr);gap:12px}.onboarding-step-heading>div{display:contents}.onboarding-step-heading p{align-self:center}.onboarding-step-heading h1,.onboarding-step-heading>div>span{grid-column:1 / -1}.onboarding-step-icon{width:40px;height:40px;border-radius:12px}.onboarding-step-icon svg{width:20px;height:20px}body[data-app-layout-mode=phone] .onboarding-step-heading h1{font-size:27px}.onboarding-choice-grid,.onboarding-subject-grid{grid-template-columns:1fr}.onboarding-choice-grid>button,.onboarding-subject-grid>button{min-height:92px}.onboarding-language-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.onboarding-language-grid>button{min-height:100px;padding:14px}.onboarding-language-grid small{display:none}.onboarding-trust-note,.onboarding-settings-note{grid-template-columns:auto minmax(0,1fr);align-items:start}.onboarding-settings-note>button{grid-column:1 / -1;min-height:44px}.onboarding-step-actions{align-items:stretch;flex-direction:column-reverse}.onboarding-step-actions>div{width:100%;justify-content:space-between}.onboarding-step-actions>.primary-button{width:100%;justify-content:center}}@media(max-width:390px){.onboarding-wizard-header{align-items:flex-start}.onboarding-brand strong{display:none}.onboarding-language-grid{grid-template-columns:1fr}.onboarding-language-grid>button{min-height:76px}}@media(max-width:760px){.onboarding-page{padding:16px 12px 104px;gap:16px}.onboarding-progress{width:100%}.onboarding-step{grid-template-columns:32px minmax(0,1fr);gap:12px;padding:16px 12px}.first-outcome-finish-actions{grid-column:1}}@media(prefers-reduced-motion:reduce){.onboarding-progress>div>span{transition:none}}.onboarding-appearance summary{cursor:pointer;min-height:44px;padding-block:12px;box-sizing:border-box;color:var(--text)}.onboarding-appearance[open] summary{margin-bottom:12px}.lesson-proposal-modal{position:fixed;inset:0;z-index:var(--z-dialog);display:grid;place-items:center;padding:24px;background:#0f172a75;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.drag-reschedule-prompt-modal{position:fixed;inset:0;z-index:1500;display:grid;place-items:center;padding:24px;background:#0f172a47;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.drag-reschedule-prompt-card{width:min(470px,100%);overflow:hidden;border:1px solid #d8e4e1;border-radius:20px;background:#fff;box-shadow:0 24px 64px #0f172a38}.drag-reschedule-prompt-card>header{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;padding:16px 17px 13px;border-bottom:1px solid #e8eeec}.drag-reschedule-prompt-card h2,.drag-reschedule-prompt-card p{margin:0}.drag-reschedule-prompt-card h2{margin-top:2px;color:#243732;font-size:1.04rem;line-height:1.3}.drag-reschedule-prompt-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;color:#0f766e;background:#e5f6f2}.drag-reschedule-prompt-times{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:9px;align-items:center;margin:15px 17px 0;padding:10px;border-radius:13px;background:#f5f8f7}.drag-reschedule-prompt-times>div{display:grid;gap:3px;padding:7px 8px}.drag-reschedule-prompt-times small{color:#70807b;font-size:.7rem;font-weight:var(--font-weight-heading, 700)}.drag-reschedule-prompt-times strong{color:#2f423d;font-size:.8rem;line-height:1.35}.drag-reschedule-prompt-times>svg{color:#91a19c}.drag-reschedule-prompt-times .is-new-time{border:1px solid #a9d9cf;border-radius:10px;background:#ecf9f6}.drag-reschedule-prompt-description{padding:13px 18px 0;color:#5c6e69;font-size:.82rem;line-height:1.5}.drag-reschedule-prompt-actions{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;padding:14px 17px 7px}.drag-reschedule-prompt-actions button{display:flex;gap:8px;align-items:center;justify-content:center;min-height:42px}.drag-reschedule-prompt-hint{display:block;padding:0 18px 16px;color:#788782;font-size:.7rem;line-height:1.4;text-align:center}.lesson-proposal-card{width:min(660px,100%);max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #dbe4e2;border-radius:24px;background:#fff;box-shadow:0 28px 70px #0f172a38}.lesson-proposal-card.is-message-step{width:min(920px,100%);overflow:hidden}.lesson-proposal-card.is-message-step>header{padding:12px 18px 10px}.lesson-proposal-card.is-message-step>header h2{font-size:1.45rem;line-height:1.2}.lesson-proposal-card.is-message-step .lesson-proposal-heading-mark{width:34px;height:34px}.lesson-proposal-card.is-message-step .lesson-proposal-summary{margin:10px 18px 0;padding:8px}.lesson-proposal-card.is-message-step .lesson-proposal-summary>div{padding:6px 8px}.lesson-proposal-card>header{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:15px 20px 13px;border-bottom:1px solid #e8eeec}.lesson-proposal-card h2,.lesson-proposal-card p{margin:0}.lesson-proposal-heading-mark{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;color:#0f766e;background:#e4f5f1}.lesson-proposal-summary{display:grid;gap:7px 10px;margin:12px 20px 0;padding:10px;border-radius:14px;background:#f6f8f7}.lesson-proposal-summary.has-original{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.lesson-proposal-summary>div{display:grid;gap:2px;padding:8px 10px}.lesson-proposal-summary span{color:#64746f;font-size:.72rem;font-weight:var(--font-weight-heading, 700)}.lesson-proposal-summary strong{color:#253632;font-size:.88rem;line-height:1.3}.lesson-proposal-summary .is-proposed{border:1px solid #a7d8cd;border-radius:10px;background:#effaf7}.lesson-proposal-summary small{display:flex;grid-column:1 / -1;gap:6px;align-items:center;padding-inline:3px;color:#687973;font-size:.74rem;line-height:1.35}.lesson-proposal-summary small.is-warning{color:#9a5f12}.lesson-proposal-form{display:grid;gap:12px;padding:14px 20px 18px}.lesson-proposal-message-step{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;padding:12px 18px 16px}.lesson-proposal-message-main{display:grid;min-width:0;gap:12px}.lesson-proposal-routing{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.42fr);gap:10px;align-items:end}.lesson-proposal-routing label{min-width:0}.lesson-proposal-form label,.lesson-proposal-message-step label{display:grid;gap:5px;color:#40524d;font-size:.8rem;font-weight:var(--font-weight-heading, 700)}.lesson-proposal-form textarea,.lesson-proposal-message-step textarea{width:100%;border:1px solid #ccd8d5;border-radius:10px;padding:9px 10px;color:#1f312d;background:#fff;font:inherit}.lesson-proposal-form textarea{min-height:64px;resize:vertical}.lesson-proposal-message-step textarea{min-height:300px;resize:none;font-size:.94rem;line-height:1.65}.lesson-proposal-message-editor{display:grid;gap:7px}.lesson-proposal-message-editor-heading{display:flex;min-height:30px;align-items:center;justify-content:space-between;gap:12px}.lesson-proposal-routing .app-dropdown{width:100%}.lesson-proposal-message-editor-heading label{color:#40524d;font-size:.8rem;font-weight:var(--font-weight-heading, 700)}.lesson-proposal-send-panel{display:flex;min-width:0;flex-direction:column;gap:12px;padding:13px;border:1px solid #dce6e3;border-radius:16px;background:#f8faf9}.lesson-proposal-link-preview{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;padding:11px 12px;border:1px solid #cfe0dc;border-radius:12px;background:#f5faf8}.lesson-proposal-link-icon{display:grid;width:32px;height:32px;place-items:center;border-radius:9px;color:#0f766e;background:#e0f2ed}.lesson-proposal-link-preview>span:nth-child(2){display:grid;gap:2px;min-width:0}.lesson-proposal-link-preview strong{color:#29433d;font-size:.78rem}.lesson-proposal-link-preview small{color:#687b75;font-size:.7rem;line-height:1.35}.lesson-proposal-link-preview code{grid-column:1 / -1;max-width:100%;overflow:hidden;padding:5px 8px;border-radius:8px;color:#24665a;background:#fff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.lesson-proposal-create{display:flex;gap:8px;align-items:center;justify-content:center;min-height:42px}.lesson-proposal-error{color:#b42318;font-size:.84rem}.lesson-proposal-created{display:flex;gap:10px;align-items:center;padding:13px;border-radius:13px;color:#116a55;background:#eaf8f3}.lesson-proposal-created span{display:grid;gap:2px}.lesson-proposal-created small{color:#52716a}.lesson-proposal-send-panel>p{display:flex;gap:7px;align-items:flex-start;color:#677873;font-size:.72rem;line-height:1.45}.lesson-proposal-send-panel>p svg{flex:0 0 auto;margin-top:2px}.lesson-proposal-send-actions{display:grid;gap:8px;margin-top:auto}.lesson-proposal-send-actions button{display:flex;min-height:44px;gap:8px;align-items:center;justify-content:center}.lesson-proposal-send-actions .quiet-button{width:100%}.lesson-proposal-send-actions .lesson-proposal-whatsapp-button{width:44px;justify-self:end;padding:0}.pending-proposal-card{width:min(560px,100%)}.pending-proposal-card.is-message-step{width:min(920px,100%)}.lesson-proposal-heading-mark.is-cancellation{color:#93443d;background:#f9e9e7}.pending-proposal-actions{display:grid;gap:9px;padding:16px 20px 20px}.pending-proposal-actions>button:not(.pending-proposal-keep){display:flex;min-height:58px;gap:11px;align-items:center;padding:10px 13px;border-radius:12px;text-align:start}.pending-proposal-actions>button>span{display:grid;gap:2px}.pending-proposal-actions>button strong{font-size:.84rem}.pending-proposal-actions>button small{font-size:.7rem;font-weight:600;line-height:1.4}.pending-proposal-with-message{border:1px solid #984d45;color:#fff;background:#984d45;cursor:pointer;font:inherit}.pending-proposal-with-message small{color:#f8dedb}.pending-proposal-silent{width:100%;border-color:#dfbbb7;color:#803e38;background:#fff9f8}.pending-proposal-silent small{color:#815f5b}.pending-proposal-keep{min-height:40px;border:0;color:#60716c;background:transparent}.pending-proposal-message-step textarea{min-height:250px}.assignment-footer .assignment-proposal-button,.drawer-schedule-actions .lesson-propose-schedule-button{display:inline-flex;gap:7px;align-items:center}.calendar-chip[data-proposal-state=waiting_parent]{border:2px dashed color-mix(in srgb,#d99a00 76%,var(--line));color:var(--text);background:repeating-linear-gradient(0deg,color-mix(in srgb,#d99a00 10%,transparent) 0,color-mix(in srgb,#d99a00 10%,transparent) 1px,transparent 1px,transparent 7px),color-mix(in srgb,#d99a00 12%,var(--surface-card));box-shadow:none}.calendar-management-page .desktop-week-calendar .calendar-chip[data-proposal-state=waiting_parent]{border-color:color-mix(in srgb,#d99a00 76%,var(--line))}.calendar-chip[data-proposal-state=waiting_parent] .chip-grip{display:none}.calendar-chip[data-proposal-state=waiting_parent] .calendar-student-chip{border-color:color-mix(in srgb,#d99a00 44%,var(--line));background:repeating-linear-gradient(0deg,color-mix(in srgb,#d99a00 9%,transparent) 0,color-mix(in srgb,#d99a00 9%,transparent) 1px,transparent 1px,transparent 7px),color-mix(in srgb,#d99a00 18%,var(--surface-card))}.calendar-chip[data-proposal-state=waiting_parent] .calendar-student-chip:hover,.calendar-chip[data-proposal-state=waiting_parent] .calendar-student-chip:focus-visible{border-color:color-mix(in srgb,#d99a00 64%,var(--line));background:repeating-linear-gradient(0deg,color-mix(in srgb,#d99a00 11%,transparent) 0,color-mix(in srgb,#d99a00 11%,transparent) 1px,transparent 1px,transparent 7px),color-mix(in srgb,#d99a00 24%,var(--surface-card))}.calendar-proposal-panel{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:var(--surface-card);box-shadow:0 7px 22px #1f312d0f}.calendar-proposal-panel>header{display:flex;gap:10px;align-items:center;padding:14px 15px;border-bottom:1px solid var(--line)}.calendar-proposal-panel>header>span{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;color:var(--muted);background:var(--surface-sheet-muted)}.calendar-proposal-panel h2,.calendar-proposal-panel p{margin:0}.calendar-proposal-panel h2{color:var(--text);font-size:.9rem}.calendar-proposal-panel header p{margin-top:2px;color:var(--muted);font-size:.72rem}.calendar-proposal-list{display:grid;padding:4px 10px 8px}.calendar-proposal-list article{border-bottom:1px solid var(--line);background:var(--surface-card)}.calendar-proposal-list article:last-child{border-bottom:0}.calendar-proposal-list article.is-expanded{margin:4px 0;border:1px solid var(--line);border-radius:10px;background:var(--surface-sheet-muted)}.calendar-proposal-summary{display:grid;grid-template-columns:minmax(0,1fr) auto 26px;gap:7px;align-items:center;width:100%;padding:9px 4px;border:0;color:inherit;background:transparent;text-align:start;cursor:pointer}.calendar-proposal-list article.is-expanded .calendar-proposal-summary{padding-inline:8px}.calendar-proposal-summary:hover{background:var(--surface-sheet-muted)}.calendar-proposal-summary:focus-visible{outline:2px solid var(--teach-action-soft-text);outline-offset:-2px;border-radius:8px}.calendar-proposal-summary-copy{display:grid;gap:1px;min-width:0}.calendar-proposal-summary-copy strong{overflow:hidden;color:var(--text);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.calendar-proposal-summary-copy small{color:var(--muted);font-size:.66rem;white-space:nowrap}.calendar-proposal-waiting{padding:4px 8px;border:1px solid #efd47a;border-radius:999px;color:#765000;background:#fff3bd;font-size:.71rem;font-weight:var(--font-weight-heading, 700);white-space:nowrap}button.calendar-proposal-summary{grid-template-areas:"copy chevron" "status chevron";grid-template-columns:minmax(0,1fr) 26px;row-gap:5px}button.calendar-proposal-summary .calendar-proposal-summary-copy{grid-area:copy}button.calendar-proposal-summary .calendar-proposal-waiting{grid-area:status;max-width:100%;justify-self:start;overflow:hidden;text-overflow:ellipsis}button.calendar-proposal-summary .calendar-proposal-chevron{grid-area:chevron;justify-self:center}.calendar-proposal-chevron{color:var(--muted);transition:transform .16s ease}.calendar-proposal-summary[aria-expanded=true] .calendar-proposal-chevron{transform:rotate(180deg)}.calendar-proposal-card-actions{display:flex;flex-wrap:wrap;gap:5px;padding:0 8px 9px}.calendar-proposal-card-actions button{padding:5px 7px;border:1px solid var(--line);border-radius:8px;color:var(--text);background:var(--surface-card);font-size:.65rem}.calendar-proposal-empty{padding:16px;color:var(--muted);font-size:.76rem;line-height:1.4}.calendar-proposal-list article.is-result{margin-top:4px;border:1px solid var(--line);border-radius:10px;background:var(--surface-card)}.calendar-proposal-list article.is-result.is-confirmed{border-color:var(--teach-green-mid);background:var(--teach-green-soft)}.calendar-proposal-result-summary{grid-template-areas:"copy dismiss" "status dismiss";grid-template-columns:minmax(0,1fr) 30px;row-gap:7px;min-height:78px;padding:11px 7px;cursor:default}.calendar-proposal-result-summary .calendar-proposal-summary-copy{grid-area:copy;gap:2px}.calendar-proposal-result-summary .calendar-proposal-result-status{grid-area:status;justify-self:start}.calendar-proposal-result-summary .calendar-proposal-dismiss{grid-area:dismiss;align-self:center;justify-self:center}.calendar-proposal-result-reason{color:var(--muted);font-size:.7rem;font-weight:var(--font-weight-heading, 700);line-height:1.35;overflow-wrap:anywhere}.calendar-proposal-result-summary:hover{background:transparent}.calendar-proposal-result-status{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:999px;color:var(--muted);background:var(--surface-sheet-muted);font-size:.68rem;font-weight:var(--font-weight-heading, 700);white-space:nowrap}.calendar-proposal-list article.is-confirmed .calendar-proposal-result-status{color:var(--app-success-text);background:var(--teach-green-soft)}.calendar-proposal-dismiss{display:grid;width:30px;height:30px;place-items:center;padding:0;border:1px solid currentColor;border-radius:50%;color:var(--muted);background:transparent;cursor:pointer}.calendar-proposal-list article.is-confirmed .calendar-proposal-dismiss{color:var(--app-success-text)}.calendar-proposal-dismiss:hover{background:var(--surface-input)}.calendar-proposal-dismiss:focus-visible{outline:2px solid var(--teach-action-soft-text);outline-offset:2px}.calendar-proposal-latest.is-confirmed{color:var(--app-success-text);background:var(--teach-green-soft)}.lesson-response-page{min-height:100dvh;display:grid;place-items:center;padding:20px;color:#21332e;background:radial-gradient(circle at 50% 0%,#eaf8f4 0,#f7f9f8 45%,#eef2f1);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-text-size-adjust:100%;text-size-adjust:100%}.lesson-response-card{width:min(480px,100%);padding:24px;border:1px solid #d9e4e1;border-radius:26px;background:#fff;box-shadow:0 24px 70px #18362f26}.lesson-response-logo{display:flex;gap:10px;align-items:center;width:fit-content;margin-bottom:18px;color:#157360}.lesson-response-logo img{width:36px;height:36px;border-radius:10px;object-fit:contain}.lesson-response-logo strong{font-size:1.15rem;font-weight:var(--font-weight-heading, 700);letter-spacing:-.03em}.lesson-response-card>header{display:flex;gap:12px;align-items:center}.lesson-response-card>header>span{display:grid;width:48px;height:48px;flex:0 0 auto;place-items:center;border-radius:15px;color:#0f766e;background:#e5f7f2}.lesson-response-card h1,.lesson-response-card p{margin:0}.lesson-response-card header p{color:#687a75;font-size:.78rem}.lesson-response-card header h1{margin-top:3px;font-size:1.42rem;letter-spacing:-.025em}.lesson-response-times{display:grid;gap:9px;margin-top:18px}.lesson-response-times>div{display:grid;gap:5px;padding:13px;border-radius:14px;background:#f5f7f6}.lesson-response-times .is-proposed{border:1px solid #98d1c5;background:#ebf8f5}.lesson-response-times small{color:#71817d;font-size:.72rem;font-weight:var(--font-weight-heading, 700)}.lesson-response-times strong{font-size:.92rem}.lesson-response-times span{display:flex;gap:5px;align-items:center;color:#58706a;font-size:.73rem}.lesson-response-card blockquote{margin:14px 0 0;padding:12px 14px;border-inline-start:3px solid #8fcbbf;color:#4f625d;background:#f7faf9;font-size:.84rem;line-height:1.5}.lesson-response-turnstile{display:flex;justify-content:center;min-height:0;margin-top:16px}.lesson-response-error{margin-top:12px!important;color:#b42318;font-size:.8rem;text-align:center}.lesson-response-actions{display:grid;gap:9px;margin-top:18px}.lesson-response-actions button{display:flex;gap:8px;align-items:center;justify-content:center;min-height:48px;border-radius:13px;font:inherit;font-weight:var(--font-weight-heading, 700)}.lesson-response-approve{border:1px solid #0f766e;color:#fff;background:#0f766e}.lesson-response-decline{border:1px solid #ccd8d5;color:#51625e;background:#fff}.lesson-response-card>footer{display:flex;gap:7px;align-items:flex-start;margin-top:20px;padding-top:15px;border-top:1px solid #e8eeec;color:#71817d;font-size:.7rem;line-height:1.45}.lesson-response-result{display:grid;gap:10px;justify-items:center;padding:26px 4px;text-align:center}.lesson-response-result>span{display:grid;width:62px;height:62px;place-items:center;border-radius:50%;color:#fff;background:#0f766e}.lesson-response-result p{color:#6a7b76;font-size:.8rem;font-weight:var(--font-weight-heading, 700)}.lesson-response-result h1{max-width:360px;font-size:1.2rem;line-height:1.4}.lesson-response-result:not(.is-confirmed)>span{background:#778681}.lesson-response-card.is-loading,.lesson-response-card.is-error{display:grid;gap:16px;justify-items:center;text-align:center}.lesson-response-card.is-error svg{color:#9a5a52}.lesson-response-card.is-error h1{max-width:340px;font-size:1.1rem;line-height:1.45}@media(max-width:680px){.lesson-proposal-modal{align-items:end;padding:0}.lesson-proposal-card,.lesson-proposal-card.is-message-step{width:100%;max-height:92dvh;overflow:auto;border-radius:24px 24px 0 0}.lesson-proposal-card>header,.lesson-proposal-form,.lesson-proposal-message-step{padding-inline:12px}.lesson-proposal-summary{margin-inline:12px}.lesson-proposal-summary.has-original,.lesson-proposal-routing{grid-template-columns:1fr}.lesson-proposal-message-step{grid-template-columns:1fr;gap:12px}.lesson-proposal-message-step textarea{min-height:260px;resize:vertical}.lesson-proposal-send-panel{padding:12px}.lesson-proposal-link-preview{grid-template-columns:auto minmax(0,1fr)}.lesson-proposal-link-preview code{grid-column:1 / -1;max-width:100%}.pending-proposal-actions{padding-inline:16px}.assignment-footer{flex-wrap:wrap}.assignment-footer .assignment-proposal-button{width:44px;min-width:44px;flex:0 0 44px;justify-content:center}.lesson-response-page{padding:10px;align-items:start}.lesson-response-page .lesson-response-card{margin-top:10px;padding:18px;border-radius:22px}.lesson-response-page .lesson-response-logo{margin-bottom:14px}.lesson-response-page .lesson-response-card header h1{font-size:1.28rem;line-height:1.25}.lesson-response-page .lesson-response-result{gap:8px;padding:18px 0}.lesson-response-page .lesson-response-result>span{width:54px;height:54px}.lesson-response-page .lesson-response-result p{font-size:.78rem}.lesson-response-page .lesson-response-result h1{max-width:32rem;margin:0;font-size:clamp(1.1rem,5.2vw,1.35rem);line-height:1.45;letter-spacing:-.015em;text-wrap:balance}.lesson-response-page .lesson-response-card.is-error h1{font-size:1.05rem;line-height:1.45}.lesson-response-page .lesson-response-card>footer{margin-top:16px;padding-top:13px}.drag-reschedule-prompt-modal{align-items:end;padding:12px}.drag-reschedule-prompt-card{border-radius:20px}.drag-reschedule-prompt-times{grid-template-columns:1fr}.drag-reschedule-prompt-times>svg{justify-self:center;transform:rotate(90deg)}:dir(rtl) .drag-reschedule-prompt-times>svg{transform:rotate(-90deg)}}.practice-welcome{min-height:100%;display:grid;place-items:center;padding:clamp(1rem,4vw,3rem);background:radial-gradient(circle at 12% 8%,color-mix(in srgb,var(--accent, #3f8f79) 16%,transparent),transparent 32rem),radial-gradient(circle at 90% 90%,rgba(232,179,119,.17),transparent 28rem),var(--surface-page, #f8faf7)}.practice-welcome-card{width:min(880px,100%);min-width:0;box-sizing:border-box;overflow:hidden;padding:clamp(1.25rem,3vw,2.3rem);border:1px solid color-mix(in srgb,var(--accent, #3f8f79) 18%,var(--border-color, #dce4df));border-radius:26px;background:color-mix(in srgb,var(--surface-card, #fff) 96%,transparent);box-shadow:0 28px 70px #1f42381f}.practice-welcome-hero{display:flex;gap:1rem;align-items:center}.practice-welcome-mark{width:58px;height:58px;flex:0 0 58px;padding:8px;border-radius:18px;background:#fff;box-shadow:0 8px 24px #1f42381f}.practice-welcome-mark img{width:100%;height:100%;object-fit:contain}.practice-welcome-hero p{margin:0 0 .3rem;color:var(--accent, #367f6d);font-size:.75rem;font-weight:var(--font-weight-heading, 700);letter-spacing:.09em;text-transform:uppercase}.practice-welcome-hero h1{margin:0;color:var(--text-strong, #193b31);font-size:clamp(1.7rem,4vw,2.55rem);line-height:1.08}.practice-welcome-hero>div>span{display:block;margin-top:.55rem;color:var(--text-muted, #64736d);font-size:1rem;line-height:1.55}.practice-agreement{display:flex;align-items:flex-start;gap:.65rem;padding:.9rem 1rem;border-radius:14px;background:#39846f14;color:var(--text-strong, #233c34);font-size:.84rem;line-height:1.45;cursor:pointer}.practice-agreement input{width:18px;height:18px;flex:0 0 auto;margin-top:1px;accent-color:var(--accent, #367f6d)}.practice-turnstile{max-width:100%;min-height:4px;margin-top:.65rem;overflow:hidden}.practice-turnstile iframe{max-width:100%}.practice-welcome-message{margin:.7rem 0 0;padding:.7rem .85rem;border-radius:10px;color:#923b32;background:#fff0ed;font-size:.84rem}.practice-welcome-actions{display:grid;grid-template-columns:1.15fr 1fr;gap:.7rem;margin-top:1rem}.practice-welcome-actions button{min-height:46px;justify-content:center;white-space:normal}.practice-welcome-actions .quiet-button{grid-column:1 / -1;min-height:36px}.practice-protected{display:flex;align-items:center;justify-content:center;gap:.35rem;margin:.75rem 0 0;color:var(--text-muted, #718078);font-size:.72rem}.practice-reminder{position:sticky;z-index:18;top:0;display:flex;align-items:center;gap:.65rem;min-height:54px;margin:0 0 .8rem;padding:.65rem .9rem;border:1px solid rgba(59,134,112,.22);border-radius:14px;background:color-mix(in srgb,#effaf6 96%,transparent);box-shadow:0 4px 16px #1c524114;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.practice-reminder-icon{display:grid;place-items:center;width:32px;height:32px;flex:0 0 auto;border-radius:10px;color:#2f7965;background:#dff3eb}.practice-reminder>span:nth-child(2){display:flex;flex-direction:column;min-width:0}.practice-reminder strong{color:#235847;font-size:.84rem}.practice-reminder small{overflow:hidden;color:#587168;font-size:.73rem;text-overflow:ellipsis;white-space:nowrap}.practice-reminder button{display:inline-flex;align-items:center;gap:.35rem;margin-inline-start:auto;padding:.55rem .75rem;border:0;border-radius:10px;color:#fff;background:#347f6b;font:inherit;font-size:.78rem;font-weight:var(--font-weight-heading, 700);cursor:pointer}[dir=rtl] .practice-reminder button svg{transform:scaleX(-1)}.practice-reminder-actions{display:flex;align-items:center;gap:8px;margin-inline-start:auto;flex-shrink:0}.practice-reminder-actions button{min-height:44px;margin-inline-start:0;border-radius:var(--radius-control)}.practice-reminder-actions .practice-reset-button{color:var(--teach-action-soft-text);background:var(--teach-green-soft);border:1px solid var(--line)}.practice-reset-dialog.practice-limit-dialog{box-sizing:border-box;border-radius:20px;color:var(--text);background:var(--surface-card)}.practice-reset-dialog .practice-dialog-actions button{min-height:44px}.practice-reset-dialog p[role=alert]{margin-top:16px;color:var(--rose)}.practice-dialog-backdrop{position:fixed;z-index:10000;inset:0;display:grid;place-items:center;padding:1rem;background:#1427217a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.practice-limit-dialog{position:relative;width:min(460px,100%);padding:1.5rem;border-radius:22px;background:var(--surface-card, #fff);box-shadow:0 28px 80px #0d221b40;text-align:center}.practice-limit-dialog h2{margin:.75rem 0 .5rem;color:var(--text-strong, #213b33);font-size:1.35rem}.practice-limit-dialog p{margin:0 auto;max-width:38ch;color:var(--text-muted, #65736e);line-height:1.55}.practice-limit-icon{display:grid;place-items:center;width:52px;height:52px;margin:0 auto;border-radius:16px;color:#337a67;background:#e2f4ed}.practice-dialog-close{position:absolute;inset-block-start:.7rem;inset-inline-end:.7rem;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;color:var(--text-muted, #65736e);background:transparent;cursor:pointer}.practice-dialog-actions{display:flex;flex-direction:column;gap:.55rem;margin-top:1.2rem}.practice-dialog-actions button{justify-content:center;min-height:42px}.practice-disabled-note{display:flex;align-items:center;gap:.55rem;padding:.75rem .9rem;border:1px solid rgba(59,134,112,.18);border-radius:12px;color:#4f6d63;background:#f2faf7;font-size:.82rem}.practice-login-cta{width:100%;min-height:48px;justify-content:center}.practice-login-hint{margin:-.2rem 0 .35rem;color:var(--text-muted, #65736e);font-size:.78rem;line-height:1.45;text-align:center}@media(max-width:700px){.practice-welcome{padding:.65rem;place-items:start center}.practice-welcome-card{padding:1rem;border-radius:20px}.practice-welcome-hero{align-items:flex-start}.practice-welcome-mark{width:48px;height:48px;flex-basis:48px;border-radius:14px}.practice-welcome-actions{grid-template-columns:1fr}.practice-welcome-actions .quiet-button{grid-column:auto}.practice-reminder{position:relative;top:auto;flex-wrap:wrap;margin:.65rem .65rem .2rem}.practice-reminder>span:nth-child(2){flex:1}.practice-reminder-actions{width:100%}.practice-reminder button{width:100%;justify-content:center}}@media(max-width:380px){.practice-welcome{padding:.4rem}.practice-welcome-card{padding:.85rem}.practice-welcome-hero{gap:.7rem}.practice-welcome-hero h1{font-size:1.55rem}.practice-turnstile{margin-inline:-.2rem}}.practice-welcome .practice-welcome-card{max-width:600px}.practice-welcome .practice-welcome-hero h1{font-size:clamp(26px,4vw,34px)}.practice-details{margin-block:16px;color:var(--text-muted)}.practice-details summary{cursor:pointer;min-height:44px;padding-block:12px;box-sizing:border-box}.practice-welcome-actions .secondary-button{min-height:44px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text)}.practice-welcome .practice-welcome-actions{display:grid;grid-template-columns:1fr}.calendar-proposal-panel-toggle{width:100%;min-height:58px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 12px;border:0;background:transparent;color:inherit;text-align:start;cursor:pointer}.calendar-proposal-panel-toggle>span:first-child{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--surface-muted-band);color:var(--muted)}.calendar-proposal-panel-toggle>span:nth-child(2){min-width:0;display:grid;gap:2px}.calendar-proposal-panel-toggle small{color:var(--muted);font-size:11px}.calendar-proposal-panel-toggle>svg{transition:transform .15s ease}.calendar-proposal-panel-toggle[aria-expanded=true]>svg{transform:rotate(180deg)}.calendar-chip[data-status=cancelled]:not(.google-external-chip){box-shadow:none}.month-cell-item[data-status=cancelled]{border-inline-start-width:1px}.quick-booking-sheet{place-items:start center;overflow-y:auto;overscroll-behavior:contain}body[data-app-layout-mode=phone] .assignment-card.quick-booking-card{height:auto;max-height:none;grid-template-rows:none;align-content:start;margin-block:auto;overflow:visible}body[data-app-layout-mode=phone] .quick-booking-card>.assignment-list,body[data-app-layout-mode=phone] .quick-booking-card>.assignment-inquiry-grid,body[data-app-layout-mode=phone] .quick-booking-card .compact-calendar-student-picker{max-height:none;overflow:visible;overscroll-behavior:auto;scrollbar-gutter:auto}.quick-booking-card .assignment-group-options{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.quick-booking-card .assignment-group{align-content:start;min-height:72px}.quick-booking-card .assignment-group>small{display:none}.quick-booking-card .assignment-footer{flex-wrap:wrap;justify-content:flex-end}.teaching-blocks-page .teaching-library-filter-panel{grid-template-columns:max-content max-content minmax(280px,1fr) auto;grid-template-areas:"title count search clear" "filters filters filters filters";align-items:center;gap:10px 12px;min-height:0}.teaching-blocks-page .teaching-library-filter-panel>.teaching-filter-count{align-self:center;justify-self:start;min-height:30px;padding-inline:10px;white-space:nowrap}.teaching-activity-favorites-filter{width:auto;min-width:108px;min-height:38px;display:inline-flex;align-items:center;justify-content:center;justify-self:end;gap:7px;padding-inline:12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);font:inherit;font-size:13px;font-weight:600;white-space:nowrap;cursor:pointer}.teaching-activity-favorites-filter.is-active,.teaching-template-star-action.is-starred{border-color:color-mix(in srgb,#d79a16 55%,var(--line));background:color-mix(in srgb,#f5bd3c 15%,var(--surface-card));color:#9a6500}.teaching-activity-create-dialog{width:min(1100px,calc(100vw - 48px));height:min(820px,calc(100dvh - 48px));display:block;overflow-y:auto;padding:22px}.teaching-activity-create-dialog .teaching-activities-library-composer{margin:0;border:0;box-shadow:none}@media(min-width:761px){.teaching-activity-detail-dialog.is-editing{width:min(1240px,calc(100vw - 48px));height:min(880px,calc(100dvh - 48px))}.teaching-activity-detail-dialog.is-editing .teaching-activity-editor-workspace,.teaching-activity-detail-dialog.is-editing .teaching-activity-editor-main{overflow:hidden}.teaching-activity-detail-dialog.is-editing .teaching-activity-editor-main{grid-template-rows:minmax(320px,1fr) auto;gap:14px;padding-block:16px}.teaching-activity-detail-dialog.is-editing .teaching-library-attached-resources{max-height:236px;overflow-y:auto}}.teaching-upcoming-list-simple{gap:0;padding:0;border:0;background:transparent;box-shadow:none}.teaching-upcoming-list-simple .teaching-upcoming-card{border-width:0 0 1px;border-radius:0;padding-inline:0;background:transparent;box-shadow:none}.student-messages-section,.student-messages-layout,.student-message-history{border:0;border-radius:0;padding:0;background:transparent;box-shadow:none}.student-message-date-group>div{gap:0}.student-message-date-group .student-message-history-item{border-width:0 0 1px;border-radius:0;text-align:start;background:transparent;box-shadow:none}.student-message-date-group .student-message-history-summary,.student-message-date-group .student-message-history-body{padding-inline-start:0}.learning-notebook-document,.learning-notebook-document>header,.learning-notebook-document-section,.learning-notebook-activity-list article,.learning-notebook-review-item{border-radius:0;box-shadow:none}.learning-notebook-document{border:0;background:transparent}.learning-notebook-document>header{justify-content:flex-end;border:0;padding-inline:0;background:transparent}.learning-notebook-attendance{padding:0;border:0;background:transparent}.parent-message-hub{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.parent-message-hub-toolbar{padding:10px 16px;border-inline-end:0;border-bottom:1px solid var(--line);flex-direction:row;align-items:center;gap:12px}.parent-message-hub-title{display:none}.parent-message-hub-toolbar nav{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.parent-message-hub-toolbar nav button{min-height:46px;justify-content:center;padding:7px 10px}.parent-message-hub-toolbar nav button.active{border-color:var(--selection-control-border, var(--teach-green));background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text));box-shadow:none}.parent-message-hub-toolbar nav button.active svg,.parent-message-hub-toolbar nav button.active small{color:currentColor}.parent-message-hub-content{padding:16px}.parent-message-page-header{min-height:32px;margin-bottom:8px;align-items:center}.parent-message-studio .parent-message-page-header h1{font-size:22px!important}.parent-message-composer-header-actions{margin-inline-start:auto;flex-wrap:wrap;justify-content:flex-end}.parent-message-text-highlight,.parent-message-textarea textarea{min-height:420px;height:auto;overflow:hidden}.parent-message-textarea textarea{resize:none}.parent-message-actions{padding-inline:14px}.parent-message-history-page-item{grid-template-columns:minmax(0,1fr) auto;min-height:118px;padding:16px}.parent-message-history-page-heading strong{font-size:16px}.parent-message-history-page-heading time{font-size:13px}.parent-message-history-page-main .parent-message-history-copy{font-size:14px;line-height:1.5}.parent-message-templates-page{display:grid;align-content:start;gap:16px}.parent-message-templates-page>header h1{margin:0;font-size:26px}.parent-message-templates-page>header p{max-width:760px;margin:5px 0 0;color:var(--muted);line-height:1.55}.parent-message-template-marker-help{max-width:760px;margin:0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--teach-action) 22%,var(--line));border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text);display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.5}.parent-message-template-marker-help svg{flex:0 0 auto;margin-top:2px}.parent-message-template-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px}.parent-message-template-list article{min-width:0;display:grid;gap:12px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.parent-message-template-list article>header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.parent-message-template-list article>header strong,.parent-message-template-list article>header small{display:block}.parent-message-template-list article>header strong{font-size:16px}.parent-message-template-list article>header small{margin-top:3px;color:var(--muted);font-size:12px;line-height:1.4}.parent-message-template-card-grid{min-width:0;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:12px}.parent-message-template-card-grid>label{min-width:0;display:grid;align-content:start;gap:6px}.parent-message-template-card-grid>label>span,.parent-message-template-card-grid>section>strong{color:var(--text);font-size:12px;font-weight:var(--font-weight-label)}.parent-message-template-list textarea{width:100%;min-height:118px;max-height:none;overflow-y:hidden;padding:10px 11px;border:1px solid var(--line);border-radius:var(--radius-control);outline:none;background:var(--surface-input);color:var(--text);font:inherit;font-size:14px;line-height:1.55;resize:none}.parent-message-template-list textarea:focus{border-color:var(--teach-action);box-shadow:0 0 0 3px color-mix(in srgb,var(--teach-action) 12%,transparent)}.parent-message-template-card-grid>section{min-width:0;padding:10px 11px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-soft)}.parent-message-template-card-grid>section>p{max-height:none;margin:7px 0 0;overflow:visible;color:var(--text);font-size:14px;line-height:1.55;white-space:pre-wrap}.parent-message-template-list article>footer{padding-top:2px;display:flex;align-items:center;justify-content:flex-end;gap:8px}.parent-message-template-list article>footer button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding-inline:12px;border:1px solid var(--teach-green-mid);border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text);font:inherit;font-size:12px;font-weight:var(--font-weight-label)}.parent-message-template-list article>footer .parent-message-template-reset{border-color:var(--line);background:var(--surface-input);color:var(--muted)}.parent-message-template-list article>footer button:disabled{opacity:.48}.parent-message-ai-backdrop{position:fixed;inset:0;z-index:calc(var(--z-dialog, 1000) + 3);display:grid;place-items:center;padding:20px;background:#0f172a61}.parent-message-ai-dialog{width:min(920px,calc(100vw - 40px));max-height:calc(100dvh - 40px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sheet);background:var(--surface-panel-strong);box-shadow:var(--shadow-dialog)}.parent-message-ai-dialog>header,.parent-message-ai-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px}.parent-message-ai-dialog>header{border-bottom:1px solid var(--line)}.parent-message-ai-dialog>header h2{margin:2px 0 0;font-size:20px}.parent-message-ai-dialog>header>button{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--surface-card);color:var(--text)}.parent-message-ai-dialog>footer{justify-content:flex-end;border-top:1px solid var(--line)}.parent-message-ai-comparison{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px;overflow-y:auto}.parent-message-ai-comparison section{min-width:0;padding:14px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-input)}.parent-message-ai-comparison h3{margin:0 0 8px;font-size:14px}.parent-message-ai-comparison p{margin:0;line-height:1.65;white-space:pre-wrap}.parent-message-ai-comparison mark{border-radius:3px;padding-inline:2px;background:color-mix(in srgb,#f5bd3c 34%,var(--surface-card));color:inherit}.parent-message-summary-dialog{width:min(760px,calc(100vw - 40px))}.parent-message-summary-review{min-height:0;padding:18px;overflow-y:auto;display:grid;gap:14px}.parent-message-summary-review>section{padding:13px 14px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-soft)}.parent-message-summary-review>section>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.parent-message-summary-review h3{margin:0;font-size:14px}.parent-message-summary-review>section span{padding:3px 7px;border-radius:999px;background:var(--surface-card);color:var(--muted);font-size:10px;font-weight:var(--font-weight-label)}.parent-message-summary-review>section p{margin:9px 0 0;color:var(--muted);line-height:1.6;white-space:pre-wrap}.parent-message-summary-review>label{display:grid;gap:7px}.parent-message-summary-review>label>span strong,.parent-message-summary-review>label>span small{display:block}.parent-message-summary-review>label>span strong{font-size:14px}.parent-message-summary-review>label>span small{margin-top:3px;color:var(--muted);font-size:12px}.parent-message-summary-review textarea{width:100%;min-height:132px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-control);outline:none;background:var(--surface-input);color:var(--text);font:inherit;line-height:1.6;resize:vertical}.parent-message-summary-review textarea:focus{border-color:var(--teach-action);box-shadow:0 0 0 3px color-mix(in srgb,var(--teach-action) 12%,transparent)}.parent-message-summary-review>p{margin:0;color:var(--muted);display:flex;align-items:flex-start;gap:7px;font-size:11px;line-height:1.45}.parent-message-summary-review>p svg{flex:0 0 auto;margin-top:1px}.payment-shared-sort-control{width:min(340px,100%);box-sizing:border-box;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-muted-band, var(--surface-card));color:var(--muted);font-size:13px}.payment-shared-sort-control .payment-debt-sort-options{width:100%;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:3px;border-radius:var(--radius-control);background:var(--surface-input)}.payment-shared-sort-control .payment-debt-sort-option{min-width:0;min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 10px;border:1px solid transparent;border-radius:calc(var(--radius-control) - 3px);background:transparent;color:var(--text);font:inherit;font-weight:var(--font-weight-label, 500)}.payment-shared-sort-control .payment-debt-sort-option.active{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.payments-page .payment-section>.payment-shared-sort-control{margin-bottom:10px}.payment-filter-row>.payment-history-filter-controls{grid-template-columns:minmax(150px,1fr) minmax(120px,155px) minmax(120px,155px) auto minmax(240px,300px)}.payment-history-filter-controls .payment-shared-sort-control{width:100%}.payment-statistics-period-field{width:min(280px,100%)}.payment-statistics-period-field .payment-history-period-picker{width:100%}.payment-statistics-period-field .payment-history-period-trigger{min-height:44px;padding-inline:13px;font-size:14px}@media(min-width:761px){body:not([data-app-layout-mode=phone]) .teaching-library-detail-modal.teaching-resource-detail-dialog{width:min(1240px,calc((100vw * var(--app-display-scale-inverse, 1)) - 28px));height:min(780px,calc((100dvh * var(--app-display-scale-inverse, 1)) - 28px));max-height:calc((100dvh * var(--app-display-scale-inverse, 1)) - 28px)}.teaching-resource-detail-dialog .teaching-library-detail-header{padding:8px 18px}.teaching-resource-detail-dialog .teaching-library-detail-header h2{margin:0 0 2px;font-size:18px}.teaching-resource-detail-dialog .teaching-library-detail-header small{font-size:11px}.teaching-resource-detail-dialog .teaching-resource-reading-body{height:100%;min-height:0;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);grid-template-areas:"metadata preview";gap:12px;align-content:stretch;align-items:stretch;overflow:hidden;padding:12px 18px}.teaching-resource-detail-dialog .teaching-resource-detail-preview{grid-area:preview;height:100%;min-height:0;align-self:stretch}.teaching-resource-detail-dialog .teaching-resource-detail-preview .teaching-resource-preview-stage{place-items:center}.teaching-resource-detail-dialog .teaching-resource-preview-stage.is-website-preview .teaching-resource-preview-image{width:min(calc(100cqw - 24px),calc((100cqh - 24px) * .70710678));height:min(calc((100cqw - 24px) * 1.41421356),calc(100cqh - 24px))}.teaching-resource-detail-dialog .teaching-resource-detail-metadata{grid-area:metadata;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto;gap:9px;align-content:stretch;overflow:hidden;overflow-x:hidden;padding-inline-end:0}.teaching-resource-detail-dialog .teaching-resource-dialog-primary-fields{gap:10px}.teaching-resource-detail-dialog .teaching-resource-note-field{gap:4px}.teaching-resource-detail-dialog .teaching-resource-note-field textarea{min-height:132px;height:auto;max-height:none;overflow-y:hidden;resize:none}.teaching-resource-detail-dialog .teaching-resource-tags-field>summary{min-height:38px;padding:6px 10px}.teaching-resource-detail-dialog .teaching-resource-dialog-classification{gap:0;padding-top:0;border-top:0}.teaching-resource-detail-dialog .teaching-resource-classification-editor{gap:8px;padding:8px}.teaching-resource-detail-dialog .teaching-resource-dialog-taxonomy{gap:8px}.teaching-resource-detail-dialog .teaching-library-detail-footer{padding:8px 18px}.teaching-resource-detail-dialog .teaching-resource-preview-open{min-height:36px;padding-block:6px}}.teaching-resource-detail-dialog .teaching-resource-detail-metadata>*,.teaching-resource-detail-dialog .teaching-resource-dialog-primary-fields>label,.teaching-resource-detail-dialog .teaching-resource-dialog-primary-fields input,.teaching-resource-detail-dialog .teaching-resource-dialog-taxonomy,.teaching-resource-detail-dialog .teaching-resource-dialog-taxonomy>*,.teaching-resource-detail-dialog .resource-taxonomy-fields,.teaching-resource-detail-dialog .resource-taxonomy-fields>*{min-width:0}.teaching-library-detail-modal.student-file-resource-detail-dialog{grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;overscroll-behavior:contain}.student-file-resource-detail-dialog .teaching-resource-reading-body{height:100%;min-height:0;align-items:stretch;overflow:hidden}.student-file-resource-detail-dialog .teaching-resource-detail-preview{height:100%;min-height:0;align-self:stretch;overflow:hidden}.student-file-resource-detail-dialog .teaching-resource-preview-stage{height:100%;min-height:0;box-sizing:border-box;overflow:hidden;container-type:size}.student-file-resource-detail-dialog .teaching-resource-preview-image{width:auto;max-width:calc(100cqw - 40px);max-height:calc(100cqh - 40px)}.student-file-resource-detail-dialog .teaching-resource-preview-frame{min-height:0}.student-file-resource-detail-dialog .teaching-resource-detail-metadata{grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;padding-inline-end:0}.student-file-resource-detail-dialog .teaching-resource-note-field textarea{height:auto;min-height:132px;overflow-y:hidden;resize:none}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.student-file-resource-detail-dialog .teaching-resource-reading-body{grid-template-rows:auto auto}.student-file-resource-detail-dialog .teaching-resource-preview-stage.is-image{padding:12px}}body[data-app-layout-mode=phone] .student-file-resource-detail-dialog .teaching-resource-reading-body{grid-template-rows:auto auto;height:auto;overflow:visible}body[data-app-layout-mode=phone] .teaching-library-detail-modal.student-file-resource-detail-dialog{grid-template-rows:auto max-content auto;overflow-y:auto}body[data-app-layout-mode=phone] .student-file-resource-detail-dialog .teaching-resource-detail-preview,body[data-app-layout-mode=phone] .student-file-resource-detail-dialog .teaching-resource-preview-stage{height:auto;overflow:visible}body[data-app-layout-mode=phone] .student-file-resource-detail-dialog .teaching-resource-preview-stage{container-type:inline-size}body[data-app-layout-mode=phone] .student-file-resource-detail-dialog .teaching-resource-preview-image{width:100%;max-height:none}body[data-app-layout-mode=phone] .student-file-resource-detail-dialog .teaching-resource-preview-frame{min-height:60dvh}body[data-app-layout-mode=phone] .student-file-resource-detail-dialog .teaching-resource-detail-metadata{grid-template-rows:auto;overflow:visible}body[data-app-layout-mode=phone] .student-file-resource-detail-dialog .teaching-resource-preview-stage.is-image{padding:12px}.teaching-resource-detail-dialog .teaching-resource-dialog-taxonomy{grid-template-columns:minmax(0,1fr) minmax(132px,.28fr);gap:10px}.teaching-resource-tags-field{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card)}.teaching-resource-tags-field>summary{min-height:42px;display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:8px;padding:8px 12px;color:var(--text);cursor:pointer;list-style:none}.teaching-resource-tags-field>summary::-webkit-details-marker{display:none}.teaching-resource-tags-field>summary small{color:var(--muted);font-size:12px}.teaching-resource-tags-field>summary svg{transition:transform .16s ease}.teaching-resource-tags-field[open]>summary svg{transform:rotate(180deg)}.teaching-resource-tags-field>.resource-tag-picker{padding:0 12px 12px;border-top:1px solid var(--line)}.teaching-resource-activity-modal{width:min(760px,calc(100vw - 32px));height:min(680px,calc((100dvh * var(--app-display-scale-inverse, 1)) - 44px));max-height:calc((100dvh * var(--app-display-scale-inverse, 1)) - 44px)}.teaching-resource-activity-modal>.teaching-target-content,.teaching-resource-activity-modal .teaching-resource-activity-list{min-height:0}.teaching-resource-activity-modal>.teaching-search-field{margin:0 18px}.teaching-resource-activity-modal>header .app-icon-button{width:44px;min-width:44px;height:44px;min-height:44px}.teaching-resource-activity-filters{margin:0 18px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card)}.teaching-resource-activity-filters>summary{min-height:44px;display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;list-style:none}.teaching-resource-activity-filters>summary::-webkit-details-marker{display:none}.teaching-resource-activity-filters>summary>span{display:inline-flex;align-items:center;gap:8px;color:var(--text);font-weight:var(--font-weight-label)}.teaching-resource-activity-filters>summary>small{color:var(--muted);font-size:12px}.teaching-resource-activity-filters>summary>svg{transition:transform .16s ease}.teaching-resource-activity-filters[open]>summary>svg{transform:rotate(180deg)}.teaching-resource-activity-filters>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 10px 10px;border-top:1px solid var(--line)}.teaching-resource-activity-filters>div>*{min-width:0;margin-top:10px}.teaching-resource-activity-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:11px 12px;border-bottom:1px solid var(--line)}.teaching-resource-activity-list article>div{min-width:0;display:grid;gap:4px}.teaching-resource-activity-list article small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.teaching-resource-activity-list article>button{min-height:36px;display:inline-flex;align-items:center;gap:6px;padding-inline:11px;border:1px solid var(--teach-green-mid);border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teaching-resource-activity-list article>button.added{border-color:var(--line);background:var(--surface-muted-band);color:var(--muted)}.teacher-diary-selected-resources>span{display:inline-flex;align-items:center}.teacher-diary-resource-open{min-width:0;display:inline-flex;align-items:center;gap:6px}.teacher-diary-resource-preview,.teacher-diary-resource-remove{flex:0 0 auto;display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:50%;background:transparent;color:var(--muted)}.teacher-diary-resource-preview:hover{background:var(--teach-green-soft);color:var(--teach-green)}.student-color-picker-trigger{width:44px;height:44px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card)}.student-color-picker-trigger .student-color-dot{width:26px;height:26px;border-radius:7px;background:var(--student-color);box-shadow:none}.student-color-confirm-picker.student-color-options-portal{width:min(340px,calc(100vw - 32px));display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel-strong, #fff);box-shadow:var(--shadow-sheet, 0 16px 46px rgb(15 23 42 / 22%))}.student-color-confirm-picker .student-color-choice-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.student-color-confirm-picker .student-color-choice-grid>button{width:auto;min-width:0;height:44px;min-height:44px;display:grid;place-items:center;border:2px solid transparent;border-radius:9px;padding:0;background:transparent}.student-color-confirm-picker .student-color-choice-grid>button .student-color-dot{width:26px;height:26px;border-radius:7px;background:var(--student-color);box-shadow:none}.student-color-confirm-picker .student-color-choice-grid>button.selected{border-color:var(--text);background:var(--surface-muted-band)}.student-color-custom-choice{min-width:0;display:grid;gap:8px;color:var(--text)}.student-color-custom-choice>header{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;font-weight:var(--font-weight-label)}.student-color-custom-choice>header code{color:var(--muted);font-size:12px;font-weight:500}.student-color-spectrum{position:relative;height:174px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-control);background:linear-gradient(to top,#000,transparent),linear-gradient(to right,#fff,transparent),hsl(var(--picker-hue) 100% 50%);cursor:crosshair;touch-action:none}.student-color-spectrum>span{position:absolute;left:var(--picker-x);top:var(--picker-y);width:20px;height:20px;border:3px solid #fff;border-radius:50%;background:transparent;box-shadow:0 0 0 1px #0f172a99,0 2px 6px #0f172a3d;transform:translate(-50%,-50%);pointer-events:none}.student-color-spectrum:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 28%,transparent);outline-offset:2px}.student-color-hue{position:relative;height:44px;border-radius:var(--radius-control);cursor:pointer;touch-action:none}.student-color-hue:before{position:absolute;inset:14px 0;border:1px solid var(--line);border-radius:999px;background:linear-gradient(to right,red,#ff0,#0f0,#0ff,#00f,#f0f,red);content:""}.student-color-hue>span{position:absolute;left:var(--picker-hue-x);top:50%;width:20px;height:28px;border:3px solid #fff;border-radius:999px;background:transparent;box-shadow:0 0 0 1px #0f172a99,0 2px 6px #0f172a3d;transform:translate(-50%,-50%);pointer-events:none}.student-color-hue:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 28%,transparent);outline-offset:2px}.student-color-confirm-picker>footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:2px}.student-color-confirm-picker>footer button{width:100%;min-width:0;height:44px;min-height:44px;padding-inline:12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);font:inherit;font-weight:var(--font-weight-label)}.student-color-confirm-picker>footer button.primary-button{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}body[data-app-layout-mode=phone] .contact-student-summary-row{grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .contact-student-summary-actions{justify-content:flex-end;flex-wrap:wrap}body[data-app-layout-mode=phone] .student-summary-strip.contact-student-summary-strip{grid-template-columns:minmax(0,1fr) 72px}body[data-app-layout-mode=phone] .contact-student-summary-strip :is(.contact-student-class-summary,.contact-student-grade-summary,.contact-student-status-summary){grid-column:1 / -1}body[data-app-layout-mode=phone] .contact-student-summary-strip .contact-student-grade-summary{grid-row:2}body[data-app-layout-mode=phone] .contact-student-summary-strip .contact-student-price-summary{grid-column:1;grid-row:3}body[data-app-layout-mode=phone] .contact-student-summary-strip .contact-student-color-summary{grid-column:2;grid-row:3;min-height:64px}body[data-app-layout-mode=phone] .contact-student-summary-strip .contact-student-status-summary{grid-row:4;min-height:60px}@media(max-height:450px){.student-color-confirm-picker.student-color-options-portal{gap:8px;padding:10px}.student-color-spectrum{height:108px}}.teaching-current-plan .teaching-block-card>header>.teaching-card-icon.compact{width:72px;min-width:72px;flex:0 0 72px}.teaching-current-plan .teaching-activity-order-control{width:72px}.teaching-current-plan .teaching-block-card>header>strong{min-width:0;flex:1 1 auto}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page .teaching-template-compact-row>.teaching-template-compact-line{gap:0;padding-inline-start:7px;padding-inline-end:1px}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page .teaching-template-compact-actions{gap:0}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page button.teaching-template-compact-toggle{grid-template-columns:minmax(0,1fr);gap:0}.teaching-resource-readonly-backdrop,body[data-app-layout-mode=phone] .teaching-resource-readonly-backdrop{z-index:calc(var(--z-dialog, 1000) + 2)}.teaching-resource-detail-dialog.is-read-only :is(input[readonly],textarea[readonly]){border-color:var(--line);background:var(--surface-muted-band);color:var(--text);cursor:default}.teaching-resource-readonly-tags{display:grid;gap:7px}.teaching-resource-readonly-tags>strong{font-size:12px}.teaching-resource-readonly-tags>div{display:flex;flex-wrap:wrap;gap:6px}.teaching-resource-readonly-tags>div>span{padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface-card);color:var(--muted);font-size:11px}.teaching-resource-readonly-classification{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.teaching-resource-readonly-classification>div{min-width:0;display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card)}.teaching-resource-readonly-classification span{color:var(--muted);font-size:11px}.teaching-resource-readonly-classification strong{overflow-wrap:anywhere;font-size:13px}body[data-app-layout-mode=phone] .teaching-resource-readonly-classification{grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .parent-message-student-toggle strong,.app-shell[data-layout-mode=phone] .parent-message-student-toggle strong{font-size:14px}body[data-app-layout-mode=phone] .parent-message-student-toggle small,.app-shell[data-layout-mode=phone] .parent-message-student-toggle small{font-size:12px}button.teaching-resource-picker-identity{width:100%;min-height:44px;padding:0;border:0;border-radius:var(--radius-control);background:transparent;color:var(--text);font:inherit;text-align:start;cursor:pointer}button.teaching-resource-picker-identity:hover{background:var(--teach-green-soft)}button.teaching-resource-picker-identity:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-action) 28%,transparent);outline-offset:2px}.teaching-resource-picker-actions{grid-template-columns:var(--button-standard-h, 36px);gap:0}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-attachment-resource-picker .teaching-resource-pick-row{grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:6px}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .resource-source-list .teaching-resource-pick-row{grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:6px}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .resource-source-row-actions{justify-self:end}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-resource-picker-actions{grid-template-columns:44px;justify-self:end}.teaching-resource-picker-body .teaching-modal-filters{background:var(--surface-card)}.teaching-template-editor-footer,.parent-message-composer-header-actions{direction:inherit}@media(max-width:760px){.teaching-blocks-page .teaching-library-filter-panel{grid-template-columns:minmax(0,1fr);grid-template-areas:none}.teaching-blocks-page .teaching-library-filter-panel>.teaching-filter-buttons{grid-template-columns:1fr}.teaching-blocks-page .teaching-library-filter-panel>.teaching-filter-count{justify-self:end}.teaching-activity-favorites-filter{justify-self:start}.teaching-activity-create-dialog,.teaching-activity-detail-dialog.is-editing{width:100vw;height:100dvh;max-height:100dvh;padding:12px;border-radius:0}.teaching-resource-activity-modal{height:calc(100dvh - 20px);max-height:calc(100dvh - 20px)}.teaching-resource-activity-modal>.teaching-search-field,.teaching-resource-activity-filters{margin-inline:0}.teaching-resource-activity-filters>div{grid-template-columns:1fr}.parent-message-hub-toolbar{padding:8px}.parent-message-hub-toolbar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-message-hub-toolbar nav button{justify-content:flex-start}.parent-message-composer-header-actions{width:100%;justify-content:stretch}.parent-message-composer-header-actions>button{flex:1 1 auto}.parent-message-ai-comparison,.parent-message-template-list,.parent-message-template-card-grid{grid-template-columns:1fr}.parent-message-templates-page{gap:13px}.parent-message-templates-page>header h1{font-size:25px}.parent-message-templates-page>header p,.parent-message-template-marker-help{font-size:14px}.parent-message-template-list article{gap:10px;padding:12px}.parent-message-template-list article>header strong{font-size:17px}.parent-message-template-list article>header small{font-size:13px}.parent-message-template-card-grid{gap:8px}.parent-message-template-card-grid>label>span,.parent-message-template-card-grid>section>strong{font-size:14px}.parent-message-template-card-grid>section{padding:10px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}.parent-message-template-list textarea,.parent-message-template-card-grid>section>p{font-size:15px}.parent-message-template-list article>footer{align-items:stretch;flex-direction:column-reverse}.parent-message-template-list article>footer button{width:100%}.parent-message-summary-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.parent-message-summary-review>section>div{align-items:flex-start;flex-direction:column}.payment-shared-sort-control{width:100%}}body[data-app-layout-mode=phone] .teaching-library-filter-panel{gap:8px;padding:10px}body[data-app-layout-mode=phone] .teaching-library-mobile-toolbar,body[data-app-layout-mode=phone] .teaching-activity-mobile-filter-toolbar{width:100%;min-width:0;display:grid;align-items:stretch;gap:8px}body[data-app-layout-mode=phone] .teaching-library-mobile-toolbar{grid-template-columns:minmax(0,1fr) 52px 52px}body[data-app-layout-mode=phone] .teaching-activity-mobile-filter-toolbar{grid-template-columns:minmax(0,1fr) 52px}body[data-app-layout-mode=phone] :is(.teaching-library-mobile-toolbar,.teaching-activity-mobile-filter-toolbar) .teaching-search-field{width:100%;min-width:0;height:52px;min-height:52px;grid-column:auto}.teaching-active-filter-row{width:100%;min-width:0;display:flex;align-items:center;gap:6px;overflow-x:auto;overscroll-behavior-inline:contain;padding:0 2px 2px;scrollbar-width:none}.teaching-active-filter-row::-webkit-scrollbar{display:none}.teaching-active-filter-row__count{flex:0 0 auto;margin-inline-start:auto;color:var(--muted);font-size:12px;white-space:nowrap}.teaching-mobile-filter-sheet-fields,.teaching-mobile-filter-sheet-field{min-width:0;display:grid;gap:6px}.teaching-mobile-filter-sheet-fields{gap:12px}.teaching-mobile-filter-sheet-field>span,.teaching-mobile-filter-sheet-fields .resource-taxonomy-field>span,.teaching-mobile-filter-sheet-fields .activity-duration-filter-field>span{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.teaching-resource-mobile-sheet-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.teaching-resource-mobile-sheet-fields>.teaching-mobile-filter-sheet-sort{grid-column:1 / -1}.teaching-mobile-filter-taxonomy{grid-template-columns:repeat(2,minmax(0,1fr))}.teaching-mobile-filter-taxonomy>.resource-taxonomy-field:nth-child(3){grid-column:1 / -1}.teaching-mobile-filter-sheet-secondary{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:8px}.teaching-mobile-filter-sheet-secondary .activity-duration-filter-field{min-width:0}body .teaching-mobile-filter-sheet-favorite{width:100%;min-width:0;min-height:44px;justify-self:stretch;padding:7px 9px;white-space:normal}.teaching-mobile-filter-sheet-fields .app-dropdown-trigger{min-height:44px}@media(max-width:360px){.teaching-resource-mobile-sheet-fields,.teaching-mobile-filter-sheet-secondary,.teaching-mobile-filter-taxonomy{gap:7px}}@media(prefers-reduced-motion:reduce){.calendar-proposal-panel-toggle>svg{transition:none}}@media(max-width:700px){body[data-app-layout-mode=phone] .payments-page .payments-tabs,.app-shell[data-layout-mode=phone] .payments-page .payments-tabs{min-height:52px;margin-top:10px}body[data-app-layout-mode=phone] .payments-page .payments-tabs button,.app-shell[data-layout-mode=phone] .payments-page .payments-tabs button{min-height:44px;font-size:12px;font-weight:var(--font-weight-emphasis, 600)}body[data-app-layout-mode=phone] .payments-page .payment-history-section,body[data-app-layout-mode=phone] .payments-page .payment-statistics-section,.app-shell[data-layout-mode=phone] .payments-page .payment-history-section,.app-shell[data-layout-mode=phone] .payments-page .payment-statistics-section{gap:12px;margin-top:12px;padding-bottom:20px}body[data-app-layout-mode=phone] .payments-page .payment-history-heading,body[data-app-layout-mode=phone] .payments-page .payment-statistics-heading,.app-shell[data-layout-mode=phone] .payments-page .payment-history-heading,.app-shell[data-layout-mode=phone] .payments-page .payment-statistics-heading{gap:12px;border:1px solid var(--line);border-radius:var(--radius-panel);padding:14px;background:var(--surface-card)}body[data-app-layout-mode=phone] .payments-page .payment-history-heading h2,body[data-app-layout-mode=phone] .payments-page .payment-statistics-heading h2,.app-shell[data-layout-mode=phone] .payments-page .payment-history-heading h2,.app-shell[data-layout-mode=phone] .payments-page .payment-statistics-heading h2{font-size:20px;line-height:1.2}body[data-app-layout-mode=phone] .payments-page .payment-statistics-heading-copy,.app-shell[data-layout-mode=phone] .payments-page .payment-statistics-heading-copy{align-items:flex-start}body[data-app-layout-mode=phone] .payments-page .payment-statistics-heading-copy>span,.app-shell[data-layout-mode=phone] .payments-page .payment-statistics-heading-copy>span{width:46px;height:46px;flex-basis:46px}body[data-app-layout-mode=phone] .payments-page .payment-statistics-heading p,.app-shell[data-layout-mode=phone] .payments-page .payment-statistics-heading p{font-size:13px;line-height:1.45}body[data-app-layout-mode=phone] .payments-page .payment-history-period-summary,.app-shell[data-layout-mode=phone] .payments-page .payment-history-period-summary{gap:10px;border:1px solid var(--line);border-radius:var(--radius-panel);padding:12px;background:var(--surface-card)}body[data-app-layout-mode=phone] .payments-page .payment-statistics-block,.app-shell[data-layout-mode=phone] .payments-page .payment-statistics-block{gap:14px;border:1px solid var(--line);border-radius:var(--radius-panel);padding:14px;background:var(--surface-card)}body[data-app-layout-mode=phone] .payments-page .payment-statistics-block-heading h3,.app-shell[data-layout-mode=phone] .payments-page .payment-statistics-block-heading h3{font-size:17px}body[data-app-layout-mode=phone] .payments-page .payment-income-period-control,.app-shell[data-layout-mode=phone] .payments-page .payment-income-period-control{width:100%;border-bottom:1px solid var(--line);padding-bottom:12px}body[data-app-layout-mode=phone] .payments-page .payment-live-debt-summary .payment-live-debt-primary,body[data-app-layout-mode=phone] .payments-page .payment-live-debt-summary article:last-child,.app-shell[data-layout-mode=phone] .payments-page .payment-live-debt-summary .payment-live-debt-primary,.app-shell[data-layout-mode=phone] .payments-page .payment-live-debt-summary article:last-child{grid-column:1 / -1}body[data-app-layout-mode=phone] .payments-page .payment-statistics-summary article,.app-shell[data-layout-mode=phone] .payments-page .payment-statistics-summary article{min-height:92px;padding:13px}body[data-app-layout-mode=phone] .payments-page .payment-history-section .payment-list,.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-list{gap:8px}body[data-app-layout-mode=phone] .payments-page .payment-history-section .payment-row,.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-row{min-height:58px;padding:9px 11px;border-radius:var(--radius-panel)}}.workspace-identity{display:flex;align-items:center;gap:9px;margin:0 10px 4px;padding:9px 10px;border:1px solid color-mix(in srgb,var(--teach-green) 24%,var(--line));border-radius:var(--radius-card);background:color-mix(in srgb,var(--surface-card) 88%,var(--teach-green-soft))}.workspace-identity>span,.workspace-home-identity>span{flex:0 0 auto;display:grid;place-items:center;width:32px;height:32px;border-radius:10px;color:#fff;background:var(--teach-green, #286b58);font-size:12px;font-weight:var(--font-weight-heading, 700);letter-spacing:.03em}.workspace-identity>div,.workspace-home-identity>div{min-width:0;display:grid;gap:1px}.workspace-identity strong,.workspace-home-identity strong,.workspace-identity small,.workspace-home-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-identity strong{font-size:12px}.workspace-identity small,.workspace-home-identity small{color:var(--muted);font-size:11px}.workspace-home-identity{position:relative;z-index:1;display:inline-flex;align-items:center;gap:10px;width:fit-content;max-width:100%;padding:9px 12px;border:1px solid color-mix(in srgb,var(--teach-green) 24%,var(--line));border-radius:var(--radius-card);background:color-mix(in srgb,var(--surface-panel-strong) 90%,var(--teach-green-soft));box-shadow:var(--shadow-soft)}[data-managed-workspace=center-teacher] .home-hero .workspace-home-identity{grid-column:1;grid-row:2}.workspace-home-identity strong{font-size:13px}body:not([data-app-layout-mode=phone]) .tool-page.workspace-team-chat-page{width:min(1120px,100%);margin-inline:auto;padding:0}.workspace-team-chat-page{min-height:min(720px,calc(100vh - 64px));display:grid;grid-template-rows:auto minmax(280px,1fr) auto;gap:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel-strong);box-shadow:var(--shadow-panel)}.workspace-team-chat-header{align-items:end;padding:16px 18px;border-bottom:1px solid var(--line)}.workspace-team-chat-header h1,.workspace-team-chat-header span,.workspace-team-chat-thread p{margin:0}.workspace-team-chat-header .app-page-description{color:var(--muted);font-size:12px}.workspace-team-chat-participants{margin-inline-start:auto;display:flex;flex-direction:row-reverse;padding-inline-start:10px}.workspace-team-chat-participants>span{display:grid;place-items:center;width:30px;height:30px;margin-inline-start:-8px;border:2px solid var(--surface-panel-strong);border-radius:50%;color:#fff;font-size:10px;font-weight:var(--font-weight-emphasis, 600)}.workspace-team-chat-thread{display:flex;flex-direction:column;gap:14px;padding:20px;overflow:auto;background:color-mix(in srgb,var(--surface-page) 78%,transparent)}.workspace-team-chat-thread article{display:flex;align-items:flex-end;align-self:flex-end;gap:8px;max-width:min(72%,560px)}.workspace-team-chat-empty{margin:auto;max-inline-size:360px;padding:24px;text-align:center;color:var(--muted)}.workspace-team-chat-empty strong{display:block;margin-block-end:8px;color:var(--text)}.workspace-team-chat-thread article.is-own{align-self:flex-start}.workspace-team-chat-avatar{flex:0 0 auto;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:#fff;font-size:10px;font-weight:var(--font-weight-emphasis, 600)}.workspace-team-chat-thread article>div{display:grid;gap:4px}.workspace-team-chat-thread article strong{padding-inline:3px;font-size:11px}.workspace-team-chat-thread article p{padding:10px 12px;border:1px solid var(--line);border-radius:13px;border-start-start-radius:4px;background:var(--surface-panel-strong);line-height:1.45;white-space:pre-wrap}.workspace-team-chat-thread article.is-own p{border-color:color-mix(in srgb,var(--teach-green) 22%,var(--line));border-start-start-radius:13px;border-start-end-radius:4px;background:var(--teach-green-soft, #e4f2eb)}.workspace-team-chat-thread time{padding-inline:3px;color:var(--muted);font-size:10px}.workspace-team-chat-thread article.is-own time{text-align:end}.workspace-team-chat-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding:14px 16px;border-top:1px solid var(--line)}.workspace-team-chat-composer textarea{width:100%;min-height:44px;max-height:130px;resize:vertical;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-control);color:var(--text);background:var(--surface-input);font:inherit}.workspace-team-chat-composer textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 30%,transparent);outline-offset:1px}@media(max-width:720px){.workspace-identity{display:none}.workspace-home-identity{margin:10px 14px 0}.workspace-team-chat-page{min-height:calc(100dvh - 130px);border-radius:0}.workspace-team-chat-thread article{max-width:88%}.workspace-team-chat-participants{display:none}}.home-dashboard-grid>:is(.home-section,.home-debt-panel){min-width:0;width:100%;height:100%;justify-self:stretch}.home-dashboard-grid>.home-section,.home-dashboard-grid>.home-debt-panel{padding:14px}.home-dashboard-grid .home-action-queue,.home-dashboard-grid .home-next-lesson-card,.home-dashboard-grid .home-debt-panel,.home-dashboard-grid .home-upcoming-section{grid-column:auto;align-content:start}.home-dashboard-grid .home-section-head h2,.home-dashboard-grid .home-next-lesson-head h2,.home-dashboard-grid .home-debt-panel-header h2{font-size:var(--font-section-title, 21px)}.home-dashboard-grid .upcoming-list,.home-dashboard-grid .home-debt-list{align-content:start}.home-dashboard-grid .upcoming-row{min-height:48px}.home-dashboard-grid .home-action-queue .upcoming-row{grid-template-columns:64px 52px minmax(0,1fr) auto;gap:8px}.home-dashboard-grid .home-upcoming-row{grid-template-columns:122px minmax(0,1fr);gap:8px}.home-dashboard-grid .home-debt-panel{gap:10px}.home-dashboard-grid .home-debt-row{min-height:54px;gap:8px;padding-block:6px}.home-dashboard-grid .home-debt-amount{min-width:62px}.home-dashboard-grid .home-debt-actions{gap:6px}.home-dashboard-grid :is(.home-debt-whatsapp,.home-debt-mark-paid){min-height:40px}.home-dashboard-grid .home-debt-whatsapp{width:44px;min-width:44px;height:44px;border-radius:999px}.home-dashboard-grid .home-debt-mark-paid{padding-inline:10px}@container app-canvas (max-width: 960px){.home-dashboard-grid>:is(.home-section,.home-debt-panel){height:auto}}@container app-canvas (max-width: 650px){.home-dashboard-grid .home-debt-row{grid-template-columns:minmax(0,1fr) auto}.home-dashboard-grid .home-debt-actions{grid-column:1 / -1}}.home-page.today-home-page{width:min(1280px,100%);grid-template-columns:minmax(0,1fr);gap:12px;align-content:start}.today-home-page>*{min-width:0;order:initial!important}.today-home-hero{position:relative;min-height:112px;display:grid;align-items:center;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);padding:18px 24px;background:var(--home-hero-bg);box-shadow:var(--shadow-panel)}.today-home-hero:after{content:"";position:absolute;inset-block:-30px;inset-inline-end:12px;width:310px;background:url(/bloomli-home-garden-cutout.webp) center / contain no-repeat;opacity:.54;pointer-events:none}.today-home-hero>div{position:relative;z-index:1;max-width:640px;display:grid;gap:4px}.today-home-hero :is(p,h1,span){margin:0}.today-home-hero p{color:var(--muted);font-size:12px;font-weight:var(--font-weight-heading, 700)}.today-home-hero h1{font-size:clamp(28px,3vw,36px);line-height:1.08}.today-home-hero span{color:var(--app-action-text);font-size:13px;font-weight:var(--font-weight-heading, 700)}.today-home-primary-grid{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(340px,.78fr);gap:12px;align-items:stretch}.today-home-primary-grid>.home-section,.today-home-existing-grid>:is(.home-section,.home-debt-panel){width:100%;min-width:0;height:100%;padding:14px}.today-agenda,.today-briefing{align-content:start;gap:11px}.today-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.today-panel-head>div{min-width:0;display:grid;gap:2px}.today-panel-head :is(h2,p){margin:0}.today-panel-head h2{font-size:var(--font-section-title, 21px);line-height:1.15}.today-panel-head p{color:var(--muted);font-size:12px}.today-count-pill,.today-status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;white-space:nowrap;font-weight:var(--font-weight-heading, 700)}.today-count-pill{min-height:28px;padding-inline:10px;background:var(--mgmt-blue-soft);color:var(--app-action-text);font-size:12px}.today-lesson-list,.today-briefing-list{display:grid;gap:8px}.today-lesson-row{min-width:0;display:grid;grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:10px 12px;border:1px solid var(--line);border-radius:var(--radius-control, 10px);padding:10px 12px;background:var(--surface-card)}.today-lesson-row:not(.is-next){min-height:66px;grid-template-columns:66px minmax(0,1fr) auto;gap:6px 9px;padding:7px 10px}.today-lesson-row.is-next{position:relative;isolation:isolate;min-height:126px;gap:12px;padding:14px;border-color:color-mix(in srgb,var(--mgmt-blue) 58%,var(--line));border-inline-end-width:4px;background:linear-gradient(100deg,color-mix(in srgb,var(--mgmt-blue-soft) 82%,var(--surface-card)) 0%,var(--surface-card) 72%);box-shadow:0 4px 14px color-mix(in srgb,var(--mgmt-blue) 11%,transparent)}.today-lesson-open-surface{position:absolute;z-index:1;inset:0;width:100%;height:100%;border:0;border-radius:inherit;padding:0;background:transparent;cursor:pointer}.today-lesson-open-surface:focus-visible{outline:none;box-shadow:var(--focus-ring)}.today-lesson-row.is-next :is(.today-lesson-title-link,.upcoming-student-chip,.today-quiet-button){position:relative;z-index:2}.today-lesson-row.is-next .today-lesson-copy>strong,.today-lesson-row.is-next .today-lesson-title-link{font-size:21px;font-weight:600;white-space:normal;overflow-wrap:anywhere}.today-lesson-row.is-next .today-lesson-actions{align-self:start;display:grid;justify-items:end;gap:6px}.today-lesson-row.is-next .today-status-pill,.today-lesson-context{min-height:26px;display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--teach-green) 25%,var(--line));border-radius:var(--radius-control);padding:4px 8px;font-size:12px;line-height:1.25}.today-lesson-context{max-width:150px;background:var(--surface-card);color:var(--muted);overflow-wrap:anywhere}.today-lesson-time,.today-lesson-copy{min-width:0;display:grid}.today-lesson-time{gap:2px;text-align:center}.today-lesson-time strong{font-size:20px;line-height:1}.today-lesson-time small,.today-lesson-copy small{color:var(--muted);font-size:11px}.today-lesson-copy{gap:3px}.today-lesson-copy>strong,.today-lesson-copy>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-lesson-copy>strong{font-size:15px}.today-lesson-title-link:focus-visible{outline:none;border-radius:4px;box-shadow:var(--focus-ring)}.today-student-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}.today-student-chips .upcoming-student-chip{min-height:26px;padding:3px 8px;font-size:11px}.today-lesson-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.today-lesson-row:not(.is-next) .today-lesson-actions{flex-wrap:nowrap}.today-lesson-row:not(.is-next) .today-lesson-time strong{font-size:18px}.today-status-pill{min-height:26px;padding-inline:9px;font-size:11px}.today-status-pill.info{background:var(--mgmt-blue-soft);color:var(--app-action-text)}.today-status-pill.success{background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.today-status-pill.warning{background:#fff1c2;color:#845304}.today-status-pill.danger{background:#ffebe7;color:#b84334}.today-quiet-button,.today-briefing-done{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding-inline:11px;background:var(--surface-card);color:var(--teach-action-soft-text);font:inherit;font-size:12px;font-weight:var(--font-weight-heading, 700);cursor:pointer}.today-inline-preparation{grid-column:1 / -1;min-width:0;display:flex;align-items:center;gap:8px;border:1px solid color-mix(in srgb,var(--teach-green) 25%,var(--line));border-radius:var(--radius-control, 8px);padding:8px 10px;background:color-mix(in srgb,var(--teach-green-soft) 72%,var(--surface-card))}.today-inline-preparation-title{display:inline-flex;align-items:center;gap:5px;color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-heading, 700);white-space:nowrap}.today-inline-activities{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:5px}.today-inline-activities>span{min-height:24px;display:inline-flex;align-items:center;border-radius:999px;padding-inline:8px;background:var(--surface-card);color:var(--text);max-width:100%;font-size:12px;overflow-wrap:anywhere}.today-inline-activities small,.today-inline-empty{color:var(--muted);font-size:11px}.today-briefing-row{width:100%;min-width:0;min-height:58px;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:9px;border:1px solid var(--line);border-radius:var(--radius-control, 10px);padding:9px 10px;background:var(--surface-card);color:var(--text);font:inherit;text-align:start}button.today-briefing-row{cursor:pointer}.today-briefing-row>span:nth-child(2){min-width:0;display:grid;gap:2px}.today-briefing-row strong{font-size:13px;line-height:1.3}.today-briefing-row small{overflow:hidden;color:var(--muted);font-size:11px;line-height:1.35;text-overflow:ellipsis}.today-briefing-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:var(--mgmt-blue-soft);color:var(--app-action-text)}.today-briefing-icon.green{background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.today-briefing-icon.amber{background:#fff3d5;color:#a4650a}.today-briefing-icon.danger{background:#ffebe7;color:#c14b3a}.today-briefing-row.danger{border-color:color-mix(in srgb,#d85f4b 36%,var(--line))}.today-briefing-done{min-height:32px;padding-inline:8px}.today-empty-agenda{min-height:122px}.today-home-existing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch}.today-home-existing-grid>*{order:initial!important}.today-home-existing-grid>:is(.home-section,.home-debt-panel){grid-column:auto!important}.today-home-existing-grid .home-action-queue .upcoming-row{grid-template-columns:58px 46px minmax(0,1fr) auto;gap:6px}.today-home-existing-grid .home-upcoming-section,.today-home-existing-grid .home-action-queue,.today-home-existing-grid .home-debt-panel{align-content:start}.today-future-row{grid-template-columns:58px 46px minmax(0,1fr) auto;gap:6px;cursor:pointer}.today-future-row .upcoming-students{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-home-page:not(.is-phone) .today-future-row .upcoming-student-chip>bdi{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis}@container app-canvas (max-width: 1040px){.today-home-primary-grid{grid-template-columns:minmax(0,1fr)}.today-home-existing-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@container app-canvas (max-width: 650px){.today-home-page:not(.is-phone) .home-debt-row{grid-template-columns:minmax(0,1fr) auto}.today-home-page:not(.is-phone) .home-debt-actions{grid-column:1 / -1}}.today-home-page.is-phone{width:100%;gap:10px;padding:0 0 10px}.today-home-page.is-phone .today-home-hero{min-height:66px;padding:10px 12px}.today-home-page.is-phone .today-home-hero:after{width:126px;inset-block:-14px;opacity:.34}.today-home-page.is-phone .today-home-hero h1{font-size:21px}.today-home-page.is-phone .today-home-hero p,.today-home-page.is-phone .today-home-hero span{font-size:11px}.today-home-page.is-phone .today-home-primary-grid,.today-home-page.is-phone .today-home-existing-grid{grid-template-columns:minmax(0,1fr);gap:10px}.today-home-page.is-phone .today-home-primary-grid>.home-section,.today-home-page.is-phone .today-home-existing-grid>:is(.home-section,.home-debt-panel){height:auto;padding:12px}.today-home-page.is-phone .today-panel-head h2,.today-home-page.is-phone .home-section-head h2,.today-home-page.is-phone .home-debt-panel-header h2{font-size:18px}.today-home-page.is-phone .today-lesson-row.is-next{grid-template-columns:52px minmax(0,1fr) auto;gap:8px;padding:12px}.today-home-page.is-phone .today-lesson-row.is-next .today-lesson-actions{grid-column:3;padding:0}.today-home-page.is-phone .today-lesson-context{max-width:100px}.today-home-page.is-phone .today-lesson-row:not(.is-next){min-height:70px;grid-template-columns:52px minmax(72px,1fr) auto;gap:6px;padding:7px 8px}.today-home-page.is-phone .today-lesson-row:not(.is-next) .today-lesson-actions{grid-column:auto;justify-content:flex-start;gap:5px;padding:0}.today-home-page.is-phone .today-lesson-row:not(.is-next) .today-lesson-actions>button{min-height:44px;flex:0 0 auto;padding-inline:10px}.today-home-page.is-phone .today-lesson-title-link{min-height:44px}.today-home-page.is-phone .today-inline-preparation{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr);gap:7px;padding:9px}.today-home-page.is-phone .today-inline-preparation-title{grid-column:1 / -1}.today-home-page.is-phone .today-briefing-row{grid-template-columns:34px minmax(0,1fr)}.today-home-page.is-phone .today-briefing-row>:last-child{grid-column:2;justify-self:start}.today-home-page.is-phone .today-briefing-done{min-height:44px}.today-home-page.is-phone .today-home-existing-grid .upcoming-row,.today-home-page.is-phone .today-future-row{min-height:56px;grid-template-columns:52px 44px minmax(0,1fr) auto;gap:5px}.today-home-page.is-phone .home-debt-panel{gap:10px;box-shadow:var(--shadow-panel)}.today-home-page.is-phone .home-debt-row{min-height:0;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;padding:8px}.today-home-page.is-phone .home-debt-actions{grid-column:1 / -1;display:flex;align-items:center;justify-content:flex-start;gap:8px}.today-home-page.is-phone :is(.home-debt-open-all,.home-debt-whatsapp,.home-debt-mark-paid){min-height:44px}.today-home-page.is-phone .home-debt-mark-paid{width:auto;padding-inline:11px}.today-home-page.is-phone .home-debt-account strong{overflow:visible;line-height:1.25;text-overflow:clip;white-space:normal}.today-home-page.is-phone .home-debt-amount{min-width:54px}.today-home-page.is-phone .home-mobile-quick-actions{order:initial}.today-home-primary-grid:not(:has(.today-briefing)){grid-template-columns:minmax(0,1fr)}.today-home-existing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.today-home-existing-grid>:only-child{grid-column:1 / -1}.today-briefing.home-action-queue .upcoming-row{grid-template-columns:42px 44px minmax(0,1fr) auto;gap:8px}.home-student-chip{display:inline-flex;align-items:center;width:fit-content;max-width:100%}.home-debt-student-chips{display:flex;flex-wrap:wrap;gap:4px;margin-block:4px}.home-debt-account .home-student-chip,.today-lesson-copy .home-student-chip{white-space:normal;overflow-wrap:anywhere}.today-caught-up{display:flex;align-items:center;gap:10px;padding:12px 4px 8px;color:var(--text-primary);font-size:14px;line-height:1.45}.caught-up-flower{flex:0 0 36px;width:36px;height:36px;overflow:visible}.caught-up-petal{transform-origin:20px 20px}.student-scope-roster-heading{display:grid;gap:8px}.student-scope-roster-heading>h2{margin:0}.student-scope-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:3px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--segmented-bg)}.student-scope-toggle button{min-width:0;min-height:32px;padding:5px 8px;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--muted);font-size:12px;font-weight:var(--font-weight-emphasis, 600);line-height:1.2;text-align:center}.student-scope-toggle button.active{border-color:var(--selection-control-border, var(--teach-green));background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text))}.student-scope-toggle button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.student-files-list-header .student-scope-toggle{margin-top:8px}@media(max-width:860px){.student-scope-toggle button{min-height:44px}}.activity-duration-editor{position:relative}.activity-duration-control{position:relative;width:max-content}.activity-duration-editor>.activity-duration-control{position:absolute;z-index:3;inset-block-start:6px;inset-inline-end:8px}.activity-duration-editor .simple-rich-text-toolbar{padding-inline-end:52px}.activity-duration-trigger{min-width:132px;height:30px;padding:0 8px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}.activity-duration-trigger:hover,.activity-duration-trigger:focus-visible,.activity-duration-control.is-open .activity-duration-trigger{border-color:color-mix(in srgb,var(--teach-green) 28%,var(--line));background:var(--teach-green-soft, #eafaf0);color:var(--teach-action-soft-text, #17643a)}.activity-duration-trigger:focus-visible{outline:2px solid color-mix(in srgb,var(--teach-green) 54%,transparent);outline-offset:2px}.activity-duration-trigger span,.activity-duration-trigger strong{font-size:12px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums}.activity-duration-trigger strong{margin-inline-start:auto;color:var(--text)}.activity-duration-panel{position:absolute;z-index:5;inset-block-start:calc(100% + 6px);inset-inline-end:0;width:min(250px,calc(100vw - 48px));min-height:44px;padding:5px 8px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--surface-muted-band, #f6f8f7) 72%,white);box-shadow:0 12px 28px color-mix(in srgb,#173a2c 16%,transparent);display:flex;align-items:center;justify-content:flex-end}[dir=rtl] .activity-duration-editor>.activity-duration-control .activity-duration-panel{inset-block-start:auto;inset-block-end:calc(100% + 6px)}[dir=rtl] .teaching-activity-editor-workspace:has(.activity-duration-control.is-open),[dir=rtl] .teaching-activity-editor-workspace .teaching-activity-editor-main:has(.activity-duration-control.is-open){overflow:visible}.activity-duration-panel>label{width:100%;min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:8px;color:var(--text);font-size:13px;font-weight:var(--font-weight-label, 500)}.activity-duration-input-wrap{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;font-weight:400}.activity-duration-input-wrap input{width:58px;height:32px;padding:0 7px;border:1px solid var(--line);border-radius:9px;background:var(--surface-card, white);color:var(--text);font:inherit;text-align:end}.teaching-simple-activity-header>.activity-duration-control{flex:none;margin-inline-start:auto}.activity-duration-composer-standalone-control{min-height:30px;display:flex;justify-content:flex-end;align-items:center}.activity-duration-badge{display:inline-flex;align-items:center;gap:4px;width:max-content;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);line-height:1.2;white-space:nowrap}.activity-duration-filter-field{min-width:142px;display:grid;gap:5px}.activity-duration-filter-field>span{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.activity-duration-filter-field .app-dropdown{width:100%}.teaching-blocks-page .teaching-library-filter-panel>.teaching-filter-buttons{grid-template-columns:minmax(0,1fr) 180px auto;align-items:end}.teaching-block-picker-multi-filters.has-duration-filter{grid-template-columns:repeat(4,minmax(0,1fr))}.teaching-block-card>header .activity-duration-badge{margin-inline-start:auto;flex-shrink:0}body[data-app-layout-mode=phone] .teaching-current-plan .activity-duration-badge{font-size:11px}.teaching-template-compact-toggle .activity-duration-badge,.teaching-block-picker-copy .activity-duration-badge{margin-block-start:2px}@media(max-width:1080px){.teaching-block-picker-multi-filters.has-duration-filter{grid-template-columns:repeat(2,minmax(0,1fr))}}body[data-app-layout-mode=phone] .activity-duration-editor>.activity-duration-control{inset-block-start:-6px;inset-inline-end:6px}body[data-app-layout-mode=phone] .activity-duration-trigger{position:relative;width:44px;min-width:44px;height:44px;padding:0;border-color:transparent;background:transparent;color:var(--teach-green)}body[data-app-layout-mode=phone] .activity-duration-trigger:before{content:"";position:absolute;inset:6px;border:1px solid color-mix(in srgb,var(--teach-green) 24%,var(--line));border-radius:9px;background:color-mix(in srgb,var(--teach-green-soft) 72%,var(--surface-card))}body[data-app-layout-mode=phone] .activity-duration-trigger-label,body[data-app-layout-mode=phone] .activity-duration-trigger strong{display:none}body[data-app-layout-mode=phone] .activity-duration-trigger>svg{position:relative;z-index:1;display:block;width:18px;min-width:18px;height:18px;min-height:18px}body[data-app-layout-mode=phone] .activity-duration-trigger:hover,body[data-app-layout-mode=phone] .activity-duration-trigger:focus-visible,body[data-app-layout-mode=phone] .activity-duration-control.is-open .activity-duration-trigger{border-color:transparent;background:transparent}body[data-app-layout-mode=phone] .activity-duration-trigger:hover:before,body[data-app-layout-mode=phone] .activity-duration-trigger:focus-visible:before,body[data-app-layout-mode=phone] .activity-duration-control.is-open .activity-duration-trigger:before{border-color:color-mix(in srgb,var(--teach-green) 42%,var(--line));background:var(--teach-green-soft, #eafaf0)}body[data-app-layout-mode=phone] .activity-duration-editor .simple-rich-text-toolbar{padding-inline-end:54px}body[data-app-layout-mode=phone] .activity-duration-panel>label{flex:1;display:grid;grid-template-columns:minmax(0,1fr) auto;justify-content:stretch}body[data-app-layout-mode=phone] .activity-duration-panel{width:min(344px,calc(100vw - 32px));min-height:68px;padding:10px 12px;border-color:color-mix(in srgb,var(--teach-green) 34%,var(--line));background:var(--surface-popover, #f9fdfb);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 12px 30px color-mix(in srgb,#173a2c 18%,transparent)}body[data-app-layout-mode=phone] .activity-duration-input-wrap input{height:44px}body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-library-filter-panel>.teaching-filter-buttons,body[data-app-layout-mode=phone] .teaching-block-picker-multi-filters.has-duration-filter{grid-template-columns:minmax(0,1fr)}.install-app-card h2,.install-app-card h3,.install-app-card p{margin:0}.install-app-card .settings-workspace-installed-identity{align-items:start}.install-app-card .settings-workspace-installed-identity>div{display:grid;gap:8px;min-width:0}.install-app-card h2{font-size:18px}.install-app-card h3{font-size:16px}.install-app-card p{line-height:1.65}.install-app-card .settings-workspace-installed-identity p,.install-app-hint{color:var(--muted);font-size:13px}.install-app-instructions{display:grid;gap:16px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line);font-size:14px}.install-app-instructions a{color:var(--teach-green);overflow-wrap:anywhere;min-height:44px;display:flex;align-items:center}.install-app-status{display:flex;align-items:center;gap:8px;color:var(--app-success-text);padding-top:16px}.theme-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.theme-picker-option{position:relative;min-width:0;cursor:pointer}.theme-picker-option>input{position:absolute;z-index:1;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.theme-picker-option-content{min-height:104px;height:100%;display:grid;align-content:center;gap:8px;padding:8px;border:1px solid var(--line);border-radius:var(--radius-control);color:var(--text);background:var(--surface-card)}.theme-picker-option:hover .theme-picker-option-content{border-color:var(--teach-green)}.theme-picker-option>input:checked+.theme-picker-option-content{border-color:var(--teach-green);background:var(--teach-green-soft);box-shadow:inset 0 0 0 1px var(--teach-green)}.theme-picker-option>input:focus-visible+.theme-picker-option-content{outline:2px solid var(--teach-action-soft-text);outline-offset:3px}.theme-picker-swatch{display:block;width:56px;height:56px;justify-self:center;border:1px solid var(--line);border-radius:4px}.theme-picker-label{display:grid;grid-template-columns:minmax(0,1fr) 16px;align-items:center;gap:4px;font-size:12px;font-weight:var(--font-weight-label, 500);line-height:1.25}.theme-picker-check{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;color:var(--teach-action-solid-text);background:var(--teach-green);visibility:hidden}.theme-picker-option>input:checked+.theme-picker-option-content .theme-picker-check{visibility:visible}.onboarding-appearance{display:grid;gap:12px;padding-block-start:16px;border-block-start:1px solid var(--line)}.onboarding-appearance-heading{display:grid;gap:4px}.onboarding-appearance-heading h2,.onboarding-appearance-heading p{margin:0}.onboarding-appearance-heading h2{color:var(--text);font-size:16px}.onboarding-appearance-heading p{color:var(--muted);font-size:12px;line-height:1.5}@media(max-width:700px){.theme-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}body[data-app-layout-mode=phone] .theme-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.import-completion-card{--import-attention-text: light-dark(#805b15, #f0c67f);--import-attention-soft: color-mix(in srgb, var(--import-attention-text) 9%, var(--surface-panel-strong));display:grid;gap:12px;width:min(100%,400px);min-width:0;margin-inline:auto;padding:24px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-panel-strong);color:var(--text)}.import-completion-heading{min-width:0;text-align:center}.import-completion-heading h2{margin:0;font-size:var(--font-section-title);line-height:var(--line-height-heading)}.import-completion-seal{display:flex;align-items:center;gap:12px;margin-bottom:8px}.import-completion-seal:before,.import-completion-seal:after{content:"";flex:1;height:1px;background:var(--line)}.import-completion-seal>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--app-success-text);color:var(--surface-sheet)}.import-completion-seal.is-failed>span{background:var(--danger-text)}.import-completion-seal.is-cancelled>span{background:var(--surface-muted-band);color:var(--muted)}.import-completion-source{display:flex;align-items:center;justify-content:center;gap:8px;margin:4px 0 0;color:var(--muted);font-size:var(--font-body);line-height:var(--line-height-body)}.import-completion-source svg{flex-shrink:0;align-self:flex-start;margin-top:4px}.import-completion-source bdi{min-width:0;overflow-wrap:anywhere}.import-completion-counts{display:grid}.import-completion-outcome{min-width:0;padding-block:4px;border-bottom:1px solid var(--line)}.import-completion-outcome:first-child{padding-top:0}.import-completion-outcome:last-child{padding-bottom:0;border-bottom:0}.import-completion-result-line{display:flex;align-items:center;gap:12px;min-height:32px}.import-completion-outcome-icon{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:50%;background:var(--surface-muted-band)}.import-completion-outcome.is-total{color:var(--muted)}.import-completion-outcome.is-total .import-completion-number{color:var(--text);font-size:var(--font-section-title);font-weight:var(--font-weight-label)}.import-completion-outcome.is-total .import-completion-outcome-icon{background:transparent}.import-completion-outcome.is-saved{color:var(--app-success-text)}.import-completion-outcome.is-saved .import-completion-outcome-icon{background:color-mix(in srgb,var(--app-success-text) 8%,var(--surface-panel-strong))}.import-completion-outcome.is-failed{color:var(--danger-text)}.import-completion-outcome.is-failed .import-completion-outcome-icon{background:var(--danger-soft)}.import-completion-outcome.is-skipped,.import-completion-outcome.is-empty{color:var(--muted)}.import-completion-outcome.is-empty .import-completion-outcome-icon{background:var(--surface-muted-band)}.import-completion-total{display:flex;align-items:baseline;gap:8px;min-width:0}.import-completion-number{font-size:24px;line-height:1.25;font-weight:var(--font-weight-emphasis);font-variant-numeric:tabular-nums}.import-completion-label{font-size:var(--font-body);line-height:var(--line-height-body);font-weight:var(--font-weight-label)}.import-completion-review{position:relative;display:flex;align-items:center;gap:8px;min-height:44px;max-width:calc(100% - 28px);margin-top:4px;margin-inline-start:28px;padding:0 8px;border:0;border-radius:var(--radius-control);background:transparent;color:var(--import-attention-text);font:inherit;font-size:var(--font-body);font-weight:var(--font-weight-label);line-height:var(--line-height-body);text-align:start;cursor:pointer}.import-completion-review:before{content:"";position:absolute;inset-inline-start:-12px;top:-4px;width:20px;height:26px;border-inline-start:1px solid var(--line);border-bottom:1px solid var(--line);border-end-start-radius:var(--radius-control);pointer-events:none}.import-completion-review-icon{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:var(--import-attention-soft)}.import-completion-actions{display:grid;grid-template-columns:1fr;gap:8px}.import-completion-actions button{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 40px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-panel);color:var(--text);font:inherit;font-size:var(--font-body);font-weight:var(--font-weight-label);line-height:var(--line-height-control);cursor:pointer}.import-completion-actions button.is-primary{background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));border-color:var(--action-control-border, var(--teach-green))}.import-completion-action-icon{position:absolute;inset-inline-end:16px;display:grid;place-items:center}.import-completion-forward:dir(rtl){transform:rotate(180deg)}.import-completion-card button{transition:background-color .16s ease,border-color .16s ease;touch-action:manipulation}@media(hover:hover){.import-completion-review:hover:not(:disabled){background:var(--import-attention-soft)}.import-completion-actions button:hover:not(:disabled){background:var(--surface-muted-band);border-color:color-mix(in srgb,var(--muted) 40%,var(--line))}.import-completion-actions button.is-primary:hover:not(:disabled){background:var(--action-control-hover-bg, color-mix(in srgb, var(--teach-green) 90%, var(--text)));border-color:var(--action-control-border, var(--teach-green))}}.import-completion-review:active:not(:disabled){background:var(--import-attention-soft)}.import-completion-actions button:active:not(:disabled){background:var(--surface-muted-band)}.import-completion-actions button.is-primary:active:not(:disabled){background:color-mix(in srgb,var(--action-control-hover-bg, var(--teach-green)) 90%,var(--text))}.import-completion-card button:disabled{opacity:.65;cursor:wait}.import-completion-card button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.import-completion-error{display:flex;align-items:flex-start;gap:8px;margin:0;padding:12px;border:1px solid var(--danger-line);border-radius:var(--radius-control);background:var(--danger-soft);color:var(--text);font-size:var(--font-body);line-height:var(--line-height-body)}.import-completion-error svg{flex-shrink:0;margin-top:2px;color:var(--danger-text)}.import-completion-loading{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;color:var(--muted);font-size:var(--font-supporting)}.import-completion-problems{margin-block:16px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-muted-band)}.import-completion-problems h3{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:16px}.import-completion-problems ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.import-completion-problems li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;overflow-wrap:anywhere}.import-completion-problems li span{color:var(--muted)}@media(max-width:760px){.import-completion-card{padding:16px}}@media(prefers-reduced-motion:reduce){.import-completion-card button{transition:none}}.resource-import-nav,.mobile-resource-import{position:relative;isolation:isolate}.resource-import-nav-label{display:inline-flex;align-items:center;gap:5px;font-variant-numeric:tabular-nums}.resource-import-nav.is-working{background:var(--teach-green-soft);box-shadow:0 0 12px color-mix(in srgb,var(--teach-green) 18%,transparent)}.resource-import-nav.is-working:after{content:"";position:absolute;inset:0;padding:2px;border-radius:inherit;pointer-events:none;background:conic-gradient(from var(--resource-import-angle),transparent 0% 62%,var(--teach-green) 87%,transparent 100%);-webkit-mask:linear-gradient(white 0 0) content-box,linear-gradient(white 0 0);mask:linear-gradient(white 0 0) content-box,linear-gradient(white 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:resource-import-orbit 3s linear infinite}.resource-import-nav.is-complete{color:var(--app-success-text);background:color-mix(in srgb,var(--green) 12%,var(--surface-card))}.resource-import-nav:is(.is-issues,.is-paused,.is-choice){color:var(--text);background:var(--surface-panel-strong);box-shadow:inset 0 0 0 1px var(--teach-green)}.mobile-resource-import{width:44px;min-width:44px;height:44px;display:inline-grid;place-items:center;padding:0;border:0;border-radius:10px;color:var(--teach-action-soft-text);background:var(--teach-green-soft)}.mobile-resource-import.is-working:after{content:"";position:absolute;inset:4px;border:2px solid var(--line);border-top-color:var(--teach-green);border-inline-end-color:var(--teach-green);border-radius:50%;animation:resource-import-spin 1.6s linear infinite;pointer-events:none}.resource-import-nav-seal{position:absolute;inset-inline-end:0;bottom:0;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--teach-green);color:var(--teach-action-solid-text);border:2px solid var(--surface-panel-strong)}.is-complete .resource-import-nav-seal{background:var(--green)}.is-issues .resource-import-nav-seal{background:var(--rose)}.resource-import-summary{display:grid;gap:8px;margin-block-end:16px}.resource-import-summary-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:12px 16px;background:var(--surface-panel);border:1px solid var(--line);border-radius:var(--radius-panel)}.resource-import-summary-copy{display:grid;gap:3px}.resource-import-summary-copy small{color:var(--muted)}.resource-import-summary-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.resource-import-summary button,.resource-import-pending button{border:1px solid var(--line);background:var(--surface-input);color:var(--text);border-radius:var(--radius-control);padding:7px 10px}.teaching-resource-grid .resource-import-pending{display:flex;align-items:center;gap:12px;min-height:54px;padding:12px;border-block-end:1px solid var(--line);background:var(--surface-card)}.resource-import-pending>div{display:grid;flex:1;min-width:0}.resource-import-pending strong{overflow-wrap:anywhere;font-weight:500}.resource-import-pending small{color:var(--muted)}.resource-import-pending.is-failed small{color:var(--rose)}.resource-import-new{display:inline-flex;flex-shrink:0;align-items:center;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:500;color:var(--teach-action-soft-text);background:var(--teach-green-soft)}.resource-import-focus{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-block-end:12px}.resource-import-save-error{grid-column:1 / -1;color:var(--rose);margin:0;overflow-wrap:anywhere}.resource-import-review-hint{grid-column:1 / -1;color:var(--muted);line-height:1.5;overflow-wrap:anywhere}.resource-import-focus button{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);padding:8px 12px;min-height:44px}body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-identity{grid-template-columns:minmax(0,1fr) auto}body[data-app-layout-mode=phone] .teaching-resource-compact-identity .resource-import-new{grid-area:status;width:max-content;justify-self:end}@media(max-width:680px){.teaching-resource-card--library .teaching-resource-compact-identity{grid-template-columns:minmax(0,1fr) auto}.teaching-resource-compact-identity .resource-import-new{grid-area:status;width:max-content;justify-self:end}}@property --resource-import-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}@keyframes resource-import-orbit{to{--resource-import-angle: 360deg}}@keyframes resource-import-spin{to{transform:rotate(360deg)}}body[data-app-layout-mode=phone] .resource-import-summary-row{padding:10px 12px}body[data-app-layout-mode=phone] :is(.resource-import-summary button,.resource-import-pending button){min-height:44px}@media(prefers-reduced-motion:reduce){.resource-import-nav.is-working:after,.mobile-resource-import.is-working:after{animation:none}}.teaching-resource-detail-dialog:has(.is-teaching-site),.teaching-resource-preview-modal:has(.is-teaching-site){background:linear-gradient(var(--surface-panel-strong),var(--surface-panel-strong)),var(--bg)}.teaching-resource-preview-stage.is-teaching-site{padding:16px;background:color-mix(in srgb,var(--teach-green) 12%,var(--bg))}.teaching-site-preview{width:100%;min-width:0}.teaching-site-preview-frame{display:block;width:100%;height:352px;border:0;border-radius:var(--radius-control);background:var(--bg)}.is-teaching-site.is-video .teaching-site-preview-frame,.is-teaching-site.is-slides .teaching-site-preview-frame{height:auto;min-height:240px;aspect-ratio:16 / 9}.is-teaching-site.is-interactive .teaching-site-preview-frame{height:clamp(300px,52dvh,540px)}.teaching-site-preview-caption{display:grid;justify-items:center;gap:8px;padding-top:14px;text-align:center}.teaching-site-preview-caption a{display:inline-flex;align-items:center;gap:6px;color:var(--text);font-weight:600}.teaching-site-preview-caption p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.teaching-site-preview-placeholder{display:grid;justify-items:center;gap:12px;padding:32px 16px;text-align:center}.teaching-site-preview-placeholder p{margin:0;color:var(--muted);line-height:1.5}.teaching-site-preview-placeholder button{display:inline-flex;align-items:center;gap:6px}@media(max-width:760px){.teaching-resource-preview-stage.is-teaching-site{padding:12px}.is-teaching-site.is-interactive .teaching-site-preview-frame{height:350px}.teaching-resource-reading-body:has(.is-teaching-site){grid-template-rows:max-content auto}.teaching-resource-detail-dialog .teaching-resource-preview-stage.is-teaching-site{container-type:inline-size}}body[data-app-layout-mode=phone] .teaching-resource-reading-body:has(.is-teaching-site){grid-template-rows:max-content auto}body[data-app-layout-mode=phone] .teaching-resource-detail-dialog .teaching-resource-preview-stage.is-teaching-site{container-type:inline-size}.teaching-resource-detail-dialog:has(.is-youtube-preview),.teaching-resource-preview-modal:has(.is-youtube-preview){background:linear-gradient(var(--surface-panel-strong),var(--surface-panel-strong)),var(--bg)}.teaching-resource-preview-stage.is-youtube-preview{padding:20px;background:color-mix(in srgb,var(--teach-green) 12%,var(--bg))}.youtube-resource-preview{width:100%;min-width:0}.youtube-resource-poster,.youtube-resource-player{display:block;position:relative;width:100%;aspect-ratio:16 / 9;min-height:200px;overflow:hidden;padding:0;border:0;border-radius:var(--radius-control);background:#101010;color:#fff}.youtube-resource-poster{cursor:pointer}.youtube-resource-poster:focus-visible{outline:3px solid var(--teach-green);outline-offset:4px}.youtube-resource-poster img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.youtube-resource-play{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:68px;height:48px;border-radius:var(--radius-control);background:#c00}.youtube-resource-poster-label{position:absolute;inset:auto 0 0;padding:20px 12px 10px;background:linear-gradient(transparent,#000c);font-weight:600;text-align:center}.youtube-resource-caption{display:grid;justify-items:center;gap:8px;padding-top:14px;text-align:center}.youtube-resource-caption a{display:inline-flex;align-items:center;gap:6px;color:var(--text);font-weight:600}.youtube-resource-caption p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}@media(max-width:760px){.teaching-resource-preview-stage.is-youtube-preview{padding:12px}}body:has(.app-shell.is-signed-out){zoom:1}body .app-shell.is-signed-out{display:block;min-height:100svh;width:100%;max-width:none;margin:0;padding:0}body .app-shell.is-signed-out>.app-main{width:100%;max-width:none;min-height:100svh;margin:0;padding:0}body .app-shell.is-signed-out .auth-entry{min-height:100svh;padding:max(28px,env(safe-area-inset-top)) 20px max(28px,env(safe-area-inset-bottom));display:grid;place-items:center}.auth-entry .auth-entry-card{width:min(440px,100%);min-width:0;gap:24px;padding:28px 32px;border-radius:var(--radius-panel);background:var(--surface-card)}.auth-entry .auth-entry-brand{display:flex;align-items:center;justify-content:space-between;gap:16px}.auth-brand{display:inline-flex;align-items:center;gap:9px;color:var(--text);font-size:18px;font-weight:var(--font-weight-heading, 700)}.auth-brand img{width:32px;height:32px;border-radius:var(--radius-control)}.auth-entry .auth-language-switch{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;min-width:44px;padding:0 6px;border:0;border-radius:var(--radius-control);background:transparent;color:var(--muted);font:inherit;font-size:13px;cursor:pointer}.auth-entry .email-auth-panel{display:grid;gap:18px;padding:0;border:0;border-radius:0;background:transparent}.auth-entry .auth-heading{display:grid;gap:8px;margin-block-end:4px}.auth-entry .auth-heading h1{margin:0;color:var(--text);font-size:30px;font-weight:var(--font-weight-heading, 700);line-height:1.2;letter-spacing:-.025em}.auth-entry .auth-heading h1:focus{outline:none}.auth-entry .auth-heading p,.auth-entry .auth-demo p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.auth-entry .auth-choice-divider{gap:12px;font-size:12px;font-weight:400;text-transform:none;letter-spacing:0}.auth-entry .email-auth-form,.auth-entry .email-auth-form fieldset{display:grid;min-width:0;gap:15px;margin:0;padding:0;border:0}.auth-entry .auth-field{display:grid;min-width:0;gap:7px}.auth-entry .email-auth-form label{display:block;color:var(--text);font-size:14px;font-weight:var(--font-weight-label, 500);line-height:1.4}.auth-entry .auth-optional{color:var(--muted);font-size:12px;font-weight:400}.auth-entry .email-auth-form input:not([type=checkbox]){width:100%;min-height:48px;padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);font:inherit;font-size:16px}.auth-entry .email-auth-form input::placeholder{color:var(--muted);opacity:.8}.auth-entry .auth-password-label{display:flex;align-items:center;justify-content:space-between;min-height:20px;gap:8px}.auth-entry .auth-password-label .auth-text-button{min-height:44px;margin-block:-12px}.auth-entry .auth-password-control{position:relative}.auth-entry .auth-password-control input{padding-inline-end:48px}[dir=rtl] .auth-entry .auth-password-control input{padding-left:48px;padding-right:12px}.auth-entry .auth-password-toggle{position:absolute;top:2px;inset-inline-end:2px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:var(--radius-control);color:var(--muted);background:transparent;cursor:pointer}.auth-entry .email-password-help{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.auth-entry .email-auth-form .keep-signed-in-choice{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}.auth-entry .keep-signed-in-choice input{width:17px;height:17px;flex:0 0 17px;margin:0;accent-color:var(--teach-green)}.auth-entry .keep-signed-in-choice>span{display:grid;gap:2px;font-size:13px;font-weight:400}.auth-entry .keep-signed-in-choice small{font-size:12px;color:var(--muted)}body .auth-entry .primary-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:10px 16px;border:1px solid var(--teach-green);border-radius:var(--radius-control);background:var(--teach-green);color:var(--teach-action-solid-text);font:inherit;font-size:15px;font-weight:var(--font-weight-emphasis, 600);cursor:pointer}.auth-entry .primary-button:hover:not(:disabled){background:color-mix(in srgb,var(--teach-green),var(--text) 12%)}.auth-entry button:disabled{cursor:wait;opacity:.65}.auth-entry .auth-text-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 3px;border:0;border-radius:var(--radius-control);color:var(--app-action-text, var(--teach-green));background:transparent;font:inherit;font-size:13px;font-weight:var(--font-weight-label, 500);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.auth-entry .auth-text-button:hover,.auth-entry .auth-language-switch:hover,.auth-entry .auth-password-toggle:hover{color:var(--text);background:var(--surface-muted-band)}.auth-entry button:focus-visible,.auth-entry input:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 45%,transparent);outline-offset:3px}.auth-entry .auth-switch-mode{margin:-7px 0;color:var(--muted);text-align:center;font-size:13px;line-height:1.5}.auth-entry .auth-back{justify-self:start}[dir=rtl] .auth-entry .auth-back svg{transform:scaleX(-1)}.auth-entry .auth-demo{display:grid;gap:9px;padding-block-start:18px;border-top:1px solid var(--line);text-align:center}.auth-entry .auth-demo .quiet-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:var(--radius-control);background:transparent;color:var(--text);font:inherit;font-size:14px;cursor:pointer}.auth-entry .auth-demo .quiet-button:hover{border-color:var(--teach-green);background:var(--surface-muted-band)}.auth-entry .google-sign-in{position:relative;min-width:0;min-height:44px}.auth-entry .google-login-slot{display:flex;justify-content:center;width:100%;min-height:44px}.auth-entry .google-login-slot[hidden]{display:none}.auth-entry .google-login-slot[aria-disabled=true]{opacity:.55}.auth-entry .google-login-slot>div{width:100%;min-width:0}.auth-entry .google-login-slot iframe{max-width:none}.auth-entry .google-login-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;color:var(--muted);font-size:14px}.auth-entry .google-login-loading svg{animation:auth-loading-spin 1s linear infinite}.auth-entry .google-login-recovery{display:grid;justify-items:start;gap:0;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-control)}.auth-entry .google-login-recovery p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.auth-entry .email-auth-notice,.auth-entry .auth-field-error{margin:0;font-size:13px;line-height:1.5}.auth-entry .auth-field-error{color:var(--danger-text)}.auth-entry .email-auth-form input[aria-invalid=true]{border-color:var(--danger-text)}.auth-entry .email-auth-confirmation{display:grid;grid-template-columns:1fr;gap:16px;color:var(--text)}.auth-entry .email-auth-confirmation p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}.auth-entry .auth-confirmation-address{color:var(--text);font-size:15px;font-weight:var(--font-weight-emphasis, 600);overflow-wrap:anywhere}@keyframes auth-loading-spin{to{transform:rotate(360deg)}}@media(max-width:540px){body .app-shell.is-signed-out .auth-entry{padding:max(16px,env(safe-area-inset-top)) 12px max(16px,env(safe-area-inset-bottom))}.auth-entry .auth-entry-card{gap:20px;padding:20px}}@media(prefers-reduced-motion:reduce){.auth-entry .google-login-loading svg{animation:none}}.auth-entry .auth-heading h1{scroll-margin-block-start:24px}[dir=rtl] .auth-entry .auth-confirmation-address{text-align:right}.student-notes-workspace{display:grid;gap:16px}.student-notes-context,.student-note-editor{display:grid;gap:8px}.student-notes-workspace textarea{box-sizing:border-box;width:100%;padding:12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);font:inherit;resize:vertical}.student-note-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px}.student-notes-list{display:grid;gap:12px}.student-notes-list>article{padding:16px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.student-notes-list>article>header{display:flex;justify-content:space-between;gap:12px;align-items:center}.student-notes-list>article>header>div:first-child{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted)}.student-notes-list p,.teaching-previous-lesson-notes p{white-space:pre-wrap;overflow-wrap:anywhere}.teaching-previous-lesson-notes{border:1px solid var(--line);border-radius:var(--radius-panel);padding:12px}.teaching-previous-lesson-notes summary{cursor:pointer}.teaching-previous-lesson-notes article{padding-block:12px}.teaching-previous-lesson-notes time{color:var(--muted)}.student-timeline-tools{display:flex;align-items:flex-start;gap:12px}.student-timeline-tools>details{flex:1}.student-timeline-tools summary,.student-timeline-lesson>summary{cursor:pointer;min-height:44px;align-content:center}.student-timeline-lesson>summary{overflow-wrap:anywhere}.student-timeline-expanded .learning-notebook-layout{grid-template-columns:minmax(0,1fr)}.student-timeline-expanded .learning-notebook{padding:0}.student-timeline-note-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:0}.student-timeline-lesson[open]+.student-timeline-note-preview{display:none}.attendance-choice-grid button>svg,.attendance-choice-grid button>span>svg{transform-box:fill-box;transform-origin:center}.note-save-icon{position:relative;display:inline-grid;width:20px;height:20px;place-items:center}.note-save-icon>i{position:absolute;inset:-3px;border:1.5px solid currentcolor;border-radius:50%;opacity:0;pointer-events:none}.note-save-icon>svg{transform-origin:center}.teacher-diary-entry-save-slot{position:relative}.teacher-diary-entry-saved{position:absolute;inset:0;justify-content:flex-end;display:inline-flex;flex:0 0 auto;align-items:center;gap:5px;color:var(--success, #267750);font-size:12px;white-space:nowrap}@media(max-width:700px){.teacher-diary-entry-saved{justify-content:flex-start}}.teacher-diary-save-button.is-saved:disabled{opacity:1}.resource-action-receipt{display:flex;align-items:center;gap:10px;min-width:0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent, #197761) 20%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--accent, #197761) 5%,var(--surface-card, #fff));color:var(--text, #183e34)}.resource-action-receipt>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600}.resource-action-receipt-icon{display:grid;place-items:center;color:var(--accent, #197761);flex:0 0 auto}.resource-action-receipt-count{margin-inline-start:auto;display:grid;place-items:center;min-width:25px;height:25px;border-radius:8px;background:color-mix(in srgb,var(--accent, #197761) 12%,transparent);font-size:12px;font-variant-numeric:tabular-nums;font-weight:var(--font-weight-heading, 700)}.teaching-block-picker-modal>.resource-action-receipt{margin:0 18px 10px}.teaching-resource-picker-dialog>.resource-action-receipt{margin:0 20px 12px}.teaching-resource-picker-dialog.resource-source-dialog:has(>.resource-action-receipt){grid-template-rows:auto auto minmax(0,1fr) auto}.teaching-resource-picker-dialog.teaching-attachment-resource-picker:has(>.resource-action-receipt){grid-template-rows:auto auto minmax(0,1fr)}.resource-action-flight{position:fixed;inset:0 auto auto 0;z-index:1800;pointer-events:none;display:flex;align-items:center;gap:10px;width:190px;height:48px;padding:10px 12px;border:1px solid color-mix(in srgb,#197761 25%,white);border-radius:12px;background:var(--surface-card, #fff);box-shadow:0 8px 22px #173e3229;color:var(--text, #173e32);transform-origin:center;overflow:hidden}.resource-action-flight strong{font-family:inherit;font-size:12px;font-weight:600;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resource-action-flight-page{flex:0 0 auto;width:18px;height:23px;border:1.5px solid #197761;border-radius:3px;background:repeating-linear-gradient(to bottom,transparent 0 4px,#19776155 4px 5px,transparent 5px 8px) center / 9px 16px no-repeat}.teaching-block-picker-modal{max-width:calc(100vw * var(--app-display-scale-inverse, 1) - 40px);grid-template-rows:auto auto auto minmax(0,1fr) auto}body[data-app-layout-mode=phone] .teaching-block-picker-modal:has(>.resource-action-receipt){grid-template-rows:auto auto auto minmax(0,1fr) auto}@media(min-width:1200px){body:not([data-app-layout-mode=phone]) .teaching-block-picker-filter-content{grid-template-columns:minmax(190px,1fr) minmax(830px,2.9fr) auto}}@media(prefers-reduced-motion:reduce){.resource-action-flight{display:none}}.assistant-tools .student-guide-launcher{width:36px;min-width:36px;height:36px;min-height:36px;padding:0;border:1px solid var(--action-control-border, var(--line));border-radius:var(--radius-control);background:var(--surface-popover);color:var(--text-muted);box-shadow:var(--shadow-dropdown)}.assistant-tools .student-guide-launcher:hover{background:var(--action-control-hover-bg, var(--teach-green-soft));color:var(--text)}.student-guide-launcher svg{flex-shrink:0}.student-guide-options{display:grid;gap:10px}.student-guide-start small{display:block;margin-top:4px;font-size:12px;font-weight:400}.student-guide-start:disabled{opacity:.6;cursor:default}.guided-help-settings{display:inline-flex;gap:8px;align-items:center;min-height:44px}.student-guide-backdrop{position:fixed;inset:0;z-index:260;background:color-mix(in srgb,var(--text) 24%,transparent)}.student-guide-menu{position:absolute;inset-block:0;inset-inline-end:0;width:min(340px,100%);padding:24px;background:var(--surface-popover);box-shadow:var(--shadow-drawer);overflow:auto}@keyframes student-guide-drawer-enter{0%{transform:translate3d(var(--student-guide-enter-offset, 100%),0,0)}to{transform:translateZ(0)}}@keyframes student-guide-backdrop-enter{0%{opacity:0}to{opacity:1}}.student-guide-backdrop[dir=rtl]{--student-guide-enter-offset: -100%}@media(prefers-reduced-motion:no-preference){.student-guide-backdrop{animation:student-guide-backdrop-enter .2s ease-out}.student-guide-menu{animation:student-guide-drawer-enter .32s cubic-bezier(.22,1,.36,1)}}.student-guide-menu header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.student-guide-menu h2{font-size:21px;margin:0}.student-guide-menu header button{min-width:44px;min-height:44px}.student-guide-start{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text);font:inherit;font-weight:500;cursor:pointer;text-align:start}.student-guide-start span{flex:1}.student-guide-outline{position:fixed;z-index:231;border:2px solid var(--teach-green);border-radius:var(--radius-control);box-shadow:0 0 0 100vmax #00000029;pointer-events:none}.student-guide-bubble{position:fixed;z-index:232;width:240px;padding:16px;padding-inline-end:48px;border:0;border-radius:var(--radius-panel);background:var(--teach-green);color:var(--teach-action-solid-text);box-shadow:var(--shadow-dropdown);overflow:visible}.student-guide-bubble[hidden],.student-guide-outline[hidden]{display:none}.teaching-library-detail-modal:has(>.student-guide-bubble){animation:none}.student-guide-bubble p{margin:0;font-size:14px;line-height:1.5;font-weight:500}.student-guide-close{position:absolute;inset-inline-end:0;top:0;display:grid;place-items:center;min-width:44px;min-height:44px;padding:0;border:0;border-radius:var(--radius-control);background:transparent;color:inherit;cursor:pointer}.student-guide-close:hover{background:color-mix(in srgb,currentColor 12%,transparent)}.student-guide-close:focus-visible{outline:2px solid currentColor;outline-offset:-4px}.student-guide-progress{display:flex;gap:4px;margin-top:12px}.student-guide-progress i{display:block;width:4px;height:4px;border-radius:999px;background:currentColor;opacity:.4}.student-guide-progress i[data-current=true]{width:12px;opacity:1}.student-guide-bubble:before{content:"";position:absolute;width:12px;height:12px;background:inherit;transform:rotate(45deg);pointer-events:none}.student-guide-bubble[data-side=bottom]:before{left:var(--guide-pointer);top:-6px;margin-left:-6px}.student-guide-bubble[data-side=top]:before{left:var(--guide-pointer);bottom:-6px;margin-left:-6px}.student-guide-bubble[data-side=right]:before{top:var(--guide-pointer);left:-6px;margin-top:-6px}.student-guide-bubble[data-side=left]:before{top:var(--guide-pointer);right:-6px;margin-top:-6px}.student-guide-bubble[data-side=detached]:before{display:none}body:has([aria-modal=true]:not(.student-guide-menu)) :is(.assistant-tools,.student-guide-bubble:not([data-guide-modal=true]),.student-guide-outline:not([data-guide-modal=true])){visibility:hidden}@media(prefers-reduced-motion:no-preference){.student-guide-start:active{transform:translateY(1px)}}.student-guide-intro{margin:-8px 0 20px;color:var(--text-muted);font-size:14px;line-height:1.6}.student-guide-number{display:grid;place-items:center;flex:0 0 26px;height:26px;border:1px solid currentColor;border-radius:50%;font-size:13px}.student-guide-finish{display:block;min-height:44px;margin-top:8px;padding:8px 12px;background:transparent;border:1px solid currentColor;border-radius:var(--radius-control);color:inherit;font:inherit;cursor:pointer}.guided-help-welcome{position:fixed;inset-inline:16px;bottom:90px;z-index:225;padding:16px;background:var(--surface-popover);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow-dropdown)}.guided-help-welcome p{margin:0 0 8px}@media(min-width:901px){body:not([data-app-layout-mode=phone]) .calendar-management-page .google-external-chip,body:not([data-app-layout-mode=phone]) .calendar-management-page .month-cell-item.google{background:color-mix(in srgb,var(--mgmt-blue) 10%,var(--surface-sheet));border:1px solid color-mix(in srgb,var(--mgmt-blue) 32%,var(--line));color:var(--text)}body:not([data-app-layout-mode=phone]) .calendar-management-page .calendar-reminder-empty{min-height:80px;padding:16px}body:not([data-app-layout-mode=phone]) .calendar-management-page .calendar-reminder-panel{min-height:0}body:not([data-app-layout-mode=phone]) .calendar-management-page .calendar-proposal-empty{padding:12px}body:not([data-app-layout-mode=phone]) .assignment-sheet .assignment-card:is(.repeat-scheduler-card,.quick-booking-card){background:var(--surface-sheet);border-radius:var(--radius-dialog, 20px)}body:not([data-app-layout-mode=phone]) .assignment-sheet .repeat-scheduler-card{padding:20px;gap:16px}body:not([data-app-layout-mode=phone]) .quick-booking-card .assignment-group-option{min-height:0}body:not([data-app-layout-mode=phone]) .quick-booking-card .assignment-group{min-height:0;padding-block:12px}body:not([data-app-layout-mode=phone]) .quick-booking-card .assignment-group-student-chips{gap:4px}body:not([data-app-layout-mode=phone]) .quick-booking-card .assignment-group-section{margin-bottom:12px}body:not([data-app-layout-mode=phone]) .quick-booking-card .assignment-group-options{gap:8px}}.lesson-proposal-series{padding:16px;background:var(--surface-sheet);border:1px solid var(--line);border-radius:var(--radius-panel)}.lesson-proposal-series ol{display:grid;gap:8px;max-height:200px;overflow-y:auto;padding-inline-start:24px}.lesson-proposal-card>.lesson-proposal-series{margin-inline:20px}.lesson-proposal-card.is-series h2{font-size:28px}.calendar-proposal-series-dates{grid-column:1 / -1;min-width:0}.calendar-proposal-series-dates ul{display:grid;gap:8px;max-height:180px;overflow-y:auto;padding-inline-start:20px}@media(min-width:901px){body:not([data-app-layout-mode=phone]) .today-home-page:has(.today-empty-agenda) .today-empty-agenda{min-height:72px;padding:16px;border:0}body:not([data-app-layout-mode=phone]) .today-home-page:has(.today-empty-agenda) .home-section,body:not([data-app-layout-mode=phone]) .today-home-page:has(.today-empty-agenda) .home-debt-panel{box-shadow:none}body:not([data-app-layout-mode=phone]) .today-home-page:has(.today-empty-agenda) .today-home-primary-grid,body:not([data-app-layout-mode=phone]) .today-home-page:has(.today-empty-agenda) .today-home-existing-grid{align-items:start}body:not([data-app-layout-mode=phone]) .home-attendance-dialog,body:not([data-app-layout-mode=phone]) .home-attendance-dialog-body{background:var(--surface-sheet);border-radius:20px}body:not([data-app-layout-mode=phone]) .home-attendance-dialog .attendance-panel{background:transparent;padding:20px 24px}body:not([data-app-layout-mode=phone]) .debt-reminder-card{background:var(--surface-sheet);border-radius:20px}body:not([data-app-layout-mode=phone]) .debt-reminder-card .debt-reminder-message{height:auto;min-height:0}body:not([data-app-layout-mode=phone]) .debt-reminder-card .debt-reminder-message textarea{height:180px;min-height:180px;resize:vertical}body:not([data-app-layout-mode=phone]) .debt-reminder-card .debt-reminder-send{width:auto;flex:0 0 auto;padding-inline:16px;gap:8px}body:not([data-app-layout-mode=phone]) .payments-page:not([data-payment-tab=statistics]) .app-page-header .app-page-header-copy>.app-eyebrow{display:none}body:not([data-app-layout-mode=phone]) .payments-page:not([data-payment-tab=statistics]) .payments-table-panel{box-shadow:none;padding:16px}body:not([data-app-layout-mode=phone]) .payments-page .payment-debt-sort-options{width:auto;min-width:0}body:not([data-app-layout-mode=phone]) .payments-page .payment-debt-sort-option{min-height:36px;padding:8px 12px}body:not([data-app-layout-mode=phone]) .payments-page .payment-history-heading{margin-bottom:12px}body:not([data-app-layout-mode=phone]) .payments-page .payment-history-heading>div>:is(p,small){display:none}body:not([data-app-layout-mode=phone]) .payments-page .payment-row.paid{background:var(--surface-sheet)}body:not([data-app-layout-mode=phone]) .payments-page .payment-history-period-summary{padding:12px;flex-wrap:wrap;gap:8px 24px}body:not([data-app-layout-mode=phone]) .payment-history-period-summary .payment-period-summary-label{flex-basis:100%;grid-column:1 / -1;font-size:14px;color:var(--muted)}body:not([data-app-layout-mode=phone]) .payments-page .payment-credit-record{display:none}body:not([data-app-layout-mode=phone]) .payments-page .credit-summary-row{padding:12px;box-shadow:none;gap:16px}body:not([data-app-layout-mode=phone]) .mark-paid-card:has(.mark-paid-selection-summary){border-radius:20px}body:not([data-app-layout-mode=phone]) .mark-paid-selection-summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px;background:var(--surface-sheet);border:1px solid var(--line);border-radius:12px}body:not([data-app-layout-mode=phone]) .mark-paid-selection-summary strong{font-size:22px}body:not([data-app-layout-mode=phone]) .contacts-page .parent-edit-grid{gap:12px;padding:12px}body:not([data-app-layout-mode=phone]) .contacts-page .contact-existing-parent-toggle{margin-bottom:4px}body:not([data-app-layout-mode=phone]) .contacts-page .contact-parent-card{box-shadow:none}body:not([data-app-layout-mode=phone]) .contacts-page .contact-add-card{padding:16px;min-height:0;gap:12px}body:not([data-app-layout-mode=phone]) .contacts-page .contact-add-card p{margin:0}body:not([data-app-layout-mode=phone]) .contacts-page .student-profile-grid{gap:12px}body:not([data-app-layout-mode=phone]) .contacts-page .contact-student-summary-strip{border-radius:12px}body:not([data-app-layout-mode=phone]) .contact-import-dialog:has(.contact-import-error){width:min(640px,calc(100vw - 48px));background:var(--surface-sheet);border-radius:20px}body:not([data-app-layout-mode=phone]) .contact-import-dialog:has(.contact-import-error) h2{font-size:21px}body:not([data-app-layout-mode=phone]) .contact-import-dialog:has(.contact-import-error) .contact-import-actions{display:flex;gap:12px;justify-content:space-between}body:not([data-app-layout-mode=phone]) .contact-import-dialog .contact-import-error{min-height:0;padding:24px}body:not([data-app-layout-mode=phone]) .payments-page .payment-shared-sort-control{width:fit-content;max-width:100%;grid-template-columns:auto auto;justify-self:start}body:not([data-app-layout-mode=phone]) .payment-history-filter-menu button[data-accent=true],body:not([data-app-layout-mode=phone]) .payment-history-filter [data-accent=true]{border-inline-start:4px solid var(--app-dropdown-accent);background:color-mix(in srgb,var(--app-dropdown-accent) 12%,var(--surface-sheet))}body:not([data-app-layout-mode=phone]) .payment-history-filter-menu button[data-accent=true]:is(:hover,:focus-visible,.selected){background:color-mix(in srgb,var(--app-dropdown-accent) 24%,var(--surface-sheet))}}@media(min-width:981px){body:not([data-app-layout-mode=phone]) .open-lesson-focus-workspace:not(.open-lesson-presentation-mode) .open-lesson-activity-stage{gap:16px}body:not([data-app-layout-mode=phone]) .open-lesson-focus-workspace:not(.open-lesson-presentation-mode) .open-lesson-instruction-canvas{min-height:180px;padding:16px}body:not([data-app-layout-mode=phone]) .open-lesson-focus-workspace:not(.open-lesson-presentation-mode) .open-lesson-instruction-content{min-height:0;padding-top:12px}body:not([data-app-layout-mode=phone]) .open-lesson-focus-workspace:not(.open-lesson-presentation-mode) .open-lesson-note-composer textarea{min-height:160px;height:160px;max-height:none;resize:vertical}body:not([data-app-layout-mode=phone]) .teaching-lessons-directory .teaching-lesson-history-row,body:not([data-app-layout-mode=phone]) .teaching-lessons-directory .teaching-lesson-history-row.group-lesson,body:not([data-app-layout-mode=phone]) .teaching-lessons-directory .teaching-lesson-history-row:hover,body:not([data-app-layout-mode=phone]) .teaching-lessons-directory .teaching-lesson-history-row:has(.teaching-lesson-row-open-hitarea:hover){background:var(--surface-sheet, var(--surface-card));background-color:var(--surface-sheet, var(--surface-card))}body:not([data-app-layout-mode=phone]) .teaching-lessons-directory .teaching-lesson-row-status{border:1px solid color-mix(in srgb,var(--app-warning-text, var(--rose)) 46%,var(--line));padding:5px 10px;color:var(--app-warning-text, var(--text));background:color-mix(in srgb,var(--app-warning-text, var(--rose)) 16%,var(--surface-sheet, var(--surface-card)));font-weight:var(--font-weight-heading, 700)}body:not([data-app-layout-mode=phone]) .teaching-lessons-directory .teaching-lesson-row-status.status-completed,body:not([data-app-layout-mode=phone]) .teaching-lessons-directory .teaching-lesson-row-status.status-resolved{border-color:color-mix(in srgb,var(--green) 48%,var(--line));color:var(--app-success-text);background:color-mix(in srgb,var(--green) 14%,var(--surface-sheet, var(--surface-card)))}body:not([data-app-layout-mode=phone]) .teaching-lessons-directory .teaching-lesson-row-status.status-cancelled{border-color:color-mix(in srgb,var(--rose) 46%,var(--line));color:var(--rose);background:color-mix(in srgb,var(--rose) 12%,var(--surface-sheet, var(--surface-card)))}body:not([data-app-layout-mode=phone]) .teaching-block-picker-modal{width:min(1180px,calc(100vw - 48px));border-radius:20px;background:var(--surface-sheet, var(--surface-card))}body:not([data-app-layout-mode=phone]) .teaching-block-picker-list{gap:12px}body:not([data-app-layout-mode=phone]) .teaching-block-picker-row{gap:12px;padding:16px}body:not([data-app-layout-mode=phone]) .teaching-lessons-directory .teaching-lesson-filters,body:not([data-app-layout-mode=phone]) .teaching-lessons-directory .teaching-lesson-filters>*{gap:8px}body:not([data-app-layout-mode=phone]) .teaching-blocks-page>.teaching-panel,body:not([data-app-layout-mode=phone]) .teaching-blocks-page .teaching-top-filter-panel{padding:16px}body:not([data-app-layout-mode=phone]) .teaching-blocks-page .app-page-header-copy>p,body:not([data-app-layout-mode=phone]) .teaching-blocks-page .teaching-eyebrow{display:none}body:not([data-app-layout-mode=phone]) .teaching-activity-detail-dialog{border-radius:20px;background:var(--surface-sheet, var(--surface-card))}body:not([data-app-layout-mode=phone]) .teaching-activity-detail-dialog .teaching-activity-editor-workspace{grid-template-columns:minmax(0,1fr) 260px;gap:16px}body:not([data-app-layout-mode=phone]) .teaching-activity-detail-dialog .teaching-activity-editor-main{padding:16px}body:not([data-app-layout-mode=phone]) .teaching-activity-detail-dialog .teaching-template-editor-footer{padding:12px 16px}body:not([data-app-layout-mode=phone]):has(.teaching-activity-detail-dialog) .app-action-menu,body:not([data-app-layout-mode=phone]):has(.teaching-activity-detail-dialog) .teaching-activity-card-action-popover{border-radius:12px;background:var(--surface-sheet, var(--surface-card))}body:not([data-app-layout-mode=phone]):has(.teaching-activity-detail-dialog) .app-action-menu>button,body:not([data-app-layout-mode=phone]):has(.teaching-activity-detail-dialog) .teaching-activity-card-action-popover>button{min-height:40px}body:not([data-app-layout-mode=phone]) .student-file-resource-detail-dialog .teaching-resource-detail-metadata{display:flex;flex-direction:column;justify-content:flex-start;align-content:flex-start;gap:16px;overflow:auto;padding-inline-end:0}body:not([data-app-layout-mode=phone]) .student-file-resource-detail-dialog .teaching-resource-note-field{flex:0 0 auto}body:not([data-app-layout-mode=phone]) .student-file-resource-detail-dialog .teaching-resource-note-field textarea{min-height:220px;height:220px;max-height:320px;resize:vertical;overflow:auto}body:not([data-app-layout-mode=phone]) .open-lesson-resource-name-button{display:inline-flex;min-width:0;max-width:100%;border:0;padding:0;background:transparent;color:inherit;font:inherit;text-align:start;cursor:pointer}body:not([data-app-layout-mode=phone]) .open-lesson-resource-name-button:hover .open-lesson-resource-name,body:not([data-app-layout-mode=phone]) .open-lesson-resource-name-button:focus-visible .open-lesson-resource-name{color:var(--teach-action-soft-text);text-decoration:underline;text-underline-offset:3px}body:not([data-app-layout-mode=phone]) .open-lesson-resource-name-button:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 24%,transparent);outline-offset:2px;border-radius:var(--radius-control, 8px)}body:not([data-app-layout-mode=phone]) .student-messages-section{padding-bottom:16px}body:not([data-app-layout-mode=phone]) .student-messages-section .student-messages-layout,body:not([data-app-layout-mode=phone]) .student-messages-section .student-message-history{min-height:0}body:not([data-app-layout-mode=phone]) .student-messages-section .student-message-history-groups{max-height:none;margin-top:12px}body:not([data-app-layout-mode=phone]) .student-messages-section .student-message-history-filters{margin-block:12px}html[dir=rtl] body:not([data-app-layout-mode=phone]):has(.student-messages-section) .assistant-launcher{right:auto;left:20px;width:max-content}body:not([data-app-layout-mode=phone]) .teaching-resource-picker-dialog{border-radius:20px;background:var(--surface-sheet, var(--surface-card))}body:not([data-app-layout-mode=phone]) .teaching-resource-picker-dialog .teaching-resource-picker-body{gap:16px;padding:12px}}@media(min-width:901px){body:not([data-app-layout-mode=phone]) .student-import-source-dialog{background:var(--surface-sheet);border-radius:20px}body:not([data-app-layout-mode=phone]) .teaching-resource-page .app-page-header-copy>p:not(.teaching-eyebrow),body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-eyebrow{display:none}body:not([data-app-layout-mode=phone]) .teaching-resource-page .app-page-header{margin-bottom:12px}body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-panel{padding:16px}body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-block-filter-title>strong{display:none}body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-resource-results-head{margin-bottom:12px}body:not([data-app-layout-mode=phone]) .teaching-resource-detail-dialog .teaching-resource-note-field textarea{min-height:180px;height:220px;max-height:320px;resize:vertical;overflow-y:auto}body:not([data-app-layout-mode=phone]) .teaching-resource-detail-dialog .teaching-resource-detail-metadata{align-content:start;grid-template-rows:auto auto auto auto;gap:16px}body:not([data-app-layout-mode=phone]) .resource-import-empty{min-height:160px;padding:24px}body:not([data-app-layout-mode=phone]) .app-action-menu.resource-library-action-menu{background:var(--surface-sheet, var(--surface-card));border-radius:var(--radius-panel, 12px)}body:not([data-app-layout-mode=phone]) button.content-share-open.message-action-button:not(.message-action-button--icon-only),body:not([data-app-layout-mode=phone]) button.homework-open-whatsapp.message-action-button:not(.message-action-button--icon-only),body:not([data-app-layout-mode=phone]) button.parent-message-primary-action.message-action-button:not(.message-action-button--icon-only){width:auto;min-width:164px;max-width:none;height:40px;min-height:40px;flex:0 1 auto;border-radius:var(--radius-control, 8px);padding:0;white-space:nowrap;overflow:visible}body:not([data-app-layout-mode=phone]) button.content-share-open.message-action-button:not(.message-action-button--icon-only) .message-action-button-icon,body:not([data-app-layout-mode=phone]) button.homework-open-whatsapp.message-action-button:not(.message-action-button--icon-only) .message-action-button-icon,body:not([data-app-layout-mode=phone]) button.parent-message-primary-action.message-action-button:not(.message-action-button--icon-only) .message-action-button-icon{width:42px;min-width:42px;height:38px;min-height:38px;border-inline-end:1px solid color-mix(in srgb,var(--teach-green) 24%,var(--line))}body:not([data-app-layout-mode=phone]) .parent-message-template-list{grid-template-columns:1fr;gap:24px}body:not([data-app-layout-mode=phone]) .parent-message-template-card-grid{gap:16px}body:not([data-app-layout-mode=phone]) .settings-workspace [data-settings-id=messages] .app-settings-section-heading h2,body:not([data-app-layout-mode=phone]) .settings-workspace [data-settings-id=messages] .app-settings-section-heading h3,body:not([data-app-layout-mode=phone]) .settings-workspace [data-settings-id=installed] .app-settings-section-heading h2,body:not([data-app-layout-mode=phone]) .settings-workspace [data-settings-id=installed] .app-settings-section-heading h3{font-size:21px;line-height:1.35}body:not([data-app-layout-mode=phone]) .settings-workspace [data-settings-id=messages] .app-settings-section,body:not([data-app-layout-mode=phone]) .settings-workspace [data-settings-id=installed] .app-settings-section{padding:16px;box-shadow:none}body:not([data-app-layout-mode=phone]) .settings-workspace [data-settings-id=messages] .app-settings-section-heading,body:not([data-app-layout-mode=phone]) .settings-workspace [data-settings-id=installed] .app-settings-section-heading{margin-bottom:12px}body:not([data-app-layout-mode=phone]) .settings-workspace [data-settings-id=messages] .settings-workspace-actions,body:not([data-app-layout-mode=phone]) .settings-workspace [data-settings-id=installed] .settings-workspace-actions{margin-top:12px}body:not([data-app-layout-mode=phone]) .global-search-dialog{background:var(--surface-sheet, var(--surface-card));border-radius:var(--radius-dialog, 20px)}body:not([data-app-layout-mode=phone]) .global-search-dialog h2{font-size:21px;line-height:1.35}body:not([data-app-layout-mode=phone]) .support-sidebar-error{display:none}body:not([data-app-layout-mode=phone]) .support-load-failed{max-width:520px;margin-inline:auto;padding:24px}body:not([data-app-layout-mode=phone]) .assistant-panel{background:var(--surface-sheet, var(--surface-card))}body:not([data-app-layout-mode=phone]) .assistant-empty-welcome{display:grid;gap:8px;margin:8px 0 12px;padding:20px 16px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-card);text-align:start}body:not([data-app-layout-mode=phone]) .assistant-empty-welcome h3,body:not([data-app-layout-mode=phone]) .assistant-empty-welcome p{margin:0}body:not([data-app-layout-mode=phone]) .assistant-empty-welcome h3{font-size:21px;line-height:1.35}body:not([data-app-layout-mode=phone]) .assistant-empty-welcome p{color:var(--text);line-height:1.7}body:not([data-app-layout-mode=phone]) .assistant-empty-welcome p:last-child{color:var(--muted);font-size:13px}}body[data-app-layout-mode=phone] .mobile-more-page{gap:16px}body[data-app-layout-mode=phone] .mobile-more-group{gap:8px}body[data-app-layout-mode=phone] .mobile-more-row{box-shadow:var(--shadow-action-compact)}body[data-app-layout-mode=phone] .today-home-page .upcoming-row.needs-review,body[data-app-layout-mode=phone] .today-home-page .upcoming-row.needs-plan{border-color:var(--line)}body[data-app-layout-mode=phone] .today-home-page .today-lesson-copy{min-width:0}body[data-app-layout-mode=phone] .today-home-page .today-lesson-copy button{white-space:normal}body[data-app-layout-mode=phone] .home-debt-details>summary{cursor:pointer;min-height:44px;display:list-item;margin-inline-start:16px;padding-block:12px;color:var(--muted)}body[data-app-layout-mode=phone] .today-home-page .home-debt-amount{align-self:start;grid-column:2;grid-row:1}body[data-app-layout-mode=phone] .home-debt-charge-details{display:grid;gap:8px;padding-block-end:8px}body[data-app-layout-mode=phone] .home-debt-details .home-debt-student-chips{padding-block-end:8px}body[data-app-layout-mode=phone] .settings-phone-heading{display:flex;align-items:center;gap:8px;margin-block-end:16px}body[data-app-layout-mode=phone] .settings-phone-heading h1{flex:1;margin:0}body[data-app-layout-mode=phone] .settings-phone-heading>button{width:auto;margin:0;min-height:44px}body[data-app-layout-mode=phone] .settings-workspace .settings-workspace-group-stack{gap:16px}body[data-app-layout-mode=phone] .settings-workspace .settings-workspace-form-grid{gap:12px}body[data-app-layout-mode=phone] .settings-workspace .app-settings-section{padding:16px}body[data-app-layout-mode=phone] .settings-workspace .settings-workspace-page-header{margin-block-end:16px}body[data-app-layout-mode=phone] .settings-workspace .settings-workspace-disclosure>summary{min-height:44px;padding:12px 16px}body[data-app-layout-mode=phone] .student-import-source-dialog{padding:16px;gap:16px;background:var(--surface-sheet)}body[data-app-layout-mode=phone] .student-import-source-dialog input,body[data-app-layout-mode=phone] .student-import-source-dialog button{min-height:44px}body[data-app-layout-mode=phone] .auth-entry .google-login-recovery{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;border:0}body[data-app-layout-mode=phone] .auth-entry .google-login-recovery p{flex:1 1 100%}body[data-app-layout-mode=phone] .auth-entry{padding-inline:16px}.simple-rich-text-editor .simple-rich-text-toolbar>button[type=button].simple-rich-text-tool.tidy-text-trigger{width:auto;flex:0 0 auto;min-width:32px;padding-inline:8px;gap:4px;margin-inline-start:4px;white-space:nowrap;font-size:12px}.teaching-modal-backdrop.tidy-text-backdrop{z-index:calc(var(--z-dialog, 1000) + 2)}.tidy-text-dialog{display:flex;flex-direction:column;width:min(680px,calc(100vw * var(--app-display-scale-inverse, 1) - 32px));max-height:calc(100dvh * var(--app-display-scale-inverse, 1) - 32px);color:var(--text);background:var(--surface-card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-dialog);overflow:hidden}.tidy-text-dialog>header,.tidy-text-dialog>footer{display:flex;align-items:center;gap:8px;padding:16px;flex-shrink:0}.tidy-text-dialog>header{justify-content:space-between;border-bottom:1px solid var(--line)}.tidy-text-dialog h2{margin:0;font-size:21px}.tidy-text-dialog>footer{justify-content:flex-end;flex-wrap:wrap;border-top:1px solid var(--line)}.tidy-text-body{padding:16px;overflow-y:auto;min-height:0}.tidy-text-hint{font-size:12px;color:var(--muted)}.tidy-text-tabs{display:flex;gap:8px;margin-block:12px}.tidy-text-tabs [aria-pressed=true]{background:var(--teach-green-soft);border-color:var(--teach-green)}.tidy-text-body .simple-rich-text-writing-area,.tidy-text-body .simple-rich-text-content{min-height:220px}.tidy-text-body .simple-rich-text-writing-area,.tidy-text-body .simple-rich-text-content{overflow-wrap:anywhere}.teaching-lesson-planning-note>.simple-rich-text-editor .simple-rich-text-writing-area{min-height:140px}.open-lesson-note-composer>.simple-rich-text-editor .simple-rich-text-writing-area{min-height:120px}@media(max-width:700px){body[data-app-layout-mode=phone] .teaching-modal-backdrop.tidy-text-backdrop{padding:0}.app-shell[data-layout-mode=phone] .teacher-diary-rich-text-editor.simple-rich-text-editor .simple-rich-text-toolbar{flex-wrap:wrap}.tidy-text-dialog{width:100%;height:100dvh;max-height:100dvh;border-radius:0}.tidy-text-dialog button{min-height:44px}.tidy-text-dialog>footer{padding-bottom:max(16px,env(safe-area-inset-bottom))}}.teaching-activity-editor-main .activity-duration-editor>.simple-rich-text-editor.teaching-activity-rich-text-editor:has(>.first-use-tip){grid-template-rows:auto auto minmax(120px,1fr)}@media(max-width:700px){body[data-app-layout-mode=phone] .teaching-activity-detail-dialog .teaching-activity-editor-main>.activity-duration-editor:has(.first-use-tip){height:auto}body[data-app-layout-mode=phone] .teaching-activity-editor-main .activity-duration-editor>.simple-rich-text-editor:has(>.first-use-tip){grid-template-rows:max-content max-content minmax(160px,1fr)}}.resource-library-filters{display:grid;gap:16px}.resource-library-filters__search{display:flex;align-items:center;gap:12px}.resource-library-filters__search .teaching-search-field{flex:1;min-width:0}.resource-library-filters__primary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px}.resource-library-filters__field{display:grid;min-width:0;gap:6px}.resource-library-filters__field>span{color:var(--muted);font-size:14px}.resource-library-filters__field .app-dropdown{min-width:0;width:100%}.resource-library-filters__field .app-dropdown-trigger{min-height:44px}.teaching-panel.resource-library-filters button.resource-library-filters__toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-control);color:var(--text);background:var(--surface-input);font:inherit;cursor:pointer}.teaching-panel.resource-library-filters button.resource-library-filters__toggle[aria-pressed=true],.teaching-panel.resource-library-filters button.resource-library-filters__toggle[aria-expanded=true]{border-color:var(--teach-green);color:var(--teach-action-soft-text);background:var(--teach-green-soft)}.resource-library-filters__toggle svg{flex:none}.resource-library-filters__more{position:relative}.resource-library-filters__extra-count{position:absolute;top:-9px;inset-inline-end:-4px;min-width:24px;padding:1px 4px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-size:12px;line-height:18px}.resource-library-filters__more[aria-expanded=true] svg{transform:rotate(180deg)}.resource-library-filters__extra{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:16px;border-top:1px solid var(--line)}.resource-library-filters__active{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.resource-library-filters__active .app-active-filter-chip{max-width:100%}.teaching-panel.resource-library-filters button.resource-library-filters__clear{min-height:44px;padding:6px 8px;border:0;background:transparent;color:var(--teach-action-soft-text);font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.resource-library-results-sort{display:flex;align-items:center;gap:8px;min-width:0;margin-inline-start:auto}.resource-library-results-sort>span{color:var(--muted)}.resource-library-results-sort .app-dropdown{width:210px;max-width:100%}.resource-library-results-sort .app-dropdown-trigger{min-height:44px}.resource-library-result-count{margin:0;color:var(--muted)}@media(max-width:767px){.resource-library-filters{gap:12px;padding:12px}.resource-library-filters__search{flex-wrap:wrap;gap:8px}.resource-library-filters__search .teaching-search-field{flex-basis:100%}.resource-library-filters__primary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.resource-library-filters__extra{grid-template-columns:minmax(0,1fr)}.resource-library-filters__active .app-active-filter-chip{min-height:44px}.resource-library-filters__more{width:100%}.teaching-resource-results-head:has(.resource-library-results-sort){display:flex;flex-wrap:wrap;align-items:center;gap:8px}.resource-library-results-sort .app-dropdown{width:168px}.resource-library-results-sort{gap:4px}}.resource-library-filters--phone{gap:0;padding:12px}.resource-library-filters--phone .resource-library-filters__search{flex-wrap:nowrap;gap:8px}.resource-library-filters--phone .resource-library-filters__search .teaching-search-field{flex:1;min-width:0}.teaching-panel.resource-library-filters--phone button.resource-library-filters__toggle{flex:none;gap:6px;padding-inline:8px;font-size:14px}.resource-library-filters--phone .resource-library-filters__toggle b{min-width:18px;font-weight:var(--font-weight-heading);color:var(--teach-action-soft-text)}.teaching-panel.resource-library-filters--phone button.resource-library-filters__summary{display:flex;align-items:center;width:100%;min-width:0;min-height:44px;padding:4px 0 0;border:0;background:transparent;color:var(--teach-action-soft-text);font:inherit;text-align:start;cursor:pointer}.resource-library-filters__summary span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-library-filter-sheet{height:min(84dvh,680px);max-height:min(84dvh,680px)}.resource-library-filter-sheet .app-tabs{margin-bottom:16px}.resource-library-filter-sheet .resource-library-filters__primary{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.resource-library-filter-sheet .resource-library-filters__topic{grid-column:1 / -1;order:1}.resource-library-filter-sheet .resource-library-filters__extra{grid-template-columns:minmax(0,1fr);gap:16px;border:0}.resource-library-filters__check{display:flex;align-items:center;gap:10px;min-height:48px;padding-block:8px;cursor:pointer}.resource-library-filters__check input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--teach-green)}.resource-library-filter-sheet .app-mobile-filter-sheet__apply{font-size:16px}.resource-library-filter-sheet .app-mobile-filter-sheet__header{grid-template-columns:minmax(0,1fr) auto}.resource-library-filter-sheet .app-mobile-filter-sheet__close{width:auto;min-width:64px;padding-inline:8px;font:inherit;color:var(--teach-action-soft-text)}.resource-library-filter-sheet--sort .app-mobile-filter-sheet__clear{display:none}.resource-library-filter-sheet--sort .app-mobile-filter-sheet__apply{grid-column:1 / -1}.lesson-plan-first-workspace{display:grid;gap:18px;min-width:0}.teaching-add-to-lesson[hidden]{display:none}.lesson-plan-homework-add{justify-self:end}.lesson-plan-first-content{display:grid;gap:18px;min-width:0}.lesson-plan-first-content .teaching-lesson-planning-note{margin:0}.lesson-plan-first-content .lesson-plan-reading{padding:16px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card);overflow-wrap:anywhere}.lesson-plan-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.lesson-plan-section-heading h3{margin:0}.lesson-plan-section-heading small{color:var(--muted);font-weight:400;margin-inline-start:8px}.teaching-current-plan.is-empty{padding:0}.teaching-current-plan.is-empty .lesson-plan-section-heading{margin:0}.teaching-block-card.lesson-activity-disclosure>header{display:flex;gap:10px}.lesson-activity-disclosure>header>h3{flex:1;min-width:0;margin:0}.teaching-panel .lesson-activity-disclosure button.lesson-activity-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;gap:10px;padding:8px 0;border:0;background:transparent;color:var(--text);font:inherit;text-align:start}.lesson-activity-toggle>span{overflow-wrap:anywhere}.lesson-activity-toggle>svg{flex-shrink:0}.lesson-activity-toggle[aria-expanded=true]>svg{transform:rotate(180deg)}.lesson-activity-disclosure .lesson-activity-body[hidden]{display:none}.lesson-activity-body{display:grid;gap:12px;padding-top:12px}.lesson-activity-body .simple-rich-text-content{overflow-wrap:anywhere}.lesson-activity-disclosure .teaching-activity-card-action-menu{position:static;flex-shrink:0}.lesson-plan-first-activities{display:grid;gap:12px;min-width:0}.lesson-plan-first-activities .lesson-plan-section-heading{margin:0}.lesson-plan-first-content .open-lesson-resource-panel{min-width:0}.lesson-plan-first-content .open-lesson-note-composer{margin:0}.lesson-plan-first-workspace .open-lesson-presentation-header h1{overflow-wrap:anywhere}.lesson-plan-first-workspace .open-lesson-presentation-resources{padding:12px}.lesson-plan-first-content .open-lesson-presentation-note-composer{padding:0}.lesson-resources-panel .lesson-plan-section-heading{margin-bottom:10px}.lesson-standalone-resources .teaching-resource-row,.lesson-plan-first-content .open-lesson-resource-panel tbody tr{cursor:pointer}.lesson-standalone-resources .teaching-resource-row:hover,.lesson-plan-first-content .open-lesson-resource-panel tbody tr:hover{background:var(--teach-green-soft)}.lesson-plan-activity-tools{display:flex;gap:8px;align-items:center}.lesson-plan-empty{color:var(--muted);margin:0}.lesson-plan-first-workspace .open-lesson-inline-resource-preview{min-width:0}.lesson-plan-first-workspace .open-lesson-inline-resource-preview>header{gap:12px}body[data-app-layout-mode=phone] .teaching-lesson-planning-note{padding:8px;gap:6px}body[data-app-layout-mode=phone] .teaching-lesson-planning-note .simple-rich-text-toolbar{flex-wrap:nowrap;justify-content:space-between;gap:0;min-height:50px;padding:3px 2px;overflow-x:auto}body[data-app-layout-mode=phone] .teaching-lesson-planning-note .simple-rich-text-divider{display:none}body[data-app-layout-mode=phone] .teaching-lesson-planning-note .simple-rich-text-editor .simple-rich-text-toolbar>.simple-rich-text-tool{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;margin:0;padding:0}body[data-app-layout-mode=phone] .teaching-lesson-planning-note .tidy-text-trigger>span{display:none}body[data-app-layout-mode=phone] .teaching-lesson-planning-note :is(.simple-rich-text-writing-area,.lesson-plan-reading){padding:12px;font-size:16px;line-height:1.5}body[data-app-layout-mode=phone] .teaching-lesson-planning-note :is(.simple-rich-text-writing-area,.lesson-plan-reading) :is(p,ul,ol){margin-block:0 6px}body[data-app-layout-mode=phone] .teaching-lesson-planning-note :is(.simple-rich-text-writing-area,.lesson-plan-reading)>:last-child{margin-bottom:0}body[data-app-layout-mode=phone] .teaching-block-card.lesson-activity-disclosure>header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}body[data-app-layout-mode=phone] .lesson-activity-disclosure>header>h3{grid-column:1 / -1;grid-row:1}body[data-app-layout-mode=phone] .lesson-activity-disclosure>header>.teaching-card-icon{grid-column:1;grid-row:2}body[data-app-layout-mode=phone] .lesson-activity-disclosure>header>.activity-duration-badge{grid-column:2;grid-row:2}body[data-app-layout-mode=phone] .lesson-activity-disclosure>header>.teaching-activity-card-action-menu{grid-column:3;grid-row:2}body[data-app-layout-mode=phone] .lesson-activity-disclosure .lesson-activity-toggle{min-height:44px}body[data-app-layout-mode=phone] .lesson-plan-first-content .open-lesson-resource-panel thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}body[data-app-layout-mode=phone] .lesson-plan-first-content .open-lesson-resource-panel :is(table,tbody){display:block;width:100%}body[data-app-layout-mode=phone] .lesson-plan-first-content .open-lesson-resource-panel tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:12px;border-bottom:1px solid var(--line)}body[data-app-layout-mode=phone] .lesson-plan-first-content .open-lesson-resource-panel tbody td{display:block;width:auto;min-width:0;padding:0;border:0;margin:0;white-space:normal;overflow-wrap:anywhere}body[data-app-layout-mode=phone] .lesson-plan-first-content .open-lesson-resource-panel tbody td:first-child{grid-column:1;grid-row:1}body[data-app-layout-mode=phone] .lesson-plan-first-content .open-lesson-resource-panel tbody td:nth-child(2){grid-column:1;grid-row:2;color:var(--muted)}body[data-app-layout-mode=phone] .lesson-plan-first-content .open-lesson-resource-panel tbody td:last-child{grid-column:2;grid-row:1 / 3}body[data-app-layout-mode=phone] .lesson-plan-first-content .open-lesson-resource-name-button{width:100%;min-height:44px;text-align:start}body[data-app-layout-mode=phone] .lesson-plan-first-content .open-lesson-resource-name{align-items:start;white-space:normal}@media(max-width:700px){.lesson-activity-toggle{min-height:44px}.lesson-plan-section-heading{gap:8px}.lesson-plan-first-content .lesson-plan-reading{padding:12px}}:root{--radius-control: 8px;--radius-card: 12px;--radius-panel: 12px;--radius-shell: 18px;--radius-sheet: 20px;--button-compact-h: 32px;--button-standard-h: 36px;--button-primary-h: 40px;--button-phone-h: 44px;--dropdown-option-h: 40px;--dropdown-menu-max-h: 280px;--z-dialog: 1000;--z-dropdown: 1100;--shadow-dropdown: 0 4px 8px rgba(30, 42, 58, .12);--shadow-dialog: 0 4px 8px rgba(15, 23, 42, .22);--shadow-drawer: -4px 0 8px rgba(15, 23, 42, .18);--shadow-sheet: 0 -4px 8px rgba(15, 23, 42, .18);--shadow-action-strong: 0 5px 13px rgba(36, 53, 44, .2), 0 2px 3px rgba(36, 53, 44, .1);--shadow-action-compact: 0 3px 8px rgba(36, 53, 44, .17);--font-page-title: 31px;--font-section-title: 21px;--font-body: 14px;--font-supporting: 12px;--font-caption: 12px;--font-weight-body: 400;--font-weight-label: 500;--font-weight-emphasis: 600;--font-weight-heading: 700;--line-height-heading: 1.15;--line-height-control: 1.25;--line-height-body: 1.5;--focus-ring: 0 0 0 3px color-mix(in srgb, var(--teach-green) 24%, transparent);--danger-soft: color-mix(in srgb, var(--rose) 11%, var(--surface-card));--danger-line: color-mix(in srgb, var(--rose) 30%, var(--line));--danger-text: color-mix(in srgb, var(--rose) 72%, var(--text));--segmented-bg: color-mix(in srgb, var(--surface-card) 82%, var(--teach-green-soft));--surface-soft: var(--surface-sheet-muted, var(--surface-card));--calendar-grid-line: color-mix(in srgb, var(--line) 52%, transparent);--calendar-today-line: color-mix(in srgb, var(--mgmt-blue) 58%, var(--line));--format-png-border: #b9dffd;--format-png-bg: #e0f2fe;--format-png-text: #075985;--format-jpg-border: #e9d5ff;--format-jpg-bg: #f3e8ff;--format-jpg-text: #7e22ce;--format-webp-border: #c7d2fe;--format-webp-bg: #e0e7ff;--format-webp-text: #4338ca;--format-image-border: #fde68a;--format-image-bg: #fef3c7;--format-image-text: #92400e;--format-pdf-border: #fecaca;--format-pdf-bg: #fee2e2;--format-pdf-text: #b91c1c;--format-html-border: #bbf7d0;--format-html-bg: #dcfce7;--format-html-text: #166534;--format-doc-border: #bfdbfe;--format-doc-bg: #dbeafe;--format-doc-text: #1d4ed8;--format-presentation-border: #fed7aa;--format-presentation-bg: #ffedd5;--format-presentation-text: #c2410c;--format-sheet-border: #a7f3d0;--format-sheet-bg: #d1fae5;--format-sheet-text: #047857;--format-video-border: #fbcfe8;--format-video-bg: #fce7f3;--format-video-text: #be185d;--format-other-border: #d7dce2;--format-other-bg: #eef1f4;--format-other-text: #53606d}@media(min-width:981px)and (min-height:861px)and (max-height:1050px){.app-shell[data-layout-mode=desktop]>.app-sidebar{gap:8px;padding:10px}.app-shell[data-layout-mode=desktop] .sidebar-brand{padding:4px 8px}.app-shell[data-layout-mode=desktop] .sidebar-desktop-nav{gap:6.5px}.app-shell[data-layout-mode=desktop] .nav-group{gap:3px;padding:6px}.app-shell[data-layout-mode=desktop] .nav-group-label{padding-block-end:2px}.app-shell[data-layout-mode=desktop] .sidebar-desktop-nav .nav-item{min-height:33px}}:where(input,textarea,select){font:inherit}@media(max-width:700px){body[data-app-layout-mode=phone] .today-calendar.day-change-forward{animation:calendar-day-enter-forward .18s cubic-bezier(.2,.75,.3,1)}body[data-app-layout-mode=phone] .today-calendar.day-change-backward{animation:calendar-day-enter-backward .18s cubic-bezier(.2,.75,.3,1)}}@keyframes calendar-day-enter-forward{0%{opacity:.68;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@keyframes calendar-day-enter-backward{0%{opacity:.68;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@media(prefers-reduced-motion:reduce){body[data-app-layout-mode=phone] .today-calendar.day-change-forward,body[data-app-layout-mode=phone] .today-calendar.day-change-backward{animation:none}}.app-sidebar{border-radius:var(--radius-shell)}.home-hero,.home-section,.calendar-tool,.tool-page,.side-panel,.payments-table-panel,.payment-detail-panel,.payment-section,.finance-summary,.payer-card,.calendar-roster,.contacts-roster,.contact-detail,.teaching-panel,.lesson-page,.resource-library,.student-file,.teaching-filter-panel,.teaching-library-filter-panel,.teaching-blocks-resource-section,.teaching-template-compact-row,.resource-card,.lesson-card,.plan-block,.summary-block,.name-suggestion-card,.name-identity-editor{border-radius:var(--radius-panel)}.home-hero,.home-section,.calendar-tool,.tool-page,.side-panel,.payments-table-panel,.payment-detail-panel,.calendar-roster,.contacts-roster,.contact-detail,.teaching-panel,.lesson-page,.resource-library,.student-file,.teaching-filter-panel,.teaching-library-filter-panel{border-color:var(--line);background-color:var(--surface-panel);box-shadow:var(--shadow-panel)}.home-page,.teaching-module{width:min(1280px,100%);margin-inline:auto}.calendar-management-page{width:100%;max-width:none}#library-workspace-title{font-size:32px;line-height:1;letter-spacing:-.035em}.teaching-resource-page .teaching-resource-table-head{display:grid;grid-template-columns:minmax(0,1fr) 102px;gap:10px;min-height:28px;align-items:center;padding:0 12px;color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500);letter-spacing:.08em;text-transform:uppercase}.teaching-resource-page .teaching-resource-table-head>div{display:grid;grid-template-columns:minmax(280px,1.45fr) minmax(170px,.7fr) minmax(150px,.55fr) 28px;gap:10px;align-items:center}.teaching-resource-page .teaching-resource-grid{gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--line)}.teaching-resource-page .teaching-resource-card.teaching-resource-card--library{display:block;overflow:hidden;border:0;border-radius:0;padding:0;background:var(--surface-card);box-shadow:none}.teaching-resource-card--library.is-expanded{background:color-mix(in srgb,var(--teach-green) 3%,var(--surface-card))}.teaching-resource-compact-row{display:grid;grid-template-columns:minmax(0,1fr) 102px;gap:10px;align-items:center;min-height:50px;padding:0 12px}.teaching-resource-card--library button.teaching-resource-compact-toggle{min-width:0;min-height:50px;display:grid;grid-template-columns:minmax(280px,1.45fr) minmax(170px,.7fr) minmax(150px,.55fr) 28px;gap:10px;align-items:center;justify-items:stretch;justify-content:stretch;border:0;border-radius:0;padding:0;background:transparent;color:inherit;text-align:start;box-shadow:none}.teaching-resource-card--library button.teaching-resource-compact-toggle:hover{border-color:transparent;background:transparent}.teaching-resource-compact-identity{min-width:0;display:flex;align-items:center;gap:10px}.teaching-resource-compact-identity strong{overflow:hidden;font-size:13px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.teaching-resource-compact-chevron{justify-self:center;color:var(--muted);transition:transform .16s ease}.teaching-resource-card--library.is-expanded .teaching-resource-compact-chevron{transform:rotate(180deg)}.teaching-resource-compact-actions{display:grid;grid-template-columns:repeat(3,var(--button-standard-h));gap:6px}.teaching-resource-card--library .teaching-resource-compact-actions button{width:var(--button-standard-h);min-width:var(--button-standard-h);height:var(--button-standard-h);min-height:var(--button-standard-h);padding:0;color:var(--teach-green-dark)}@media(max-width:980px){.teaching-resource-page .teaching-resource-table-head>div,.teaching-resource-card--library button.teaching-resource-compact-toggle{grid-template-columns:minmax(0,1fr) minmax(145px,.55fr) 28px}.teaching-resource-page .teaching-resource-table-head>div>span:nth-child(2),.teaching-resource-compact-source{display:none}}@media(max-width:680px){#library-workspace-title{font-size:32px}.teaching-resource-page .teaching-resource-table-head{display:none}.teaching-resource-page .teaching-resource-grid{border-inline:0;border-radius:0}.teaching-resource-page .teaching-resource-card.teaching-resource-card--library,body[data-app-layout-mode=phone] .teaching-resource-page .teaching-resource-card.teaching-resource-card--library{padding:0}.teaching-resource-compact-row{grid-template-columns:minmax(0,1fr) 116px;gap:6px;min-height:56px;padding:0 8px}.teaching-resource-card--library button.teaching-resource-compact-toggle{min-height:56px;grid-template-columns:minmax(0,1fr) 24px;gap:6px}.teaching-resource-card.teaching-resource-card--library .teaching-resource-compact-actions{grid-template-columns:repeat(3,36px);gap:4px}.teaching-resource-card--library .teaching-resource-compact-actions button,body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-actions button{width:36px;min-width:36px;min-height:36px}}.payments-page{width:min(1280px,100%);max-width:1280px;margin-inline:auto;grid-template-columns:minmax(0,1fr)}body:not([data-app-layout-mode=phone]) .payments-page{grid-template-columns:minmax(0,1fr)}.payments-table-panel{width:100%;max-width:none}.calendar-tool input,.calendar-tool select,.calendar-tool textarea,.payment-section input,.payment-section select,.payment-section textarea,.drawer-card input,.drawer-card select,.drawer-card textarea,.contact-detail input,.contact-detail select,.contact-detail textarea,.teaching-module input,.teaching-module select,.teaching-module textarea,.app-dropdown-trigger,.voice-command-preview input,.voice-command-preview select,.voice-student-picker summary{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);box-shadow:none}.teaching-library-filter-panel .teaching-search-field input,.teaching-library-filter-panel .teaching-date-filter input,.teaching-library-filter-panel .teaching-filter-popup>button,.teaching-library-filter-panel .teaching-clear-filters,.app-dropdown-trigger{min-height:var(--button-standard-h);border-radius:var(--radius-control);font-size:14px}.teaching-clear-filters{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--muted);box-shadow:none}.teaching-clear-filters:hover:not(:disabled){border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.app-dropdown-menu{position:fixed;inset:auto;z-index:var(--z-dropdown);max-height:var(--dropdown-menu-max-h);display:grid;gap:0;overflow-y:auto;scrollbar-gutter:stable;border:1px solid var(--line);border-radius:var(--radius-panel);padding:4px;background:var(--surface-popover, var(--surface-panel-strong));box-shadow:var(--shadow-dropdown);overscroll-behavior:contain}.app-dropdown-menu button{width:100%;min-width:0;min-height:var(--dropdown-option-h);border-radius:var(--radius-control);padding-inline:12px;font-size:14px;font-weight:var(--font-weight-label, 500)}.app-dropdown,.app-dropdown-trigger{width:100%;min-width:0}.app-dropdown-trigger{min-height:var(--button-standard-h);padding-inline:12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);box-shadow:none;font-size:14px;font-weight:var(--font-weight-label, 500)}.app-dropdown-value,.app-dropdown-menu button>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-dropdown-trigger:hover:not(:disabled){border-color:color-mix(in srgb,var(--mgmt-blue) 42%,var(--line))}.app-dropdown-trigger:focus-visible,.app-dropdown.open .app-dropdown-trigger{border-color:var(--mgmt-blue);outline:3px solid color-mix(in srgb,var(--mgmt-blue-soft) 76%,transparent);outline-offset:1px}.app-dropdown-trigger:disabled{color:var(--muted);background:var(--surface-muted-band);opacity:.68;cursor:not-allowed}.app-dropdown-menu button:hover:not(:disabled),.app-dropdown-menu button:focus-visible{background:color-mix(in srgb,var(--mgmt-blue-soft) 70%,var(--surface-popover));outline:none}.app-dropdown-menu button.selected{background:var(--mgmt-blue-soft);color:var(--app-action-text);font-weight:var(--font-weight-label, 500)}.app-dropdown-menu button:disabled{color:var(--muted);opacity:.58;cursor:not-allowed}.app-dropdown-menu button.app-dropdown-action{justify-content:flex-start;color:var(--app-action-text);font-weight:var(--font-weight-strong, 600)}.app-dropdown-menu button.app-dropdown-action svg{flex:0 0 auto}.app-dropdown-menu button.app-dropdown-divider-after{margin-bottom:4px;border-bottom:1px solid var(--line)}.teaching-filter-popup>button{width:100%;min-height:var(--button-standard-h);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding-inline:12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text);box-shadow:none;font-size:14px;font-weight:var(--font-weight-label, 500);text-align:start}.teaching-filter-popup>button:hover,.teaching-filter-popup>button:focus-visible,.teaching-filter-popup>button[aria-expanded=true]{border-color:var(--mgmt-blue);outline:3px solid color-mix(in srgb,var(--mgmt-blue-soft) 76%,transparent);outline-offset:1px}.teaching-filter-popup>button.active{border-color:color-mix(in srgb,var(--mgmt-blue) 42%,var(--line));background:var(--mgmt-blue-soft);color:var(--app-action-text)}.teaching-filter-popup>button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teaching-filter-popup>button strong{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.teaching-filter-menu{position:fixed;inset:auto;z-index:var(--z-dropdown);max-height:var(--dropdown-menu-max-h);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;display:grid;gap:0;padding:4px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-popover, var(--surface-panel-strong));box-shadow:var(--shadow-dropdown)}.teaching-filter-menu button{min-height:var(--dropdown-option-h);display:flex;align-items:center;justify-content:space-between;gap:8px;padding-inline:12px;border:0;border-radius:var(--radius-control);background:transparent;color:var(--text);box-shadow:none;font-size:14px;font-weight:var(--font-weight-label, 500);text-align:start}.teaching-filter-menu button:hover,.teaching-filter-menu button:focus-visible{background:color-mix(in srgb,var(--mgmt-blue-soft) 70%,var(--surface-popover));outline:none}.teaching-filter-menu button.selected{border:0;background:var(--mgmt-blue-soft);color:var(--app-action-text);box-shadow:none}.primary-button,.teaching-primary-action,.teaching-add-resource-button,.teaching-add-resource-toggle,.teaching-new-block-button,.teaching-complete-lesson-button{min-height:var(--button-primary-h);border:1px solid var(--action-control-border, var(--teach-green));border-radius:var(--radius-control);background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));box-shadow:none}.quiet-button,.teaching-quiet-button,.teaching-secondary-action,.teaching-inline-actions button,.teaching-inline-actions a,.teaching-header-actions button,.teaching-add-row button,.teaching-summary-add button,.payment-actions button,.calendar-sync-actions button,.calendar-range-nav button,.file-action-button,.dialog-actions button,.drawer-actions button,.voice-command-actions button{min-height:var(--button-standard-h);border-radius:var(--radius-control);box-shadow:none}.teaching-quiet-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;font-weight:var(--font-weight-label, 500);cursor:pointer}.quiet-button,.teaching-quiet-button,.teaching-secondary-action,.teaching-inline-actions button,.teaching-inline-actions a,.file-action-button{border:1px solid var(--line);background:var(--surface-card);color:var(--text)}.danger-button,.teaching-delete-button,.teaching-delete-small,.resource-card .danger,.dialog-actions .danger-button{border:1px solid var(--danger-line);border-radius:var(--radius-control);background:var(--danger-soft);color:var(--danger-text);box-shadow:none}.icon-button,.mobile-sheet-close,.drawer-close,.calendar-range-nav button,.teaching-icon-button,.teaching-calendar-arrows button,.teaching-resource-card--library .teaching-resource-compact-actions button,.teaching-resource-card .teaching-resource-row-actions>button,.teaching-blocks-page .teaching-template-row-actions>button{width:36px;min-width:36px;height:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);box-shadow:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:none;box-shadow:var(--focus-ring)}.data-mode-toggle,.calendar-view-toggle,.payments-tabs,.history-tabs,.repeat-target-toggle,.teaching-calendar-toggle,.teaching-tabs,.lesson-tabs,.teaching-lesson-workflow-strip{display:flex;align-items:stretch;gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--segmented-bg);box-shadow:none}.data-mode-toggle button,.calendar-view-toggle button,.payments-tabs button,.history-tabs button,.repeat-target-toggle button,.teaching-calendar-toggle button,.teaching-tabs button,.lesson-tabs button,.teaching-lesson-workflow-strip button{min-height:var(--button-standard-h);border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--muted);box-shadow:none}.history-tabs button{flex:1 1 0;min-width:0}.data-mode-toggle button.active,.data-mode-toggle button[data-mode=real].active,.calendar-view-toggle button.active,.payments-tabs button.active,.history-tabs button.active,.repeat-target-toggle button.active,.teaching-calendar-toggle button.active,.teaching-tabs button.active,.teaching-tabs button[aria-selected=true],.lesson-tabs button.active,.lesson-tabs button[aria-selected=true],.teaching-lesson-workflow-strip button.active,.teaching-lesson-workflow-strip button[aria-selected=true]{border-color:var(--selection-control-border, var(--teach-green));background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text));box-shadow:none}.data-mode-toggle button:disabled,.calendar-view-toggle button:disabled,.payments-tabs button:disabled,.history-tabs button:disabled,.repeat-target-toggle button:disabled,.teaching-calendar-toggle button:disabled,.teaching-tabs button:disabled,.lesson-tabs button:disabled{opacity:.48}.roster-student,.student-roster-item,.teaching-student-row,.teaching-student-file-row,.contact-student-row,.student-group-dropdown-menu button,.student-group-pick-list button{border-radius:var(--radius-control)}.contacts-roster .roster-list>button,.teaching-student-files-list>button,.teaching-student-files-mobile-roster button{min-height:58px}.contacts-roster .roster-list>button.active,.contacts-roster .roster-list>button[aria-selected=true],.teaching-student-files-list>button.active,.teaching-student-files-list>button[aria-selected=true],.teaching-student-files-mobile-roster button.active,.teaching-student-files-mobile-roster button[aria-selected=true]{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--student-color, var(--teach-green)) 48%,#fff)}.teaching-student-header,.student-identity-header{border-radius:var(--radius-panel)}.resource-card,.teaching-resource-card,.teaching-template-compact-row,.payment-debt-line,.history-list article{border-radius:var(--radius-panel);box-shadow:none}.resource-card .teaching-inline-actions,.teaching-resource-card .teaching-inline-actions,.teaching-template-row-actions{gap:6px}.teaching-resource-card .teaching-inline-actions>a:first-child{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}.teaching-resource-card .teaching-inline-actions>button:first-of-type{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.mark-paid-modal,.assignment-sheet{z-index:var(--z-dialog)}.mark-paid-modal>*,.assignment-modal,.schedule-dialog,.teaching-resource-modal,.teaching-block-picker-modal,.teaching-complete-summary-modal,.confirm-dialog,.contact-create-dialog{border:1px solid var(--line);border-radius:var(--radius-sheet);background:var(--surface-panel-strong);box-shadow:var(--shadow-dialog)}.taxonomy-create-card{width:min(440px,100%);gap:18px}.taxonomy-create-heading{display:grid;gap:6px}.taxonomy-create-heading h2,.taxonomy-create-heading p,.taxonomy-create-error{margin:0}.taxonomy-create-heading h2{font-size:1.1rem;line-height:1.3}.taxonomy-create-heading p{color:var(--muted);font-size:.9rem;line-height:1.5}.taxonomy-create-field{min-width:0;gap:7px}.taxonomy-create-field-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}.taxonomy-manage-button{max-width:168px;min-height:var(--button-standard-h);justify-content:center;white-space:normal}.taxonomy-create-field input{min-height:var(--button-standard-h);border-radius:var(--radius-control);background:var(--surface-input);color:var(--text)}.taxonomy-create-field input:focus-visible{border-color:var(--mgmt-blue);outline:3px solid color-mix(in srgb,var(--mgmt-blue-soft) 76%,transparent);outline-offset:1px}.taxonomy-create-field input[aria-invalid=true]{border-color:var(--danger, #c84235)}.taxonomy-create-error{color:var(--danger, #c84235);font-size:.82rem;line-height:1.4}.taxonomy-create-actions button{min-height:var(--button-standard-h)}@media(max-width:520px){.taxonomy-create-field-row{grid-template-columns:minmax(0,1fr)}.taxonomy-manage-button{width:100%;max-width:none}}.voice-command-sheet,.mobile-more-sheet{border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;background:var(--surface-panel-strong);box-shadow:var(--shadow-sheet)}.voice-command-listener{border-radius:var(--radius-panel);background:var(--surface-card)}@media(max-width:700px){.app-shell,.app-sidebar{gap:8px;padding:8px}.mobile-primary-nav{gap:2px}.mobile-primary-nav .nav-item,body[data-app-layout-mode=phone] .mobile-primary-nav .nav-item{min-height:44px;padding-inline:2px}.app-main,.home-page,.management-screen,.management-layout,.calendar-management-page,.contacts-page,.payments-page,.teaching-module,body[data-app-layout-mode=phone] .teaching-module{width:100%;max-width:100%;margin:0;padding:0}.home-page,.management-layout,.calendar-management-page,.contacts-page,.payments-page,.teaching-module,.teaching-resource-page,.teaching-two-column,.teaching-lessons-page,.teaching-blocks-page{gap:8px}.home-hero,.home-section,.calendar-tool,.tool-page,.side-panel,.payments-table-panel,.payment-detail-panel,.payment-section,.calendar-roster,.contacts-roster,.contact-detail,.teaching-panel,.lesson-page,.resource-library,.student-file,.teaching-filter-panel,.teaching-library-filter-panel{padding:12px;border-radius:var(--radius-panel)}.home-hero{padding:14px}body[data-app-layout-mode=phone] .payments-page,body[data-app-layout-mode=phone] .payments-table-panel{width:100%;max-width:100%}body[data-app-layout-mode=phone] .teaching-resource-page .teaching-library-filter-panel,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-library-filter-panel{padding:10px}.data-mode-toggle button,.calendar-view-toggle button,.payments-tabs button,.history-tabs button,.repeat-target-toggle button,.teaching-calendar-toggle button,.teaching-tabs button,.lesson-tabs button,.teaching-lesson-workflow-strip button,.primary-button,.quiet-button,.danger-button,.teaching-primary-action,.teaching-secondary-action,.teaching-inline-actions button,.teaching-inline-actions a,.teaching-header-actions button,.teaching-add-row button,.teaching-summary-add button,.dialog-actions button,.drawer-actions button,.voice-command-actions button{min-height:44px}.icon-button,.mobile-sheet-close,.drawer-close,.calendar-range-nav button,.teaching-icon-button,.teaching-calendar-arrows button{width:44px;min-width:44px;min-height:44px}.teaching-library-filter-panel .teaching-search-field input,.teaching-library-filter-panel .teaching-date-filter input,.teaching-library-filter-panel .teaching-filter-popup>button,.teaching-library-filter-panel .teaching-clear-filters,.app-dropdown-trigger,.app-dropdown-menu button{min-height:var(--button-phone-h)}.mark-paid-modal>*,.assignment-modal,.schedule-dialog,.teaching-resource-modal,.teaching-block-picker-modal,.teaching-complete-summary-modal,.confirm-dialog{border-radius:var(--radius-sheet)}.contact-create-dialog,.drawer-card{border-radius:0}}body[data-app-layout-mode=phone] .app-shell{grid-template-columns:minmax(0,1fr);gap:8px;padding:8px}body[data-app-layout-mode=phone] .app-sidebar{position:relative;top:auto;width:100%;height:auto;gap:8px;padding:8px}body[data-app-layout-mode=phone] .mobile-primary-nav{gap:2px}body[data-app-layout-mode=phone] .mobile-primary-nav .nav-item{min-height:44px;padding-inline:2px}body[data-app-layout-mode=phone] .app-main,body[data-app-layout-mode=phone] .home-page,body[data-app-layout-mode=phone] .management-screen,body[data-app-layout-mode=phone] .management-layout,body[data-app-layout-mode=phone] .calendar-management-page,body[data-app-layout-mode=phone] .contacts-page,body[data-app-layout-mode=phone] .payments-page,body[data-app-layout-mode=phone] .teaching-module{width:100%;max-width:100%;margin:0;padding:0}body[data-app-layout-mode=phone] .home-page,body[data-app-layout-mode=phone] .management-layout,body[data-app-layout-mode=phone] .calendar-management-page,body[data-app-layout-mode=phone] .contacts-page,body[data-app-layout-mode=phone] .payments-page,body[data-app-layout-mode=phone] .teaching-module,body[data-app-layout-mode=phone] .teaching-resource-page,body[data-app-layout-mode=phone] .teaching-two-column,body[data-app-layout-mode=phone] .teaching-lessons-page,body[data-app-layout-mode=phone] .teaching-blocks-page{gap:8px}body[data-app-layout-mode=phone] .home-hero,body[data-app-layout-mode=phone] .home-section,body[data-app-layout-mode=phone] .calendar-tool,body[data-app-layout-mode=phone] .tool-page,body[data-app-layout-mode=phone] .side-panel,body[data-app-layout-mode=phone] .payments-table-panel,body[data-app-layout-mode=phone] .payment-detail-panel,body[data-app-layout-mode=phone] .payment-section,body[data-app-layout-mode=phone] .calendar-roster,body[data-app-layout-mode=phone] .contacts-roster,body[data-app-layout-mode=phone] .contact-detail,body[data-app-layout-mode=phone] .teaching-panel,body[data-app-layout-mode=phone] .lesson-page,body[data-app-layout-mode=phone] .resource-library,body[data-app-layout-mode=phone] .student-file,body[data-app-layout-mode=phone] .teaching-filter-panel,body[data-app-layout-mode=phone] .teaching-library-filter-panel{padding:12px;border-radius:var(--radius-panel)}body[data-app-layout-mode=phone] .home-hero{padding:14px}body[data-app-layout-mode=phone] .teaching-resource-page .teaching-library-filter-panel,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-library-filter-panel{padding:10px}body[data-app-layout-mode=phone] .data-mode-toggle button,body[data-app-layout-mode=phone] .calendar-view-toggle button,body[data-app-layout-mode=phone] .payments-tabs button,body[data-app-layout-mode=phone] .history-tabs button,body[data-app-layout-mode=phone] .repeat-target-toggle button,body[data-app-layout-mode=phone] .teaching-calendar-toggle button,body[data-app-layout-mode=phone] .teaching-tabs button,body[data-app-layout-mode=phone] .lesson-tabs button,body[data-app-layout-mode=phone] .teaching-lesson-workflow-strip button,body[data-app-layout-mode=phone] .primary-button,body[data-app-layout-mode=phone] .quiet-button,body[data-app-layout-mode=phone] .danger-button,body[data-app-layout-mode=phone] .teaching-primary-action,body[data-app-layout-mode=phone] .teaching-secondary-action,body[data-app-layout-mode=phone] .teaching-inline-actions button,body[data-app-layout-mode=phone] .teaching-inline-actions a,body[data-app-layout-mode=phone] .teaching-header-actions button,body[data-app-layout-mode=phone] .teaching-add-row button,body[data-app-layout-mode=phone] .teaching-summary-add button,body[data-app-layout-mode=phone] .dialog-actions button,body[data-app-layout-mode=phone] .drawer-actions button,body[data-app-layout-mode=phone] .voice-command-actions button{min-height:44px}body[data-app-layout-mode=phone] .icon-button,body[data-app-layout-mode=phone] .mobile-sheet-close,body[data-app-layout-mode=phone] .drawer-close,body[data-app-layout-mode=phone] .calendar-range-nav button,body[data-app-layout-mode=phone] .teaching-icon-button,body[data-app-layout-mode=phone] .teaching-calendar-arrows button{width:44px;min-width:44px;min-height:44px}body[data-app-layout-mode=phone] .teaching-library-filter-panel .teaching-search-field input,body[data-app-layout-mode=phone] .teaching-library-filter-panel .teaching-date-filter input,body[data-app-layout-mode=phone] .teaching-library-filter-panel .teaching-filter-popup>button,body[data-app-layout-mode=phone] .teaching-library-filter-panel .teaching-clear-filters,body[data-app-layout-mode=phone] .app-dropdown-trigger,body[data-app-layout-mode=phone] .app-dropdown-menu button{min-height:var(--button-phone-h)}body[data-app-layout-mode=phone] .voice-command-sheet,body[data-app-layout-mode=phone] .mobile-more-sheet{padding:14px 12px calc(14px + env(safe-area-inset-bottom))}body[data-app-layout-mode=phone] .teaching-upcoming-card{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:12px}body[data-app-layout-mode=phone] .teaching-upcoming-card-heading,body[data-app-layout-mode=phone] .teaching-upcoming-card-editor{width:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:4px}body[data-app-layout-mode=phone] .teaching-upcoming-card-heading strong,body[data-app-layout-mode=phone] .teaching-upcoming-card-heading small,body[data-app-layout-mode=phone] .teaching-upcoming-card>p{width:100%;min-width:0;max-width:100%;grid-column:1;writing-mode:horizontal-tb;overflow-wrap:break-word;word-break:normal}body[data-app-layout-mode=phone] .teaching-upcoming-card-actions,body[data-app-layout-mode=phone] .teaching-upcoming-card-editor-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}body[data-app-layout-mode=phone] .teaching-upcoming-card-actions>button:not(.app-icon-button),body[data-app-layout-mode=phone] .teaching-upcoming-card-editor-actions>button{width:100%;min-height:44px;margin-top:0}body[data-app-layout-mode=phone] .teaching-upcoming-card-actions:has(>.app-icon-button){display:flex;justify-content:flex-end}body[data-app-layout-mode=phone] .teaching-upcoming-card-actions>.app-icon-button{width:44px;min-width:44px;height:44px;min-height:44px;margin-top:0}@media(max-width:700px){.teaching-upcoming-card{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:12px}.teaching-upcoming-card-heading,.teaching-upcoming-card-editor{width:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:4px}.teaching-upcoming-card-heading strong,.teaching-upcoming-card-heading small,.teaching-upcoming-card>p{width:100%;min-width:0;max-width:100%;grid-column:1;writing-mode:horizontal-tb;overflow-wrap:break-word;word-break:normal}.teaching-upcoming-card-actions,.teaching-upcoming-card-editor-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.teaching-upcoming-card-actions>button:not(.app-icon-button),.teaching-upcoming-card-editor-actions>button{width:100%;min-height:44px;margin-top:0}.teaching-upcoming-card-actions:has(>.app-icon-button){display:flex;justify-content:flex-end}.teaching-upcoming-card-actions>.app-icon-button{width:44px;min-width:44px;height:44px;min-height:44px;margin-top:0}}@media(max-width:700px){.app-shell,body[data-app-layout-mode=phone] .app-shell{align-content:start;gap:6px;padding:4px}.app-sidebar,body[data-app-layout-mode=phone] .app-sidebar{top:4px;gap:4px 6px;padding:6px}.mobile-primary-nav,body[data-app-layout-mode=phone] .mobile-primary-nav{gap:0}.mobile-primary-nav .nav-item,body[data-app-layout-mode=phone] .mobile-primary-nav .nav-item{padding:2px 0}.teaching-module,body[data-app-layout-mode=phone] .teaching-module,.teaching-lessons-page,body[data-app-layout-mode=phone] .teaching-lessons-page{gap:6px}.teaching-lessons-directory,body[data-app-layout-mode=phone] .teaching-lessons-directory{gap:8px;padding:8px}.teaching-directory-header .teaching-eyebrow{margin-bottom:2px}.teaching-lessons-directory .teaching-tabs,body[data-app-layout-mode=phone] .teaching-lessons-directory .teaching-tabs{width:100%;gap:2px;padding:2px}.teaching-lessons-directory .teaching-tabs button,body[data-app-layout-mode=phone] .teaching-lessons-directory .teaching-tabs button{min-width:0;flex:1 1 0;padding-inline:6px}.teaching-lesson-filters,body[data-app-layout-mode=phone] .teaching-lesson-filters{gap:6px}.teaching-student-filter-popup>button,.teaching-history-more-filter>button{padding-inline:8px}.teaching-completion-filter{gap:3px}.teaching-completion-filter>div,.teaching-completion-filter.compact>div,body[data-app-layout-mode=phone] .teaching-completion-filter>div{flex-direction:row;flex-wrap:wrap;gap:2px;padding:2px}.teaching-completion-filter>div button,body[data-app-layout-mode=phone] .teaching-completion-filter>div button{flex:1 1 calc(50% - 2px);min-width:0;min-height:44px;padding-inline:4px}.teaching-filter-count,.teaching-clear-filters{min-height:44px;padding-inline:8px}.teaching-lesson-history-list{gap:6px}}.calendar-mobile-actions{display:contents}@media(max-width:700px){.home-page,.management-layout,.calendar-management-page,.contacts-page,.payments-page,.teaching-module,.teaching-resource-page,.teaching-two-column,.teaching-lessons-page,.teaching-blocks-page,body[data-app-layout-mode=phone] .home-page,body[data-app-layout-mode=phone] .management-layout,body[data-app-layout-mode=phone] .calendar-management-page,body[data-app-layout-mode=phone] .contacts-page,body[data-app-layout-mode=phone] .payments-page,body[data-app-layout-mode=phone] .teaching-module{gap:6px}.home-hero,.home-section,.calendar-tool,.tool-page,.side-panel,.payments-table-panel,.payment-detail-panel,.payment-section,.calendar-roster,.contacts-roster,.contact-detail,.teaching-panel,.lesson-page,.resource-library,.student-file,.teaching-filter-panel,.teaching-library-filter-panel,body[data-app-layout-mode=phone] .home-hero,body[data-app-layout-mode=phone] .home-section,body[data-app-layout-mode=phone] .calendar-tool,body[data-app-layout-mode=phone] .tool-page,body[data-app-layout-mode=phone] .side-panel,body[data-app-layout-mode=phone] .payments-table-panel,body[data-app-layout-mode=phone] .payment-detail-panel,body[data-app-layout-mode=phone] .payment-section,body[data-app-layout-mode=phone] .calendar-roster,body[data-app-layout-mode=phone] .contacts-roster,body[data-app-layout-mode=phone] .contact-detail,body[data-app-layout-mode=phone] .teaching-panel,body[data-app-layout-mode=phone] .lesson-page,body[data-app-layout-mode=phone] .resource-library,body[data-app-layout-mode=phone] .student-file,body[data-app-layout-mode=phone] .teaching-filter-panel,body[data-app-layout-mode=phone] .teaching-library-filter-panel{padding:8px}.home-grid,.overview-grid,.status-grid,.action-stack,.calendar-toolbar,.calendar-controls,.calendar-roster-list,.contacts-list,.contact-primary-actions,.payment-filter-row,.payment-history-list,.teaching-home-grid,.teaching-stack,.teaching-resource-grid,.teaching-timeline,.teaching-header-actions,.teaching-inline-actions,.teaching-add-row,.teaching-quick-grid,.teaching-template-manager-list,.teaching-student-files-layout{gap:6px}.overview-card,.mini-card,.status-card,.calendar-sync-panel,.payer-card,.payment-debt-line,.contact-card,.info-card,.lesson-card,.resource-card,.teaching-home-card,.teaching-block-card,.teaching-resource-card,.teaching-template-compact-row,.teaching-summary-plan-row,.teaching-upcoming-card,.teaching-file-card{padding:8px}.home-hero,body[data-app-layout-mode=phone] .home-hero{padding:10px}.calendar-permission-prompt{gap:8px;margin-bottom:6px;padding:8px 44px 8px 8px}.calendar-sync-panel.lesson-actions-only,body[data-app-layout-mode=phone] .calendar-sync-panel.lesson-actions-only{display:none}.calendar-sync-panel.lesson-actions-only .calendar-sync-actions,.calendar-sync-panel.lesson-actions-only .calendar-sync-actions button{width:100%}.teaching-shell-header,.teaching-lesson-header,.teaching-student-header,.teaching-resource-title,.teaching-panel-title,.payment-history-heading{gap:8px}.voice-command-sheet,.mobile-more-sheet{padding:10px 8px calc(10px + env(safe-area-inset-bottom))}.dialog-actions,.drawer-actions,.voice-command-actions,.teaching-modal-actions{gap:6px}.teaching-block-picker-modal,body[data-app-layout-mode=phone] .teaching-block-picker-modal{gap:6px;padding:8px}.teaching-block-picker-modal>header,body[data-app-layout-mode=phone] .teaching-block-picker-modal>header{gap:8px}.teaching-block-picker-modal>header h2,body[data-app-layout-mode=phone] .teaching-block-picker-modal>header h2{font-size:22px;line-height:1.08}.teaching-block-picker-filter-bar,body[data-app-layout-mode=phone] .teaching-block-picker-filter-bar{min-height:44px;padding:4px 6px}.teaching-block-picker-filter-content,body[data-app-layout-mode=phone] .teaching-block-picker-filter-content{max-height:min(40dvh,320px);margin-top:6px;padding:8px}.teaching-block-picker-list,body[data-app-layout-mode=phone] .teaching-block-picker-list{gap:6px;padding-inline-end:0}.teaching-block-picker-row,body[data-app-layout-mode=phone] .teaching-block-picker-row{gap:6px;padding:8px}.teaching-block-picker-row p,body[data-app-layout-mode=phone] .teaching-block-picker-row p{margin-top:4px}}@media(max-width:700px){.calendar-tool{gap:8px}.calendar-nav-row{margin-bottom:0;gap:8px}.calendar-range-nav{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px}.calendar-range-nav .cal-range-label{min-width:0;font-size:16px;line-height:1.15}.calendar-mobile-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;order:-1}.calendar-view-toggle{min-width:0;padding:3px;border-radius:var(--radius-panel)}.calendar-sync-panel:not(.lesson-actions-only){display:grid;gap:8px;margin-bottom:0}.calendar-sync-panel:not(.lesson-actions-only)>span{font-size:12px}.calendar-sync-panel:not(.lesson-actions-only) .calendar-sync-actions{display:grid;grid-template-columns:minmax(0,1fr) auto}.today-calendar{gap:6px}.today-calendar-head{min-height:28px}.today-slot{min-height:54px;grid-template-columns:44px minmax(0,1fr);gap:4px;padding:4px 6px}.today-slot-time{padding-top:10px}.today-slot-empty{min-height:44px;font-size:12px}}body[data-app-layout-mode=phone] .calendar-mobile-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;order:-1}body[data-app-layout-mode=phone] .calendar-sync-panel.lesson-actions-only{display:none}.portal-mode-tabs,.library-workspace-tabs,.payment-sort-bar{display:flex;align-items:stretch;gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--segmented-bg);box-shadow:none}.portal-mode-tabs button,.library-workspace-tabs button,.payment-sort-bar button{min-height:var(--button-standard-h);border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--muted);box-shadow:none}.portal-mode-tabs button.active,.library-workspace-tabs button.active,.payment-sort-bar button.active{border-color:var(--selection-control-border, var(--teach-green));background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text));box-shadow:none}.data-mode-toggle,.payments-tabs,.history-tabs,.repeat-target-toggle,.teaching-calendar-toggle,.teaching-tabs,.lesson-tabs,.teaching-lesson-workflow-strip{width:100%}.calendar-view-toggle{width:max-content;min-width:0;box-sizing:border-box;overflow:visible}.calendar-view-toggle>button{min-width:72px;box-sizing:border-box}body .primary-button,body .teaching-primary-action,body .teaching-add-resource-toggle,body .teaching-new-block-button,body .teaching-complete-lesson-button,.teaching-summary-add .teaching-primary-action{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));box-shadow:none}body .primary-button:hover:not(:disabled),body .teaching-primary-action:hover:not(:disabled),body .teaching-add-resource-toggle:hover:not(:disabled),body .teaching-new-block-button:hover:not(:disabled),body .teaching-complete-lesson-button:hover:not(:disabled){border-color:var(--action-control-border, color-mix(in srgb, var(--teach-green) 82%, #000));background:var(--action-control-hover-bg, color-mix(in srgb, var(--teach-green) 82%, #000));color:var(--action-control-text, var(--teach-action-solid-text))}body .primary-button:disabled,body .quiet-button:disabled,body .teaching-primary-action:disabled,body .teaching-add-resource-toggle:disabled,body .teaching-new-block-button:disabled,body .teaching-complete-lesson-button:disabled{opacity:.48;cursor:not-allowed}.teaching-student-file-detail .teaching-tabs button.active,.teaching-student-file-detail .teaching-tabs button[aria-selected=true]{border-color:var(--selection-control-border, var(--teach-green));background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text));box-shadow:none}.teaching-completion-filter>div{gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--segmented-bg)}.teaching-completion-filter>div button{min-height:var(--button-standard-h);border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--muted);box-shadow:none}.teaching-completion-filter>div button.active{border-color:var(--selection-control-border, var(--teach-green));background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text))}.segmented-actions,.teaching-add-source-tabs{gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--segmented-bg)}.segmented-actions button,.teaching-add-source-tabs button{min-height:var(--button-standard-h);border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--muted);box-shadow:none}.segmented-actions button.active,.teaching-add-source-tabs button.active{border-color:var(--selection-control-border, var(--teach-green));background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text));box-shadow:none}.teacher-desk{--desk-ink: var(--text);--desk-muted: var(--muted);--desk-green: var(--teach-green);--desk-green-dark: color-mix(in srgb, var(--teach-green) 80%, #000);--desk-green-soft: var(--teach-green-soft);--desk-warm: var(--surface-panel);--desk-line: var(--line)}.teaching-resource-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"title actions" "note note" "tags tags";gap:8px 12px;padding:12px}.teaching-resource-card>p{grid-area:note;margin:0}.teaching-resource-classification{color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-label, 500);letter-spacing:.09em;line-height:1.15;text-transform:uppercase}.teaching-resource-kind,.teaching-resource-format{display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;font-size:12px;font-weight:var(--font-weight-label, 500);white-space:nowrap}.teaching-resource-format{border-inline-start:1px solid var(--line);letter-spacing:.04em}.teaching-resource-format.format-png{border-color:var(--format-png-border);background:var(--format-png-bg);color:var(--format-png-text)}.teaching-resource-format.format-jpg{border-color:var(--format-jpg-border);background:var(--format-jpg-bg);color:var(--format-jpg-text)}.teaching-resource-format.format-webp{border-color:var(--format-webp-border);background:var(--format-webp-bg);color:var(--format-webp-text)}.teaching-resource-format.format-image{border-color:var(--format-image-border);background:var(--format-image-bg);color:var(--format-image-text)}.teaching-resource-format.format-pdf{border-color:var(--format-pdf-border);background:var(--format-pdf-bg);color:var(--format-pdf-text)}.teaching-resource-format.format-html{border-color:var(--format-html-border);background:var(--format-html-bg);color:var(--format-html-text)}.teaching-resource-format.format-doc{border-color:var(--format-doc-border);background:var(--format-doc-bg);color:var(--format-doc-text)}.teaching-resource-format.format-presentation{border-color:var(--format-presentation-border);background:var(--format-presentation-bg);color:var(--format-presentation-text)}.teaching-resource-format.format-sheet{border-color:var(--format-sheet-border);background:var(--format-sheet-bg);color:var(--format-sheet-text)}.teaching-resource-format.format-video{border-color:var(--format-video-border);background:var(--format-video-bg);color:var(--format-video-text)}.teaching-resource-format.format-other{border-color:var(--format-other-border);background:var(--format-other-bg);color:var(--format-other-text)}.teaching-resource-card .teaching-resource-row-actions{position:static;grid-area:actions;display:grid;grid-template-columns:repeat(4,var(--button-standard-h));align-self:start;gap:6px}.teaching-resource-card .teaching-resource-row-actions>:first-child{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}.teaching-resource-card .teaching-resource-row-actions>:nth-child(2){border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teaching-blocks-page .teaching-template-compact-row{grid-template-columns:minmax(0,1fr) max-content;align-items:start;gap:12px;border-color:var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.teaching-blocks-page .teaching-template-row-actions{display:grid;grid-template-columns:repeat(3,var(--button-standard-h));align-items:start;gap:6px}.teaching-blocks-page .teaching-template-compact-row .teaching-resource-line a{color:var(--teach-action-soft-text);text-decoration-color:color-mix(in srgb,var(--teach-green) 42%,transparent);text-underline-offset:2px}.payment-debt-card,.contact-create-parent,.name-identity-editor,.name-suggestion-card{border-radius:var(--radius-panel)}.contacts-roster .contact-primary-actions button{width:100%;min-height:var(--button-primary-h);border-radius:var(--radius-control)}body:not([data-app-layout-mode=phone]) .content-portal-header h1,body[data-app-layout-mode=phone] .content-portal-header h1{margin:4px 0 8px;font-size:var(--font-page-title);line-height:1.08}html[data-app-theme] .home-hero{min-height:104px;grid-template-columns:minmax(0,1fr) minmax(150px,200px);padding:16px}html[data-app-theme] .home-hero:after{inset-block:8px;inset-inline:auto 4px;width:min(27%,210px);opacity:var(--home-flower-opacity, .58)}html[data-app-theme] .home-hero h1{font-size:var(--font-page-title);line-height:1.08}@media(max-width:980px){html[data-app-theme] .home-hero{min-height:0;grid-template-columns:minmax(0,1fr);padding:16px;padding-block-end:16px}html[data-app-theme] .home-hero:after{display:none}}@media(max-width:760px){.content-portal-page{display:block;width:100%;padding:12px}.content-portal-header,.portal-toolbar,.portal-candidate-card{grid-template-columns:minmax(0,1fr)}.content-portal-header{gap:12px}body:not([data-app-layout-mode=phone]) .content-portal-header h1{font-size:var(--font-page-title)}.portal-mode-tabs{display:grid;grid-template-columns:minmax(0,1fr)}.portal-mode-tabs button,.portal-toolbar .app-dropdown-trigger,.portal-search,.portal-import-button,.portal-candidate-actions button{min-height:var(--button-phone-h)}.portal-candidate-actions{width:100%}}@media(max-width:700px){.payment-debt-toggle{width:100%;column-gap:12px;row-gap:6px;padding-inline-end:0}.payment-debt-toggle .payment-source,.payment-debt-toggle b{min-width:0;white-space:nowrap}.payment-debt-toggle b{justify-self:end}.payment-debt-summary{position:relative;display:grid}.payment-debt-summary .payment-summary-pay{position:static;inset:auto}.payment-history-section .payment-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"student student" "method actions" "date actions";column-gap:12px;row-gap:6px;align-items:center}.payment-history-section .payment-student{grid-area:student}.payment-history-section span.payment-method{grid-area:method}.payment-history-section small.payment-method{grid-area:date}.payment-history-section .payment-history-actions{grid-area:actions;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.payment-history-section .payment-history-actions b{grid-column:auto;grid-row:auto;align-self:auto}.payment-history-section .payment-undo-button{min-height:var(--button-phone-h)}.teaching-resource-card{display:block;padding:12px 68px 12px 12px}.teaching-resource-card>p,.teaching-resource-card>.teaching-tag-row{margin-top:8px}.teaching-resource-card .teaching-resource-row-actions{position:absolute;top:12px;inset-inline-end:12px;display:grid;grid-template-columns:44px}.teaching-blocks-page .teaching-template-row-actions,.teaching-resource-card--library .teaching-resource-compact-actions{grid-template-columns:44px}.teaching-resource-card--library .teaching-resource-compact-actions button,.teaching-resource-card--library .teaching-resource-compact-details>.teaching-delete-small,.teaching-resource-card .teaching-resource-row-actions>button,.teaching-blocks-page .teaching-template-row-actions>button{width:var(--button-phone-h);min-width:var(--button-phone-h);height:var(--button-phone-h);min-height:var(--button-phone-h)}}body[data-app-layout-mode=phone] .payment-debt-toggle{width:100%;column-gap:12px;row-gap:6px;padding-inline-end:0}body[data-app-layout-mode=phone] .payment-debt-toggle b{justify-self:end}body[data-app-layout-mode=phone] .payment-debt-summary{position:relative;display:grid}body[data-app-layout-mode=phone] .payment-debt-summary .payment-summary-pay{position:static;inset:auto}body[data-app-layout-mode=phone] .payment-history-section .payment-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"student student" "method actions" "date actions";column-gap:12px;row-gap:6px;align-items:center}body[data-app-layout-mode=phone] .payment-history-section .payment-student{grid-area:student}body[data-app-layout-mode=phone] .payment-history-section span.payment-method{grid-area:method}body[data-app-layout-mode=phone] .payment-history-section small.payment-method{grid-area:date}body[data-app-layout-mode=phone] .payment-history-section .payment-history-actions{grid-area:actions;display:flex;flex-direction:column;align-items:flex-end;gap:6px}body[data-app-layout-mode=phone] .payment-history-section .payment-history-actions b{grid-column:auto;grid-row:auto;align-self:auto}body[data-app-layout-mode=phone] .teaching-resource-card{display:block;padding:12px 68px 12px 12px}body[data-app-layout-mode=phone] .teaching-resource-card>p,body[data-app-layout-mode=phone] .teaching-resource-card>.teaching-tag-row{margin-top:8px}body[data-app-layout-mode=phone] .teaching-resource-card .teaching-resource-row-actions{position:absolute;top:12px;inset-inline-end:12px;display:grid;grid-template-columns:44px}body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-row-actions,body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-actions{grid-template-columns:44px}body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-actions button,body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-details>.teaching-delete-small,body[data-app-layout-mode=phone] .teaching-resource-card .teaching-resource-row-actions>button,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-row-actions>button{width:var(--button-phone-h);min-width:var(--button-phone-h);height:var(--button-phone-h);min-height:var(--button-phone-h)}@media(min-width:701px){body:not([data-app-layout-mode=phone]) .calendar-management-page .calendar-tool{padding:8px}.calendar-management-page .calendar-nav-row{margin-bottom:6px}.calendar-management-page .calendar-sync-panel{margin-bottom:6px;padding:2px 6px}}.calendar-management-page .desktop-week-calendar{border:1px solid var(--calendar-grid-line);box-shadow:none}.calendar-management-page .week-grid{grid-template-rows:minmax(48px,auto) auto}.calendar-management-page .time-rail-header,.calendar-management-page .week-day-header,.calendar-management-page .time-rail-slot,.calendar-management-page .week-day-lane,.calendar-management-page .desktop-week-calendar .hour-slot{border-color:var(--calendar-grid-line)}.calendar-management-page .time-rail-header,.calendar-management-page .week-day-header{min-height:48px}.calendar-management-page .week-day-header span,.calendar-management-page .week-day-header small{line-height:1.25}.calendar-management-page .week-day-header.is-today{border-color:var(--calendar-today-line);background:color-mix(in srgb,var(--mgmt-blue-soft) 46%,var(--surface-panel-strong));box-shadow:inset 0 0 0 1px var(--calendar-today-line)}.calendar-management-page .week-day-lane.is-today:after,.month-cell.is-today,.today-calendar.is-today{border:1px solid var(--calendar-today-line);box-shadow:none}@media(min-width:1680px)and (pointer:fine){.calendar-management-page{font-size:17px}.calendar-management-page .calendar-view-toggle button,.calendar-management-page .calendar-sync-actions button,.calendar-management-page .calendar-today-button{min-height:var(--button-standard-h);padding-inline:14px;font-size:14px}.calendar-management-page .cal-arrow,.calendar-management-page .calendar-range-nav button{width:var(--button-standard-h);height:var(--button-standard-h)}.calendar-management-page .cal-range-label{font-size:18px}.calendar-management-page .calendar-sync-panel>span{font-size:15px}.calendar-management-page .desktop-week-calendar{--calendar-slot-height: 38px}.calendar-management-page .week-grid{grid-template-columns:52px repeat(6,minmax(0,1fr));grid-template-rows:minmax(48px,auto) auto}.calendar-management-page .time-rail-header,.calendar-management-page .week-day-header{min-height:48px}.calendar-management-page .desktop-week-calendar .student-lesson-row,.calendar-management-page .desktop-week-calendar .student-lesson-card{min-height:26px}.calendar-management-page .desktop-week-calendar .student-lesson-card{padding:3px 5px}.calendar-management-page .desktop-week-calendar .student-lesson-card strong{font-size:clamp(13px,.78vw,15px)}.calendar-management-page .calendar-chip strong{font-size:14px}.calendar-management-page .calendar-chip small,.calendar-management-page .calendar-chip span{font-size:12px}.calendar-management-page .month-cell{min-height:108px;padding:11px}.calendar-management-page .month-weekdays span,.calendar-management-page .month-cell small,.calendar-management-page .month-cell-item{font-size:13px}.calendar-management-page .month-cell strong{font-size:15px}.calendar-management-page .today-calendar-head h2{font-size:25px}.calendar-management-page .today-calendar-head small,.calendar-management-page .today-slot-time,.calendar-management-page .today-slot-empty{font-size:14px}.calendar-management-page .today-slot{min-height:70px;grid-template-columns:72px minmax(0,1fr);padding:9px}}.home-title-phone,.home-greeting-phone,.home-scan-value-phone,.home-mobile-quick-actions{display:none}@media(max-width:700px){html[data-app-theme] .home-hero,body[data-app-layout-mode=phone] .home-hero{min-height:0;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto;gap:8px;padding:10px 12px}.home-title-desktop{display:none}.home-title-phone,.home-greeting-phone,.home-scan-value-phone{display:inline}html[data-app-theme] .home-hero .eyebrow,body[data-app-layout-mode=phone] .home-hero .eyebrow{font-size:12px;letter-spacing:.09em}html[data-app-theme] .home-hero h1,body[data-app-layout-mode=phone] .home-hero h1{margin-top:2px;font-size:clamp(18px,5.5vw,22px);line-height:1.05}html[data-app-theme] .home-hero .hero-copy,body[data-app-layout-mode=phone] .home-hero .hero-copy{display:none}.home-page,body[data-app-layout-mode=phone] .home-page{gap:8px}.home-hero{order:1}.home-upcoming-section{order:4}.home-mobile-quick-actions{order:5}.home-action-queue{order:6}.home-upcoming-section,body[data-app-layout-mode=phone] .home-upcoming-section{gap:4px;padding:9px 10px}.home-upcoming-section .home-section-head h2,body[data-app-layout-mode=phone] .home-upcoming-section .home-section-head h2{font-size:15px}.home-upcoming-section .home-section-head .quiet-button,body[data-app-layout-mode=phone] .home-upcoming-section .home-section-head .quiet-button{min-height:44px;padding-inline:8px;font-size:12px}.home-upcoming-section .upcoming-list,body[data-app-layout-mode=phone] .home-upcoming-section .upcoming-list{gap:0}.home-upcoming-section .home-upcoming-row,body[data-app-layout-mode=phone] .home-upcoming-section .home-upcoming-row{min-height:50px;grid-template-columns:92px minmax(0,1fr);gap:6px;border-width:1px 0 0;border-radius:0;padding:6px 2px;background:transparent}.home-upcoming-section .upcoming-schedule-link,body[data-app-layout-mode=phone] .home-upcoming-section .upcoming-schedule-link{grid-template-columns:50px 1fr;gap:4px;min-height:44px;padding:0}.home-upcoming-section .upcoming-date,.home-upcoming-section .upcoming-time,body[data-app-layout-mode=phone] .home-upcoming-section .upcoming-date,body[data-app-layout-mode=phone] .home-upcoming-section .upcoming-time{font-size:12px}.home-upcoming-section .upcoming-students,body[data-app-layout-mode=phone] .home-upcoming-section .upcoming-students{flex-wrap:nowrap;overflow:hidden}.home-upcoming-section .upcoming-student-chip,body[data-app-layout-mode=phone] .home-upcoming-section .upcoming-student-chip{min-height:44px;overflow:hidden;padding-inline:8px;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.home-mobile-quick-actions,body[data-app-layout-mode=phone] .home-mobile-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.home-mobile-quick-actions button,body[data-app-layout-mode=phone] .home-mobile-quick-actions button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card);color:var(--text);font-weight:var(--font-weight-label, 500)}.home-action-queue,body[data-app-layout-mode=phone] .home-action-queue{gap:5px;padding:9px 10px}.home-action-queue .home-section-head,body[data-app-layout-mode=phone] .home-action-queue .home-section-head{align-items:center}.home-action-queue .home-section-head h2,body[data-app-layout-mode=phone] .home-action-queue .home-section-head h2{font-size:15px}.home-action-queue .home-action-guidance,body[data-app-layout-mode=phone] .home-action-queue .home-action-guidance{display:none}.home-action-queue .home-section-head .primary-button,body[data-app-layout-mode=phone] .home-action-queue .home-section-head .primary-button{min-height:44px;padding-inline:10px;font-size:12px}.home-action-queue .upcoming-list,body[data-app-layout-mode=phone] .home-action-queue .upcoming-list{gap:0}.home-action-queue .upcoming-row,body[data-app-layout-mode=phone] .home-action-queue .upcoming-row{min-height:54px;grid-template-columns:40px 40px minmax(0,1fr) auto;gap:5px;border-width:1px 0 0;border-radius:0;padding:5px 2px;background:transparent}.home-action-queue .upcoming-date,.home-action-queue .upcoming-time,body[data-app-layout-mode=phone] .home-action-queue .upcoming-date,body[data-app-layout-mode=phone] .home-action-queue .upcoming-time{font-size:12px}.home-action-queue .action-queue-detail strong,body[data-app-layout-mode=phone] .home-action-queue .action-queue-detail strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.home-action-queue .action-queue-detail small,body[data-app-layout-mode=phone] .home-action-queue .action-queue-detail small{display:none}.home-action-queue .status-pill,body[data-app-layout-mode=phone] .home-action-queue .status-pill{padding:4px 6px;font-size:12px}}.app-page-header{display:flex;align-items:end;justify-content:space-between;gap:var(--space-4, 16px);min-width:0}.app-page-header-copy{min-width:0;max-width:72ch}.payments-table-panel>.app-page-header{margin-bottom:var(--space-3, 12px)}.app-eyebrow{margin:0 0 var(--space-1, 4px);color:var(--muted);font-size:var(--font-caption, 12px);font-weight:var(--font-weight-label, 500);letter-spacing:.08em;line-height:1.2;text-transform:uppercase}body:not([data-app-layout-mode=phone]) .app-page-header h1,body[data-app-layout-mode=phone] .app-page-header h1{margin:0;color:var(--text);font-size:var(--font-page-title, 2rem);letter-spacing:-.025em;line-height:var(--line-height-heading, 1.15);text-wrap:balance}.app-search-field{width:100%;min-width:0;min-height:40px;display:flex;align-items:center;gap:8px;padding-inline:10px 4px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-input, #fff);color:var(--muted);transition:border-color .14s ease,box-shadow .14s ease}.app-search-field:hover:not(:focus-within){border-color:color-mix(in srgb,var(--line) 68%,var(--text))}.app-search-field:focus-within{border-color:var(--teach-green);box-shadow:var(--focus-ring)}.app-search-field>.app-search-field__icon{flex:0 0 auto;color:var(--muted);pointer-events:none}.app-search-field:focus-within>.app-search-field__icon{color:var(--teach-action-soft-text)}.app-search-field>.app-search-field__input,.app-shell .app-search-field>.app-search-field__input{width:100%;min-width:0;min-height:0;flex:1 1 auto;margin:0;padding:0;border:0;border-radius:0;outline:0;appearance:none;-webkit-appearance:none;background:transparent;box-shadow:none;color:var(--text);font:inherit;line-height:1.3}.app-search-field>.app-search-field__input:focus,.app-search-field>.app-search-field__input:focus-visible,.app-shell .app-search-field>.app-search-field__input:focus,.app-shell .app-search-field>.app-search-field__input:focus-visible{border:0;outline:0;background:transparent;box-shadow:none}.app-search-field__input::-webkit-search-decoration,.app-search-field__input::-webkit-search-cancel-button,.app-search-field__input::-webkit-search-results-button,.app-search-field__input::-webkit-search-results-decoration{display:none;margin:0;appearance:none;-webkit-appearance:none}.app-search-field>.app-search-field__clear,.app-shell .app-search-field>.app-search-field__clear{width:32px;min-width:32px;height:32px;min-height:32px;display:inline-grid;place-items:center;flex:0 0 32px;margin:0;padding:0;border:0;border-radius:var(--radius-control, 8px);background:transparent;box-shadow:none;color:var(--muted);cursor:pointer}.app-search-field>.app-search-field__clear:hover,.app-shell .app-search-field>.app-search-field__clear:hover{border:0;background:var(--surface-soft);color:var(--text)}.app-search-field>.app-search-field__clear:active,.app-shell .app-search-field>.app-search-field__clear:active{background:color-mix(in srgb,var(--surface-soft) 70%,var(--line))}.app-search-field>.app-search-field__clear:focus-visible,.app-shell .app-search-field>.app-search-field__clear:focus-visible{outline:2px solid var(--teach-green);outline-offset:-2px;box-shadow:none}.app-search-field__trailing{display:inline-flex;align-items:center;flex:0 0 auto;margin-inline:2px 6px}.app-search-field.global-search-input{min-height:48px;border-color:var(--teach-green-mid);border-radius:var(--radius-panel)}.app-search-field.global-search-input>.app-search-field__input{font-size:16px}.app-search-field.contact-roster-search{min-height:40px;margin-bottom:12px}.assistant-composer-control:focus-within{border-color:var(--teach-green);box-shadow:var(--focus-ring)}.assistant-composer-control>textarea:focus,.assistant-composer-control>textarea:focus-visible,.app-shell .assistant-composer-control>textarea:focus,.app-shell .assistant-composer-control>textarea:focus-visible{border:0;outline:0;background:transparent;box-shadow:none}@media(max-width:700px){.app-search-field{min-height:46px;gap:10px;padding-inline:12px 0}.app-search-field>.app-search-field__input,.app-shell .app-search-field>.app-search-field__input{min-height:44px;font-size:16px}.app-search-field>.app-search-field__icon,.app-search-field>.app-search-field__clear>svg{width:18px;height:18px}.app-search-field>.app-search-field__clear,.app-shell .app-search-field>.app-search-field__clear{width:44px;min-width:44px;height:44px;min-height:44px;flex-basis:44px}}.app-page-description{max-width:68ch;margin:var(--space-1, 4px) 0 0;color:var(--muted);line-height:1.5}.app-page-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2, 8px);flex:0 0 auto}.app-action-menu-root{display:inline-flex;flex:0 0 auto}.app-action-menu-trigger{width:var(--button-standard-h, 36px);min-width:var(--button-standard-h, 36px);height:var(--button-standard-h, 36px);min-height:var(--button-standard-h, 36px)}.app-action-menu-trigger[aria-expanded=true]{border-color:var(--teach-green);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.app-action-menu{position:fixed;z-index:2400;width:max-content;min-width:min(208px,calc(100vw - 16px));max-width:min(320px,calc(100vw - 16px));overflow-y:auto;padding:6px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-card);box-shadow:var(--shadow-dropdown)}.app-action-menu>button{width:100%;min-height:40px;display:flex;align-items:center;gap:10px;padding:8px 10px;border:0;border-radius:var(--radius-control, 8px);background:transparent;color:var(--text);font:inherit;font-weight:var(--font-weight-label, 500);text-align:start;cursor:pointer}.app-action-menu>button:hover,.app-action-menu>button:focus-visible{outline:0;background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.app-action-menu>button:disabled{opacity:.42;cursor:not-allowed}.app-action-menu>button.is-danger{color:var(--rose)}.app-action-menu>button.is-danger:hover,.app-action-menu>button.is-danger:focus-visible{background:color-mix(in srgb,var(--rose) 10%,var(--surface-card));color:var(--rose)}.app-action-menu>button.has-separator{margin-top:5px;border-top:1px solid var(--line);border-radius:0 0 var(--radius-control, 8px) var(--radius-control, 8px);padding-top:11px}.app-action-menu-icon{width:18px;height:18px;display:inline-grid;place-items:center;flex:0 0 18px}.app-action-menu-icon>svg{width:18px;height:18px}@media(max-width:700px){.app-action-menu-trigger{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px)}.app-action-menu>button{min-height:var(--button-phone-h, 44px)}}.app-tabs{display:flex;gap:var(--space-1, 4px);min-width:0;overflow-x:auto;padding:var(--space-1, 4px);border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-muted-band, var(--surface-card));scrollbar-width:thin}.app-motion-tabs{position:relative;isolation:isolate}.app-motion-tabs>button{position:relative;z-index:1}.app-tabs.app-motion-tabs[role=tablist][data-tab-motion-running=true]>button[role=tab]{transition:none}.app-tab-motion-indicator{position:absolute;box-sizing:border-box;margin:0;padding:0;pointer-events:none;transform-origin:top left;z-index:0}.app-tabs.app-motion-tabs[role=tablist]>button[role=tab][data-tab-motion-active=true]{background:transparent;border-color:transparent;box-shadow:none}.app-tabs button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;padding:0 var(--space-3, 12px);border:1px solid transparent;border-radius:var(--radius-control, 8px);background:transparent;color:var(--muted);font:inherit;font-weight:var(--font-weight-label, 500);white-space:nowrap}.app-tabs-equal button{flex:1 1 0}.app-tabs button:hover{background:color-mix(in srgb,var(--teach-green-soft) 72%,transparent);color:var(--text)}.app-tabs button.active{border-color:var(--selection-control-border, var(--teach-green));background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text))}.app-tabs button:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green) 24%,transparent);outline-offset:1px}.app-empty-state{display:grid;justify-items:center;gap:var(--space-3, 12px);padding:clamp(24px,5vw,48px) var(--space-4, 16px);border:1px dashed var(--line-strong, var(--line));border-radius:var(--radius-panel, 12px);background:var(--surface-muted-band, var(--surface-card));color:var(--muted);text-align:center}.app-empty-state-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.app-empty-state h2,.app-empty-state p{margin:0}.app-empty-state h2{color:var(--text);font-size:22px}.app-empty-state p{max-width:52ch;margin-top:var(--space-1, 4px);line-height:1.5}.settings-editor-row{grid-template-columns:minmax(0,1fr) 36px}.settings-account-action-bar{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2, 8px)}.settings-editor-subheading{display:grid;gap:3px}.settings-editor-subheading h3,.settings-editor-subheading p{margin:0}.settings-editor-subheading h3{color:var(--text);font-size:15px}.settings-editor-subheading p,.settings-inactive-empty{color:var(--muted);font-size:12px}.settings-inactive-grades{display:grid;gap:10px;padding-top:16px;border-top:1px solid var(--line)}.settings-inactive-grade-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.settings-inactive-grade-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:8px 10px;border-radius:var(--radius-control, 8px);background:var(--surface-muted-band, var(--surface-card))}.settings-inactive-grade-list span{display:grid;gap:2px;min-width:0}.settings-inactive-grade-list small{color:var(--muted)}.settings-inactive-grade-list button{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto}.settings-inactive-empty{margin:0}.teaching-resource-page,.teacher-diary-page,.content-portal-page{display:grid;align-content:start;gap:var(--space-4, 16px)}.contact-new-student-body{display:contents}@media(max-width:700px),(pointer:coarse)and (max-width:900px){body:has(.contacts-page.contacts-phone-detail) .app-shell[data-layout-mode=phone] :is(.mobile-app-header,.mobile-primary-nav),body[data-app-layout-mode=phone]:has(.contacts-page.contacts-phone-detail) .app-shell :is(.mobile-app-header,.mobile-primary-nav){display:none}body:has(.contacts-page.contacts-phone-detail) :is(.training-data-reminder,.training-data-reminder-collapsed){display:none}.app-shell[data-layout-mode=phone] .contacts-page.contacts-phone-detail .contact-detail,body[data-app-layout-mode=phone] .contacts-page.contacts-phone-detail .contact-detail{position:fixed;inset:0;z-index:45;width:100%;height:100dvh;min-height:100dvh;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:0 12px calc(92px + env(safe-area-inset-bottom));border:0;border-radius:0;background:var(--bg);box-shadow:none;scrollbar-width:none}.app-shell[data-layout-mode=phone] .contacts-page.contacts-phone-detail .contact-detail::-webkit-scrollbar,body[data-app-layout-mode=phone] .contacts-page.contacts-phone-detail .contact-detail::-webkit-scrollbar{display:none}.app-shell[data-layout-mode=phone] .contacts-page.contacts-phone-detail .contact-detail-focused-task,body[data-app-layout-mode=phone] .contacts-page.contacts-phone-detail .contact-detail-focused-task{display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;padding:0}.contact-detail-focused-task .contact-new-student-body{min-height:0;display:block;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:14px 12px 12px;scrollbar-width:none}.contact-detail-focused-task .contact-new-student-body::-webkit-scrollbar{display:none}.mobile-focused-task-header{position:sticky;top:0;z-index:8;min-height:calc(64px + env(safe-area-inset-top));display:grid;grid-template-columns:96px minmax(0,1fr) 96px;align-items:center;gap:4px;margin:0 -12px 14px;padding:env(safe-area-inset-top) 8px 0;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface-panel) 96%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-shell[data-layout-mode=phone] .mobile-focused-task-header h1,body[data-app-layout-mode=phone] .mobile-focused-task-header h1{grid-column:2;grid-row:1;min-width:0;margin:0;align-self:center;overflow:hidden;color:var(--text);font-size:18px;font-weight:var(--font-weight-heading, 700);line-height:1.2;text-align:center;text-overflow:ellipsis;white-space:nowrap}.mobile-focused-task-leading{grid-column:1;grid-row:1;width:96px;display:flex;align-items:center}.mobile-focused-task-icon{width:48px;min-width:48px;height:48px;min-height:48px;display:inline-grid;place-items:center;border:0;border-radius:var(--radius-control, 12px);padding:0;background:transparent;color:var(--text);cursor:pointer;touch-action:manipulation}.mobile-focused-task-icon:is(:hover,:focus-visible,:active){background:var(--teach-green-soft)}.mobile-focused-task-icon.is-accent{color:var(--teach-action-soft-text)}.contact-create-voice-button{position:relative;width:34px;min-width:34px;height:34px;min-height:34px}.contact-create-voice-button:after{content:"";position:absolute;inset:-7px}.contact-create-voice-button>svg{width:14px;height:14px}.mobile-focused-task-balance{grid-column:3;grid-row:1;width:96px}.mobile-focused-task-actions{position:relative;inset:auto;z-index:46;display:grid;grid-template-columns:minmax(0,1fr);padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface-panel) 96%,transparent);box-shadow:0 -10px 26px color-mix(in srgb,var(--shadow-color, #173e34) 12%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-focused-task-primary{width:100%;min-height:52px;justify-content:center;border-radius:14px;font-weight:var(--font-weight-label, 700)}.contacts-page.contacts-phone-detail .contact-new-student-identity{margin-top:0}.contacts-page.contacts-phone-detail .contact-new-student-settings{margin-bottom:12px}.contact-detail-focused-task .mobile-focused-task-header{position:relative;margin:0}.contact-detail-focused-task .student-main-communication-card .app-dropdown{flex:none}.contact-inline-device-picker{width:calc(100% - 24px);min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:10px 12px 0;touch-action:manipulation}body[data-app-layout-mode=phone] .quick-booking-sheet{align-items:start;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:0;background:var(--bg)}.app-shell[data-layout-mode=phone] .quick-booking-card,body[data-app-layout-mode=phone] .quick-booking-card{width:100%;height:auto;min-height:100%;max-height:none;grid-template-rows:none;align-content:start;overflow:visible;padding:0 12px;border:0;border-radius:0;background:var(--bg);box-shadow:none}body[data-app-layout-mode=phone] .quick-booking-card>.assignment-list,body[data-app-layout-mode=phone] .quick-booking-card>.assignment-inquiry-grid{min-height:auto;overflow:visible;padding-bottom:12px}.quick-booking-card .assignment-card-header{position:sticky;top:0;z-index:8;min-height:calc(64px + env(safe-area-inset-top));display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:end;margin:0 -12px 12px;padding:env(safe-area-inset-top) 8px 8px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface-panel) 96%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);direction:ltr}.quick-booking-card .assignment-card-header>div{grid-column:2;grid-row:1;align-self:center;min-width:0;text-align:center;direction:ltr}html[dir=rtl] .quick-booking-card .assignment-card-header>div{direction:rtl}.quick-booking-card .assignment-card-header h2{margin:0;font-size:18px;line-height:1.2}.quick-booking-card .assignment-card-header small{display:block;margin-top:2px;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.quick-booking-card .assignment-card-header>.assignment-close{grid-column:3;grid-row:1;width:48px;min-width:48px;height:48px;min-height:48px;border:0;border-radius:var(--radius-control, 12px);background:transparent}.quick-booking-card .assignment-header-balance{grid-column:1;grid-row:1;width:48px}body[data-app-layout-mode=phone] .quick-booking-card .assignment-footer{position:relative;inset:auto;z-index:2;margin:0 -12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface-panel) 96%,transparent);box-shadow:0 -10px 26px color-mix(in srgb,var(--shadow-color, #173e34) 12%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.quick-booking-card .assignment-footer .primary-button{min-height:52px;border-radius:14px}.mark-paid-modal:has(.mobile-focused-payment-card){place-items:center;overflow-y:auto;padding:16px;background:color-mix(in srgb,#21161b 48%,transparent)}.mark-paid-card.mobile-focused-payment-card{width:min(440px,100%);min-height:0;max-height:calc(100dvh - 32px);overflow-y:auto;gap:14px;padding:0 16px 16px;border:1px solid var(--line);border-radius:var(--radius-sheet, 20px);background:var(--surface-sheet);box-shadow:var(--shadow-dialog)}.mobile-focused-payment-header{position:sticky;top:0;z-index:8;min-height:68px;display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;margin:0 -16px;padding:8px;border-bottom:1px solid var(--line);background:var(--surface-sheet);direction:ltr}.mobile-focused-payment-header>button{grid-column:3;grid-row:1;width:48px;min-width:48px;height:48px;min-height:48px;display:inline-grid;place-items:center;border:0;border-radius:var(--radius-control, 12px);padding:0;background:transparent;color:var(--text)}.mobile-focused-payment-header>div,.mobile-focused-payment-header>h2{grid-column:2;grid-row:1;align-self:center;min-width:0;margin:0;text-align:center}.mobile-focused-payment-header>div{display:grid;gap:2px}.mobile-focused-payment-header h2{margin:0;overflow:hidden;font-size:18px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap;direction:inherit}.mobile-focused-payment-header small{color:var(--muted);font-size:12px;font-weight:500}.mobile-focused-payment-header>span{grid-column:1;grid-row:1}.mobile-focused-payment-actions{position:sticky;bottom:0;z-index:8;display:grid;grid-template-columns:minmax(0,1fr);margin:4px -16px -16px;padding:12px 16px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface-sheet);box-shadow:0 -10px 26px color-mix(in srgb,var(--shadow-color, #173e34) 12%,transparent)}.mobile-focused-payment-actions .primary-button{width:100%;min-height:52px;justify-content:center;border-radius:14px}.home-attendance-dialog-backdrop{place-items:center;overflow-y:auto;padding:16px;background:color-mix(in srgb,#21161b 48%,transparent)}.home-attendance-dialog{width:min(420px,100%);min-height:0;max-height:calc(100dvh - 32px);overflow:hidden;padding:0;border:1px solid var(--line);border-radius:var(--radius-sheet, 20px);background:var(--surface-sheet);box-shadow:var(--shadow-dialog)}.home-attendance-dialog-header{position:relative;min-height:68px;display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;margin:0;padding:8px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface-panel) 96%,transparent);direction:ltr}.home-attendance-dialog-header>div{grid-column:2;grid-row:1;align-self:center;text-align:center;direction:inherit}.home-attendance-dialog-header>button{grid-column:3;grid-row:1;width:48px;min-width:48px;height:48px;min-height:48px;border:0;background:transparent}.home-attendance-header-balance{grid-column:1;grid-row:1}.app-search-field{min-height:var(--button-phone-h, 44px)}.app-page-header{align-items:stretch;flex-direction:column;gap:var(--space-3, 12px)}body[data-app-layout-mode=phone] .app-page-header h1{font-size:var(--font-page-title, 32px);line-height:1.12}.app-page-actions,.app-page-actions>button,.app-page-actions .app-tabs{width:100%}.app-page-actions>button,.app-tabs button{min-height:44px}.app-tabs-equal button{min-width:0;padding-inline:var(--space-2, 8px)}.settings-field input,.settings-editor-row input,.add-sub-subject-button,.prompt-reset-button{min-height:44px}.settings-editor-row{grid-template-columns:minmax(0,1fr) 92px 44px;align-items:end}.settings-inactive-grade-list li{align-items:stretch;flex-direction:column}.settings-inactive-grade-list button{min-height:44px;width:100%}.sub-subject-list{padding-inline-start:0}.teaching-lessons-directory .teaching-lesson-filters{padding:var(--space-3, 12px);border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-muted-band, var(--surface-card))}.teaching-lessons-directory .teaching-student-filter-trigger,.teaching-lessons-directory .teaching-student-filter-popup>button,.teaching-lessons-directory .teaching-clear-filters,.teaching-lessons-directory .teaching-completion-filter button,.teaching-lessons-directory .teaching-history-more-filter>summary,.teaching-lessons-directory .teaching-custom-date-field input{min-height:44px}.teaching-library-filter-panel .resource-taxonomy-fields select,.teaching-library-filter-panel .teaching-filter-popup>button,.teaching-library-filter-panel .teaching-more-date-filters,.teaching-library-filter-panel .teaching-clear-filters{min-height:44px}.app-tabs.portal-mode-tabs{display:flex;grid-template-columns:none;overflow-x:auto}.app-tabs.portal-mode-tabs button{width:auto;min-width:max-content;justify-content:center}}@media(prefers-reduced-motion:reduce){.app-tabs *,.app-empty-state *{scroll-behavior:auto;transition:none!important}}.app-tabs{width:fit-content;max-width:100%;background:color-mix(in srgb,var(--surface-muted-band, var(--surface-card)) 74%,var(--surface-card))}.app-tabs.app-tabs-equal{min-width:min(100%,244px);display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}.app-tabs.history-tabs{width:100%}.app-tabs-equal button{width:100%;min-width:0}.app-tabs button{font-weight:var(--font-weight-label, 500)}.app-tabs button.active{box-shadow:none}@media(min-width:701px){.home-section-head h2{font-size:var(--font-section-title, 22px);line-height:1.2;letter-spacing:-.01em}}.upcoming-date{display:inline-flex;align-items:baseline;gap:3px}.upcoming-date strong{font-weight:var(--font-weight-label, 500)}.calendar-chip.google-external-chip{border:1px solid color-mix(in srgb,#4285f4 68%,var(--line));background:color-mix(in srgb,#4285f4 22%,var(--surface-card));color:var(--text);box-shadow:inset 4px 0 #4285f4,0 1px 3px color-mix(in srgb,#2458ad 18%,transparent);pointer-events:none;-webkit-user-select:none;user-select:none}.calendar-chip.google-external-chip:before{display:none}.calendar-chip.google-external-chip .google-external-time{color:var(--text);font-variant-numeric:tabular-nums;font-weight:var(--font-weight-emphasis, 600)}.calendar-chip.google-external-chip strong{color:var(--text)}.month-cell-item.google{border-color:color-mix(in srgb,#4285f4 62%,var(--line));background:color-mix(in srgb,#4285f4 22%,var(--surface-card));color:var(--text);box-shadow:inset 3px 0 #4285f4}.calendar-management-page .desktop-week-calendar .google-external-chip{min-height:calc(var(--calendar-slot-height) * var(--chip-duration-slots, 1) - 6px);gap:0;padding:3px 5px 3px 10px;align-content:start}.calendar-management-page .desktop-week-calendar .google-external-chip .google-external-time{display:block;overflow:hidden;font-size:10px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.calendar-management-page .desktop-week-calendar .google-external-chip strong{overflow:hidden;font-size:11px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.calendar-management-page .desktop-week-calendar .google-external-chip small{display:none}.calendar-management-page .desktop-week-calendar .slot-items>.week-slot-add-button{grid-area:1 / 1}.calendar-chip:not(.google-external-chip){border-color:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 28%,var(--line));background:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 8%,var(--surface-card))}.calendar-chip:not(.google-external-chip):before{display:none}.calendar-chip[data-attendance-warning=true]:not(.google-external-chip){border-color:color-mix(in srgb,var(--rose) 94%,#8f1028);border-width:2px;background:color-mix(in srgb,var(--rose) 24%,var(--surface-card));color:color-mix(in srgb,var(--rose) 88%,#35040d);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rose) 52%,transparent),0 0 0 2px color-mix(in srgb,var(--rose) 30%,transparent),0 3px 10px color-mix(in srgb,var(--rose) 22%,transparent)}.month-cell-item[data-attendance-warning=true]{border-color:color-mix(in srgb,var(--rose) 94%,#8f1028);border-width:2px;background:color-mix(in srgb,var(--rose) 25%,var(--surface-card));color:color-mix(in srgb,var(--rose) 92%,#35040d);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rose) 48%,transparent)}.calendar-student-chips{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:4px}.calendar-chip[data-student-count="1"] .calendar-student-chips{grid-template-columns:minmax(0,1fr)}.calendar-chip[data-student-count="3"] .calendar-student-chip:last-child{grid-column:1 / -1}.calendar-student-chip{width:100%;min-width:0;min-height:22px;overflow:hidden;border:1px solid color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 34%,var(--line));border-radius:var(--radius-control, 8px);padding:2px 4px;background:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 18%,var(--surface-card));color:var(--text);font-size:var(--font-xs, 12px);font-weight:var(--font-weight-label, 500);line-height:1;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.calendar-student-chip:hover,.calendar-student-chip:focus-visible{border-color:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 58%,var(--line));background:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 28%,var(--surface-card))}.calendar-student-chip.neutral{border-color:var(--line);background:var(--surface-card)}.calendar-management-page .desktop-week-calendar .calendar-chip:not(.google-external-chip){height:calc(var(--calendar-slot-height) * var(--chip-duration-slots, 1) - 2px);min-height:0;overflow:hidden;padding:4px 6px;align-content:stretch}.calendar-management-page .desktop-week-calendar .calendar-student-chips{height:100%;grid-auto-rows:minmax(0,1fr)}.calendar-management-page .desktop-week-calendar .calendar-student-chip{min-height:0;display:flex;align-items:center;justify-content:center;padding:3px 6px;line-height:1.05;text-align:center}.calendar-management-page .desktop-week-calendar .calendar-chip[data-student-count="1"] .calendar-student-chip{justify-content:center;padding-inline:8px;font-size:14px}.calendar-management-page .desktop-week-calendar .calendar-student-chip>bdi{min-width:0;overflow:hidden;text-overflow:ellipsis}.calendar-management-page .desktop-week-calendar .calendar-chip[data-duration-minutes="30"],.calendar-management-page .desktop-week-calendar .calendar-chip[data-duration-minutes="45"]{padding-block:2px}.calendar-management-page .desktop-week-calendar .calendar-chip[data-duration-minutes="30"]{padding-block:1px}.calendar-management-page .desktop-week-calendar .calendar-chip[data-duration-minutes="30"] .calendar-student-chips{gap:1px}.calendar-management-page .desktop-week-calendar .calendar-chip[data-duration-minutes="45"] .calendar-student-chips{gap:3px}.calendar-management-page .desktop-week-calendar .calendar-chip[data-duration-minutes="30"]:is([data-student-count="3"],[data-student-count="4"]) .calendar-student-chip{min-width:0;min-height:0;padding:0 3px;font-size:9px}.calendar-management-page .desktop-week-calendar .calendar-chip[data-duration-minutes="45"]:is([data-student-count="3"],[data-student-count="4"]) .calendar-student-chip{min-width:0;min-height:0;padding:1px 3px;font-size:11px}.calendar-management-page .desktop-week-calendar .calendar-chip[data-short-duration=true]{padding-block:0}.calendar-management-page .desktop-week-calendar .calendar-chip[data-short-duration=true] .calendar-student-chips{grid-template-columns:repeat(var(--chip-student-count, 1),minmax(0,1fr));gap:1px}.calendar-management-page .desktop-week-calendar .calendar-chip[data-short-duration=true] .calendar-student-chip{grid-column:auto;padding:0 2px;font-size:12px;line-height:1}body[data-app-layout-mode=phone] .calendar-student-chip{min-height:44px}.teaching-lessons-directory .teaching-lesson-filters,.teaching-lessons-directory .teaching-lesson-filters.upcoming-mode,.teaching-lessons-directory .teaching-lesson-filters.history-mode,.teaching-lessons-directory .teaching-lesson-filters.history-mode.custom-date-mode{display:flex;flex-wrap:wrap;align-items:end;gap:8px}.teaching-lessons-directory .teaching-student-filter-popup{flex:0 1 160px;min-width:150px}.teaching-lessons-directory .teaching-dropdown-filter{position:relative;display:block;min-width:0}.teaching-lessons-directory .teaching-dropdown-filter-label{position:absolute;z-index:1;top:50%;inset-inline-start:12px;transform:translateY(-50%);color:var(--muted);font-size:12px;font-weight:var(--font-weight-emphasis, 600);line-height:1;pointer-events:none;white-space:nowrap}.teaching-lessons-directory .teaching-dropdown-filter.teaching-completion-filter-dates{flex:0 0 160px}.teaching-lessons-directory .teaching-dropdown-filter.teaching-completion-filter-summary,.teaching-lessons-directory .teaching-dropdown-filter.teaching-completion-filter-lesson-notes{flex:0 0 138px}.teaching-lessons-directory .teaching-dropdown-filter-trigger{min-height:36px;padding-inline:60px 10px;border-color:var(--line);background:var(--surface-muted-band, var(--surface-card));color:var(--teach-action-soft-text);font-size:12px}.teaching-lessons-directory .teaching-dropdown-filter-trigger:hover:not(:disabled){border-color:var(--teach-green-mid)}.teaching-lessons-directory .app-dropdown.open .teaching-dropdown-filter-trigger,.teaching-lessons-directory .teaching-dropdown-filter-trigger:focus-visible{border-color:var(--teach-green);outline-color:color-mix(in srgb,var(--teach-green-mid) 76%,transparent)}.teaching-lesson-filter-menu button{font-size:12px}.teaching-lessons-directory .teaching-completion-filter-prep{flex:1 1 260px;min-width:250px}.teaching-lessons-directory .teaching-history-more-filter{flex:0 1 148px;min-width:138px}.teaching-lessons-directory .teaching-completion-filter>div,.teaching-lessons-directory .teaching-completion-filter.compact>div{display:flex;flex-wrap:nowrap;gap:4px;min-width:0;overflow:visible;padding:4px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-muted-band, var(--surface-card))}.teaching-lessons-directory .teaching-completion-filter>div button{flex:1 1 auto;min-width:0;min-height:36px;padding-inline:9px;border-radius:var(--radius-control, 8px);font-size:12px;font-weight:var(--font-weight-label, 500);white-space:nowrap}.teaching-lessons-directory .teaching-filter-count{margin-inline-start:auto}.teaching-lesson-history-row{min-height:76px;grid-template-columns:minmax(190px,.68fr) minmax(0,1fr) minmax(128px,148px) 18px;grid-template-rows:auto;align-items:center;gap:0 12px;padding:8px 12px;border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 24%,var(--line));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 6%,var(--surface-card))}.teaching-lesson-history-row:before{display:none}.teaching-lesson-history-row.group-lesson{border-color:var(--line);background:var(--surface-card)}.teaching-lesson-student-cell{grid-column:1;grid-row:1;align-content:center;gap:8px}.teaching-lesson-content-cell{grid-column:2;grid-row:1;grid-template-rows:auto auto;align-content:center;gap:4px}.teaching-lesson-history-meta{grid-column:3;grid-row:1;width:100%;min-width:0;grid-template-rows:auto auto;align-content:center;justify-items:center;gap:4px;padding-inline:0}.teaching-lesson-row-chevron{grid-column:4;grid-row:1}.teaching-lesson-student-names{display:grid;grid-template-columns:repeat(2,minmax(0,max-content));align-items:flex-start;justify-content:start;gap:8px;max-width:100%;overflow:visible;font-size:13px;font-weight:var(--font-weight-emphasis, 600)}.teaching-lesson-student-names>span{min-width:0;max-width:min(100%,12rem)}.teaching-lessons-directory .teaching-lesson-student-names button{max-width:100%;min-height:32px;overflow:hidden;border-radius:var(--radius-control, 8px);padding:4px 12px;border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 36%,var(--line));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 16%,var(--surface-card));color:color-mix(in srgb,var(--student-color, var(--teach-green)) 40%,var(--text));font-size:13px;font-weight:var(--font-weight-emphasis, 600);line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.teaching-lesson-student-cell small{font-size:12px;font-variant-numeric:tabular-nums}.teaching-lesson-content-cell p{font-size:13px}.teaching-lessons-directory .app-tabs button span{width:100%;text-align:center}.teaching-lessons-directory .app-page-actions{justify-content:center}.teaching-lessons-directory .app-tabs{margin-inline:auto}.teaching-lesson-row-metrics{gap:12px;font-size:12px;font-weight:var(--font-weight-body, 400)}.teaching-lesson-date-heading{font-weight:var(--font-weight-emphasis, 600)}.teaching-lesson-date-heading small,.teaching-lesson-row-status{font-size:12px;font-weight:var(--font-weight-body, 400)}.teaching-lesson-history-meta button{width:76px;min-height:var(--button-standard-h, 36px);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-control, 8px);padding-inline:12px;font-size:13px}.teaching-module .teaching-list-panel button.teaching-student-card,.contacts-roster .student-drag-card{min-height:54px;border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 36%,var(--line));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 16%,var(--surface-card));box-shadow:none}.teaching-module .teaching-student-card strong,.contacts-roster .student-drag-card strong{display:-webkit-box;overflow:hidden;color:var(--text);font-size:14px;font-weight:var(--font-weight-label, 500);line-height:1.15;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.teaching-module .teaching-student-card small,.contacts-roster .student-drag-card small{color:var(--text);font-size:12px;font-weight:var(--font-weight-label, 500);line-height:1.15}.teaching-module .teaching-list-panel button.teaching-student-card.selected,.contacts-roster .student-drag-card.selected{border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 68%,var(--text));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 28%,var(--surface-card));box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 58%,transparent)}.teaching-module .teaching-list-panel button.teaching-student-card.inactive,.contacts-roster .student-drag-card.inactive{opacity:.72;filter:saturate(.45)}.teaching-student-files-layout{grid-template-columns:minmax(220px,248px) minmax(0,1fr);gap:12px}.teaching-module .teaching-list-panel .teaching-student-card{min-height:50px;padding:7px 9px}@media(min-width:981px){body:not([data-app-layout-mode=phone]) .teaching-student-selector.teaching-list-panel{position:static;max-height:none;overflow:visible}body:not([data-app-layout-mode=phone]) .teaching-student-selector .teaching-list{max-height:none;overflow:visible;overscroll-behavior:auto;padding-inline-end:0}}.payment-debt-summary{border-color:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 28%,var(--line));background:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 7%,var(--surface-card));box-shadow:none}.payment-debt-card.is-expandable .payment-debt-summary:hover,.payment-debt-card.expanded .payment-debt-summary{border-color:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 42%,var(--line));background:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 11%,var(--surface-card));box-shadow:var(--shadow-soft, none)}.payment-debt-toggle .payment-student strong{display:block;font-weight:var(--font-weight-label, 500)}.assignment-group-student-chips{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:4px;overflow:visible}.assignment-group-student-chips>span{min-width:0;max-width:100%;flex:0 0 auto;overflow:visible;border:1px solid color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 34%,var(--line));border-radius:999px;padding:2px 6px;background:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 18%,var(--surface-card));color:var(--text);font-size:var(--font-xs, 12px);font-weight:var(--font-weight-label, 500);line-height:1.1;text-overflow:clip;white-space:nowrap}.student-summary-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.student-summary-item{min-height:72px}.student-summary-item strong{overflow:visible;line-height:1.25;text-overflow:clip;white-space:normal}@media(min-width:981px){.contacts-page{grid-template-columns:minmax(236px,248px) minmax(0,1fr)}}.app-settings-page>.app-settings-section:not(.prompt-settings-section),.app-settings-section-stack{width:100%;max-width:840px}.app-settings-section-stack .settings-editor{max-width:760px}.prompt-settings-section{max-width:960px}.teaching-lesson-student-title .teaching-lesson-student-chip{border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 36%,var(--line));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 15%,var(--surface-card));color:var(--text);font-weight:var(--font-weight-label, 500)}.teaching-lesson-student-title .teaching-lesson-student-chip .student-color-dot{display:none}.teaching-upcoming-students button{border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 36%,var(--line));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 14%,var(--surface-card));color:var(--text);font-weight:var(--font-weight-label, 500)}.teaching-upcoming-students button.selected{border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 64%,var(--text));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 26%,var(--surface-card));box-shadow:0 0 0 2px color-mix(in srgb,var(--student-color, var(--teach-green)) 15%,transparent);font-weight:var(--font-weight-label, 500)}.teaching-upcoming-students button .student-color-dot{display:none}.teacher-diary-page .app-empty-state{width:calc(100% - 32px);max-width:760px;box-sizing:border-box;justify-self:start;padding-block:32px}.module-loading-state{min-height:280px;place-items:stretch;align-content:start;gap:12px;padding:20px}.module-loading-state>span{color:var(--muted);font-size:12px;font-weight:var(--font-weight-label, 500)}.module-loading-skeleton{min-height:56px;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:linear-gradient(100deg,transparent 20%,color-mix(in srgb,#fff 52%,transparent) 45%,transparent 70%),var(--surface-muted-band, var(--surface-card));background-size:220% 100%;animation:module-loading-sheen 1.2s ease-in-out infinite}.module-loading-skeleton:first-of-type{min-height:92px}.app-startup-state{min-height:100dvh;display:grid;align-content:start;gap:24px;padding:clamp(18px,4vw,42px);background:var(--surface-app, #f6f4ed);color:var(--text, #153f39)}.app-startup-brand{display:inline-flex;align-items:center;gap:10px;font-size:18px}.app-startup-brand img{border-radius:10px}.app-startup-card{width:min(100%,760px);display:grid;gap:24px;border:1px solid var(--line, #d9ded7);border-radius:var(--radius-panel, 14px);padding:clamp(20px,4vw,36px);background:var(--surface-card, #fff);box-shadow:0 12px 32px color-mix(in srgb,var(--text, #153f39) 9%,transparent)}.app-startup-card h1,.app-startup-card p{margin:0}.app-startup-card h1{font-size:clamp(24px,5vw,34px)}.app-startup-card p{margin-top:8px;color:var(--muted, #60736e)}.app-startup-card>button{width:fit-content;min-height:44px;border:0;border-radius:var(--radius-control, 8px);padding-inline:18px;background:var(--action-control-bg, var(--teach-green, #2f8b75));color:var(--action-control-text, var(--teach-action-solid-text));font:inherit;font-weight:var(--font-weight-heading, 700)}.app-startup-skeleton{display:grid;gap:12px}.app-startup-skeleton>span{height:14px;border-radius:999px;background:color-mix(in srgb,var(--teach-green-soft, #dff1e9) 78%,var(--surface-card, #fff));animation:app-startup-pulse 1.2s ease-in-out infinite alternate}.app-startup-skeleton>span:nth-child(1){width:82%}.app-startup-skeleton>span:nth-child(2){width:64%}.app-startup-skeleton>span:nth-child(3){width:46%}@keyframes app-startup-pulse{0%{opacity:.48}to{opacity:1}}@media(max-width:680px){.app-startup-state{gap:18px;padding:16px}.app-startup-card{padding:22px 18px}}@media(prefers-reduced-motion:reduce){.app-startup-skeleton>span{animation:none}}@keyframes module-loading-sheen{to{background-position-x:-120%}}@media(max-width:980px)and (min-width:701px){.teaching-student-files-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:700px){.app-tabs,.app-settings-tabs{width:100%}.teaching-lessons-directory .teaching-lesson-filters,.teaching-lessons-directory .teaching-lesson-filters.upcoming-mode,.teaching-lessons-directory .teaching-lesson-filters.history-mode,.teaching-lessons-directory .teaching-lesson-filters.history-mode.custom-date-mode{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.teaching-lessons-directory .teaching-student-filter-popup,.teaching-lessons-directory .teaching-dropdown-filter,.teaching-lessons-directory .teaching-completion-filter,.teaching-lessons-directory .teaching-completion-filter-dates,.teaching-lessons-directory .teaching-completion-filter-summary,.teaching-lessons-directory .teaching-completion-filter-prep,.teaching-lessons-directory .teaching-history-more-filter,.teaching-lessons-directory .teaching-custom-date-field,.teaching-lessons-directory .teaching-clear-filters,.teaching-lessons-directory .teaching-filter-count{grid-column:1;width:100%;min-width:0;margin:0}.teaching-lessons-directory .teaching-student-filter-popup>button,.teaching-lessons-directory .teaching-history-more-filter>button,.teaching-lessons-directory .teaching-dropdown-filter-trigger{width:100%;min-height:44px}.teaching-lessons-directory .teaching-completion-filter>div,.teaching-lessons-directory .teaching-completion-filter.compact>div,body[data-app-layout-mode=phone] .teaching-lessons-directory .teaching-completion-filter>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;overflow:visible}.teaching-lessons-directory .teaching-completion-filter>div button,body[data-app-layout-mode=phone] .teaching-lessons-directory .teaching-completion-filter>div button{width:100%;min-width:0;min-height:42px;padding:4px 6px;line-height:1.15;white-space:normal}.teaching-lesson-history-row{min-height:0;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:8px 10px;padding:12px}.teaching-lesson-student-cell{grid-column:1;grid-row:1}.teaching-lesson-content-cell{grid-column:1 / -1;grid-row:2;grid-template-rows:auto auto;gap:5px}.teaching-lesson-content-cell p{display:-webkit-box;overflow:hidden;font-size:12px;line-height:1.35;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.teaching-lesson-row-metrics{flex-wrap:wrap;gap:4px 12px;font-size:12px;line-height:1.25;white-space:normal}.teaching-lesson-history-meta{grid-column:2;grid-row:1;display:flex;min-width:0}.teaching-lesson-history-meta button{min-width:58px;min-height:44px;padding-inline:10px}.teaching-lesson-history-meta>.teaching-lesson-row-status,.teaching-lesson-row-chevron{display:none}.teaching-module .teaching-student-card,.contacts-roster .student-drag-card{min-height:54px}body[data-app-layout-mode=phone] .teaching-student-selector .teaching-list{max-height:none;overflow:visible}.teaching-resource-page .teaching-resource-grid{overflow:visible}.teaching-resource-compact-row,body[data-app-layout-mode=phone] .teaching-resource-compact-row{grid-template-columns:minmax(0,1fr) 140px;gap:6px;min-height:60px;padding:6px 8px}.teaching-resource-card--library button.teaching-resource-compact-toggle,body[data-app-layout-mode=phone] .teaching-resource-card--library button.teaching-resource-compact-toggle{min-height:44px;grid-template-columns:minmax(0,1fr) 22px}.teaching-resource-card.teaching-resource-card--library .teaching-resource-compact-actions,body[data-app-layout-mode=phone] .teaching-resource-card.teaching-resource-card--library .teaching-resource-compact-actions{position:static;display:grid;grid-template-columns:repeat(3,44px);gap:4px}.teaching-resource-card--library .teaching-resource-compact-actions button,body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-actions button{width:44px;min-width:44px;height:44px;min-height:44px}.portal-mode-tabs,.app-tabs.portal-mode-tabs{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.portal-mode-tabs button,.app-tabs.portal-mode-tabs button{width:100%;min-width:0;min-height:68px;flex-direction:column;gap:4px;padding:6px;font-size:13px;line-height:1.15;text-align:center;white-space:normal}.student-summary-strip{grid-template-columns:minmax(0,1fr)}.student-summary-item+.student-summary-item,.student-summary-item:nth-child(4),.student-summary-item:nth-child(n+5){border-inline-start:0;border-top:1px solid var(--line)}.app-settings-page>.app-settings-section:not(.prompt-settings-section),.app-settings-section-stack,.prompt-settings-section{max-width:none}}@media(prefers-reduced-motion:reduce){.module-loading-skeleton{animation:none}}.teaching-resource-compact-actions{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center}.teaching-blocks-page .teaching-template-manager-list.inline{flex:0 0 auto;align-content:start;gap:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-card)}body:not([data-app-layout-mode=phone]) .teaching-blocks-page .teaching-blocks-resource-section .teaching-template-manager-list.inline{flex:0 0 auto;align-content:start;max-height:none;overflow-y:hidden}.teaching-blocks-page .teaching-template-compact-row,body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-compact-row{display:block;border:0;border-bottom:1px solid color-mix(in srgb,var(--line) 62%,var(--text) 38%);border-radius:0;padding:0;background:var(--surface-card)}.teaching-blocks-page .teaching-template-compact-row:last-child{border-bottom:0}.teaching-template-compact-row.is-expanded{background:color-mix(in srgb,var(--teach-green) 3%,var(--surface-card))}.teaching-blocks-page .teaching-template-compact-row>.teaching-template-compact-line{min-height:68px;display:grid;grid-template-columns:minmax(0,1fr) auto!important;align-items:center;gap:8px;padding:0 12px;padding-inline-end:6px}.teaching-blocks-page button.teaching-template-compact-toggle{min-width:0;min-height:68px;display:grid;grid-template-columns:minmax(190px,.85fr) minmax(260px,1.35fr) minmax(92px,.35fr) 22px;align-items:center;gap:12px;border:0;border-radius:0;padding:0;background:transparent;color:var(--text);text-align:start;box-shadow:none}.teaching-template-compact-toggle>span:first-child{min-width:0;display:grid;gap:2px}.teaching-template-compact-toggle strong,.teaching-template-compact-toggle small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teaching-template-compact-toggle strong{font-size:13px}.teaching-template-compact-toggle small,.teaching-template-resource-count{color:var(--muted);font-size:12px}.teaching-template-resource-count{justify-self:start;white-space:nowrap}.teaching-template-compact-summary{display:-webkit-box;overflow:hidden;color:var(--text);font-size:14px;font-weight:600;line-height:1.35;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.teaching-template-compact-toggle>svg{justify-self:center}.teaching-template-compact-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.teaching-blocks-page .teaching-template-icon-action{width:var(--button-standard-h, 36px);min-width:var(--button-standard-h, 36px);height:var(--button-standard-h, 36px);min-height:var(--button-standard-h, 36px);display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0;background:var(--surface-card);color:var(--text);cursor:pointer}.teaching-blocks-page .teaching-template-add-action{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teaching-blocks-page .teaching-template-delete-action{background:color-mix(in srgb,var(--surface-card) 82%,var(--rose));color:var(--rose)}.teaching-blocks-page .teaching-template-icon-action:disabled{cursor:not-allowed;opacity:.4}body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-icon-action{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px)}.teaching-library-detail-backdrop{z-index:var(--z-dialog, 1000);overflow-x:hidden;animation:teaching-library-backdrop-in .18s ease-out both}.teaching-resource-picker-backdrop{z-index:calc(var(--z-dialog, 1000) + 1)}.teaching-contextual-resource-backdrop{z-index:calc(var(--z-dialog, 1000) + 2)}.teaching-library-detail-modal.teaching-activity-create-dialog:not(.is-unified-editor){display:block;overflow-y:auto;overscroll-behavior-y:contain}.tidy-text-working{display:flex;align-items:center;gap:10px}.tidy-text-working>svg{flex:none}.import-journey-history-row{display:flex;align-items:center;gap:8px}.import-journey-history-row>.import-journey-session{flex:1;min-width:0}.import-journey-delete{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-card);color:var(--text);cursor:pointer}.import-journey-delete:disabled{opacity:.5;cursor:default}@media(hover:none){.app-dropdown-menu.app-multi-select-menu button[aria-selected=false]:hover{background:transparent}}.app-dropdown-menu.app-multi-select-menu button:focus-visible{outline:2px solid var(--mgmt-blue);outline-offset:-2px}.teaching-library-detail-modal{width:min(1280px,calc(100vw - 48px));height:min(820px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sheet, 20px);background:var(--surface-panel-strong, var(--surface-panel));color:var(--text);box-shadow:var(--shadow-dialog, 0 4px 8px rgba(15, 23, 42, .24));animation:teaching-library-dialog-in .18s cubic-bezier(.22,1,.36,1) both}.teaching-activity-detail-dialog.is-editing>#activity-library-dialog-title{margin-inline-start:24px}@media(min-width:761px){.teaching-activity-detail-dialog:not(.is-editing){width:min(960px,calc(100vw - 32px));height:min(680px,calc(100dvh - 16px));max-height:calc(100dvh - 16px)}}.teaching-library-detail-header,.teaching-library-detail-footer{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;background:var(--surface-panel-strong, var(--surface-panel))}.teaching-library-detail-header{align-items:flex-start;border-bottom:1px solid var(--line)}.teaching-library-detail-header>div{min-width:0}.teaching-library-detail-header h2{margin:2px 0 4px;overflow-wrap:anywhere;color:var(--text);font-size:22px;line-height:1.2;text-wrap:balance}.teaching-library-detail-header small{color:var(--muted);font-size:13px}.teaching-library-detail-close{flex:0 0 auto}.teaching-library-detail-body{min-width:0;min-height:0;overflow-y:auto;padding:24px}.teaching-library-detail-footer{border-top:1px solid var(--line)}.teaching-resource-detail-dialog .teaching-library-detail-footer{display:grid;grid-template-columns:minmax(0,1fr) auto}.teaching-library-detail-footer>div{display:flex;align-items:center;justify-content:flex-end;gap:8px}.teaching-resource-detail-dialog .teaching-resource-preview-open{margin-inline-end:auto}.teaching-resource-dialog-footer-actions{grid-column:2;margin-inline-start:auto}.teaching-resource-detail-dialog .teaching-resource-dialog-save-actions{justify-content:flex-start}.teaching-resource-detail-dialog:dir(ltr) .teaching-resource-dialog-save-actions{grid-column:2;order:2;flex-direction:row-reverse}.teaching-resource-detail-dialog:dir(ltr) .teaching-resource-dialog-footer-actions{grid-column:1;order:1;margin-inline:0 auto}.teaching-save-action{opacity:.46;transition:opacity .16s ease,background-color .16s ease,color .16s ease}.teaching-save-action.is-dirty{opacity:1}.app-icon-button:has(.lucide-save):disabled{cursor:not-allowed;opacity:.46}@media(prefers-reduced-motion:reduce){.teaching-save-action{transition:none}}.teaching-library-detail-footer .app-icon-button{width:40px;min-width:40px;height:40px;min-height:40px}.teaching-library-dialog-primary{min-height:var(--button-primary-h, 40px);display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--action-control-border, var(--teach-green));border-radius:var(--radius-control, 8px);padding:0 14px;background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));font:inherit;font-weight:var(--font-weight-label, 500);cursor:pointer}.teaching-library-dialog-primary:disabled{cursor:not-allowed;opacity:.45}.teaching-activity-reading-body,.teaching-activity-editor-body,.teaching-resource-reading-body,.teaching-resource-dialog-editor{display:grid;align-content:start;gap:24px}.teaching-resource-reading-body{grid-template-columns:minmax(0,.85fr) minmax(440px,1.15fr);gap:20px;overflow:hidden}.teaching-resource-detail-preview{min-width:0;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel, 12px);background:var(--surface-muted-band)}.teaching-resource-detail-preview>p{margin:0;padding:8px 12px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;line-height:1.4}.teaching-resource-detail-metadata{min-width:0;min-height:0;display:grid;align-content:start;gap:16px;overflow-y:auto;padding-inline-end:4px}@media(min-width:761px){body:not([data-app-layout-mode=phone]) .teaching-resource-detail-metadata{grid-template-rows:auto minmax(180px,1fr) auto auto;align-content:stretch}body:not([data-app-layout-mode=phone]) .teaching-resource-detail-metadata>.teaching-resource-note-field{min-height:0;grid-template-rows:auto minmax(0,1fr)}body:not([data-app-layout-mode=phone]) .teaching-resource-detail-metadata>.teaching-resource-note-field textarea{min-height:132px;height:auto;max-height:none;overflow-y:hidden;resize:none}}.teaching-library-attached-resources{display:grid;gap:8px;padding-top:16px;border-top:1px solid var(--line)}.teaching-library-attached-resources h3,.teaching-resource-dialog-note h3{margin:0;color:var(--text);font-size:15px}.teaching-activity-detail-dialog .teaching-template-title-field,.teaching-resource-dialog-editor label{min-width:0;display:grid;gap:8px}.teaching-activity-detail-dialog .teaching-template-title-field>span,.teaching-activity-detail-dialog .teaching-template-content-field>span,.teaching-resource-dialog-editor label>span{color:var(--muted);font-size:13px;font-weight:var(--font-weight-label, 500)}.teaching-activity-detail-dialog .teaching-template-title-field input,.teaching-activity-detail-dialog .teaching-template-content-field textarea,.teaching-resource-dialog-editor input,.teaching-resource-dialog-editor textarea{width:100%;min-height:var(--button-standard-h, 36px);border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:8px 10px;background:var(--surface-input);color:var(--text);font:inherit}.simple-rich-text-editor{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-input)}.simple-rich-text-toolbar{display:flex;align-items:center;gap:4px;min-height:48px;padding:6px 8px;border-bottom:1px solid var(--line);background:var(--surface-panel)}.simple-rich-text-editor .simple-rich-text-toolbar>.simple-rich-text-tool{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:36px;min-height:36px;width:36px;height:36px;flex:0 0 36px;padding:0 8px;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--text);font:inherit;font-size:13px;font-weight:500;box-shadow:none;cursor:pointer}.simple-rich-text-editor .simple-rich-text-toolbar>.simple-rich-text-tool:hover:not(:disabled){background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.simple-rich-text-editor .simple-rich-text-toolbar>.simple-rich-text-tool:disabled{cursor:default;opacity:.34}.simple-rich-text-editor .simple-rich-text-toolbar>.simple-rich-text-tool:disabled:hover{border-color:transparent;background:transparent;color:var(--text)}.simple-rich-text-editor .simple-rich-text-toolbar>.simple-rich-text-tool:focus-visible{outline:3px solid var(--teach-green);outline-offset:1px}.simple-rich-text-divider{width:1px;height:24px;margin:0 4px;background:var(--line)}.simple-rich-text-writing-area{min-height:300px;padding:24px;color:var(--text);font-size:15px;line-height:1.65;text-align:start;outline:none;white-space:normal}.simple-rich-text-writing-area:empty:before{color:var(--muted);content:attr(data-placeholder);pointer-events:none}.simple-rich-text-writing-area:focus{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--teach-green) 24%,transparent)}.simple-rich-text-writing-area h2,.simple-rich-text-content h2{margin:20px 0 6px;color:var(--text);font-size:18px;line-height:1.35;font-weight:var(--font-weight-heading, 700)}.simple-rich-text-writing-area h2:first-child,.simple-rich-text-content h2:first-child{margin-top:0}.simple-rich-text-writing-area p,.simple-rich-text-writing-area ul,.simple-rich-text-writing-area ol,.simple-rich-text-content p,.simple-rich-text-content ul,.simple-rich-text-content ol{margin:0 0 10px}.simple-rich-text-writing-area ul,.simple-rich-text-writing-area ol,.simple-rich-text-content ul,.simple-rich-text-content ol{padding-inline-start:24px}.simple-rich-text-content{color:var(--text);font-size:15px;line-height:1.65;text-align:start}.teaching-activity-rich-text-editor .simple-rich-text-writing-area{min-height:320px}.teaching-work-plan{display:grid;gap:12px}.teaching-work-plan>h3{margin:0;color:var(--text);font-size:22px;font-weight:var(--font-weight-heading, 700)}.teaching-work-plan-save-row{display:flex;align-items:center;justify-content:flex-end;gap:12px}.teaching-work-plan-actions{display:flex;align-items:center;gap:8px;direction:ltr}.teaching-work-plan-save-row .teaching-last-updated{margin-inline-end:auto}.teaching-last-lesson-card.is-compact{display:flex;align-items:center;justify-content:space-between;min-height:64px;padding:10px 16px}.teaching-last-lesson-card.is-compact>div:first-child{display:flex;align-items:center;gap:12px}.teaching-last-lesson-card.is-compact h3,.teaching-last-lesson-card.is-compact p{margin:0}.teaching-last-lesson-card.is-compact h3{font-size:15px;font-weight:600}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.simple-rich-text-toolbar{flex-wrap:wrap;min-height:52px}.simple-rich-text-editor .simple-rich-text-toolbar>.simple-rich-text-tool{min-width:44px;min-height:44px;width:44px;height:44px;flex-basis:44px;padding:0}.simple-rich-text-writing-area{min-height:280px;padding:16px}.teaching-work-plan-save-row{align-items:center;flex-direction:row;flex-wrap:wrap}.teaching-last-lesson-card.is-compact{min-height:72px}}.teaching-activity-detail-dialog .teaching-template-content-field textarea{min-height:220px;resize:vertical;line-height:1.5}.teaching-resource-dialog-editor textarea{min-height:132px;resize:vertical;line-height:1.5}.teaching-resource-detail-dialog .teaching-resource-note-field textarea{min-height:92px}.teaching-activity-detail-dialog .teaching-template-content-field{min-width:0;display:grid;gap:8px}.teaching-activity-detail-dialog .teaching-template-meta-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.teaching-activity-editor-workspace{display:grid;grid-template-columns:minmax(0,1fr) 304px;align-content:stretch;gap:0;overflow:hidden;padding:0}.teaching-activity-editor-main{min-width:0;min-height:0;display:grid;grid-template-rows:minmax(360px,1fr) auto;gap:18px;overflow:hidden;padding:20px 24px}.teaching-activity-editor-main>.activity-duration-editor{min-height:0;display:grid;grid-template-rows:minmax(0,1fr)}.teaching-activity-editor-main>.teaching-activity-rich-text-editor,.teaching-activity-editor-main>.activity-duration-editor>.teaching-activity-rich-text-editor{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr)}.teaching-activity-editor-main .simple-rich-text-writing-area{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.teaching-activity-editor-main>.teaching-library-attached-resources{max-height:184px;overflow-y:auto;padding-inline-end:4px}.teaching-activity-editor-sidebar{min-width:0;min-height:0;display:grid;align-content:start;gap:20px;overflow-y:auto;border-inline-start:1px solid var(--line);padding:20px;background:color-mix(in srgb,var(--surface-muted-band) 72%,var(--surface-panel))}.teaching-activity-editor-sidebar>header{display:grid;gap:4px}.teaching-activity-editor-sidebar>header strong{color:var(--text);font-size:15px;line-height:20px}.teaching-activity-editor-sidebar>header small{color:var(--muted);font-size:12px;line-height:18px}.teaching-activity-editor-sidebar .resource-taxonomy-fields{grid-template-columns:minmax(0,1fr);gap:16px}.teaching-resource-dialog-primary-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.teaching-resource-dialog-taxonomy{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.3fr);align-items:end;gap:16px}.teaching-resource-dialog-taxonomy>.teaching-filter-popup{width:100%}.teaching-resource-dialog-taxonomy>.teaching-filter-popup>button{width:100%;min-height:var(--button-standard-h, 36px)}@keyframes teaching-library-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes teaching-library-dialog-in{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}body[data-app-layout-mode=phone] .app-page-header{align-items:stretch;flex-direction:column;gap:var(--space-3, 12px)}body[data-app-layout-mode=phone] .app-search-field{min-height:var(--button-phone-h, 44px)}body[data-app-layout-mode=phone] .app-page-actions,body[data-app-layout-mode=phone] .app-page-actions>button,body[data-app-layout-mode=phone] .app-page-actions .app-tabs{width:100%}body[data-app-layout-mode=phone] .app-page-actions>button,body[data-app-layout-mode=phone] .app-tabs button{min-height:44px}@media(min-width:861px){body:not([data-app-layout-mode=phone]) .teaching-blocks-page{height:auto;min-height:0;grid-template-rows:auto auto auto;align-items:start}body:not([data-app-layout-mode=phone]) .teaching-blocks-page .teaching-blocks-resource-section{min-height:0;display:grid;overflow:visible}body:not([data-app-layout-mode=phone]) .teaching-blocks-page .teaching-blocks-resource-section .teaching-template-manager-list.inline{flex:none;max-height:none;overflow:hidden}}@media(max-width:1180px){.teaching-blocks-page button.teaching-template-compact-toggle{grid-template-columns:minmax(0,1fr) minmax(92px,auto) 22px}.teaching-template-compact-summary{display:none}}@media(max-width:760px){.teaching-resource-compact-row,body[data-app-layout-mode=phone] .teaching-resource-compact-row{grid-template-columns:minmax(0,1fr) 52px;min-height:56px;padding-block:0}.teaching-resource-card.teaching-resource-card--library .teaching-resource-compact-actions,body[data-app-layout-mode=phone] .teaching-resource-card.teaching-resource-card--library .teaching-resource-compact-actions{grid-template-columns:minmax(0,1fr)}.teaching-blocks-page .teaching-template-compact-row>.teaching-template-compact-line{min-height:64px;grid-template-columns:minmax(0,1fr) auto!important;padding-inline:8px}.teaching-blocks-page button.teaching-template-compact-toggle{min-height:64px;grid-template-columns:minmax(0,1fr) 22px}.teaching-template-resource-count{display:none}.teaching-blocks-page .teaching-template-icon-action{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:44px}}.teaching-resource-master-tabs{width:fit-content;max-width:100%;flex:0 0 auto;justify-self:start}.teaching-resource-master-tabs [role=tab]{position:relative}.teaching-resource-master-tabs [role=tab]+[role=tab]{margin-inline-start:16px}.teaching-resource-master-tabs [role=tab]+[role=tab]:before{content:"";position:absolute;inset-block:6px;inset-inline-start:-11px;width:1px;background:var(--line);pointer-events:none}.teaching-resource-master-nav{width:fit-content;max-width:100%;display:flex;align-items:stretch;gap:10px}.teaching-resource-master-nav .app-tabs{border:1px solid var(--line);background:var(--surface-panel)}.teaching-resource-master-nav>.teaching-import-folder-button{min-height:40px;border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}.teaching-resource-dialog-classification,.teaching-resource-dialog-tags{display:grid;gap:10px;padding-top:18px;border-top:1px solid var(--line)}.teaching-resource-dialog-classification h3,.teaching-resource-dialog-tags h3{min-height:24px;display:flex;align-items:center;gap:7px;margin:0;color:var(--text);font-size:15px}.teaching-resource-dialog-classification>header{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:12px}.teaching-resource-dialog-classification>header>button,.teaching-resource-organization-explanation button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--button-standard-h, 36px);border:1px solid var(--line);border-radius:var(--radius-control);padding:0 12px;background:var(--surface-input);color:var(--teach-action-soft-text);font:inherit;font-weight:var(--font-weight-label, 500);cursor:pointer}.teaching-resource-classification-editor{display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius-panel);padding:12px;background:var(--surface-card)}.teaching-resource-classification-editor .resource-taxonomy-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.teaching-resource-inline-delete{grid-column:1 / -1;width:100%;display:flex!important;align-items:center;justify-content:space-between!important;gap:16px}.teaching-resource-inline-delete>span{min-width:0;display:flex;align-items:center;gap:10px;color:var(--rose)}.teaching-resource-inline-delete>span>span{min-width:0;display:grid;gap:2px}.teaching-resource-inline-delete strong,.teaching-resource-inline-delete small{display:block}.teaching-resource-inline-delete small{color:var(--muted);font-size:12px}.teaching-resource-confirm-delete{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--rose);border-radius:var(--radius-control);padding:0 13px;background:var(--rose);color:#fff;font:inherit;font-weight:var(--font-weight-label, 500);cursor:pointer}.teaching-resource-confirm-delete:disabled{cursor:wait;opacity:.65}.teaching-resource-page .teaching-library-filter-panel>.teaching-filter-count{grid-area:count}body:not([data-app-layout-mode=phone]) .teaching-resource-page:not(.teaching-blocks-page) .teaching-library-filter-panel>.teaching-filter-buttons,body[data-app-layout-mode=phone] .teaching-resource-page:not(.teaching-blocks-page) .teaching-library-filter-panel>.teaching-filter-buttons{grid-area:filters;grid-column:filters-start / filters-end;grid-row:filters-start / filters-end}.attach-file-menu-backdrop{position:fixed;inset:0;z-index:430;display:grid;place-items:center;padding:24px;background:#0f172a70}.attach-file-menu-backdrop .attach-file-menu,body[data-app-layout-mode=phone] .attach-file-menu-backdrop .attach-file-menu{position:relative;inset:auto;width:min(360px,calc(100vw - 48px));display:grid;gap:8px;border:1px solid var(--line);border-radius:var(--radius-panel);padding:12px;transform:none;background:var(--surface-panel-strong);box-shadow:none}.attach-file-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;padding:0 2px 6px 8px;border-bottom:1px solid var(--line)}.attach-file-menu-head strong{color:var(--text);font-size:14px}.attach-file-menu-backdrop .attach-file-menu>button:not(.attach-file-menu-close){min-height:44px;justify-content:flex-start;gap:10px;padding-inline:12px;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--text);font-size:14px;font-weight:var(--font-weight-label, 500)}.attach-file-menu-backdrop .attach-file-menu>button:not(.attach-file-menu-close):hover,.attach-file-menu-backdrop .attach-file-menu>button:not(.attach-file-menu-close):focus-visible{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.attach-file-menu-backdrop button.attach-file-menu-close{width:36px;min-width:36px;height:36px;min-height:36px;display:inline-grid;place-items:center;border:0;padding:0;background:transparent;color:var(--muted)}.resource-import-workspace{min-width:0;display:grid;gap:12px}.resource-import-progress-copy{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px}.resource-import-progress-copy>div{min-width:0;display:grid;gap:2px}.resource-import-progress-copy strong,.resource-import-progress-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-import-progress-copy strong{color:var(--text);font-size:13px}.resource-import-progress-copy span{white-space:normal;overflow:visible;overflow-wrap:anywhere;color:var(--muted);font-size:12px}.resource-import-progress-copy b{color:var(--teach-action-soft-text);font-size:13px}.resource-import-progress{width:100%;height:8px;display:block;overflow:hidden;border-radius:999px;border:0;background:color-mix(in srgb,var(--line) 72%,transparent);appearance:none}.resource-import-progress::-webkit-progress-bar{border-radius:inherit;background:color-mix(in srgb,var(--line) 72%,transparent)}.resource-import-progress::-webkit-progress-value,.resource-import-progress::-moz-progress-bar{border-radius:inherit;background:var(--teach-green)}body[data-app-layout-mode=phone] .folder-import-actions>button{min-height:44px}@media(max-width:760px){.teaching-resource-master-tabs{width:100%}.attach-file-menu-backdrop{padding:16px}.attach-file-menu-backdrop .attach-file-menu,body[data-app-layout-mode=phone] .attach-file-menu-backdrop .attach-file-menu{width:min(360px,calc(100vw - 32px))}.attach-file-menu-backdrop button.attach-file-menu-close{width:44px;min-width:44px;height:44px;min-height:44px}.folder-import-actions>button{min-height:44px}}.app-multi-select-empty{min-height:40px;display:flex;align-items:center;padding:0 12px;color:var(--muted);font-size:12px}.resource-tag-picker{min-width:0;display:grid;gap:4px}.resource-tag-picker-control{min-height:var(--button-standard-h, 36px);display:flex;align-items:center;flex-wrap:wrap;gap:6px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:4px 8px;background:var(--surface-input);cursor:text}.resource-tag-picker-control:focus-within{border-color:var(--teach-green);box-shadow:0 0 0 2px color-mix(in srgb,var(--teach-green) 20%,transparent)}.resource-tag-picker-control input{min-width:130px;flex:1 1 130px;min-height:26px;border:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;color:var(--text);font:inherit;outline:0}.resource-tag-picker>small{color:var(--muted);font-size:12px;line-height:1.35}.resource-tag-chip{width:fit-content;max-width:100%;flex:0 0 auto;min-height:24px;display:inline-flex;align-items:center;gap:3px;border-radius:999px;padding:2px 3px 2px 8px;background:var(--teach-green-soft);color:var(--teach-action-soft-text);font-size:12px;font-weight:var(--font-weight-label, 500);line-height:1}.resource-tag-chip>button{width:20px;min-width:20px;height:20px;min-height:20px;display:inline-grid;place-items:center;border:0;border-radius:50%;padding:0;background:transparent;color:currentColor;cursor:pointer}.resource-tag-chip>button:hover,.resource-tag-chip>button:focus-visible{background:color-mix(in srgb,currentColor 12%,transparent)}.resource-tag-picker-menu button[role=option]{justify-content:space-between}.resource-tag-picker-menu button[role=option]>svg{flex:0 0 auto}.teaching-resource-needs-organizing{min-width:0;max-width:44%;flex:0 1 44%;min-height:20px;display:inline-flex;align-items:center;gap:4px;overflow:hidden;border-radius:999px;padding:2px 7px;background:color-mix(in srgb,var(--surface-card) 80%,var(--rose));color:var(--rose);font-size:12px;font-weight:var(--font-weight-label, 500);line-height:16px;text-overflow:ellipsis;white-space:nowrap}.teaching-resource-compact-identity>strong{min-width:0;flex:1 1 0}@media(min-width:681px){.teaching-resource-needs-organizing{width:96px;min-width:96px;max-width:96px;min-height:34px;flex:0 0 96px;justify-content:center;border-radius:var(--radius-control, 8px);padding:4px 6px;white-space:normal}.teaching-resource-needs-organizing>svg{flex:0 0 auto}.teaching-resource-needs-organizing>span{max-width:62px;line-height:12px;text-align:start;white-space:normal}}@media(min-width:981px){.teaching-resource-page .teaching-resource-table-head>div,.teaching-resource-card--library button.teaching-resource-compact-toggle{grid-template-columns:minmax(390px,1.8fr) minmax(155px,.58fr) minmax(140px,.48fr) 28px}}.teaching-resource-page .teaching-library-filter-panel>.teaching-resource-grade-filter{grid-area:filters;min-width:0}.teaching-resource-page .teaching-resource-grade-filter .app-dropdown-trigger{min-height:40px}@media(min-width:761px)and (max-width:1120px){body:not([data-app-layout-mode=phone]) .teaching-resource-page:not(.teaching-blocks-page) .teaching-library-filter-panel{grid-template-columns:minmax(0,1.4fr) minmax(180px,.6fr) auto auto;grid-template-areas:"title title count clear" "search filters filters filters";min-height:112px}}@media(max-width:760px){.app-multi-select-empty{min-height:44px}.resource-tag-picker-control{min-height:var(--button-phone-h, 44px)}.resource-tag-chip>button{width:24px;min-width:24px;height:24px;min-height:24px}}@media(prefers-reduced-motion:reduce){.resource-import-progress::-webkit-progress-value,.resource-import-progress::-moz-progress-bar{transition:none}}@media(max-width:700px),(pointer:coarse)and (max-width:900px){html{scrollbar-gutter:auto}.teaching-library-detail-backdrop{padding:0;background:var(--surface-panel-strong, var(--surface-panel))}.teaching-library-detail-modal{width:calc(100vw - 1px);height:100dvh;max-height:100dvh;border:0;border-radius:0}.teaching-library-detail-header,.teaching-library-detail-footer{padding:12px 16px}.teaching-resource-detail-dialog .teaching-library-detail-footer>div{flex:1 1 auto;flex-wrap:wrap}.teaching-library-detail-body{padding:16px}.teaching-resource-picker-body{padding:12px 16px 16px}.teaching-resource-picker-body .teaching-modal-filters,.teaching-resource-picker-body .teaching-filter-buttons.compact{grid-template-columns:minmax(0,1fr)}.teaching-library-detail-header .app-icon-button,.teaching-library-detail-footer .app-icon-button,.teaching-library-dialog-primary{min-height:var(--button-phone-h, 44px)}.teaching-library-detail-header .app-icon-button,.teaching-library-detail-footer .app-icon-button{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px)}.teaching-resource-dialog-primary-fields,.teaching-resource-dialog-taxonomy,.teaching-resource-dialog-facts{grid-template-columns:minmax(0,1fr)}.teaching-resource-reading-body{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(300px,46dvh) auto;overflow-y:auto}.teaching-resource-detail-metadata{overflow:visible;padding-inline-end:0}}html:has(body[data-app-layout-mode=phone]){scrollbar-gutter:auto;overflow-x:clip}body[data-app-layout-mode=phone] .teaching-library-detail-backdrop{padding:0;background:var(--surface-panel-strong, var(--surface-panel))}body[data-app-layout-mode=phone] .teaching-library-detail-modal{width:calc(100vw - 1px);height:100dvh;max-height:100dvh;border:0;border-radius:0}body[data-app-layout-mode=phone] .teaching-library-detail-header,body[data-app-layout-mode=phone] .teaching-library-detail-footer{padding:12px 16px}body[data-app-layout-mode=phone] .teaching-resource-detail-dialog .teaching-library-detail-footer>div{flex:1 1 auto;flex-wrap:wrap}body[data-app-layout-mode=phone] .teaching-library-detail-body{padding:16px}body[data-app-layout-mode=phone] .teaching-resource-picker-body{padding:12px 16px 16px}body[data-app-layout-mode=phone] .teaching-resource-picker-body .teaching-modal-filters,body[data-app-layout-mode=phone] .teaching-resource-picker-body .teaching-filter-buttons.compact{grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .teaching-library-detail-header .app-icon-button,body[data-app-layout-mode=phone] .teaching-library-detail-footer .app-icon-button,body[data-app-layout-mode=phone] .teaching-library-dialog-primary{min-height:var(--button-phone-h, 44px)}body[data-app-layout-mode=phone] .teaching-library-detail-header .app-icon-button,body[data-app-layout-mode=phone] .teaching-library-detail-footer .app-icon-button{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px)}body[data-app-layout-mode=phone] .teaching-resource-dialog-primary-fields,body[data-app-layout-mode=phone] .teaching-resource-dialog-taxonomy,body[data-app-layout-mode=phone] .teaching-resource-dialog-facts{grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .teaching-resource-reading-body{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(300px,46dvh) auto;overflow-y:auto}body[data-app-layout-mode=phone] .teaching-resource-detail-metadata{overflow:visible;padding-inline-end:0}@media(prefers-reduced-motion:reduce){.teaching-library-detail-backdrop,.teaching-library-detail-modal{animation:none}}.app-shell{font-weight:var(--font-weight-body, 400);line-height:var(--line-height-body, 1.5)}.app-shell :is(p,small,time,dd,li,input,textarea,select){font-weight:var(--font-weight-body, 400)}.app-shell :is(button,[role=button],[role=tab],label,legend,summary){font-weight:var(--font-weight-label, 500);line-height:var(--line-height-control, 1.25)}.app-shell :is(button,[role=button],[role=tab]):is(.active,.selected,[aria-current=page],[aria-pressed=true],[aria-selected=true]){font-weight:var(--font-weight-emphasis, 600)}.app-shell :is(strong,b,th,dt){font-weight:var(--font-weight-emphasis, 600)}.app-shell :is(.app-eyebrow,.teaching-eyebrow,.eyebrow,.nav-group-label){font-weight:var(--font-weight-label, 500)}.app-shell :is(h1,h2,h3,h4,h5,h6){font-weight:var(--font-weight-heading, 700);line-height:var(--line-height-heading, 1.15)}.app-shell .teaching-lesson-student-names button{font-weight:var(--font-weight-emphasis, 600)}@media(max-width:700px){.teaching-lessons-directory .app-tabs button,body[data-app-layout-mode=phone] .teaching-lessons-directory .app-tabs button{min-height:var(--button-phone-h, 44px)}.teaching-lessons-directory .teaching-lesson-student-names,body[data-app-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-student-names{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.teaching-lessons-directory .teaching-lesson-student-names button,body[data-app-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-student-names button{min-height:var(--button-phone-h, 44px)}}.teaching-resource-picker-dialog{width:min(1120px,calc(100vw - 48px));grid-template-rows:auto minmax(0,1fr)}.teaching-resource-picker-body{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;overflow:hidden;padding:16px 24px 24px}.teaching-resource-picker-body .teaching-modal-filters{grid-template-columns:minmax(210px,.72fr) minmax(0,1.8fr) 36px auto;gap:8px;background:var(--surface-muted-band)}.teaching-resource-picker-body .teaching-modal-filters>*,.teaching-resource-picker-body .teaching-filter-buttons.compact,.teaching-resource-picker-body .resource-taxonomy-fields{min-width:0}.teaching-resource-picker-body .teaching-filter-buttons.compact{grid-template-columns:minmax(0,3fr) minmax(124px,.8fr)}.teaching-resource-picker-body .teaching-modal-list{align-content:start}.teaching-attachment-resource-picker .teaching-resource-pick-row{min-height:60px;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding-block:8px;padding-inline:10px 4px;border-color:var(--line);background:var(--surface-card);color:var(--text)}.teaching-resource-picker-identity{min-width:0;display:grid;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:10px}.teaching-resource-picker-copy{min-width:0}.teaching-resource-picker-copy strong,.teaching-resource-picker-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teaching-resource-picker-star{color:var(--warning-text, #a56b00)}.teaching-resource-picker-actions{min-width:0;display:flex;justify-content:flex-end;justify-self:end}.teaching-resource-picker-dialog .teaching-resource-picker-actions .teaching-resource-picker-add,.teaching-resource-picker-body .teaching-resource-picker-favorites{height:var(--button-standard-h, 36px);min-height:var(--button-standard-h, 36px);border:1px solid var(--line);border-radius:var(--radius-control, 8px);background:var(--surface-card);color:var(--text)}.teaching-resource-picker-dialog .teaching-resource-picker-actions .teaching-resource-picker-add{min-width:64px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding-inline:12px;font-size:13px;font-weight:var(--font-weight-emphasis, 600);cursor:pointer}.teaching-resource-picker-body .teaching-resource-picker-favorites{width:var(--button-standard-h, 36px);min-width:var(--button-standard-h, 36px);display:inline-grid;place-items:center;padding:0}.teaching-resource-picker-dialog .teaching-resource-picker-actions .teaching-resource-picker-preview{border-color:color-mix(in srgb,var(--line) 72%,var(--teach-green));background:color-mix(in srgb,var(--surface-card) 92%,var(--teach-green));color:color-mix(in srgb,var(--text) 58%,var(--teach-green))}.teaching-resource-picker-dialog .teaching-resource-picker-actions .teaching-resource-picker-add:not(:disabled){border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teaching-resource-picker-body .teaching-resource-picker-favorites{align-self:end;cursor:pointer}.teaching-resource-picker-body .teaching-resource-picker-favorites:hover,.teaching-resource-picker-body .teaching-resource-picker-favorites.is-active{border-color:color-mix(in srgb,var(--warning-text, #a56b00) 42%,var(--line));background:color-mix(in srgb,var(--warning-soft, #fff7d6) 72%,var(--surface-card));color:var(--warning-text, #a56b00)}.teaching-resource-picker-dialog .teaching-resource-pick-row small{color:var(--muted)}.teaching-resource-picker-dialog .teaching-resource-pick-row.attached{border-color:var(--teach-green-mid);background:color-mix(in srgb,var(--teach-green-soft) 72%,var(--surface-card))}.teaching-resource-picker-dialog .teaching-resource-picker-actions .teaching-resource-picker-add:disabled{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text);cursor:default;opacity:1}.teaching-resource-picker-body .teaching-modal-filters .teaching-filter-popup>button,.teaching-resource-picker-body .teaching-modal-filters>.teaching-clear-filters{border:1px solid var(--line);background:var(--surface-input);color:var(--text)}.teaching-resource-picker-body .teaching-modal-filters .teaching-filter-popup>button:hover:not(:disabled),.teaching-resource-picker-body .teaching-modal-filters>.teaching-clear-filters:hover:not(:disabled){border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.teaching-resource-picker-body,body[data-app-layout-mode=phone] .teaching-resource-picker-body{display:block;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.teaching-resource-picker-body .teaching-modal-filters{grid-template-columns:minmax(0,1fr) auto;margin-bottom:12px}body[data-app-layout-mode=phone] .teaching-resource-picker-body .teaching-modal-filters{grid-template-columns:minmax(0,1fr) auto}.teaching-resource-picker-body .teaching-modal-filters>.teaching-search-field,.teaching-resource-picker-body .teaching-modal-filters>.teaching-filter-buttons,body[data-app-layout-mode=phone] .teaching-resource-picker-body .teaching-modal-filters>.teaching-search-field,body[data-app-layout-mode=phone] .teaching-resource-picker-body .teaching-modal-filters>.teaching-filter-buttons{grid-column:1 / -1}.teaching-resource-picker-body .teaching-filter-buttons.compact,body[data-app-layout-mode=phone] .teaching-resource-picker-body .teaching-filter-buttons.compact{grid-template-columns:minmax(0,1fr)}.teaching-resource-picker-body .teaching-resource-picker-favorites,body[data-app-layout-mode=phone] .teaching-resource-picker-body .teaching-resource-picker-favorites{grid-column:1;grid-row:3;justify-self:start}.teaching-resource-picker-body .teaching-modal-filters>.teaching-clear-filters,body[data-app-layout-mode=phone] .teaching-resource-picker-body .teaching-modal-filters>.teaching-clear-filters{grid-column:2;grid-row:3;justify-self:end}.teaching-resource-picker-body .teaching-modal-list,body[data-app-layout-mode=phone] .teaching-resource-picker-body .teaching-modal-list{overflow:visible;padding-inline-end:0}.teaching-attachment-resource-picker .teaching-resource-pick-row{grid-template-columns:minmax(0,1fr)}.teaching-resource-picker-actions{justify-self:end}.teaching-resource-picker-dialog .teaching-resource-picker-actions .teaching-resource-picker-add,.teaching-resource-picker-body .teaching-resource-picker-favorites{height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px)}.teaching-resource-picker-dialog .teaching-resource-picker-actions .teaching-resource-picker-add{min-width:72px}.teaching-resource-picker-body .teaching-resource-picker-favorites{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px)}}.teaching-resource-modal{width:min(1080px,100%)}.teaching-resource-modal .teaching-modal-filters{grid-template-columns:minmax(220px,.72fr) minmax(580px,1.8fr) auto;gap:8px}.teaching-resource-modal .teaching-modal-filters>*,.teaching-resource-modal .teaching-filter-buttons.compact,.teaching-resource-modal .resource-taxonomy-fields{min-width:0}.teaching-resource-modal .teaching-filter-buttons.compact{grid-template-columns:minmax(0,3fr) minmax(124px,.8fr)}.teaching-resource-modal .teaching-modal-filters{background:var(--surface-muted-band)}.teaching-resource-modal .teaching-resource-pick-row,.teaching-resource-modal .teaching-lesson-pick-row{border-color:var(--line);background:var(--surface-card);color:var(--text)}.teaching-resource-modal .teaching-resource-pick-row small,.teaching-resource-modal .teaching-lesson-pick-row small{color:var(--muted)}.teaching-resource-modal .teaching-resource-pick-row.attached{border-color:var(--teach-green-mid);background:color-mix(in srgb,var(--teach-green-soft) 72%,var(--surface-card))}.teaching-resource-modal .teaching-resource-pick-row>button{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}.teaching-resource-modal .teaching-resource-pick-row>button:disabled{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teaching-resource-modal>header>button,.teaching-resource-modal .teaching-modal-filters .teaching-filter-popup>button,.teaching-resource-modal .teaching-modal-filters>.teaching-clear-filters{border:1px solid var(--line);background:var(--surface-input);color:var(--text)}.teaching-resource-modal>header>button:hover:not(:disabled),.teaching-resource-modal .teaching-modal-filters .teaching-filter-popup>button:hover:not(:disabled),.teaching-resource-modal .teaching-modal-filters>.teaching-clear-filters:hover:not(:disabled){border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teaching-block-library-toolbar h2,.teaching-template-compact-toggle strong,.teaching-template-editor-heading strong{color:color-mix(in srgb,var(--text) 76%,var(--teach-green))}.teaching-new-block-footer{min-width:0;display:flex;align-items:center;gap:12px;padding-top:8px;border-top:1px solid var(--line)}.teaching-new-block-footer .teaching-new-block-resources{min-width:0;flex:1 1 auto;flex-wrap:nowrap;align-items:center;gap:8px}.teaching-new-block-footer .teaching-resource-line{min-width:0;flex:1 1 auto;flex-wrap:nowrap;overflow:hidden;padding-block:0;white-space:nowrap}@media(max-width:760px){.teaching-resource-classification-editor .resource-taxonomy-fields{grid-template-columns:minmax(0,1fr)}.teaching-resource-dialog-classification>header>button,.teaching-resource-organization-explanation button{min-height:var(--button-phone-h, 44px)}}body[data-app-layout-mode=phone] .teaching-resource-classification-editor .resource-taxonomy-fields{grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .teaching-resource-dialog-classification>header>button,body[data-app-layout-mode=phone] .teaching-resource-organization-explanation button{min-height:var(--button-phone-h, 44px)}.teaching-new-block-footer .teaching-resource-line-item{min-width:0;max-width:220px;display:block;overflow:hidden;text-overflow:ellipsis}.teaching-new-block-footer .teaching-resource-line-item a{display:block;overflow:hidden;text-overflow:ellipsis}.teaching-new-block-footer .teaching-resource-line-item small{display:none}.teaching-new-block-footer .app-icon-button,.teaching-template-editor-header .app-icon-button,.teaching-template-editor-footer .app-icon-button{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px);flex:0 0 var(--button-phone-h, 44px);padding:0}.teaching-template-editor-footer .app-icon-button>svg{width:20px;height:20px;stroke-width:2.25}.teaching-new-block-footer .teaching-new-block-actions{flex:0 0 auto;align-items:center}.teaching-new-block-footer .teaching-new-block-actions>button:last-child{min-height:var(--button-standard-h, 36px)}.teaching-next-lesson-modal .teaching-new-block-footer .app-icon-button{width:40px;min-width:40px;height:40px;min-height:40px;flex-basis:40px}.teaching-template-editor-header .teaching-template-editor-close{width:var(--button-standard-h, 36px);min-width:var(--button-standard-h, 36px);padding:0}.teaching-template-editor-footer{justify-content:flex-end}.teaching-template-editor-footer .teaching-resource-link-small{margin-inline-end:auto}.teaching-template-editor-footer .teaching-save-small{margin-inline-start:0}@media(min-width:761px){.teaching-activity-detail-dialog.is-unified-editor .teaching-activities-library-composer.is-library-editor-layout{display:contents}.teaching-unified-activity-header{position:relative;padding-inline:76px}.teaching-unified-activity-header .teaching-unified-activity-close{position:absolute;top:16px;inset-inline-end:16px;width:40px;min-width:40px;height:40px;min-height:40px;padding:0}.teaching-unified-activity-header .teaching-activity-creation-ai-action{position:absolute;top:16px;inset-inline-start:16px;width:40px;min-width:40px;height:40px;min-height:40px;padding:0}.teaching-activity-editor-main>.teaching-composer-editor-shell{min-height:0;display:grid}.teaching-activity-editor-main>.teaching-composer-editor-shell>.activity-duration-editor{min-height:0;display:grid;grid-template-rows:minmax(0,1fr)}.teaching-activity-editor-main>.teaching-composer-editor-shell>.activity-duration-editor>.teaching-activity-rich-text-editor{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr)}.teaching-activity-editor-main>.teaching-composer-editor-shell .simple-rich-text-writing-area{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.teaching-unified-activity-footer{justify-content:space-between}.teaching-unified-activity-footer .teaching-activity-overflow-actions{flex:0 0 auto}.teaching-unified-activity-footer .teaching-unified-activity-primary-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-inline-start:auto}}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog .teaching-template-editor-footer{margin-inline:0}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.mobile-always-edit{grid-template-rows:minmax(0,1fr) auto}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.mobile-always-edit .teaching-activity-editor-body{gap:16px;padding:12px}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog .teaching-activity-editor-workspace{display:block;overflow-x:hidden;overflow-y:auto;padding:0}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog .teaching-activity-editor-main{display:grid;grid-template-rows:auto auto;gap:16px;overflow:visible;padding:12px}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog .teaching-activity-editor-main>.activity-duration-editor,body[data-app-layout-mode=phone] .teaching-activity-detail-dialog .teaching-activity-editor-main>.teaching-activity-rich-text-editor{height:min(48dvh,360px);min-height:300px}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog .teaching-activity-editor-main>.activity-duration-editor>.teaching-activity-rich-text-editor{min-height:0}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog .teaching-activity-editor-main>.teaching-library-attached-resources{max-height:none;overflow:visible;padding-inline-end:0}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog .teaching-activity-editor-sidebar{min-height:auto;overflow:visible;border-top:1px solid var(--line);border-inline-start:0;padding:16px 12px 20px}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.mobile-always-edit .teaching-activity-rich-text-editor .simple-rich-text-writing-area{min-height:260px}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.mobile-always-edit .resource-taxonomy-fields{grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.mobile-always-edit .teaching-template-editor-footer{justify-content:space-between;gap:8px;padding:8px 12px}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.mobile-always-edit .teaching-activity-overflow-actions{flex:0 0 auto}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.mobile-always-edit .teaching-template-editor-footer .teaching-resource-link-small{margin-inline-end:0}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.mobile-always-edit .teaching-resource-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:5px 6px}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.mobile-always-edit .teaching-resource-row-file{display:none}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.mobile-always-edit .teaching-resource-row-identity{grid-template-columns:minmax(0,1fr)}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.mobile-always-edit .teaching-resource-row-actions .app-icon-button{width:44px;min-width:44px;height:44px;min-height:44px}@media(max-width:1100px){.teaching-resource-modal .teaching-modal-filters{grid-template-columns:minmax(0,1fr) auto}.teaching-resource-modal .teaching-modal-filters>.teaching-search-field{grid-column:1;grid-row:1}.teaching-resource-modal .teaching-modal-filters>.teaching-filter-buttons{grid-column:1 / -1;grid-row:2}.teaching-resource-modal .teaching-modal-filters>.teaching-clear-filters{grid-column:2;grid-row:1}}@media(max-width:760px){.teaching-resource-modal .teaching-modal-filters,.teaching-resource-modal .teaching-filter-buttons.compact{grid-template-columns:minmax(0,1fr)}.teaching-resource-modal .teaching-modal-filters>.teaching-search-field,.teaching-resource-modal .teaching-modal-filters>.teaching-filter-buttons,.teaching-resource-modal .teaching-modal-filters>.teaching-clear-filters{grid-column:1}.teaching-resource-modal .teaching-modal-filters>.teaching-search-field{grid-row:1}.teaching-resource-modal .teaching-modal-filters>.teaching-filter-buttons{grid-row:2}.teaching-resource-modal .teaching-modal-filters>.teaching-clear-filters{grid-row:3}.teaching-new-block-footer{display:grid;grid-template-columns:minmax(0,1fr)}.teaching-new-block-footer .app-icon-button,.teaching-template-editor-header .app-icon-button,.teaching-template-editor-footer .app-icon-button{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px);flex-basis:var(--button-phone-h, 44px)}.teaching-new-block-footer .teaching-new-block-actions{justify-content:flex-end}body[data-app-layout-mode=phone] .teaching-activities-library-composer .teaching-new-block-footer .teaching-new-block-actions>button:last-child{min-height:var(--button-phone-h, 44px)}body[data-app-layout-mode=phone] .teaching-resource-modal .teaching-modal-filters .teaching-filter-popup>button,body[data-app-layout-mode=phone] .teaching-resource-modal .teaching-modal-filters>.teaching-clear-filters{min-height:var(--button-phone-h, 44px)}}.teaching-blocks-page .teaching-template-editor{grid-template-columns:minmax(0,1fr) minmax(220px,320px)}.teaching-template-editor .teaching-template-meta-controls{grid-column:2;grid-row:2}.teaching-template-editor .teaching-template-content-field{display:grid;grid-column:1 / -1;grid-row:3;gap:6px}@media(max-width:980px){.teaching-blocks-page .teaching-template-editor{grid-template-columns:minmax(0,1fr)}.teaching-template-editor .teaching-template-heading-column,.teaching-template-editor .teaching-template-meta-controls,.teaching-template-editor .teaching-template-content-field{grid-column:1;grid-row:auto}}.app-shell .upcoming-date small,.app-shell .nav-group-label,.app-shell .status-pill,.app-shell .teaching-status-pill,.app-shell .payment-source,.app-shell .txn-type,.app-shell .time-rail-header,.app-shell .student-group-start-button,.app-shell .teaching-date-filter span,.app-shell .teaching-resource-table-head,.app-shell .teaching-resource-classification,.app-shell .teaching-resource-kind,.app-shell .teaching-resource-format,.app-shell .teaching-resource-primary-open,.app-shell .teaching-ai-source-note,.app-shell .portal-status,.app-shell .portal-type-label,.app-shell .portal-usage span,.app-shell .teaching-module .teaching-student-card small,.app-shell .contacts-roster .student-drag-card small,.app-shell .inactive-students-divider,.app-shell .teaching-inactive-students-divider,.app-shell .student-groups-title small,.app-shell .student-summary-item small,.app-shell .identity-read-grid dt,.app-shell .parent-identity-read dt,.app-shell .parent-read-list dt,.app-shell .teaching-resource-compact-source,.app-shell .teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-primary-open,.app-shell .account-session-footer strong,.app-shell .account-session-footer small,body[data-app-layout-mode=phone] .mobile-primary-nav .nav-item{font-size:var(--font-caption, 12px)}.contacts-roster>h2,.teaching-student-selector .teaching-panel-title h2,.teaching-student-header h2,.teaching-student-header .student-identity-line h2{font-size:var(--font-section-title, 22px)}body[data-app-layout-mode=phone] .contact-detail .section-title h1{font-size:var(--font-page-title, 32px)}.contact-detail .student-color-options{grid-template-columns:repeat(6,32px)}.contact-detail .student-color-options button,.contact-detail .student-color-options input[type=color]{width:32px;min-width:32px;height:32px;min-height:32px}body[data-app-layout-mode=phone] .add-student-button,body[data-app-layout-mode=phone] .import-phone-button,body[data-app-layout-mode=phone] .teaching-filter-disclosure,body[data-app-layout-mode=phone] .teaching-add-resource-toggle,body[data-app-layout-mode=phone] .portal-error button{min-height:var(--button-phone-h, 44px)}body[data-app-layout-mode=phone] .slot-add-button{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px);border-radius:var(--radius-control, 8px);padding:0}body[data-app-layout-mode=phone] .contact-detail .contact-toolbar .app-icon-button,body[data-app-layout-mode=phone] .contact-detail .student-color-menu summary,body[data-app-layout-mode=phone] .contact-detail .student-color-options button,body[data-app-layout-mode=phone] .contact-detail .student-color-options input[type=color]{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px)}body[data-app-layout-mode=phone] .contact-device-picker-button{width:100%;min-height:var(--button-phone-h, 44px);display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:-4px 0 12px;border-color:color-mix(in srgb,var(--teach-green) 32%,var(--line));background:color-mix(in srgb,var(--teach-green) 8%,var(--surface-panel));color:var(--teach-green-deep);font-weight:var(--font-weight-emphasis, 600)}.contact-device-picker-notice{margin:0 0 12px;padding:9px 11px;border:1px solid color-mix(in srgb,var(--teach-green) 25%,var(--line));border-radius:var(--radius-control);background:color-mix(in srgb,var(--teach-green) 7%,var(--surface-panel));color:var(--text);font-size:var(--font-supporting, 13px);line-height:1.4}.contact-device-picker-notice.is-error{border-color:color-mix(in srgb,var(--danger) 28%,var(--line));background:color-mix(in srgb,var(--danger) 7%,var(--surface-panel));color:var(--danger)}body[data-app-layout-mode=phone] .contact-detail .student-color-options{width:min(328px,calc(100vw - 32px));grid-template-columns:repeat(auto-fit,var(--button-phone-h, 44px))}body[data-app-layout-mode=phone] .teaching-student-file-detail .student-context-link,body[data-app-layout-mode=phone] .teaching-student-file-detail .teaching-ai-summary>header>button{min-height:var(--button-phone-h, 44px)}.teaching-lesson-command-navigation{display:flex;align-items:center;gap:8px;min-width:0}.teaching-lesson-command-navigation .teaching-lesson-command-tabs{min-width:0;flex:1 1 auto}.teaching-workflow-attendance{min-height:40px;display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;border:1px solid var(--line);border-radius:var(--radius-control);padding:0 10px;background:var(--surface-card, #fff);color:var(--text)}.teaching-workflow-attendance.attendance-complete{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}@media(max-width:700px){.teaching-lesson-command-navigation{align-items:stretch;flex-direction:column}.teaching-workflow-attendance{min-height:44px;justify-content:center}.open-lesson-review-followups button,.teaching-lessons-directory button,.teaching-lesson-command-tabs button,.open-lesson-workspace button{min-height:44px}}body[data-app-layout-mode=phone] .teaching-workflow-attendance,body[data-app-layout-mode=phone] .teaching-lessons-directory button,body[data-app-layout-mode=phone] .teaching-lesson-command-tabs button,body[data-app-layout-mode=phone] .open-lesson-workspace button{min-height:44px}.teaching-resource-preview-stage.is-document{place-items:start center;align-content:start;padding:16px;scroll-padding-top:16px}.teaching-resource-preview-stage.is-document .teaching-resource-docx-preview{margin-top:0}.teaching-library-detail-body{scroll-padding-bottom:calc(96px + env(safe-area-inset-bottom))}@media(max-width:700px){.teaching-library-detail-body{padding-bottom:calc(96px + env(safe-area-inset-bottom))}}.lesson-canvas-generator-success{min-height:44px;display:flex;align-items:center;gap:8px;margin:0;padding:10px 12px;border:1px solid var(--teach-green-mid);border-radius:var(--radius-control);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.lesson-canvas-generator-success.is-error{border-color:var(--danger);color:var(--danger)}.teaching-student-inactive-badge{display:inline-flex;align-items:center;min-height:26px;border:1px solid var(--line);border-radius:999px;padding:0 9px;background:var(--surface-muted-band);color:var(--muted);font-size:12px}.teaching-student-inactive-context{margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-muted-band);color:var(--muted)}@media(max-width:700px){.teaching-resource-page button,.teaching-library-detail-modal button,.teaching-blocks-page button,.teaching-student-file-detail button,.content-portal-page button{min-height:44px}}body[data-app-layout-mode=phone] .teaching-resource-page button,body[data-app-layout-mode=phone] .teaching-library-detail-modal button,body[data-app-layout-mode=phone] .teaching-blocks-page button,body[data-app-layout-mode=phone] .teaching-student-file-detail button,body[data-app-layout-mode=phone] .content-portal-page button{min-height:44px}@media(max-width:700px){.teaching-library-detail-modal .resource-tag-chip>button{width:20px;min-width:20px;height:20px;min-height:20px;flex:0 0 20px;padding:0}}body[data-app-layout-mode=phone] .teaching-library-detail-modal .resource-tag-chip>button{width:20px;min-width:20px;height:20px;min-height:20px;flex:0 0 20px;padding:0}.teacher-diary-save-button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--action-control-border, var(--teach-green));border-radius:var(--radius-control);padding:0 14px;background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text));font-weight:var(--font-weight-label, 600)}@media(max-width:700px){.teacher-diary-save-button{width:100%;min-height:44px}}body[data-app-layout-mode=phone] .portal-error button{display:inline-flex;align-items:center;border-radius:var(--radius-control, 8px);padding-inline:var(--space-3, 12px)}.overview-icon,.upcoming-row{border-radius:var(--radius-control, 8px)}.upcoming-row{border-color:var(--line);background:var(--surface-card)}body .teaching-panel button.teaching-primary-action{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}body .teaching-panel button.teaching-primary-action:hover:not(:disabled){border-color:var(--action-control-border, color-mix(in srgb, var(--teach-green) 82%, #000));background:var(--action-control-hover-bg, color-mix(in srgb, var(--teach-green) 82%, #000));color:var(--action-control-text, var(--teach-action-solid-text))}body:has(.mark-paid-modal) .assistant-launcher,body:has(.mark-paid-modal) .assistant-panel,body:has(.assignment-sheet) .assistant-launcher,body:has(.assignment-sheet) .assistant-panel,body[data-app-layout-mode=phone]:has(.mark-paid-modal) .assistant-launcher,body[data-app-layout-mode=phone]:has(.assignment-sheet) .assistant-launcher{display:none}@media(max-width:700px),(pointer:coarse)and (max-width:900px){body:has(.mark-paid-modal) .assistant-launcher,body:has(.assignment-sheet) .assistant-launcher{display:none}}.teaching-print-dialog{width:min(960px,calc(100vw - 48px));height:min(900px,calc(100dvh - 24px));max-height:calc(100dvh - 24px)}.teaching-print-preview-body{display:grid;overflow:hidden;padding:0;background:#dfe6e2}.teaching-print-preview-stage{min-width:0;min-height:0;overflow:auto;padding:28px}.teaching-print-sheet{width:min(760px,100%);min-height:980px;margin:0 auto;padding:48px;background:#fff;color:#173d35;box-shadow:var(--shadow-panel)}.teaching-print-sheet-header{display:grid;gap:6px;margin-bottom:28px;padding-bottom:18px;border-bottom:2px solid #dce5e1}.teaching-print-sheet-header p,.teaching-print-sheet-header h1,.teaching-print-sheet-header small{margin:0}.teaching-print-sheet-header p{color:#217a5a;font-size:12px;font-weight:var(--font-weight-label, 500);letter-spacing:.08em;text-transform:uppercase}.teaching-print-sheet-header h1{color:#173d35;font-size:28px;line-height:1.15}body:not([data-app-layout-mode=phone]) .teaching-print-sheet .teaching-print-sheet-header h1,body[data-app-layout-mode=phone] .teaching-print-sheet .teaching-print-sheet-header h1{font-size:28px;line-height:1.15}.teaching-print-sheet-header small{color:#61736e;font-size:13px}.teaching-print-sheet .teaching-resource-preview-image{width:100%;max-height:none;border-radius:0;box-shadow:none}.teaching-print-sheet .teaching-resource-preview-pdf-pages{width:100%}.teaching-print-sheet .teaching-resource-preview-frame{width:100%;min-height:860px;border:0}.teaching-resource-docx-preview{width:min(760px,calc(100% - 32px));min-height:100%;display:grid;align-content:start;gap:12px;margin:16px auto;padding:44px;background:#fff;color:#173d35;box-shadow:var(--shadow-panel)}.teaching-resource-docx-preview p{margin:0;font-size:15px;line-height:1.55;white-space:pre-wrap}.teaching-print-sheet>.teaching-resource-docx-preview{width:100%;min-height:0;margin:0;padding:0;box-shadow:none}.teaching-print-dialog-footer{align-items:center;justify-content:flex-end}.teaching-print-dialog-footer>p{max-width:440px;margin:0;color:var(--muted);font-size:12px;line-height:1.4}.teaching-print-dialog-footer button{min-height:var(--button-primary-h, 40px);display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0 14px;background:var(--surface-card);color:var(--text);font:inherit;font-weight:var(--font-weight-label, 500);cursor:pointer}.teaching-print-dialog-footer button:disabled{cursor:wait;opacity:.45}.teaching-print-dialog-footer .teaching-print-cancel{border-color:transparent;background:transparent;color:var(--muted)}.teaching-print-dialog-footer .teaching-print-pdf{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.teaching-print-dialog-footer button.teaching-print-printer{border-color:var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}@media(max-width:760px){.teaching-print-dialog{width:100vw;height:100dvh;max-height:100dvh}.teaching-print-dialog-header{padding-block:10px}.teaching-print-dialog-header .teaching-eyebrow{display:none}.teaching-print-dialog-header h2{margin-block:0;font-size:19px}.teaching-print-preview-stage{padding:12px}.teaching-print-sheet{width:100%;min-height:0;padding:24px 18px}.teaching-print-dialog-footer{display:flex;gap:8px;padding-block:10px}.teaching-print-dialog-footer>p{max-width:none}.teaching-print-dialog-footer>div{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.teaching-print-dialog-footer button{min-height:var(--button-phone-h, 44px);padding-inline:8px}.teaching-print-dialog-footer .teaching-print-cancel{grid-column:1 / -1;justify-self:start;min-width:88px}}body[data-app-layout-mode=phone] .teaching-print-preview-stage{padding:8px}body[data-app-layout-mode=phone] .teaching-print-sheet{width:100%;min-height:0;padding:24px 18px}body[data-app-layout-mode=phone] .teaching-print-dialog-footer{display:flex;gap:8px;padding-block:10px}body[data-app-layout-mode=phone] .teaching-print-dialog-footer>p{max-width:none}body[data-app-layout-mode=phone] .teaching-print-dialog-footer>div{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}body[data-app-layout-mode=phone] .teaching-print-dialog-footer button{min-height:var(--button-phone-h, 44px);padding-inline:8px}body[data-app-layout-mode=phone] .teaching-print-dialog-footer .teaching-print-cancel{grid-column:1 / -1;justify-self:start;min-width:88px}@media print{@page{size:A4;margin:12mm}html,body{background:#fff!important}body>*{display:none!important}body>.teaching-library-detail-backdrop:has(.teaching-print-dialog){position:static!important;display:block!important;overflow:visible!important;padding:0!important;background:#fff!important}.teaching-print-dialog{width:auto!important;height:auto!important;max-height:none!important;display:block!important;overflow:visible!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;animation:none!important}.teaching-print-dialog>.teaching-print-dialog-header,.teaching-print-dialog>.teaching-print-dialog-footer{display:none!important}.teaching-print-preview-body,.teaching-print-preview-stage{display:block!important;overflow:visible!important;padding:0!important;background:#fff!important}.teaching-print-sheet{width:100%!important;min-height:0!important;margin:0!important;padding:0!important;background:#fff!important;box-shadow:none!important}.teaching-print-sheet .teaching-resource-preview-pdf-pages figure{break-inside:avoid}.teaching-print-sheet .teaching-resource-preview-pdf-pages{display:block}.teaching-print-sheet .teaching-resource-preview-pdf-pages figure{margin:0;break-after:page}.teaching-print-sheet .teaching-resource-preview-pdf-pages figure:last-child{break-after:auto}.teaching-print-sheet .teaching-resource-preview-pdf-pages img{width:100%;box-shadow:none}.teaching-print-sheet .teaching-resource-preview-pdf-pages figcaption{display:none}.teaching-print-sheet .teaching-resource-docx-preview{break-inside:auto}.teaching-print-sheet .teaching-resource-docx-preview p{break-inside:avoid}}.teaching-resource-page .teaching-resource-grid:has(.app-icon-button:hover),.teaching-resource-page .teaching-resource-grid:has(.app-icon-button:focus-visible),.teaching-blocks-page .teaching-blocks-resource-section .teaching-template-manager-list.inline:has(.app-icon-button:hover),.teaching-blocks-page .teaching-blocks-resource-section .teaching-template-manager-list.inline:has(.app-icon-button:focus-visible){overflow:visible}.teaching-resource-page .teaching-resource-card.teaching-resource-card--library:has(.app-icon-button:hover),.teaching-resource-page .teaching-resource-card.teaching-resource-card--library:has(.app-icon-button:focus-visible),.teaching-blocks-page .teaching-template-compact-row:has(.app-icon-button:hover),.teaching-blocks-page .teaching-template-compact-row:has(.app-icon-button:focus-visible){position:relative;z-index:1;overflow:visible}.teaching-resource-compact-actions{display:grid;grid-template-columns:repeat(3,var(--button-standard-h, 36px));justify-content:end;gap:6px}.teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-icon-action{width:var(--button-standard-h, 36px);min-width:var(--button-standard-h, 36px);height:var(--button-standard-h, 36px);min-height:var(--button-standard-h, 36px);display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0;background:var(--surface-card);color:var(--text);cursor:pointer}.teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-preview-action{border-color:color-mix(in srgb,var(--line) 72%,var(--teach-green));background:color-mix(in srgb,var(--surface-card) 92%,var(--teach-green));color:color-mix(in srgb,var(--text) 58%,var(--teach-green))}.teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-delete-action{background:color-mix(in srgb,var(--surface-card) 82%,var(--rose));color:var(--rose)}.teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-icon-action:disabled{cursor:not-allowed;opacity:.4}.teaching-blocks-page .teaching-template-icon-action>svg,.teaching-resource-card--library .teaching-resource-icon-action>svg{width:18px;height:18px}body .teaching-blocks-page button.teaching-template-icon-action{display:inline-grid;place-items:center;gap:0;padding:0}.teaching-blocks-page button.teaching-template-icon-action.teaching-template-delete-action{border-color:color-mix(in srgb,var(--rose) 36%,var(--line));background:color-mix(in srgb,var(--rose) 12%,var(--surface-card));color:var(--rose)}.teaching-blocks-page button.teaching-template-icon-action.teaching-template-delete-action:hover{border-color:color-mix(in srgb,var(--rose) 54%,var(--line));background:color-mix(in srgb,var(--rose) 18%,var(--surface-card));color:var(--rose)}.teaching-lessons-directory{gap:10px;padding:12px 16px 14px}.teaching-lessons-directory .teaching-lesson-history-row>button.teaching-lesson-row-open-hitarea{position:absolute;z-index:1;inset:-1px;width:auto;min-width:0;height:auto;min-height:0;margin:0;border:0;border-radius:inherit;padding:0;background:transparent;box-shadow:none;cursor:pointer}.teaching-lessons-directory .teaching-lesson-history-row>button.teaching-lesson-row-open-hitarea:hover,.teaching-lessons-directory .teaching-lesson-history-row>button.teaching-lesson-row-open-hitarea:active{border:0;background:transparent;box-shadow:none}.teaching-lesson-history-row:has(.teaching-lesson-row-open-hitarea:hover){border-color:color-mix(in srgb,var(--student-color, var(--teach-green)) 42%,var(--line));background:color-mix(in srgb,var(--student-color, var(--teach-green)) 10%,var(--surface-card))}.teaching-lesson-row-open-hitarea:focus-visible{outline:2px solid var(--teach-green);outline-offset:-3px}.teaching-lessons-directory .teaching-lesson-student-names{position:relative;z-index:2}body[data-app-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-student-names{pointer-events:none}body[data-app-layout-mode=phone] .teaching-lessons-directory .teaching-lesson-student-names button{pointer-events:auto}@media(min-width:701px){.teaching-lesson-directory-toolbar{display:flex;align-items:center;gap:10px;min-width:0}.teaching-lesson-directory-toolbar .teaching-lesson-filters{order:1;flex:1 1 auto;min-width:0}.teaching-lesson-directory-toolbar .teaching-lesson-view-tabs{order:2;width:230px;min-width:230px;margin:0}.teaching-lessons-directory .teaching-lesson-history-row{min-height:52px;grid-template-columns:minmax(170px,.58fr) minmax(0,1fr) auto 18px;gap:0 10px;padding:4px 10px}.teaching-lessons-directory .teaching-lesson-history-meta{width:auto}.teaching-lessons-directory .teaching-lesson-student-names button{min-height:30px;padding-block:3px}}@media(max-width:680px){.teaching-resource-master-nav{width:100%;flex-wrap:nowrap;gap:6px}.teaching-resource-master-nav .teaching-resource-master-tabs{width:auto;min-width:0;flex:1 1 auto}.teaching-resource-master-nav>.teaching-import-folder-button{width:auto;flex:0 0 auto;align-self:center;height:44px;min-height:44px;padding-block:0;padding-inline:10px;font-size:12px}.teaching-resource-master-tabs [role=tab]{flex:1 1 auto;min-width:0;min-height:44px;padding-inline:8px;gap:4px;font-size:12px}.teaching-resource-master-tabs [role=tab]+[role=tab]{margin-inline-start:0}.teaching-resource-master-tabs [role=tab]+[role=tab]:before{display:none}.teaching-resource-inline-delete{align-items:stretch;flex-direction:column}.teaching-resource-inline-delete>div{width:100%}.teaching-resource-inline-delete>div>button{min-height:var(--button-phone-h, 44px);flex:1 1 0}}body[data-app-layout-mode=phone] .teaching-resource-master-nav{width:100%;flex-wrap:nowrap;gap:6px}body[data-app-layout-mode=phone] .teaching-resource-master-nav .teaching-resource-master-tabs{width:auto;min-width:0;flex:1 1 auto}body[data-app-layout-mode=phone] .teaching-resource-master-nav>.teaching-import-folder-button{width:auto;flex:0 0 auto;align-self:center;height:44px;min-height:44px;padding-block:0;padding-inline:10px;font-size:12px}body[data-app-layout-mode=phone] .teaching-resource-master-tabs [role=tab]{flex:1 1 auto;min-width:0;min-height:44px;padding-inline:8px;gap:4px;font-size:12px}body[data-app-layout-mode=phone] .teaching-resource-master-tabs [role=tab]+[role=tab]{margin-inline-start:0}body[data-app-layout-mode=phone] .teaching-resource-master-tabs [role=tab]+[role=tab]:before{display:none}body[data-app-layout-mode=phone] .teaching-resource-inline-delete{align-items:stretch;flex-direction:column}.app-shell[data-layout-mode]{--app-shell-gap: 12px;--app-sidebar-width: 216px;--app-canvas-max: 1280px;box-sizing:border-box;min-height:100vh;min-height:100dvh}.app-shell[data-canvas-variant=wide]{--app-canvas-max: 1600px}.app-shell[data-canvas-variant=split]{--app-canvas-max: 1440px}.app-shell[data-canvas-variant=reading]{--app-canvas-max: 1120px}.app-shell:is([data-layout-mode=desktop],[data-layout-mode=compact]){inline-size:100%;max-inline-size:none;grid-template-columns:var(--app-sidebar-width) minmax(0,1fr);align-items:start;gap:var(--app-shell-gap);margin-inline:0;padding:18px 12px}.app-shell[data-layout-mode=compact]{--app-sidebar-width: 184px;padding:8px}.app-shell[data-layout-mode=phone]{--app-shell-gap: 6px;inline-size:100%;max-inline-size:none;grid-template-columns:minmax(0,1fr);align-content:start;gap:var(--app-shell-gap);margin-inline:0;padding:2px}.app-shell[data-layout-mode]>.app-main{container:app-canvas / inline-size;inline-size:100%;min-inline-size:0}.app-shell[data-layout-mode=desktop] :is(.sidebar-brand,.sidebar-footer){flex:0 0 auto}.app-shell[data-layout-mode=desktop] .sidebar-desktop-nav{min-height:0;flex:1 1 auto;align-content:start;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-gutter:stable;scrollbar-color:var(--muted) transparent}.app-shell[data-layout-mode=desktop] .sidebar-desktop-nav .primary-nav-group{gap:8px}@media(max-height:940px){.app-shell[data-layout-mode=desktop] .sidebar-desktop-nav .primary-nav-group{gap:6px}}.app-shell[data-layout-mode=compact] .sidebar-desktop-nav .primary-nav-group{gap:6px}.app-shell[data-layout-mode=compact]>.app-sidebar{position:sticky;top:8px;z-index:140;inline-size:100%;min-inline-size:0;height:calc(100vh - 16px);height:calc(100dvh - 16px);flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:8px;padding:8px;border-radius:14px;overflow:visible}.app-shell[data-layout-mode=compact] .sidebar-brand{order:initial;inline-size:100%;flex:0 0 auto;justify-content:flex-start;gap:8px;padding:4px 6px}.app-shell[data-layout-mode=compact] .sidebar-brand .brand-mark{width:36px;height:36px}.app-shell[data-layout-mode=compact] :is(.inwork-branch-badge,.sidebar-desktop-nav .nav-item>kbd){display:none}.app-shell[data-layout-mode=compact] .sidebar-desktop-nav{order:initial;inline-size:100%;min-height:0;flex:1 1 auto;display:grid;align-content:start;gap:6px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-gutter:stable;scrollbar-color:var(--muted) transparent}.app-shell[data-layout-mode=compact] .mobile-primary-nav{display:none}.app-shell[data-layout-mode=compact] .nav-group{order:initial;inline-size:100%;min-inline-size:0;flex:0 0 auto;display:grid;gap:3px;padding:4px;border:1px solid rgba(29,29,31,.07);border-radius:10px}.app-shell[data-layout-mode=compact] .nav-group.management-group{background:var(--nav-management-bg)}.app-shell[data-layout-mode=compact] .nav-group.teaching-group{background:var(--nav-teaching-bg)}.app-shell[data-layout-mode=compact] .sidebar-desktop-nav .nav-item{inline-size:100%;min-inline-size:0;min-height:40px;flex:0 0 auto;justify-content:flex-start;gap:10px;padding:0 10px;font-size:14px;white-space:nowrap}.app-shell[data-layout-mode=compact] .sidebar-desktop-nav .nav-item>svg{width:18px;height:18px}.app-shell[data-layout-mode=compact] .sidebar-footer{order:initial;inline-size:100%;flex:0 0 auto;margin:auto 0 0;display:grid;align-items:stretch;gap:6px}.app-sidebar .sidebar-footer .deploy-stamp{display:block;white-space:normal;text-align:center}.app-shell[data-layout-mode=compact] .app-sidebar .account-button{inline-size:100%;min-width:0;height:44px;min-height:44px;justify-content:flex-start;gap:8px;padding:4px 8px}.home-debt-panel{grid-column:1 / -1;justify-self:center;width:min(860px,100%);min-width:0;display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius-panel);padding:16px;background:var(--surface-panel);box-shadow:var(--shadow-panel)}.home-debt-panel-header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:16px}.home-debt-panel-header>div{min-width:0}.home-debt-panel-header h2,.home-debt-panel-header p{margin:0}.home-debt-panel-header h2{font-size:var(--font-section-title, 21px)}.home-debt-panel-header p{margin-top:3px;color:var(--muted);font-size:12px}.home-debt-open-all,.home-debt-whatsapp,.home-debt-mark-paid{min-height:var(--button-primary-h, 40px);display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);font:inherit;cursor:pointer;touch-action:manipulation;transition:border-color .16s ease,background .16s ease,color .16s ease}.home-debt-open-all{flex:0 0 auto;padding-inline:12px;color:var(--teach-action-soft-text)}.home-debt-list{display:grid;gap:8px}.home-debt-row{min-width:0;min-height:58px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;border:1px solid var(--line);border-inline-start:3px solid color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 72%,var(--line));border-radius:var(--radius-control);padding:8px 10px;background:var(--surface-card)}.home-debt-account,.home-debt-account strong,.home-debt-account small{min-width:0;display:block}.home-debt-account strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-debt-account small{margin-top:2px;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.home-debt-amount{min-width:76px;font-variant-numeric:tabular-nums;text-align:end;white-space:nowrap}.home-debt-actions{display:flex;align-items:center;gap:8px}.home-debt-whatsapp{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);padding:0;border-radius:999px;border-color:color-mix(in srgb,#25d366 42%,var(--line));background:color-mix(in srgb,#25d366 12%,var(--surface-card));color:color-mix(in srgb,#147a3d 38%,var(--text))}.home-debt-mark-paid{padding-inline:12px;border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.home-debt-open-all:hover,.home-debt-open-all:focus-visible,.home-debt-mark-paid:hover,.home-debt-mark-paid:focus-visible{border-color:var(--teach-green);background:color-mix(in srgb,var(--teach-green-soft) 72%,var(--surface-card))}.home-debt-whatsapp:hover,.home-debt-whatsapp:focus-visible{border-color:color-mix(in srgb,#25d366 72%,var(--line));background:color-mix(in srgb,#25d366 20%,var(--surface-card))}.home-debt-open-all:focus-visible,.home-debt-whatsapp:focus-visible,.home-debt-mark-paid:focus-visible{outline:none;box-shadow:var(--focus-ring)}.home-debt-empty{min-height:64px;display:flex;align-items:center;gap:10px;border:1px solid color-mix(in srgb,var(--green) 28%,var(--line));border-radius:var(--radius-control);padding:10px 12px;background:color-mix(in srgb,var(--green) 8%,var(--surface-card));color:var(--app-success-text)}.home-debt-empty>span,.home-debt-empty strong,.home-debt-empty small{display:block}.home-debt-empty small{margin-top:2px;color:var(--muted);font-size:12px}body[data-app-layout-mode=phone] .mobile-today-page>.home-debt-panel{width:100%;gap:10px;padding:12px;box-shadow:none}body[data-app-layout-mode=phone] .mobile-today-page .home-debt-panel-header{gap:8px}body[data-app-layout-mode=phone] .mobile-today-page .home-debt-panel-header h2{font-size:17px}body[data-app-layout-mode=phone] .mobile-today-page :is(.home-debt-open-all,.home-debt-whatsapp,.home-debt-mark-paid){min-height:var(--button-phone-h, 44px)}body[data-app-layout-mode=phone] .mobile-today-page .home-debt-open-all{padding-inline:8px}body[data-app-layout-mode=phone] .mobile-today-page .home-debt-row{min-height:0;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;padding:8px}body[data-app-layout-mode=phone] .mobile-today-page .home-debt-amount{min-width:64px}body[data-app-layout-mode=phone] .mobile-today-page .home-debt-actions{grid-column:1 / -1;display:grid;grid-template-columns:44px minmax(0,1fr)}body[data-app-layout-mode=phone] .mobile-today-page .home-debt-whatsapp{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px)}body[data-app-layout-mode=phone] .mobile-today-page .home-debt-mark-paid{width:100%}@container app-canvas (max-width: 920px){.home-page{grid-template-columns:minmax(0,1fr)}html[data-app-theme] .home-hero{min-height:0;grid-template-columns:minmax(0,1fr);padding:16px;padding-block-end:16px}html[data-app-theme] .home-hero:after{display:none}.content-portal-header{grid-template-columns:minmax(0,1fr);gap:12px}}@container app-canvas (max-width: 680px){.home-cards,.portal-toolbar,.portal-grid{grid-template-columns:minmax(0,1fr)}}@media(max-height:860px){.app-shell[data-layout-mode=desktop]{padding-block:10px}.app-shell[data-layout-mode=desktop]>.app-sidebar{top:10px;height:calc(100vh - 20px);height:calc(100dvh - 20px);min-height:0}.app-shell[data-layout-mode=desktop] .sidebar-desktop-nav{min-height:0;flex:1 1 auto;overflow-y:auto}}.teaching-lessons-directory .teaching-lesson-view-tabs{max-width:100%}.teaching-timeline-controls{display:flex;align-items:end;justify-content:space-between;gap:12px}@media(min-width:701px){.teaching-lessons-directory>.teaching-lesson-view-tabs{min-width:206px;width:206px;justify-self:end;margin-inline-start:auto;margin-inline-end:0}.teaching-lessons-directory .teaching-lesson-filters.upcoming-mode{column-gap:6px}.teaching-lessons-directory .teaching-lesson-filters.upcoming-mode .teaching-student-filter-popup{flex:0 0 163px;min-width:163px;display:flex;justify-content:flex-end}.teaching-lessons-directory .teaching-lesson-filters.upcoming-mode .teaching-student-filter-popup>button{width:109px}.teaching-lessons-directory .teaching-lesson-filters.history-mode .teaching-student-filter-popup{flex:0 0 166px;min-width:166px;display:flex;justify-content:flex-end}.teaching-lessons-directory .teaching-lesson-filters.history-mode .teaching-student-filter-popup>button{width:137px}.teaching-lessons-directory .teaching-lesson-filters.upcoming-mode .teaching-completion-filter-prep{flex:0 0 319px;min-width:0}.teaching-lessons-directory .teaching-lesson-filters.upcoming-mode .teaching-completion-filter-prep>div{gap:8px}.teaching-lessons-directory .teaching-lesson-filters.upcoming-mode .teaching-completion-filter-prep>div button{flex:1 1 0;min-width:0}.teaching-lessons-directory .teaching-lesson-filters.upcoming-mode .teaching-student-filter-popup,.teaching-lessons-directory .teaching-lesson-filters.upcoming-mode .teaching-clear-filters{align-self:center}.teaching-lessons-directory .teaching-lesson-filters.upcoming-mode .teaching-clear-filters{margin-inline-start:12px}.teaching-lessons-directory .teaching-lesson-history-row{min-height:60px}.teaching-lessons-directory .teaching-lesson-student-cell{display:flex;align-items:center;gap:8px}.teaching-lessons-directory .teaching-lesson-student-names{flex:0 1 auto}.teaching-lessons-directory .teaching-lesson-student-cell>small{flex:0 0 auto;margin-inline-start:0;white-space:nowrap}}.mobile-app-header,.payments-phone-summary,.payment-debt-search,.credit-add-disclosure,.payment-history-filter-disclosure,.teaching-mobile-lesson-options,.open-lesson-mobile-latest-note,.open-lesson-mobile-shortcuts,.open-lesson-save-note-label{display:none}body[data-app-layout-mode=phone] .payments-phone-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}body[data-app-layout-mode=phone] .payments-phone-summary :is(span,strong,small){display:block}body[data-app-layout-mode=phone] .payments-phone-summary span{color:var(--muted);font-size:12px;letter-spacing:.06em;text-transform:uppercase}body[data-app-layout-mode=phone] .payments-phone-summary strong{margin-top:1px;font-size:24px;line-height:1.05}body[data-app-layout-mode=phone] .payments-phone-summary small{margin-top:2px;color:var(--muted);font-size:12px}body[data-app-layout-mode=phone] .payment-debt-search{display:flex}body[data-app-layout-mode=phone] .credit-add-disclosure{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text)}.mobile-more-page{width:100%}.payment-filter-row>.payment-history-filter-controls{width:100%;grid-column:1 / -1;display:grid;grid-template-columns:minmax(220px,1fr) minmax(150px,190px) minmax(150px,190px) auto;align-items:center;gap:8px}.payment-history-filter-controls .payment-history-sort-field{grid-column:1 / -1;width:min(190px,100%)}.app-mobile-filter-disclosure{width:100%;min-height:52px;display:grid;grid-template-columns:minmax(0,1fr) auto 20px;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card);color:var(--text);text-align:start}.app-mobile-filter-disclosure__title{min-width:0;display:flex;align-items:center;gap:7px}.app-mobile-filter-disclosure__title strong{overflow:hidden;font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.app-mobile-filter-disclosure__title b{min-width:20px;min-height:20px;display:inline-grid;place-items:center;padding:0 5px;border-radius:999px;background:var(--mgmt-blue-soft);color:var(--text);font-size:11px}.app-mobile-filter-disclosure>small{max-width:104px;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.app-mobile-filter-disclosure>svg:last-child{transition:transform .15s ease}.app-mobile-filter-disclosure.is-open>svg:last-child{transform:rotate(180deg)}.app-mobile-filter-button{position:relative;width:52px;min-width:52px;height:52px;min-height:52px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text);cursor:pointer;touch-action:manipulation}.app-mobile-filter-button:hover,.app-mobile-filter-button.is-open{border-color:color-mix(in srgb,var(--teach-green) 48%,var(--line));background:color-mix(in srgb,var(--teach-green-soft) 74%,var(--surface-card));color:var(--teach-action-soft-text)}.app-mobile-filter-button:active{transform:scale(.97)}.app-mobile-filter-button:focus-visible,.app-mobile-filter-sheet button:focus-visible,.app-active-filter-chip:focus-visible{outline:3px solid color-mix(in srgb,var(--teach-green-soft) 78%,transparent);outline-offset:2px}.app-mobile-filter-button>b{position:absolute;inset-block-start:3px;inset-inline-end:3px;min-width:18px;height:18px;display:inline-grid;place-items:center;padding-inline:4px;border:2px solid var(--surface-card);border-radius:999px;background:var(--teach-green);color:var(--teach-action-solid-text);font-size:10px;font-weight:var(--font-weight-heading, 700);line-height:1}.app-active-filter-chip{min-height:44px;display:inline-flex;flex:0 0 auto;align-items:center;gap:6px;padding:0 10px;border:1px solid color-mix(in srgb,var(--teach-green) 38%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--teach-green-soft) 72%,var(--surface-card));color:var(--teach-action-soft-text);font-size:13px;font-weight:600;white-space:nowrap;cursor:pointer;touch-action:manipulation}.app-active-filter-chip:hover{border-color:var(--teach-green)}.app-active-filter-chip:active{background:color-mix(in srgb,var(--teach-green-soft) 88%,var(--surface-card))}.app-mobile-filter-sheet-backdrop{position:fixed;inset:0;z-index:var(--z-dialog, 1000);display:grid;place-items:end center;padding:max(8px,env(safe-area-inset-top)) 8px 0;background:color-mix(in srgb,#10251d 52%,transparent);animation:app-filter-backdrop-in .18s ease-out both}.app-mobile-filter-sheet{width:min(520px,100%);max-height:min(74dvh,660px);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden;border:1px solid var(--line);border-block-end:0;border-radius:var(--radius-sheet, 20px) var(--radius-sheet, 20px) 0 0;background:var(--surface-sheet, var(--surface-panel-strong));color:var(--text);box-shadow:var(--shadow-sheet);animation:app-filter-sheet-in .22s ease-out both}.app-mobile-filter-sheet__handle{width:38px;height:4px;justify-self:center;margin-top:7px;border-radius:999px;background:color-mix(in srgb,var(--muted) 38%,transparent)}.app-mobile-filter-sheet__header{min-height:56px;display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:8px;padding:4px 12px 6px 16px;border-bottom:1px solid var(--line)}.app-mobile-filter-sheet__header h2{margin:0;font-size:20px;line-height:1.2}.app-mobile-filter-sheet__close{width:44px;min-width:44px;height:44px;display:inline-grid;place-items:center;border:0;border-radius:var(--radius-control);background:transparent;color:var(--text);cursor:pointer}.app-mobile-filter-sheet__close:hover,.app-mobile-filter-sheet__close:active{background:var(--surface-muted-band)}.app-mobile-filter-sheet__body{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:14px 16px 16px}.app-mobile-filter-sheet__footer{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:8px;padding:12px 16px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface-sheet, var(--surface-panel-strong))}.app-mobile-filter-sheet__footer button{min-width:0;min-height:48px;border-radius:var(--radius-control);padding-inline:12px;font:inherit;font-weight:var(--font-weight-heading, 700);cursor:pointer;touch-action:manipulation}.app-mobile-filter-sheet__clear{border:1px solid var(--line);background:var(--surface-card);color:var(--text)}.app-mobile-filter-sheet__clear:disabled{color:var(--muted);opacity:.48;cursor:not-allowed}.app-mobile-filter-sheet__apply{border:1px solid var(--action-control-border, var(--teach-green));background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}.app-mobile-filter-sheet__apply:hover,.app-mobile-filter-sheet__apply:active{filter:brightness(.96)}@keyframes app-filter-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes app-filter-sheet-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.teaching-library-mobile-toolbar{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 52px 52px;align-items:stretch;gap:8px}.teaching-library-mobile-toolbar>:first-child{min-width:0}@media(prefers-reduced-motion:reduce){.app-mobile-filter-button,.app-mobile-filter-sheet-backdrop,.app-mobile-filter-sheet{animation:none;transition:none}}.teaching-library-mobile-import,.teaching-library-mobile-import .teaching-import-folder-button{width:52px;min-width:52px;height:52px;min-height:52px}.teaching-library-mobile-import .teaching-import-folder-button{justify-content:center;gap:0;border-color:var(--action-control-border, var(--teach-green));padding:0;background:var(--action-control-bg, var(--teach-green));color:var(--action-control-text, var(--teach-action-solid-text))}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.teaching-timeline-controls{align-items:stretch;flex-direction:column}.app-shell[data-layout-mode=phone]{--app-shell-gap: 0;min-height:100dvh;gap:0;padding:0;background:var(--bg)}.app-shell[data-layout-mode=phone]>.app-sidebar{position:relative;inset:auto;z-index:40;width:100%;height:56px;min-height:56px;display:block;padding:0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:var(--surface-panel-strong);box-shadow:none}.app-shell[data-layout-mode=phone] .mobile-app-header{height:56px;display:grid;grid-template-columns:44px minmax(0,1fr) 44px 44px;align-items:center;gap:6px;padding:6px 8px}.app-shell[data-layout-mode=phone] .mobile-app-header--with-photo{grid-template-columns:44px minmax(0,1fr) 44px 44px 44px}.app-shell[data-layout-mode=phone] .mobile-app-brand,.app-shell[data-layout-mode=phone] .mobile-app-search,.app-shell[data-layout-mode=phone] .mobile-app-header .account-button{width:44px;min-width:44px;height:44px;min-height:44px;display:inline-grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:10px;background:var(--surface-card);color:var(--text)}.app-shell[data-layout-mode=phone] :is(.mobile-app-search,.mobile-app-header .account-button,.mobile-header-photo-action .quick-capture-button--home,.mobile-more-row,.teaching-library-mobile-import .teaching-import-folder-button){box-shadow:var(--shadow-action-compact)}.app-shell[data-layout-mode=phone] :is(.mobile-app-search,.mobile-app-header .account-button,.mobile-header-photo-action .quick-capture-button--home,.mobile-more-row,.teaching-library-mobile-import .teaching-import-folder-button):focus-visible{box-shadow:var(--shadow-action-compact),var(--focus-ring)}.app-shell[data-layout-mode=phone] .mobile-app-brand{border-color:var(--teach-green);background:var(--teach-green)}.app-shell[data-layout-mode=phone] .mobile-app-brand img{width:27px;height:27px}.app-shell[data-layout-mode=phone] .mobile-app-heading{min-width:0;display:grid;gap:1px;padding-inline:4px}.app-shell[data-layout-mode=phone] .mobile-app-heading strong,.app-shell[data-layout-mode=phone] .mobile-app-heading small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell[data-layout-mode=phone] .mobile-app-heading strong{font-size:17px;font-weight:600}.app-shell[data-layout-mode=phone] .mobile-app-heading small{color:var(--muted);font-size:12px}.app-shell[data-layout-mode=phone] .mobile-app-header .account-copy,.app-shell[data-layout-mode=phone] .mobile-app-header .account-button>svg{display:none}.app-shell[data-layout-mode=phone] .mobile-app-header .account-avatar{width:32px;height:32px}.app-shell[data-layout-mode=phone] .mobile-header-photo-action{width:44px;height:44px;display:inline-grid;place-items:center}.app-shell[data-layout-mode=phone] .mobile-header-photo-action .quick-capture-button--home{position:static;inset:auto;width:44px;min-width:44px;height:44px;min-height:44px;display:inline-grid;place-items:center;padding:0;border-color:color-mix(in srgb,var(--teach-green) 34%,var(--line));border-radius:10px;background:var(--teach-green-soft)}.app-shell[data-layout-mode=phone] :is(.sidebar-brand,.sidebar-desktop-nav,.sidebar-footer){display:none}.app-shell[data-layout-mode=phone] .mobile-primary-nav{position:fixed;inset:auto 0 0;z-index:45;width:100%;min-height:66px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:5px 8px max(5px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface-sheet, var(--panel-strong, #fffdf8));-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--shadow-sheet)}.app-shell[data-layout-mode=phone]:has(.login-gate) .mobile-primary-nav{display:none}.app-shell[data-layout-mode=phone] .mobile-primary-nav .nav-item,body[data-app-layout-mode=phone] .app-shell[data-layout-mode=phone] .mobile-primary-nav .nav-item{width:100%;min-width:0;min-height:54px;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;align-content:center;justify-content:stretch;gap:2px;padding:3px 2px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);font-size:11px}.app-shell[data-layout-mode=phone] .mobile-primary-nav .nav-item>span{width:100%;max-width:100%;text-align:center}.app-shell[data-layout-mode=phone] .mobile-primary-nav .nav-item.active{border-color:color-mix(in srgb,var(--mgmt-blue) 32%,var(--line))!important;background:var(--mgmt-blue-soft)!important;color:var(--text)!important;box-shadow:none!important}.app-shell[data-layout-mode=phone]>.app-main{width:100%;min-height:calc(100dvh - 56px);padding:0 0 calc(132px + env(safe-area-inset-bottom))}.app-shell[data-layout-mode=phone] .assistant-launcher,body[data-app-layout-mode=phone] .assistant-launcher{position:fixed;inset:auto 10px calc(72px + env(safe-area-inset-bottom)) auto;z-index:46;width:48px;min-width:48px;height:48px;min-height:48px;padding:0;display:inline-grid;place-items:center;border-radius:14px;box-shadow:var(--shadow-action-strong)}.app-shell[data-layout-mode=phone] .assistant-launcher span,body[data-app-layout-mode=phone] .assistant-launcher span{display:none}.mobile-today-page{width:100%;display:grid;align-content:start;gap:10px;padding:4px}.mobile-attention-list>button:focus-visible,.mobile-attention-list>.mobile-attention-item:has(.home-attendance-row-open-hitarea:focus-visible){box-shadow:var(--shadow-action-strong),var(--focus-ring)}.mobile-record-payment:focus-visible,.app-shell[data-layout-mode=phone] .assistant-launcher:focus-visible{box-shadow:var(--shadow-action-strong),var(--focus-ring)}.mobile-more-page{display:grid;align-content:start;gap:8px;padding:4px}.mobile-more-group{display:grid;gap:7px}.mobile-more-group h2{margin:5px 4px 1px;color:var(--muted);font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.mobile-more-row{width:100%;min-height:56px;display:grid;grid-template-columns:28px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:7px 12px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card);color:var(--text);text-align:start}.mobile-more-icon{display:inline-grid;place-items:center;color:var(--teach-action-soft-text)}.mobile-more-copy,.mobile-more-copy strong,.mobile-more-copy small{min-width:0;display:block}.mobile-more-copy strong{font-weight:500}.mobile-more-copy small{margin-top:1px;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.app-shell[data-layout-mode=phone] .payments-page,.app-shell[data-layout-mode=phone] .payments-table-panel{width:100%;max-width:none;gap:7px;padding:4px;border:0;border-radius:0;background:transparent;box-shadow:none}.payments-phone-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.payments-phone-summary span,.payments-phone-summary strong,.payments-phone-summary small{display:block}.payments-phone-summary span{color:var(--muted);font-size:12px;letter-spacing:.06em;text-transform:uppercase}.payments-phone-summary strong{margin-top:1px;font-size:24px;line-height:1.05}.payments-phone-summary small{margin-top:2px;color:var(--muted);font-size:12px}.payments-page .payments-tabs{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--teach-green-soft)}.payments-page .payments-tabs button{min-width:0;min-height:44px;border:0;border-radius:var(--radius-control);background:transparent;color:var(--text)}.payments-page .payments-tabs button.active{background:var(--selection-control-bg, var(--teach-green));color:var(--selection-control-text, var(--teach-action-solid-text))}.app-shell[data-layout-mode=phone] .payments-page .payment-section{display:grid;gap:6px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.payments-page .payment-debt-search{display:flex;min-height:44px;background:var(--surface-input)}.payments-page .payment-section>.app-mobile-filter-disclosure,.payments-page .payment-filter-row>.app-mobile-filter-disclosure{display:grid;grid-column:1 / -1}.payments-page .payment-history-heading .eyebrow,.payments-page .payment-history-heading small{display:none}.payments-page .payment-history-heading h2{margin:0;font-size:16px;line-height:1.2}.payments-page .payment-history-section{margin-top:0}.payments-page .payment-history-section>.payment-history-heading{min-height:22px;align-items:center}.payments-page .payment-history-section .app-mobile-filter-disclosure{min-height:44px;padding-block:4px}.payment-debt-sort-field,.teaching-mobile-sort-field{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-muted-band, var(--surface-card));color:var(--muted);font-size:13px}.payment-debt-sort-options,.teaching-mobile-sort-field .app-dropdown{width:100%;min-width:0}.payment-debt-sort-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:3px;border-radius:var(--radius-control);background:var(--surface-input)}.payment-debt-sort-option{min-width:0;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 12px;border:1px solid transparent;border-radius:calc(var(--radius-control) - 3px);background:transparent;color:var(--text);font:inherit;font-weight:var(--font-weight-label, 500);touch-action:manipulation}.payment-debt-sort-option.active{border-color:var(--teach-green-mid);background:var(--teach-green-soft);color:var(--teach-action-soft-text)}.payment-debt-sort-option svg{width:15px;height:15px;flex:0 0 auto;stroke-width:2.25}.payments-page .payment-list{gap:4px}.payments-page .payment-debt-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card);box-shadow:none}.payments-page .payment-debt-summary{min-height:56px;display:grid;grid-template-columns:minmax(0,1fr) 44px 54px;align-items:center;gap:2px;padding:4px;border:0}.payments-page .payment-debt-toggle{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:0;padding-inline-end:0}.payments-page .payment-debt-toggle .payment-charge-count{display:none}.payments-page .payment-debt-toggle .payment-student{grid-column:1;grid-row:1}.payments-page .payment-debt-toggle>b{grid-column:2;grid-row:1;align-self:center}.payments-page .payment-student strong,.payments-page .payment-student small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payments-page .payment-debt-summary .payment-student small{display:none}.payments-page .payment-debt-toggle>b{max-width:62px;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.payments-page .payment-summary-pay{position:static;inset:auto;min-width:54px;min-height:44px;padding-inline:4px}.payments-page .payment-reminder-button{width:44px;height:44px;align-self:center}.payments-page .payment-debt-detail{padding:0 10px 8px}.payments-page .credit-add-disclosure,.payments-page .payment-history-filter-disclosure{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text)}.payments-page .payment-filter-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;margin-top:0}.payments-page .payment-history-filter-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;padding:7px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-muted-band, var(--surface-card))}.payments-page .payment-history-filter-controls>*{width:100%}.payments-page .payment-history-filter-controls .payment-search-field{min-height:44px;background:var(--surface-input)}.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-row{min-height:64px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"student actions";align-items:center;gap:6px;padding:4px 7px;border-radius:10px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-heading{align-items:stretch;flex-direction:column}.app-shell[data-layout-mode=phone] .payments-page .payment-history-period-field{width:100%}.app-shell[data-layout-mode=phone] .payments-page .payment-history-period-field .payment-history-filter-trigger{min-height:44px}.app-shell[data-layout-mode=phone] .payments-page .payment-statistics-period-field,.app-shell[data-layout-mode=phone] .payments-page .payment-statistics-period{width:100%}.app-shell[data-layout-mode=phone] .payments-page .payment-statistics-period-field .payment-history-filter-trigger{min-height:44px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-column-head{display:none}.app-shell[data-layout-mode=phone] .payments-page .payment-history-period-menu{width:100%;max-width:none}.app-shell[data-layout-mode=phone] .payments-page .payment-history-period-menu .payment-history-period-all,.app-shell[data-layout-mode=phone] .payments-page .payment-history-period-menu .payment-history-year-navigation>button,.app-shell[data-layout-mode=phone] .payments-page .payment-history-period-menu .payment-history-month-grid>button,.app-shell[data-layout-mode=phone] .payments-page .payment-history-period-menu .payment-history-year-grid>button{min-height:44px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-period-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;padding:12px 14px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-row-toggle{width:100%;min-width:0;min-height:44px;grid-area:student}.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-history-row-toggle .payment-student{grid-area:auto}.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-student{grid-area:student;min-width:0;display:flex;align-items:center;gap:7px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-history-type-stack,.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-history-account-meta{display:none}.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-history-name-stack{min-width:0;display:grid;flex:1 1 auto;gap:3px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-row-toggle .payment-history-name-stack strong{overflow:visible;line-height:1.25;text-align:start;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-history-note,.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-source-badge,.app-shell[data-layout-mode=phone] .payments-page .payment-history-section>.payment-list .payment-method{display:none}.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-history-mobile-meta{display:block;color:var(--muted);font-size:13px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-mobile-expanded-meta{display:grid;gap:4px;padding:9px 10px;border-bottom:1px solid var(--line);color:var(--muted);font-size:13px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-mobile-expanded-meta .txn-type{justify-self:start}.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .txn-type{flex:0 0 auto;max-width:88px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-history-actions{grid-area:actions;display:inline-flex;flex-direction:row;align-items:center;gap:4px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-history-actions b{grid-column:auto;grid-row:auto;align-self:center;font-variant-numeric:tabular-nums;white-space:nowrap}.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-undo-button{width:44px;min-width:44px;height:44px;min-height:44px;display:inline-grid;place-items:center;border-color:transparent;padding:0;background:transparent;color:var(--muted)}.app-shell[data-layout-mode=phone] .payments-page .payment-history-mobile-payment-action{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px;padding:4px 7px 7px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-section .payment-history-mobile-correction{width:auto;min-width:0;padding-inline:12px;border-color:var(--line);border-radius:9px;background:var(--surface-card, #fff);color:var(--text);font-size:12px;white-space:nowrap}.app-shell[data-layout-mode=phone] .payments-page .payment-history-child{margin-inline-start:16px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-child-row{min-height:70px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"student actions" "opened actions";align-items:start;gap:4px 10px;padding:10px 12px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-child-row .payment-student{grid-area:student;display:block}.app-shell[data-layout-mode=phone] .payments-page .payment-history-child-row .payment-history-name-stack{width:100%;min-width:0;display:grid;gap:4px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-child-row .payment-student strong,.app-shell[data-layout-mode=phone] .payments-page .payment-history-child-row .payment-student small{display:block;min-width:0;line-height:1.35;overflow-wrap:anywhere;white-space:normal}.app-shell[data-layout-mode=phone] .payments-page .payment-history-child-row .payment-student strong{font-size:15px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-child-row .payment-student small{color:var(--muted);font-size:12px}.app-shell[data-layout-mode=phone] .payments-page .payment-history-child-date{grid-area:opened;grid-column:auto;justify-self:start;text-align:start}.app-shell[data-layout-mode=phone] .payments-page .payment-history-child-actions{grid-area:actions;grid-column:auto;align-self:start;gap:4px}.app-shell[data-layout-mode=phone] .teaching-lessons-directory{gap:10px;padding:10px;border:0;border-radius:0;background:transparent;box-shadow:none}.teaching-library-filter-panel>.app-mobile-filter-disclosure,.teaching-library-filter-panel>.teaching-mobile-sort-field{grid-column:1 / -1;width:100%;justify-self:stretch}.app-shell[data-layout-mode=phone] .teaching-library-filter-panel,body[data-app-layout-mode=phone] .teaching-library-filter-panel{display:flex;flex-direction:column;align-items:stretch;gap:10px}.app-shell[data-layout-mode=phone] .teaching-library-filter-panel>*,body[data-app-layout-mode=phone] .teaching-library-filter-panel>*{width:100%}.app-shell[data-layout-mode=phone] .teaching-library-filter-panel>.teaching-search-field,body[data-app-layout-mode=phone] .teaching-library-filter-panel>.teaching-search-field{flex:0 0 52px;height:52px;min-height:52px}.teaching-library-filter-panel>.teaching-block-filter-title{display:none}.teaching-resource-results-head,.teaching-block-library-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.teaching-resource-results-head h2,.teaching-block-library-toolbar h2{font-size:19px;line-height:1.2}.teaching-resource-results-head .teaching-add-resource-toggle,.teaching-block-library-toolbar .teaching-new-block-button{width:auto;min-width:0;min-height:44px;padding-inline:11px;white-space:nowrap}.teacher-diary-toolbar>.app-mobile-filter-disclosure{display:grid}.teaching-lessons-directory .teaching-lesson-view-tabs{order:2}.teaching-lessons-directory .teaching-lesson-filters{order:4}.teaching-lessons-directory .teaching-lesson-history-list{order:5}.app-shell[data-layout-mode=phone] .teaching-lesson-history-row{min-height:54px;grid-template-rows:auto auto;gap:3px 10px;padding-block:8px}.app-shell[data-layout-mode=phone] .teaching-lesson-content-cell{display:block}.app-shell[data-layout-mode=phone] .teaching-lesson-row-metrics-compact{gap:5px;overflow:hidden;color:var(--muted);font-size:11px;white-space:nowrap}.app-shell[data-layout-mode=phone] .teaching-lesson-row-metrics-compact span+span:before{content:"·";margin-inline-end:5px}.app-shell[data-layout-mode=phone] .teaching-detail-panel{gap:8px;padding:8px;border:0;border-radius:0;background:transparent;box-shadow:none}.app-shell[data-layout-mode=phone] .teaching-lesson-command-header{position:relative;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;padding:0}.app-shell[data-layout-mode=phone] .teaching-lesson-command-back{width:44px;min-width:44px;min-height:44px;padding:0}.app-shell[data-layout-mode=phone] .teaching-lesson-command-back span,.app-shell[data-layout-mode=phone] .teaching-lesson-status-badge,.app-shell[data-layout-mode=phone] .teaching-add-header-student,.app-shell[data-layout-mode=phone] .teaching-workflow-attendance{display:none}.app-shell[data-layout-mode=phone] .teaching-lesson-status-actions.teaching-lesson-command-tools{display:none!important}.app-shell[data-layout-mode=phone] .teaching-mobile-lesson-options{display:block;align-self:start}.app-shell[data-layout-mode=phone] .teaching-mobile-lesson-options>summary{width:44px;min-width:44px;height:44px;display:inline-grid;place-items:center;padding:0}.app-shell[data-layout-mode=phone] .teaching-mobile-lesson-options>div{right:auto;inset-inline-start:0}.app-shell[data-layout-mode=phone] .teaching-mobile-lesson-options>div>button{min-height:44px}.app-shell[data-layout-mode=phone] .teaching-lesson-command-identity{min-width:0}.app-shell[data-layout-mode=phone] .teaching-lesson-student-title{min-width:0;font-size:15px}.app-shell[data-layout-mode=phone] .teaching-lesson-command-navigation{grid-column:1 / -1;width:100%}.app-shell[data-layout-mode=phone] .teaching-lesson-command-tabs{width:100%}.app-shell[data-layout-mode=phone] .teaching-lesson-command-tabs button{min-width:0;min-height:44px;flex:1 1 0}.app-shell[data-layout-mode=phone] .open-lesson-workspace{gap:8px}.app-shell[data-layout-mode=phone] .open-lesson-thread,.app-shell[data-layout-mode=phone] .open-lesson-side>*,.app-shell[data-layout-mode=phone] .open-lesson-pulse,.app-shell[data-layout-mode=phone] .open-lesson-cue{display:none}}@media(max-width:680px){.teaching-resource-card--library button.teaching-resource-compact-toggle,body[data-app-layout-mode=phone] .teaching-resource-card--library button.teaching-resource-compact-toggle{min-height:44px;align-items:center}.teaching-resource-compact-identity .teaching-card-icon,body[data-app-layout-mode=phone] .teaching-resource-compact-identity .teaching-card-icon{grid-area:icon}.teaching-resource-compact-identity>strong,body[data-app-layout-mode=phone] .teaching-resource-compact-identity>strong{grid-area:title;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;overflow-wrap:anywhere;text-overflow:clip}.teaching-resource-needs-organizing,body[data-app-layout-mode=phone] .teaching-resource-needs-organizing{grid-area:status;width:24px;min-width:24px;max-width:24px;height:24px;min-height:24px;flex:none;display:inline-grid;place-items:center;padding:0}.teaching-resource-needs-organizing>span,body[data-app-layout-mode=phone] .teaching-resource-needs-organizing>span{display:none}}body[data-app-layout-mode=phone] .teaching-resource-compact-row{grid-template-columns:minmax(0,1fr);gap:6px;align-items:start;min-height:0;padding-block:8px}body[data-app-layout-mode=phone] .teaching-resource-card--library button.teaching-resource-compact-toggle{min-height:44px;align-items:center}body[data-app-layout-mode=phone] .teaching-resource-compact-identity{display:grid;grid-template-columns:32px minmax(0,1fr) 24px;grid-template-areas:"icon title status";gap:8px;align-items:center}body[data-app-layout-mode=phone] .teaching-resource-compact-identity .teaching-card-icon{grid-area:icon}body[data-app-layout-mode=phone] .teaching-resource-compact-identity>strong{grid-area:title;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;overflow-wrap:anywhere;text-overflow:clip}body[data-app-layout-mode=phone] .teaching-resource-needs-organizing{grid-area:status;width:24px;min-width:24px;max-width:24px;height:24px;min-height:24px;flex:none;display:inline-grid;place-items:center;padding:0}body[data-app-layout-mode=phone] .teaching-resource-needs-organizing>span{display:none}body[data-app-layout-mode=phone] .teaching-resource-card.teaching-resource-card--library .teaching-resource-compact-actions{grid-column:1;grid-template-columns:repeat(4,var(--button-phone-h, 44px));justify-content:end;gap:4px}body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-icon-action{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px)}@media(min-width:861px){body:not([data-app-layout-mode=phone]) .contacts-page,body:not([data-app-layout-mode=phone]) .teaching-module .teaching-student-files-layout{grid-template-columns:248px minmax(0,1fr);gap:14px}body:not([data-app-layout-mode=phone]) .teaching-student-selector.student-files-roster{padding:12px}body:not([data-app-layout-mode=phone]) .teaching-student-selector.student-files-roster .teaching-student-card{min-height:58px;padding:6px 8px;text-align:center}}.contacts-roster .contact-primary-actions{display:flex;grid-template-columns:none;align-items:center;gap:8px}.contacts-roster .contact-primary-actions .app-icon-button{width:var(--button-standard-h, 36px);min-width:var(--button-standard-h, 36px);min-height:var(--button-standard-h, 36px);padding:0}html[data-app-theme=bloomli] body .app-icon-button.app-icon-button-primary{border-color:var(--action-control-border);background:var(--action-control-bg);color:var(--action-control-text)}html[data-app-theme=bloomli] body .app-icon-button.app-icon-button-primary:hover:not(:disabled){background:var(--action-control-hover-bg)}.contact-import-guide{width:min(520px,calc(100vw - 32px));display:grid;gap:16px}.contact-import-guide-heading h2{margin:0;font-size:clamp(25px,3vw,30px);line-height:1.2}.contact-import-format-list{margin:0;padding-inline-start:22px;color:var(--text);font-size:16px;line-height:1.8}.contact-role-field{min-width:0;flex:1 1 auto}.contact-role-field input{width:min(220px,100%);min-height:34px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:5px 8px;background:var(--surface-card, #fff);color:var(--text);font:inherit;font-weight:var(--font-weight-label, 500)}.contact-add-card{min-height:150px;align-content:center;justify-items:center;text-align:center}@media(max-width:860px){.contacts-roster .contact-primary-actions .app-icon-button{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px)}}.teaching-panel button.teaching-workflow-attendance.attendance-incomplete{border-color:color-mix(in srgb,#d69e00 62%,var(--line));background:color-mix(in srgb,#facc15 18%,var(--surface-card));color:color-mix(in srgb,#8a6100 88%,var(--text))}body:has([data-modal-root]:not(.student-guide-backdrop)) .app-shell :is(.assistant-launcher,.assistant-panel),body:has(.student-guide-backdrop) .app-shell .assistant-panel,body:has(.assignment-sheet) .app-shell :is(.assistant-launcher,.assistant-panel),body:has(.mark-paid-modal) .app-shell :is(.assistant-launcher,.assistant-panel),body:has(.resource-source-dialog) .app-shell :is(.assistant-launcher,.assistant-panel,.voice-command-fab),body:has(.resource-source-dialog) .voice-dictation-anchor{display:none}.student-color-options-portal{position:fixed;inset:auto;z-index:1400;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow-y:auto}@media(max-width:700px),(pointer:coarse)and (max-width:900px){body:has([data-modal-root]) .app-shell[data-layout-mode=phone] .mobile-primary-nav,body:has(.assignment-sheet) .app-shell[data-layout-mode=phone] .mobile-primary-nav,body:has(.mark-paid-modal) .app-shell[data-layout-mode=phone] .mobile-primary-nav{display:none}.app-shell[data-layout-mode=phone] .parent-message-page-header h1,body[data-app-layout-mode=phone] .parent-message-page-header h1{font-size:var(--font-page-title, 32px);line-height:1.12}.app-shell[data-layout-mode=phone] :is(.assignment-close,.parent-message-cancel-action,.parent-message-history-drawer>header button),body[data-app-layout-mode=phone] :is(.assignment-close,.parent-message-cancel-action,.parent-message-history-drawer>header button){width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px)}.app-shell[data-layout-mode=phone] .contact-detail .app-icon-button,body[data-app-layout-mode=phone] .contact-detail .app-icon-button{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px)}.app-shell[data-layout-mode=phone] .contact-detail .student-color-options,body[data-app-layout-mode=phone] .contact-detail .student-color-options{grid-template-columns:repeat(auto-fit,minmax(var(--button-phone-h, 44px),1fr))}.student-color-options-portal{max-width:calc(100vw - 40px);max-height:calc(100dvh - 40px)}.app-shell[data-layout-mode=phone] .assignment-card :is(input:not([type=checkbox]):not([type=radio]),.app-dropdown-trigger),body[data-app-layout-mode=phone] .assignment-card :is(input:not([type=checkbox]):not([type=radio]),.app-dropdown-trigger){min-height:var(--button-phone-h, 44px)}}.teaching-resource-page .teaching-resource-table-head,.teaching-resource-compact-row{grid-template-columns:minmax(0,1fr) 120px;gap:8px}.teaching-resource-favorite-heading{display:inline-grid;place-items:center}.teaching-resource-file-badge{min-width:38px;flex:0 0 auto;justify-content:center;border:1px solid var(--line);border-radius:6px;padding-inline:6px}body .teaching-resource-card--library button.teaching-resource-star-action{width:var(--button-standard-h, 36px);min-width:var(--button-standard-h, 36px);height:var(--button-standard-h, 36px);min-height:var(--button-standard-h, 36px);display:inline-grid;place-items:center;justify-self:center;border:0;border-radius:6px;padding:0;background:transparent;color:var(--muted);cursor:pointer}body .teaching-resource-card--library button.teaching-resource-star-action:hover{background:var(--teach-green-soft);color:var(--teach-action-soft-text)}body .teaching-resource-card--library button.teaching-resource-star-action.is-starred{color:var(--warning-text, #a56b00)}@media(min-width:681px)and (max-width:980px){.teaching-resource-page .teaching-resource-table-head>div,.teaching-resource-card--library button.teaching-resource-compact-toggle{grid-template-columns:minmax(0,1fr) 28px}}@media(max-width:680px){body .teaching-resource-card--library button.teaching-resource-star-action,body[data-app-layout-mode=phone] .teaching-resource-card--library button.teaching-resource-star-action{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px);grid-column:2;grid-row:1}}body[data-app-layout-mode=phone] .teaching-resource-compact-row{grid-template-columns:minmax(0,1fr) var(--button-phone-h, 44px)}body[data-app-layout-mode=phone] .teaching-resource-compact-identity{grid-template-columns:max-content minmax(0,1fr) 24px;grid-template-areas:"format title status"}body[data-app-layout-mode=phone] .teaching-resource-compact-identity .teaching-resource-file-badge{grid-area:format}body[data-app-layout-mode=phone] .teaching-resource-card--library button.teaching-resource-star-action{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px);grid-column:2;grid-row:1}body[data-app-layout-mode=phone] .teaching-resource-card.teaching-resource-card--library .teaching-resource-compact-actions{grid-column:1 / -1;grid-row:2}body:not([data-app-layout-mode=phone]) .teaching-resource-page:not(.teaching-blocks-page) .teaching-library-filter-panel{grid-template-columns:minmax(130px,.45fr) minmax(300px,1fr) auto auto;grid-template-areas:"title search count clear" "filters filters filters filters";min-height:148px}.teaching-resource-page .teaching-library-filter-panel>.teaching-resource-filter-controls{grid-area:filters;min-width:0;display:grid;grid-template-columns:minmax(0,3fr) minmax(150px,.8fr) auto minmax(185px,1.1fr);gap:8px;align-items:end}.teaching-resource-filter-controls :is(.teaching-resource-grade-filter,.teaching-resource-sort-filter,.app-dropdown){width:100%;min-width:0}.teaching-resource-filter-controls>.resource-taxonomy-fields,.teaching-resource-filter-controls>.teaching-resource-type-filter,.teaching-resource-filter-controls>.teaching-resource-type-filter .teaching-filter-popup,.teaching-resource-filter-controls>.teaching-resource-type-filter .teaching-filter-popup>button,.teaching-resource-mobile-sheet-fields>.resource-taxonomy-fields,.teaching-resource-mobile-sheet-fields>.teaching-resource-type-filter,.teaching-resource-mobile-sheet-fields>.teaching-resource-type-filter .teaching-filter-popup,.teaching-resource-mobile-sheet-fields>.teaching-resource-type-filter .teaching-filter-popup>button{width:100%;min-width:0}.teaching-resource-filter-controls>.teaching-resource-type-filter .teaching-filter-popup>button{min-height:40px}.teaching-resource-mobile-sheet-fields>.resource-taxonomy-fields{grid-template-columns:minmax(0,1fr);gap:12px}.teaching-resource-mobile-sheet-fields>.teaching-resource-type-filter .teaching-filter-popup>button{min-height:var(--button-phone-h, 44px)}.teaching-resource-filter-controls .app-dropdown-trigger,body .teaching-resource-favorites-filter{min-height:40px}body .teaching-resource-favorites-filter{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:var(--radius-control, 8px);padding:0 11px;background:var(--surface-card);color:var(--muted);font-weight:var(--font-weight-label, 500);white-space:nowrap;cursor:pointer}body .teaching-resource-favorites-filter:hover{border-color:color-mix(in srgb,var(--line) 65%,var(--warning-text, #a56b00));color:var(--warning-text, #a56b00)}body .teaching-resource-favorites-filter.is-active{border-color:color-mix(in srgb,var(--warning-text, #a56b00) 42%,var(--line));background:color-mix(in srgb,var(--surface-card) 88%,var(--warning-text, #a56b00));color:var(--warning-text, #a56b00)}.teaching-resource-page .teaching-resource-table-head>div,.teaching-resource-card--library button.teaching-resource-compact-toggle{grid-template-columns:minmax(360px,1.55fr) minmax(300px,.9fr) 28px;gap:12px}.teaching-resource-table-metadata,.teaching-resource-compact-metadata{min-width:0;display:grid;grid-template-columns:minmax(150px,1fr) minmax(120px,.8fr);gap:12px;align-items:center}.teaching-resource-compact-metadata{color:var(--muted);font-size:12px;line-height:1.2}.teaching-resource-compact-grade,.teaching-resource-compact-date{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teaching-resource-compact-metadata small{display:none}.teaching-resource-compact-identity{gap:12px}.teaching-resource-file-badge{width:48px;min-width:48px;max-width:48px;flex:0 0 48px;padding-inline:4px;line-height:15px}@media(min-width:681px)and (max-width:1220px){body:not([data-app-layout-mode=phone]) .teaching-resource-page:not(.teaching-blocks-page) .teaching-library-filter-panel{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"title count clear" "search search search" "filters filters filters";min-height:156px}.teaching-resource-page .teaching-library-filter-panel>.teaching-resource-filter-controls{grid-template-columns:minmax(150px,1fr) auto minmax(185px,1fr)}.teaching-resource-filter-controls>.resource-taxonomy-fields{grid-column:1 / -1}.teaching-resource-page .teaching-resource-table-head>div,.teaching-resource-card--library button.teaching-resource-compact-toggle{grid-template-columns:minmax(0,1fr) minmax(230px,.8fr) 28px}.teaching-resource-table-metadata,.teaching-resource-compact-metadata{display:grid;grid-template-columns:minmax(110px,1fr) minmax(100px,.85fr)}}@media(min-width:681px)and (max-width:900px){.teaching-resource-page .teaching-resource-table-head>div,.teaching-resource-card--library button.teaching-resource-compact-toggle{grid-template-columns:minmax(0,1fr) minmax(130px,.45fr) 28px}.teaching-resource-table-metadata,.teaching-resource-compact-metadata{grid-template-columns:minmax(0,1fr)}.teaching-resource-table-metadata>:last-child,.teaching-resource-compact-date{display:none}}@media(max-width:680px){.teaching-resource-page .teaching-library-filter-panel>.teaching-resource-filter-controls,body[data-app-layout-mode=phone] .teaching-resource-page .teaching-library-filter-panel>.teaching-resource-filter-controls{width:100%;display:grid;grid-template-columns:minmax(0,1fr)}body .teaching-resource-favorites-filter,.teaching-resource-filter-controls .app-dropdown-trigger{min-height:var(--button-phone-h, 44px)}.teaching-resource-card--library button.teaching-resource-compact-toggle,body[data-app-layout-mode=phone] .teaching-resource-card--library button.teaching-resource-compact-toggle{grid-template-columns:minmax(0,1fr) 24px;grid-template-areas:"identity chevron" "metadata metadata";gap:6px 8px}.teaching-resource-compact-identity,body[data-app-layout-mode=phone] .teaching-resource-compact-identity{grid-area:identity}.teaching-resource-compact-chevron,body[data-app-layout-mode=phone] .teaching-resource-compact-chevron{grid-area:chevron}.teaching-resource-compact-metadata,body[data-app-layout-mode=phone] .teaching-resource-compact-metadata{grid-area:metadata;display:flex;flex-wrap:wrap;gap:4px 16px;padding-inline-start:60px}.teaching-resource-compact-metadata small,body[data-app-layout-mode=phone] .teaching-resource-compact-metadata small{display:inline;margin-inline-end:4px;color:var(--muted);font-weight:var(--font-weight-label, 500)}.teaching-resource-compact-grade,.teaching-resource-compact-date{overflow:visible;white-space:normal}}body[data-app-layout-mode=phone] .teaching-resource-card--library button.teaching-resource-compact-toggle{grid-template-columns:minmax(0,1fr) 24px;grid-template-areas:"identity chevron" "metadata metadata";gap:6px 8px}body[data-app-layout-mode=phone] .teaching-resource-compact-identity{grid-area:identity}body[data-app-layout-mode=phone] .teaching-resource-compact-chevron{grid-area:chevron}body[data-app-layout-mode=phone] .teaching-resource-compact-metadata{grid-area:metadata;display:flex;flex-wrap:wrap;gap:4px 16px;padding-inline-start:60px}body[data-app-layout-mode=phone] .teaching-resource-compact-metadata small{display:inline;margin-inline-end:4px}body .app-icon-button>svg{width:18px;min-width:18px;height:18px;min-height:18px;flex:0 0 18px;stroke-width:2}@media(max-width:760px){.teaching-blocks-page .teaching-template-compact-row>.teaching-template-compact-line{direction:ltr;grid-template-areas:"content actions";grid-template-columns:minmax(0,1fr) auto!important}html[dir=rtl] .teaching-blocks-page .teaching-template-compact-row>.teaching-template-compact-line{grid-template-areas:"actions content"}.teaching-blocks-page button.teaching-template-compact-toggle{grid-area:content;direction:inherit}html[dir=rtl] .teaching-blocks-page button.teaching-template-compact-toggle{direction:rtl}.teaching-blocks-page .teaching-template-compact-actions{grid-area:actions;direction:ltr}.teaching-blocks-page .teaching-template-icon-action>svg{width:12px;min-width:12px;height:12px;min-height:12px;flex-basis:12px}}body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-compact-row>.teaching-template-compact-line{direction:ltr;grid-template-areas:"content actions";grid-template-columns:minmax(0,1fr) auto!important}html[dir=rtl] body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-compact-row>.teaching-template-compact-line{grid-template-areas:"actions content"}body[data-app-layout-mode=phone] .teaching-blocks-page button.teaching-template-compact-toggle{grid-area:content}html[dir=rtl] body[data-app-layout-mode=phone] .teaching-blocks-page button.teaching-template-compact-toggle{direction:rtl}body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-compact-actions{grid-area:actions;direction:ltr}body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-icon-action>svg{width:18px;min-width:18px;height:18px;min-height:18px;flex-basis:18px}.app-shell[data-layout-mode=phone] .teaching-blocks-page .teaching-template-compact-row>.teaching-template-compact-line{min-width:0;min-height:64px;direction:ltr;grid-template-areas:"content actions";grid-template-columns:minmax(0,1fr) max-content!important;gap:3px;padding-inline:8px}.app-shell[data-layout-mode=phone] .teaching-blocks-page .teaching-template-compact-actions{justify-self:end;gap:3px;margin-inline-start:auto}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page .teaching-activities-library-composer .teaching-new-block-footer{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;direction:ltr}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page .teaching-activities-library-composer .teaching-new-block-resources,:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page .teaching-activities-library-composer .teaching-new-block-actions{display:contents}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page .teaching-activities-library-composer .teaching-activity-tags-disclosure{grid-column:1 / -1;width:100%}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page .teaching-activities-library-composer .teaching-activity-tags-trigger{width:100%;justify-content:flex-start}html[dir=rtl] :is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page .teaching-activities-library-composer :is(.teaching-activity-tags-disclosure,.teaching-new-block-actions>button:last-child){direction:rtl}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page .teaching-activities-library-composer .teaching-activity-tags-chevron{margin-inline-start:auto}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page .teaching-activities-library-composer .teaching-resource-attach-icon{grid-column:1;grid-row:2;justify-self:start}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page .teaching-activities-library-composer .teaching-new-block-actions>button:last-child{grid-column:2;grid-row:2;width:100%;min-width:0;min-height:44px}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page .teaching-activities-library-composer .teaching-new-block-actions>.app-action-menu-root{grid-column:3;grid-row:2;justify-self:end}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-blocks-page .teaching-activities-library-composer .teaching-new-block-actions>.app-action-menu-root>.app-action-menu-trigger{width:44px;min-width:44px;height:44px;min-height:44px}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-activities-library-composer .teaching-composer-editor-shell>.teaching-ai-square-button{top:0;inset-inline-end:0;width:44px;min-width:44px;height:44px;min-height:44px;flex-basis:44px;border-start-end-radius:var(--radius-control)}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-activities-library-composer .teaching-composer-editor-shell .simple-rich-text-toolbar{padding-inline-end:58px}:is(body[data-app-layout-mode=phone],.app-shell[data-layout-mode=phone]) .teaching-activities-library-composer .teaching-composer-editor-shell .voice-dictation-anchor>button.voice-dictation-button{inset-block-start:20px}html[dir=rtl] .app-shell[data-layout-mode=phone] .teaching-blocks-page .teaching-template-compact-row>.teaching-template-compact-line{grid-template-areas:"actions content";grid-template-columns:max-content minmax(0,1fr)!important}.app-shell[data-layout-mode=phone] .teaching-blocks-page button.teaching-template-compact-toggle{width:100%;min-width:0;min-height:64px;grid-area:content;grid-template-columns:minmax(0,1fr) 22px;gap:8px;overflow:hidden}html[dir=rtl] .app-shell[data-layout-mode=phone] .teaching-blocks-page button.teaching-template-compact-toggle{direction:rtl}.app-shell[data-layout-mode=phone] .teaching-blocks-page .teaching-template-compact-summary,.app-shell[data-layout-mode=phone] .teaching-blocks-page .teaching-template-resource-count{display:none}.app-shell[data-layout-mode=phone] .teaching-blocks-page .teaching-template-compact-actions{width:max-content;min-width:0;grid-area:actions;direction:ltr}.app-shell[data-layout-mode=phone] .payments-page,.app-shell[data-layout-mode=phone] .payments-table-panel{width:100%;max-width:none;border:0;border-radius:0;background:transparent;box-shadow:none}body[data-app-layout-mode=phone] .payments-page,.app-shell[data-layout-mode=phone] .payments-page{box-sizing:border-box;padding-block:0;padding-inline:12px}.app-shell[data-layout-mode=phone] .payments-table-panel{padding:0}.app-shell[data-layout-mode=phone] .payments-page .payment-section{margin-top:8px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-summary .payment-student small,.app-shell[data-layout-mode=phone] .payments-page .payment-debt-summary .payment-charge-count{display:none}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-summary{min-width:0;min-height:52px;direction:ltr;grid-template-columns:minmax(0,1fr) 44px minmax(58px,max-content) 44px;grid-template-areas:"name expand amount reminder";align-items:center;gap:2px;padding:4px 0}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-card:not(.is-expandable) .payment-debt-summary{grid-template-columns:minmax(0,1fr) minmax(58px,max-content) 44px;grid-template-areas:"name amount reminder"}html[dir=rtl] .app-shell[data-layout-mode=phone] .payments-page .payment-debt-summary{grid-template-columns:44px minmax(58px,max-content) 44px minmax(0,1fr);grid-template-areas:"reminder amount expand name"}html[dir=rtl] .app-shell[data-layout-mode=phone] .payments-page .payment-debt-card:not(.is-expandable) .payment-debt-summary{grid-template-columns:44px minmax(58px,max-content) minmax(0,1fr);grid-template-areas:"reminder amount name"}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-toggle{width:100%;min-width:0;min-height:44px;grid-area:name;direction:ltr;display:flex;align-items:center;padding:0 8px}html[dir=rtl] .app-shell[data-layout-mode=phone] .payments-page .payment-debt-toggle{direction:rtl}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-toggle .payment-student{width:100%;min-width:0;display:block}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-amount{min-width:58px;grid-area:amount;align-self:center;justify-self:center;font-size:13px;text-align:center;white-space:nowrap}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-expand-button{width:44px;height:44px;display:inline-flex;grid-area:expand;align-items:center;justify-content:center;padding:0;border:0;background:transparent;color:var(--text);cursor:pointer}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-expand-glyph{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:var(--surface-card)}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-expand-glyph svg{transition:transform .15s ease}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-expand-glyph svg.expanded{transform:rotate(180deg)}.app-shell[data-layout-mode=phone] .payments-page .payment-reminder-button{width:44px;min-width:44px;height:44px;grid-area:reminder;padding:0;border:1px solid color-mix(in srgb,#25d366 42%,var(--line));border-radius:999px;background:color-mix(in srgb,#25d366 14%,var(--surface-card, white));box-shadow:none}.app-shell[data-layout-mode=phone] .payments-page .payment-reminder-button:hover{transform:none;background:color-mix(in srgb,#25d366 22%,var(--surface-card, white));box-shadow:0 3px 10px #147a3d29}.app-shell[data-layout-mode=phone] .payments-page .payment-reminder-whatsapp-icon{width:24px;height:24px}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-detail{gap:0;margin:0;padding:0 0 4px;border:0;border-top:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 22%,var(--line));border-radius:0}.app-shell[data-layout-mode=phone] .payments-page .payment-history-child{margin-inline-start:16px}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-line-record{width:100%;min-width:0;min-height:44px;grid-template-columns:minmax(0,1fr) 54px minmax(58px,max-content);gap:4px;padding:4px 8px;border:0;border-bottom:1px solid color-mix(in srgb,var(--student-color, #0a84ff) 18%,var(--line));border-radius:0;background:transparent;color:inherit;font:inherit;text-align:start;cursor:pointer}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-line-record:last-child{border-bottom:0}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-line-date{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-line-time,.app-shell[data-layout-mode=phone] .payments-page .payment-debt-line-amount{justify-self:end;font-size:13px;white-space:nowrap}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-line-time{grid-column:2}.app-shell[data-layout-mode=phone] .payments-page .payment-debt-line-amount{grid-column:3}.teaching-resource-reading-body,.teaching-resource-detail-metadata,.teaching-resource-organization-explanation,.teaching-resource-organization-explanation>div,.teaching-resource-dialog-note,.teaching-resource-dialog-note p{min-width:0;max-width:100%}.app-shell[data-layout-mode=phone] .simple-rich-text-toolbar{min-height:44px;gap:4px;padding:0 4px}.app-shell[data-layout-mode=phone] .simple-rich-text-tool{min-width:44px;min-height:44px;width:44px;height:44px;flex:0 0 44px;padding:0;border-radius:var(--radius-control);font-size:12px}.app-shell[data-layout-mode=phone] .simple-rich-text-divider{height:18px;margin-inline:2px}body[data-app-layout-mode=phone] .teaching-library-detail-modal .simple-rich-text-toolbar{min-height:44px;gap:4px;padding:0 4px}body[data-app-layout-mode=phone] .teaching-library-detail-modal .simple-rich-text-tool{min-width:44px;min-height:44px;width:44px;height:44px;flex:0 0 44px;padding:0;border-radius:var(--radius-control);font-size:12px}body[data-app-layout-mode=phone] .teaching-library-detail-modal .simple-rich-text-divider{height:18px;margin-inline:2px}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.is-editing .activity-duration-editor .simple-rich-text-toolbar{gap:1px;padding-inline-start:4px;padding-inline-end:50px}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.is-editing .activity-duration-editor>.activity-duration-control{inset-block-start:1px;inset-inline-end:4px}.app-shell[data-layout-mode=phone] .teacher-diary-rich-text-editor .simple-rich-text-writing-area{min-height:192px}.app-shell[data-layout-mode=phone] .teacher-diary-rich-text-editor .simple-rich-text-toolbar{min-height:44px;gap:8px;padding:0 4px;overflow-x:auto;flex-wrap:nowrap}.app-shell[data-layout-mode=phone] .teacher-diary-rich-text-editor .simple-rich-text-tool{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;padding:0;border-radius:var(--radius-control, 8px)}.app-shell[data-layout-mode=phone] .teacher-diary-rich-text-editor .simple-rich-text-divider{margin-inline:0}body[data-app-layout-mode=phone] button.voice-dictation-button,.app-shell[data-layout-mode=phone] button.voice-dictation-button{display:grid;width:31px;min-width:31px;height:31px;min-height:31px;padding:0;border-radius:50%}body[data-app-layout-mode=phone] button.voice-dictation-button>svg,.app-shell[data-layout-mode=phone] button.voice-dictation-button>svg{width:13px;min-width:13px;height:13px;min-height:13px;flex:0 0 13px}body[data-app-layout-mode=phone] button.voice-dictation-button:after,.app-shell[data-layout-mode=phone] button.voice-dictation-button:after{inset:-7px}.app-shell[data-layout-mode=phone] .teacher-diary-page .voice-dictation-anchor>button.voice-dictation-button{inset-block-start:3px;inset-inline-end:3px;width:44px;min-width:44px;height:44px;min-height:44px;border:0;background:transparent;box-shadow:none}.app-shell[data-layout-mode=phone] .teacher-diary-page .voice-dictation-anchor>button.voice-dictation-button:before{content:"";position:absolute;inset-block:0 auto;inset-inline:auto 0;z-index:0;width:31px;height:31px;border:1px solid color-mix(in srgb,var(--teach-green, #174f48) 24%,var(--line, #cbd5e1));border-radius:50%;background:color-mix(in srgb,var(--surface-panel-strong, #fff) 94%,var(--teach-green, #174f48));box-shadow:0 1px 3px color-mix(in srgb,var(--ink, #102c27) 14%,transparent)}.app-shell[data-layout-mode=phone] .teacher-diary-page .voice-dictation-anchor>button.voice-dictation-button:after{inset:0}.app-shell[data-layout-mode=phone] .teacher-diary-page .voice-dictation-anchor>button.voice-dictation-button>svg{position:absolute;inset-block-start:9px;inset-inline-end:9px;z-index:1}.app-shell[data-layout-mode=phone] .teacher-diary-page .voice-dictation-anchor>button.voice-dictation-button:hover:not(:disabled):before{border-color:color-mix(in srgb,var(--teach-green, #174f48) 54%,var(--line, #cbd5e1));background:color-mix(in srgb,var(--surface-panel-strong, #fff) 86%,var(--teach-green, #174f48));box-shadow:0 2px 5px color-mix(in srgb,var(--ink, #102c27) 18%,transparent)}.app-shell[data-layout-mode=phone] .teacher-diary-page .voice-dictation-anchor>button.voice-dictation-button.is-recording:before{border-color:color-mix(in srgb,var(--danger, #b73535) 70%,transparent);background:color-mix(in srgb,var(--danger, #b73535) 12%,var(--surface-panel-strong, #fff))}body[data-app-layout-mode=phone] [data-voice-dictation-target=true][data-voice-dictation-side=right]{padding-right:var(--voice-dictation-target-phone-padding, 34px)!important}body[data-app-layout-mode=phone] [data-voice-dictation-target=true][data-voice-dictation-side=left]{padding-left:var(--voice-dictation-target-phone-padding, 34px)!important}.app-shell[data-layout-mode=phone] .teacher-diary-composer>footer,.app-shell[data-layout-mode=phone] .teacher-diary-editor-footer{min-height:44px;gap:8px;padding:6px 8px}.app-shell[data-layout-mode=phone] .teacher-diary-attach-button,.app-shell[data-layout-mode=phone] .teacher-diary-save-area .app-icon-button,.app-shell[data-layout-mode=phone] .teacher-diary-save-area .teacher-diary-save-button,.app-shell[data-layout-mode=phone] .teacher-diary-editor-footer .app-icon-button,.app-shell[data-layout-mode=phone] .teacher-diary-editor-footer .teacher-diary-editor-save{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;padding:0;border-radius:var(--radius-control, 8px)}@media(max-width:680px){.teaching-resource-compact-row,body[data-app-layout-mode=phone] .teaching-resource-compact-row{min-height:64px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"content actions";align-items:center;gap:8px;padding-block:6px}.teaching-resource-card--library button.teaching-resource-compact-toggle,body[data-app-layout-mode=phone] .teaching-resource-card--library button.teaching-resource-compact-toggle{min-width:0;min-height:52px;grid-area:content;display:block;padding:2px 0}.teaching-resource-compact-identity,body[data-app-layout-mode=phone] .teaching-resource-compact-identity{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 22px;grid-template-areas:"format status" "title title";gap:5px 6px;align-items:center}.teaching-resource-compact-identity .teaching-resource-file-badge,body[data-app-layout-mode=phone] .teaching-resource-compact-identity .teaching-resource-file-badge{width:max-content;min-width:0;max-width:100%;grid-area:format;justify-self:start;padding-inline:7px}.teaching-resource-compact-identity>strong,body[data-app-layout-mode=phone] .teaching-resource-compact-identity>strong{min-width:0;grid-area:title;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teaching-resource-needs-organizing,body[data-app-layout-mode=phone] .teaching-resource-needs-organizing{grid-area:status}.teaching-resource-compact-metadata,.teaching-resource-compact-chevron,body[data-app-layout-mode=phone] .teaching-resource-compact-metadata,body[data-app-layout-mode=phone] .teaching-resource-compact-chevron{display:none}.teaching-resource-card.teaching-resource-card--library .teaching-resource-compact-actions,body[data-app-layout-mode=phone] .teaching-resource-card.teaching-resource-card--library .teaching-resource-compact-actions{grid-area:actions;grid-column:auto;grid-row:auto;grid-template-columns:repeat(3,44px);align-items:center;justify-content:end;gap:4px}.teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-icon-action,body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-icon-action{width:44px;min-width:44px;height:44px;min-height:44px}.teaching-resource-card--library .teaching-resource-icon-action>svg,body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-icon-action>svg{width:16px;min-width:16px;height:16px;min-height:16px}}body[data-app-layout-mode=phone] .assistant-launcher,.app-shell[data-layout-mode=phone] .assistant-launcher{display:none}body:has([data-modal-root]) :is(.training-data-reminder,.training-data-reminder-collapsed){display:none}body[data-app-layout-mode=phone] .contacts-roster>h2{display:none}body[data-app-layout-mode=phone] .content-portal-header{display:none}body[data-app-layout-mode=phone] .contacts-roster .contact-primary-actions{margin-bottom:8px}body[data-app-layout-mode=phone] .payments-page .payments-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}body[data-app-layout-mode=phone] .payments-page .payments-tabs button{min-height:40px;padding-inline:4px;font-size:11px}body[data-app-layout-mode=phone] .payment-debt-sort-field{width:100%;min-height:52px;grid-template-columns:auto minmax(0,1fr);gap:8px;padding:4px 5px 4px 10px;border-radius:var(--radius-control);font-size:12px}body[data-app-layout-mode=phone] .payment-debt-sort-options{max-width:224px;justify-self:end}body[data-app-layout-mode=phone] .payment-debt-sort-option{min-height:44px;padding-inline:10px;font-size:12px}body[data-app-layout-mode=phone] .teaching-blocks-page button.teaching-template-icon-action,body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-icon-action{width:44px;min-width:44px;height:44px;min-height:44px;border-color:transparent;background:transparent;box-shadow:none}body[data-app-layout-mode=phone] .teaching-blocks-page button.teaching-template-icon-action:hover,body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-icon-action:hover{border-color:transparent;background:var(--surface-input)}body[data-app-layout-mode=phone] .teaching-blocks-page .teaching-template-icon-action>svg,body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-icon-action>svg{width:22px;min-width:22px;height:22px;min-height:22px;flex-basis:22px}body[data-app-layout-mode=phone] .teaching-blocks-page button.teaching-template-icon-action.teaching-template-delete-action,body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-delete-action{border-color:transparent;background:transparent;color:var(--rose)}body[data-app-layout-mode=phone] :is(.contact-primary-actions,.portal-card-actions,.resource-source-row-actions,.student-collaborative-notebook-actions,.student-file-table-actions,.student-message-edit-actions,.teacher-diary-entry-actions,.teaching-resource-compact-actions,.teaching-resource-row-actions,.teaching-template-compact-actions,.teaching-upcoming-card-actions,.teaching-work-plan-actions) .app-icon-button-primary{color:var(--teach-action-soft-text)}body[data-app-layout-mode=phone] :is(.contact-primary-actions,.portal-card-actions,.resource-source-row-actions,.student-collaborative-notebook-actions,.student-file-table-actions,.student-message-edit-actions,.teacher-diary-entry-actions,.teaching-resource-compact-actions,.teaching-resource-row-actions,.teaching-template-compact-actions,.teaching-upcoming-card-actions,.teaching-work-plan-actions) .app-icon-button,body[data-app-layout-mode=phone] .settings-editor-row .settings-row-action,body[data-app-layout-mode=phone] .settings-editor-row .settings-order-buttons>button{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;padding:0;border-color:transparent;background:transparent;box-shadow:none}body[data-app-layout-mode=phone] :is(.contact-primary-actions,.portal-card-actions,.resource-source-row-actions,.student-collaborative-notebook-actions,.student-file-table-actions,.student-message-edit-actions,.teacher-diary-entry-actions,.teaching-resource-compact-actions,.teaching-resource-row-actions,.teaching-template-compact-actions,.teaching-upcoming-card-actions,.teaching-work-plan-actions) .app-icon-button>svg,body[data-app-layout-mode=phone] .settings-editor-row :is(.settings-row-action,.settings-order-buttons>button)>svg{width:22px;min-width:22px;height:22px;min-height:22px;flex-basis:22px}body[data-app-layout-mode=phone] :is(.contact-primary-actions,.portal-card-actions,.resource-source-row-actions,.student-collaborative-notebook-actions,.student-file-table-actions,.student-message-edit-actions,.teacher-diary-entry-actions,.teaching-resource-compact-actions,.teaching-resource-row-actions,.teaching-template-compact-actions,.teaching-upcoming-card-actions,.teaching-work-plan-actions) .app-icon-button:hover,body[data-app-layout-mode=phone] .settings-editor-row :is(.settings-row-action,.settings-order-buttons>button):hover{border-color:transparent;background:var(--surface-input)}body[data-app-layout-mode=phone] .teaching-student-file-detail .teaching-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;overflow:visible;padding:3px;-webkit-mask-image:none;mask-image:none}body[data-app-layout-mode=phone] .teaching-student-file-detail .teaching-tabs button{grid-column:span 3;width:100%;min-width:0;min-height:44px;justify-content:center;padding:5px 6px;font-size:12px;overflow-wrap:anywhere;white-space:normal;line-height:1.1;text-align:center}body[data-app-layout-mode=phone] .teaching-student-file-detail .teaching-tabs:has(>button:nth-child(5)) button{grid-column:span 2}body[data-app-layout-mode=phone] .teaching-student-file-detail .teaching-tabs:has(>button:nth-child(5)) button:nth-child(n+4){grid-column:span 3}@container app-canvas (max-width: 1100px){body:not([data-app-layout-mode=phone]) .contact-student-summary-row,body:not([data-app-layout-mode=phone]) .contact-detail .parent-edit-grid{grid-template-columns:minmax(0,1fr)}}@container app-canvas (max-width: 980px){body:not([data-app-layout-mode=phone]) .calendar-management-page,body:not([data-app-layout-mode=phone]) .calendar-management-page.month-only{grid-template-columns:minmax(0,1fr)}}@container app-canvas (max-width: 820px){body:not([data-app-layout-mode=phone]) .contacts-page,body:not([data-app-layout-mode=phone]) .teaching-module .teaching-student-files-layout{grid-template-columns:minmax(0,1fr)}body:not([data-app-layout-mode=phone]) .contacts-roster,body:not([data-app-layout-mode=phone]) .teaching-student-selector.student-files-roster{max-block-size:min(320px,42dvh);overflow-y:auto;overscroll-behavior:contain}}html[dir=rtl] :where(textarea:not([dir=ltr]),input:not([type=date]):not([type=datetime-local]):not([type=email]):not([type=number]):not([type=password]):not([type=tel]):not([type=time]):not([type=url]):not([dir=ltr]),[contenteditable=true]:not([dir=ltr])){direction:rtl;text-align:start}body{--app-display-scale: 1;--app-display-scale-inverse: 1}@supports (zoom: 1){body:not([data-app-layout-mode=phone])[data-app-display-density]{zoom:var(--app-display-scale);min-height:calc(100dvh * var(--app-display-scale-inverse))}body:not([data-app-layout-mode=phone])[data-app-display-density] .app-shell{min-height:calc(100dvh * var(--app-display-scale-inverse))}body:not([data-app-layout-mode=phone])[data-app-display-density] .app-shell[data-layout-mode=desktop]>.app-sidebar{height:calc((100dvh * var(--app-display-scale-inverse)) - 36px)}body:not([data-app-layout-mode=phone])[data-app-display-density] .app-shell[data-layout-mode=compact]>.app-sidebar{height:calc((100dvh * var(--app-display-scale-inverse)) - 16px)}}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.teaching-activity-tags-controls{display:flex;min-width:0;align-items:center;gap:6px}.teaching-activity-tag-me{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid color-mix(in srgb,var(--teach-green) 30%,var(--line));border-radius:10px;padding-inline:10px;background:var(--surface-card);color:var(--teach-action-soft-text);font:inherit;font-size:13px;font-weight:var(--font-weight-heading, 700);cursor:pointer}.teaching-activity-tag-me:disabled{cursor:wait;opacity:.68}.teaching-activity-sidebar-tags .teaching-activity-tags-controls{display:grid;grid-template-columns:minmax(0,1fr) auto}.teaching-activity-tags-error{margin:0;color:var(--danger, #b42318);font-size:12px;line-height:18px}body[data-app-layout-mode=phone] .teaching-activity-detail-dialog.mobile-always-edit .teaching-activity-rich-text-editor .simple-rich-text-writing-area{min-height:clamp(360px,48dvh,560px);max-height:58dvh;overflow-y:auto;overscroll-behavior:contain}body[data-app-layout-mode=phone] .teaching-resource-detail-dialog .teaching-resource-note-field textarea{min-height:132px;height:auto;max-height:none;overflow-y:hidden;overscroll-behavior:auto;resize:none}body[data-app-layout-mode=phone] .teaching-resource-detail-dialog .teaching-library-detail-footer{gap:8px}body[data-app-layout-mode=phone] .teaching-resource-detail-dialog .teaching-resource-preview-open{min-width:0;min-height:44px;margin:0;padding-inline:10px;white-space:nowrap}body[data-app-layout-mode=phone] .teaching-resource-detail-dialog .teaching-resource-dialog-primary-fields input{min-height:44px}body[data-app-layout-mode=phone] .teaching-resource-detail-dialog .teaching-resource-dialog-footer-actions{margin:0;flex-wrap:nowrap;gap:6px}.resource-tag-picker-control .resource-tag-chip{width:max-content;min-width:0;min-height:22px;flex:0 0 auto;gap:2px;border-radius:7px;padding:2px 4px 2px 8px;line-height:1.15;white-space:nowrap}.resource-tag-picker-control .resource-tag-chip>button,body[data-app-layout-mode=phone] .teaching-library-detail-modal .resource-tag-picker-control .resource-tag-chip>button{width:16px;min-width:16px;height:16px;min-height:16px;flex:0 0 16px;padding:0}.resource-tag-picker-control .resource-tag-chip>button>svg{width:11px;height:11px}@media(pointer:coarse){body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-icon-action{position:relative;touch-action:manipulation}body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-icon-action:after{content:"";position:absolute;inset-block:-4px;inset-inline:0;border-radius:inherit}.resource-tag-picker-control{row-gap:12px}.resource-tag-picker-control .resource-tag-chip>button,body[data-app-layout-mode=phone] .teaching-library-detail-modal .resource-tag-picker-control .resource-tag-chip>button{position:relative;touch-action:manipulation}.resource-tag-picker-control .resource-tag-chip>button:after,body[data-app-layout-mode=phone] .teaching-library-detail-modal .resource-tag-picker-control .resource-tag-chip>button:after{content:"";position:absolute;inset-block:-6px;inset-inline-start:0;inset-inline-end:-6px;border-radius:8px}}@supports (content-visibility: auto){.teaching-resource-card--library,.teaching-template-compact-row,.teaching-lesson-pick-row,.teaching-target-student-row{content-visibility:auto;contain-intrinsic-size:auto 76px}}.message-action-button{min-width:0;min-height:var(--button-primary-h, 40px);max-width:100%;overflow:hidden;border:1px solid color-mix(in srgb,var(--teach-green) 38%,var(--line));border-radius:var(--radius-control, 8px);padding:0;background:color-mix(in srgb,var(--teach-green-soft) 84%,var(--surface-card));color:var(--teach-action-soft-text, var(--teach-green));box-shadow:none;display:inline-flex;align-items:stretch;justify-content:center;gap:0;appearance:none;cursor:pointer;font:inherit;font-weight:var(--font-weight-emphasis, 600);line-height:var(--line-height-control, 1.25);text-align:center;transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}.message-action-button-icon{width:42px;min-width:42px;min-height:calc(var(--button-primary-h, 40px) - 2px);border-inline-end:1px solid color-mix(in srgb,var(--teach-green) 24%,var(--line));background:color-mix(in srgb,var(--teach-green) 11%,var(--surface-card));color:var(--teach-action-soft-text);display:grid;place-items:center}.message-action-button-icon svg{width:18px;height:18px;flex:0 0 auto}.message-action-button-label{min-width:0;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}.message-action-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--teach-green) 58%,var(--line));background:color-mix(in srgb,var(--teach-green-soft) 96%,var(--surface-card));color:color-mix(in srgb,var(--teach-action-soft-text, var(--teach-green)) 88%,#000)}.message-action-button:hover:not(:disabled) .message-action-button-icon{background:color-mix(in srgb,var(--teach-green) 16%,var(--surface-card))}.message-action-button:active:not(:disabled){background:color-mix(in srgb,var(--teach-green-soft) 88%,var(--teach-green))}.message-action-button:focus-visible{outline:none;box-shadow:var(--focus-ring, 0 0 0 3px color-mix(in srgb, var(--teach-green) 24%, transparent))}.message-action-button:disabled{cursor:not-allowed;opacity:.48}.message-action-button--compact{min-height:var(--button-standard-h, 36px);font-size:12px}.message-action-button--compact .message-action-button-icon{width:36px;min-width:36px;min-height:calc(var(--button-standard-h, 36px) - 2px)}.message-action-button--compact .message-action-button-label{padding-inline:10px}.message-action-button--icon-only,.message-action-button--icon-only.message-action-button--compact{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px);flex:0 0 var(--button-phone-h, 44px);border-radius:999px}.message-action-button--icon-only .message-action-button-icon,.message-action-button--icon-only.message-action-button--compact .message-action-button-icon{width:100%;min-width:100%;height:100%;min-height:100%;border-inline-end:0}button.message-action-button.message-action-button--icon-only{width:var(--button-phone-h, 44px);min-width:var(--button-phone-h, 44px);max-width:var(--button-phone-h, 44px);height:var(--button-phone-h, 44px);min-height:var(--button-phone-h, 44px);flex:0 0 var(--button-phone-h, 44px);padding:0}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.message-action-button,.message-action-button--compact{min-height:var(--button-phone-h, 44px)}.message-action-button-icon,.message-action-button--compact .message-action-button-icon{width:44px;min-width:44px;min-height:calc(var(--button-phone-h, 44px) - 2px)}.message-action-button-label{padding-inline:12px;white-space:normal}}@media(prefers-reduced-motion:reduce){.message-action-button{transition:none}}.quick-booking-card .assignment-repeat-button{min-height:var(--button-standard-h, 36px);gap:8px;padding-inline:14px;font-weight:var(--font-weight-label, 500)}.quick-booking-card .assignment-group{grid-template-columns:30px minmax(0,1fr);align-items:center}.quick-booking-card .assignment-group-number{width:30px;height:30px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 38%,var(--line));border-radius:var(--radius-control, 8px);background:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 22%,var(--surface-card));color:var(--text);font-size:var(--font-body, 14px);font-variant-numeric:tabular-nums;font-weight:var(--font-weight-emphasis, 600);line-height:1}.quick-booking-card .assignment-group.selected .assignment-group-number{border-color:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 70%,var(--line));background:color-mix(in srgb,var(--student-color, var(--mgmt-blue)) 34%,var(--surface-card))}.quick-booking-card .assignment-group-student-chips{grid-column:2}:root{--app-safe-top: env(safe-area-inset-top, 0px);--app-safe-right: env(safe-area-inset-right, 0px);--app-safe-bottom: env(safe-area-inset-bottom, 0px);--app-safe-left: env(safe-area-inset-left, 0px);--app-phone-header-height: 56px;--app-phone-nav-control-height: 54px;--app-phone-nav-padding-top: 5px;--app-phone-nav-padding-bottom: max(5px, var(--app-safe-bottom));--app-phone-nav-height: calc( var(--app-phone-nav-control-height) + var(--app-phone-nav-padding-top) + var(--app-phone-nav-padding-bottom) );--app-phone-main-top-clearance: calc( var(--app-phone-header-height) + var(--app-safe-top) + 8px );--app-phone-main-clearance: calc(132px + var(--app-safe-bottom))}@media(max-width:700px),(pointer:coarse)and (max-width:900px){.app-shell[data-layout-mode=phone]>.app-sidebar{box-sizing:border-box;height:calc(var(--app-phone-header-height) + var(--app-safe-top));min-height:calc(var(--app-phone-header-height) + var(--app-safe-top));padding-block-start:var(--app-safe-top)}.app-shell[data-layout-mode=phone] .mobile-app-header{height:var(--app-phone-header-height);padding-inline-start:max(8px,var(--app-safe-left));padding-inline-end:max(8px,var(--app-safe-right))}.app-shell[data-layout-mode=phone] .mobile-primary-nav{box-sizing:border-box;min-height:var(--app-phone-nav-height);padding-block-start:var(--app-phone-nav-padding-top);padding-block-end:var(--app-phone-nav-padding-bottom);padding-inline-start:max(8px,var(--app-safe-left));padding-inline-end:max(8px,var(--app-safe-right))}.app-shell[data-layout-mode=phone]>.app-main{box-sizing:border-box;min-height:calc(100dvh - var(--app-phone-header-height) - var(--app-safe-top));padding-block-end:var(--app-phone-main-clearance);padding-inline-start:var(--app-safe-left);padding-inline-end:var(--app-safe-right);scroll-padding-block-start:var(--app-phone-main-top-clearance);scroll-padding-block-end:var(--app-phone-main-clearance)}html:has(body[data-app-layout-mode=phone]){scroll-padding-block-start:var(--app-phone-main-top-clearance);scroll-padding-block-end:var(--app-phone-main-clearance)}body[data-app-layout-mode=phone] .mobile-more-row{scroll-margin-block-start:var(--app-phone-main-top-clearance);scroll-margin-block-end:var(--app-phone-main-clearance)}body[data-app-layout-mode=phone] :is(.upcoming-student-chip,.credit-account-row,.app-icon-button){min-height:44px}body[data-app-layout-mode=phone] .app-icon-button{width:44px;min-width:44px;height:44px}body[data-app-layout-mode=phone] .app-search-field>.app-search-field__input,.app-shell[data-layout-mode=phone] .app-search-field>.app-search-field__input{min-height:44px;font-size:16px}.app-shell[data-layout-mode=phone] .payments-page .payments-tabs button{min-height:44px}.app-shell[data-layout-mode=phone] .simple-rich-text-toolbar,body[data-app-layout-mode=phone] .teaching-library-detail-modal .simple-rich-text-toolbar{min-height:44px;gap:4px;padding:0 4px;overflow-x:visible;flex-wrap:wrap}.app-shell[data-layout-mode=phone] .simple-rich-text-tool,body[data-app-layout-mode=phone] .teaching-library-detail-modal .simple-rich-text-tool{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;padding-inline:8px}body[data-app-layout-mode=phone] :is(.assistant-launcher,.reminder-launcher){bottom:calc(var(--app-phone-nav-height) + 6px)}}@media(max-width:700px),(pointer:coarse)and (max-width:900px){body[data-app-layout-mode=phone] .teaching-library-detail-backdrop{box-sizing:border-box;padding-block-start:var(--app-safe-top);padding-block-end:var(--app-safe-bottom);padding-inline-start:var(--app-safe-left);padding-inline-end:var(--app-safe-right)}body[data-app-layout-mode=phone] .teaching-library-detail-modal{width:100%;height:100%;max-height:100%}}@media(max-width:680px){body[data-app-layout-mode=phone] .teaching-resource-compact-row{grid-template-columns:minmax(0,1fr) 140px;gap:4px}body[data-app-layout-mode=phone] .teaching-resource-card.teaching-resource-card--library .teaching-resource-compact-actions{width:140px;grid-template-columns:repeat(3,44px);gap:4px}body[data-app-layout-mode=phone] .teaching-resource-card--library .teaching-resource-compact-actions button.teaching-resource-icon-action,body[data-app-layout-mode=phone] .teaching-resource-card--library button.teaching-resource-star-action{width:44px;min-width:44px;height:44px;min-height:44px}}@media(max-width:700px),(pointer:coarse)and (max-width:900px){body[data-app-layout-mode=phone] #root{width:100%;max-width:none}}@media(max-width:900px)and (max-height:500px){.app-shell[data-layout-mode=phone] .training-data-reminder{width:auto;min-height:58px;grid-template-columns:32px minmax(0,1fr) minmax(112px,auto) 44px;gap:6px;margin-inline-start:max(8px,var(--app-safe-left));margin-inline-end:max(8px,var(--app-safe-right));padding:6px}.app-shell[data-layout-mode=phone] .training-data-reminder small{display:none}.app-shell[data-layout-mode=phone] .training-data-reminder>.training-data-reminder-switch{grid-column:auto;min-height:44px;padding-inline:8px;white-space:normal;line-height:1.15}.app-shell[data-layout-mode=phone] .training-data-reminder-hide{inset-block-start:6px;inset-inline-end:6px;width:44px;height:44px}.app-shell[data-layout-mode=phone] .training-data-reminder-collapsed{width:auto;min-height:54px;margin-inline-start:max(8px,var(--app-safe-left));margin-inline-end:max(8px,var(--app-safe-right))}body[data-app-layout-mode=phone] .reminder-popover-home{inset-block-start:calc(var(--app-safe-top) + 8px);inset-block-end:calc(var(--app-phone-nav-height) + 8px);inset-inline-start:max(8px,var(--app-safe-left));inset-inline-end:max(8px,var(--app-safe-right));max-height:none;overflow-y:auto}}@supports selector(body:has(input:focus)){body[data-app-layout-mode=phone]:has(:is(textarea,[contenteditable=true],input:not([type]),input[type=text],input[type=search],input[type=email],input[type=password],input[type=tel],input[type=url],input[type=number]):focus) :is(.mobile-primary-nav,.assistant-launcher,.reminder-launcher){display:none}body[data-app-layout-mode=phone]:has(:is(textarea,[contenteditable=true],input:not([type]),input[type=text],input[type=search],input[type=email],input[type=password],input[type=tel],input[type=url],input[type=number]):focus) .app-shell[data-layout-mode=phone]>.app-main{padding-block-end:max(24px,var(--app-safe-bottom))}}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .teaching-new-block-footer{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .teaching-new-block-resources{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .teaching-activity-tags-disclosure{grid-column:1;width:100%}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .teaching-activity-tags-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .teaching-resource-attach-icon{grid-column:2;grid-row:1}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .teaching-resource-rows{grid-column:1 / -1;width:100%;white-space:normal}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .teaching-new-block-actions{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .teaching-new-block-footer :is(.teaching-activity-tags-trigger,.teaching-activity-tag-me,.teaching-resource-attach-icon,.app-action-menu-trigger,button[type=submit]){width:100%;min-width:0;height:44px;min-height:44px;margin:0;padding-block:0;justify-content:center;white-space:nowrap}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .teaching-new-block-footer button>svg{flex-shrink:0}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .simple-rich-text-toolbar{min-height:44px;flex-wrap:nowrap;gap:0;overflow-x:auto;overflow-y:hidden;padding-block:0;padding-inline-start:0;padding-inline-end:48px;scrollbar-width:none}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .simple-rich-text-toolbar::-webkit-scrollbar{display:none}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .simple-rich-text-tool{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;padding:0}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .simple-rich-text-divider{display:none}body[data-app-layout-mode=phone] .teaching-lesson-create-activity-composer .teaching-composer-editor-shell>.teaching-ai-square-button{top:0;inset-inline-end:0;width:44px;min-width:44px;height:44px;min-height:44px;flex-basis:44px;border-start-end-radius:var(--radius-control)}.parent-message-hub-content>[hidden]{display:none}.parent-message-workspace{grid-template-columns:minmax(0,1fr) minmax(260px,300px)}.parent-message-routing{grid-template-columns:minmax(0,1fr);max-width:520px;gap:4px}.parent-message-recipient-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:36px;padding:4px 8px;border:0;background:transparent;color:var(--muted);text-align:start}.parent-message-recipient-summary span{overflow-wrap:anywhere}.parent-message-review-row{justify-content:flex-start}.message-lesson-note-dialog{display:flex;flex-direction:column;gap:16px}.message-lesson-note-dialog textarea{width:100%;min-height:280px;resize:vertical;padding:16px;color:var(--text);background:var(--surface-input);border:1px solid var(--line);border-radius:var(--radius-control);font:inherit;line-height:1.6}.message-lesson-note-dialog footer{display:flex;gap:8px;justify-content:flex-end}.contacts-page{width:100%;max-width:1200px;margin-inline:auto}.contact-overview{display:grid;gap:16px}.contact-overview-toolbar{display:flex;justify-content:flex-end}.contact-overview-person,.contact-overview-details{display:grid;gap:8px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.contact-overview-person h3,.contact-overview-details h3{margin:0}.contact-overview-person small{color:var(--muted)}.contact-overview-identity{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}.contact-overview-identity>span{color:var(--muted)}.contact-overview-person>span{justify-self:start;max-width:100%;overflow-wrap:anywhere}.contact-overview-actions{display:flex;flex-wrap:wrap;gap:8px}.contact-overview .quiet-button,.contact-overview-back{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.student-collaborative-notebook.is-empty:not(:has(form)){padding:0;border:0;box-shadow:none;background:transparent}.student-collaborative-notebook.is-empty:not(:has(form)) .student-collaborative-notebook-heading{display:none}@media(max-width:860px){.parent-message-workspace{grid-template-columns:minmax(0,1fr)}.parent-message-hub-toolbar nav{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:700px){.parent-message-routing{max-width:none}.parent-message-recipient-summary{min-height:44px}.parent-message-hub-toolbar nav button svg{display:none}.parent-message-text-highlight,.parent-message-textarea textarea{min-height:280px}.parent-message-composer .parent-message-actions{position:static;margin-top:8px;padding:8px 0;box-shadow:none}.message-lesson-note-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.contact-overview-actions>a{min-height:44px;flex:1 1 auto}}.parent-message-hub .parent-message-page-header{display:none}.parent-message-hub .parent-message-routing{padding:0;border:0;background:transparent}.parent-message-panel-header{min-height:52px}.teacher-diary-composer>summary{min-height:44px;padding:12px;color:var(--muted);cursor:pointer}@media(min-width:701px){.parent-message-studio>.parent-message-actions{position:sticky;bottom:0;z-index:3;background:var(--surface-card)}}.library-filter-disclosure>summary{padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-control);cursor:pointer;color:var(--text)}.library-filter-disclosure[open]>summary{margin-bottom:12px}.payment-detail-students,.parent-message-field-buttons{display:flex;flex-wrap:wrap;gap:8px}.payment-detail-students{margin-block:8px}.parent-message-field-buttons{margin-bottom:8px}.message-lesson-note-dialog>.home-student-chip{align-self:flex-start}.payment-account-field-heading{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.payment-account-field-heading .payment-detail-students{margin:0}.payment-account-field-heading .home-student-chip{font-size:var(--font-caption)}.support-page.is-unavailable .support-issue-sidebar{display:none}.support-page.is-unavailable .support-workspace{grid-template-columns:minmax(0,1fr)}.folder-import-direct-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.folder-import-direct-actions>button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:64px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text)}@media(min-width:701px){body:not([data-app-layout-mode=phone]) .teaching-resource-page .teaching-library-filter-panel:has(>.library-filter-disclosure){display:flex;flex-wrap:wrap;align-items:center;min-height:0;gap:12px}.teaching-library-filter-panel>.teaching-search-field{flex:1 1 320px}.library-filter-disclosure[open]{flex-basis:100%}}@media(max-width:700px){.parent-message-composer .parent-message-textarea textarea{height:280px;min-height:280px}.parent-message-studio{padding-bottom:72px;-webkit-backdrop-filter:none;backdrop-filter:none}.parent-message-studio>.parent-message-actions{position:fixed;inset-inline:16px;bottom:calc(64px + env(safe-area-inset-bottom));z-index:30;border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-card)}.lesson-update-dialog .parent-message-studio>.parent-message-actions{position:sticky;inset-inline:auto;bottom:0}}body[data-app-layout-mode=phone] .calendar-management-page .calendar-view-toggle{grid-template-columns:repeat(3,minmax(0,1fr))}
