@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;500;600;700&display=swap";.official-app-footer nav>span{color:#66736e;font-size:9px;font-weight:700}:root{color:#26332f;font-synthesis:none;--navy:#29455c;--green:#247664;--paper:#fff;--line:#dcded9;--muted:#74817c;background:#f4f3ef;font-family:DM Sans,Noto Sans JP,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,select,textarea,input{font:inherit}.app{min-height:100vh}.topbar{border-bottom:1px solid var(--line);z-index:30;background:#fff;grid-template-columns:220px 1fr auto;align-items:stretch;height:64px;padding:0 22px;display:grid;position:sticky;top:0;box-shadow:0 2px 12px #263b3010}.brand{align-items:center;gap:9px;display:flex}.brand>img{border-radius:8px;width:34px;height:34px;display:block}.brand>span{flex-direction:column;display:flex}.brand b{font-size:14px}.brand small{letter-spacing:.13em;color:#81908a;font-size:8px}nav{justify-content:center;align-items:stretch;min-width:0;display:flex}nav button{color:#64716c;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:7px;padding:0 18px;display:flex}nav button svg{width:17px}nav button.active{color:var(--green);border-bottom-color:var(--green);background:#f3f8f6;font-weight:700}.header-tools{align-items:center;gap:4px;display:flex}.header-tools>button{color:#68756f;background:0 0;border:0;width:34px;height:34px;position:relative}.header-tools svg{width:18px}.header-tools i{background:#d85d4c;border-radius:50%;width:6px;height:6px;position:absolute;top:5px;right:6px}.profile{border-left:1px solid var(--line);align-items:center;gap:7px;margin-left:5px;padding-left:12px;display:flex}.profile>span{color:#28584d;background:#dfe9e6;border-radius:50%;place-items:center;width:29px;height:29px;font-size:12px;font-weight:700;display:grid}.profile div{flex-direction:column;display:flex}.profile b{font-size:11px}.profile small{color:#85908c;font-size:8px}.content{max-width:1500px;margin:auto;padding:18px 24px 80px}.page-title{justify-content:space-between;align-items:end;margin:14px 0;display:flex}.page-title h1{margin:3px 0;font-size:22px}.page-title h1 small{color:#75817d;margin-left:6px;font-size:13px;font-weight:500}.eyebrow{letter-spacing:.13em;color:#75837d;font-size:9px;font-weight:700}.dense-card{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #263b300a}.primary,.outline{cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:5px;height:34px;padding:0 11px;font-size:11px;display:flex}.primary{background:var(--green);color:#fff;border:1px solid var(--green)}.outline{color:#53615c;background:#fff;border:1px solid #ccd1cd}.primary svg,.outline svg{width:15px}.actions{align-items:center;gap:7px;display:flex}.actions select{background:#fff;border:1px solid #ccd1cd;border-radius:6px;height:34px;padding:0 25px 0 9px;font-size:11px}.seg{background:#e9ece8;border-radius:7px;padding:3px;display:flex}.seg button{color:#64716c;background:0 0;border:0;border-radius:5px;padding:6px 13px;font-size:11px}.seg button.active{color:#286c5c;background:#fff;font-weight:700;box-shadow:0 1px 5px #0001}.school-events{color:#fff;background:#294b60;border-radius:8px;align-items:center;gap:12px;min-height:49px;padding:8px 14px;display:flex;overflow-x:auto}.school-events>b{white-space:nowrap;border-right:1px solid #ffffff45;align-items:center;gap:6px;padding-right:12px;font-size:11px;display:flex}.school-events svg{width:16px}.school-events>div{white-space:nowrap;background:#ffffff12;border-radius:5px;align-items:center;gap:7px;padding:5px 9px;display:flex}.school-events span{color:#efc27a;font-size:10px}.school-events strong{font-size:11px}.school-events small{color:#c9d5da;font-size:9px}.attendance{align-items:center;gap:8px;display:flex}.attendance>span{color:var(--muted);font-size:10px}.attendance button{color:#4c5b56;background:#fff;border:1px solid #d5d8d4;border-radius:6px;align-items:center;gap:7px;min-width:200px;height:35px;padding:0 10px;font-size:11px;display:flex}.attendance svg{width:15px}.attendance svg:last-child{margin-left:auto}.lesson-head,.lesson-line{grid-template-columns:70px minmax(155px,.7fr) minmax(115px,.45fr) minmax(320px,1.8fr) 48px;display:grid}.lesson-head{color:#63706b;text-align:center;border-bottom:1px solid var(--line);background:#eef0ed;font-size:9px;font-weight:700}.lesson-head span{border-right:1px solid var(--line);padding:7px}.lesson-line>*,.lesson-line>button{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:68px}.lesson-line:last-child>*{border-bottom:0}.lesson-line.morning{background:#f7f8f5}.period-cell{flex-direction:column;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.period-cell small{color:#87918d;margin-top:3px;font-size:8px;font-weight:400}.lesson-cell{grid-template-columns:auto 1fr;align-content:center;padding:8px 11px 8px 15px;display:grid;position:relative}.lesson-cell i{width:4px;position:absolute;top:0;bottom:0;left:0}.lesson-cell b{font-size:12px}.lesson-cell span{color:#72807b;grid-column:1/-1;margin-top:3px;font-size:9px}.absence-cell{cursor:pointer;background:#fff;flex-wrap:wrap;place-content:center;align-items:center;gap:3px;padding:6px;display:flex}.absence-cell span{color:#a04d3f;background:#fdebe7;border-radius:4px;padding:3px 5px;font-size:9px}.absence-cell small{color:#94a09b;font-size:9px}.absence-cell svg{color:#698078;width:13px}.lesson-memo{resize:none;color:#42504b;background:#fffdf8;border-radius:0;outline:none;padding:9px;font-size:10px;line-height:1.55}.done-check{color:#b0b7b4;background:#fff}.done-check svg{width:20px}.done-check.checked{color:#2d9078;background:#ecf7f3}.modal-backdrop{z-index:150;background:#1f2d2a66;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:12px;flex-direction:column;width:min(680px,96vw);max-height:85vh;display:flex;box-shadow:0 20px 70px #0004}.modal-head,.modal-foot{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:15px 18px;display:flex}.modal-head small{color:#7d8984;font-size:9px}.modal-head h3{margin:2px 0;font-size:16px}.modal-head button{background:0 0;border:0}.modal-head svg{width:18px}.student-checks{grid-template-columns:repeat(3,1fr);gap:5px;padding:12px;display:grid;overflow:auto}.student-checks button{text-align:left;background:#fff;border:1px solid #e0e2df;border-radius:6px;align-items:center;gap:7px;padding:8px;font-size:10px;display:flex}.student-checks button>span{color:#82908a;width:20px}.student-checks svg{color:#c7ceca;width:14px;margin-left:auto}.student-checks button.selected{background:#eff8f5;border-color:#3a8b75}.student-checks button.selected svg{color:#2c856e}.modal-foot{border-top:1px solid var(--line);border-bottom:0}.modal-foot span{font-size:11px}.status-line,.sample-alert{color:#426c61;background:#edf6f3;border:1px solid #d2e8e2;border-radius:6px;align-items:center;gap:6px;margin-bottom:10px;padding:8px 11px;font-size:10px;display:flex}.status-line svg{width:14px}.sample-alert{color:#84683e;background:#fff7e9;border-color:#f0dfbd}.timetable{grid-template-columns:65px repeat(5,1fr);display:grid}.tt-corner,.tt-day{border-right:1px solid var(--line);background:#e9edea;flex-direction:column;justify-content:center;align-items:center;height:41px;font-size:11px;display:flex}.tt-day small{color:#7f8b86;font-size:8px}.tt-time,.tt-lesson{border-right:1px solid var(--line);border-top:1px solid var(--line);min-height:75px}.tt-time{background:#fafaf8;flex-direction:column;justify-content:center;align-items:center;font-size:11px;display:flex}.tt-time small{color:#8a9490;font-size:8px}.tt-time.morning,.tt-lesson.morning{background:#f2f5f1;min-height:49px}.tt-lesson{flex-direction:column;padding:9px 8px 6px 12px;display:flex;position:relative}.tt-lesson i{width:4px;position:absolute;top:0;bottom:0;left:0}.tt-lesson b{font-size:12px}.tt-lesson span{color:#65736e;margin-top:3px;font-size:9px}.tt-lesson small{color:#99a19e;margin-top:auto;font-size:8px}.month-switch{justify-content:center;align-items:center;gap:13px;margin:4px 0 10px;display:flex}.month-switch button{color:#5f6d68;background:0 0;border:0}.month-switch svg{width:17px}.month-switch b{font-size:14px}.calendar{grid-template-columns:repeat(7,1fr);display:grid}.cal-head{text-align:center;border-right:1px solid var(--line);background:#e9edea;height:28px;padding:7px;font-size:9px}.cal-day{border-right:1px solid var(--line);border-top:1px solid var(--line);min-height:100px;padding:7px;position:relative}.cal-day:nth-child(7n){border-right:0}.cal-day>b{font-size:10px}.cal-day button{color:#704940;text-align:left;background:#fff2ee;border:0;border-left:3px solid #cd765e;width:100%;margin-top:4px;padding:4px 5px;font-size:9px;display:block}.cal-day button small{color:#9b7066;margin-top:2px;display:block}.cal-day.blank{background:#fafaf8}.cal-day.today-mark{box-shadow:inset 0 0 0 2px #e4a84e}.quick-add{color:#adb5b1;font-size:13px;position:absolute;bottom:3px;right:5px}.annual-list{overflow:auto}.annual-row{border-bottom:1px solid var(--line);grid-template-columns:42px 42px minmax(210px,.9fr) minmax(360px,1.8fr);min-width:690px;font-size:10px;display:grid}.annual-row>*{border-right:1px solid var(--line);min-height:30px;padding:7px 9px}.annual-row.head{color:#66736e;background:#e9edea;font-weight:700}.weekly-sheet{grid-template-columns:58px repeat(5,1fr);display:grid}.week-corner,.week-heading{border-right:1px solid var(--line);background:#e5eae6;flex-direction:column;justify-content:center;align-items:center;height:43px;display:flex}.week-heading b{font-size:11px}.week-heading span{color:#78847f;font-size:8px}.event-label,.day-event{border-top:1px solid var(--line);border-right:1px solid var(--line);background:#fff8e9;min-height:46px}.event-label{place-items:center;font-size:9px;font-weight:700;display:grid}.day-event{padding:5px}.day-event span{font-size:8px;display:block}.day-event b{color:#a06e27;margin-right:4px}.week-period,.week-lesson{border-top:1px solid var(--line);border-right:1px solid var(--line);min-height:83px}.week-period{background:#fafaf8;flex-direction:column;justify-content:center;align-items:center;font-size:10px;display:flex}.week-period small{color:#89938f;font-size:7px}.week-period.morning,.week-lesson.morning{background:#f2f5f1;min-height:54px}.week-lesson{flex-direction:column;gap:3px;padding:6px;display:flex}.week-lesson>div{align-items:center;gap:5px;display:flex}.week-lesson i{border-radius:3px;width:4px;height:16px}.week-lesson b{font-size:10px}.week-lesson span{color:#71807a;font-size:8px}.week-lesson textarea{resize:none;background:#fffef9;border:1px solid #e1e2de;width:100%;height:24px;margin-top:auto;padding:3px;font-size:8px}.subject-tabs{gap:5px;margin-bottom:10px;display:flex;overflow-x:auto}.subject-tabs button{color:#68756f;background:#fff;border:1px solid #d8dcd8;border-radius:6px;min-width:70px;padding:8px 14px;font-size:10px}.subject-tabs button.active{background:#f8faf9;font-weight:700}.unit-row{border-bottom:1px solid var(--line);grid-template-columns:70px minmax(250px,1.5fr) 115px 92px 90px 65px;align-items:center;min-width:780px;font-size:10px;display:grid}.unit-row>*{border-right:1px solid var(--line);padding:10px}.unit-row.head{color:#63706b;background:#e9edea;font-size:9px;font-weight:700}.subject-tag{color:#fff;text-align:center;border-radius:4px;margin:9px;padding:4px 6px}.unit-row>div{flex-direction:column;display:flex}.unit-row small{color:#7c8883;margin-top:3px}.unit-progress b{font-size:9px}.unit-progress i{background:#e8eae7;border-radius:4px;height:4px;margin-top:5px}.unit-progress em{border-radius:4px;height:100%;display:block}.unit-row .outline{height:27px;margin:6px;padding:0}.unit-table{overflow-x:auto}.roster-table{font-size:10px}.roster-head,.roster-row{grid-template-columns:55px 140px 160px 70px 1fr;display:grid}.roster-head{color:#62706a;background:#e9edea;font-weight:700}.roster-head>*{border-right:1px solid var(--line);padding:7px 9px}.roster-row>*{border-right:1px solid var(--line);border-top:1px solid var(--line);padding:7px 9px}.roster-row>b{text-align:center}.roster-row button{color:#347560;background:#edf7f3;border:0}.roster-row input{border:0;outline:none;min-width:0}.autosave{color:#45806f;align-items:center;gap:4px;font-size:9px;display:flex}.autosave svg{width:14px}.settings-layout{grid-template-columns:190px 1fr;align-items:start;gap:12px;display:grid}.settings-nav{border:1px solid var(--line);background:#fff;border-radius:8px;gap:3px;padding:6px;display:grid;position:sticky;top:58px}.settings-nav button{text-align:left;color:#5f6d68;background:0 0;border:0;border-radius:5px;align-items:center;gap:8px;padding:10px 9px;font-size:10px;display:flex}.settings-nav button svg{width:16px}.settings-nav button.active{color:#247664;background:#eaf4f1;font-weight:700}.settings-panel{min-height:620px;padding:18px;overflow:auto}.settings-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;margin-bottom:15px;padding-bottom:13px;display:flex}.settings-head h2{margin:0;font-size:16px}.settings-head p{color:#7d8984;margin:5px 0 0;font-size:9px}.form-grid{grid-template-columns:repeat(2,minmax(180px,1fr));gap:14px 18px;max-width:750px;display:grid}.form-grid label{color:#53615c;flex-direction:column;gap:6px;font-size:10px;font-weight:700;display:flex}.form-grid select,.form-grid input,.roster-setting-head select{color:#34433e;background:#fff;border:1px solid #d4d8d4;border-radius:6px;height:36px;padding:0 9px;font-size:10px}.setting-note{background:#f1f6f4;border-radius:6px;flex-direction:column;gap:3px;margin-top:20px;padding:12px;font-size:10px;display:flex}.setting-note span{color:#72807b}.backup-cards{grid-template-columns:repeat(2,minmax(230px,1fr));gap:14px;display:grid}.backup-cards article{border:1px solid var(--line);background:#fff;border-radius:9px;grid-template-columns:40px 1fr;gap:12px;padding:18px;display:grid}.backup-cards article>svg{color:#247664;background:#eaf4f1;border-radius:8px;width:34px;height:34px;padding:8px}.backup-cards h3{margin:1px 0 6px;font-size:13px}.backup-cards p{color:#72807b;margin:0;font-size:9px;line-height:1.7}.backup-cards article>button,.backup-cards article>label{cursor:pointer;border-radius:6px;grid-column:1/-1;justify-content:center;align-items:center;gap:6px;min-height:37px;display:flex}.backup-cards article>button svg,.backup-cards article>label svg{width:15px}.backup-message{color:#247664;background:#e8f5ef;border-radius:6px;align-items:center;gap:7px;margin-top:12px;padding:10px 12px;font-size:10px;display:flex}.backup-message svg{width:16px}.setting-weeks{width:max-content;margin-bottom:10px}.editable-timetable{border:1px solid var(--line);border-radius:6px;grid-template-columns:55px repeat(5,minmax(130px,1fr));min-width:760px;display:grid;overflow:hidden}.edit-corner,.edit-day{text-align:center;border-right:1px solid var(--line);background:#e9edea;padding:9px;font-size:10px;font-weight:700}.edit-period{border-right:1px solid var(--line);border-top:1px solid var(--line);background:#f7f8f6;place-items:center;font-size:9px;font-weight:700;display:grid}.edit-cell{border-right:1px solid var(--line);border-top:1px solid var(--line);gap:3px;padding:5px;display:grid}.edit-cell select{background:#fff;border:1px solid #d8dcd8;border-radius:4px;width:100%;height:27px;padding:0 4px;font-size:9px}.import-guide{background:#eff6f3;border:1px solid #d7e9e3;border-radius:6px;align-items:center;gap:10px;margin-bottom:12px;padding:11px;display:flex}.import-guide svg{color:#2e7b66;width:25px}.import-guide div{flex-direction:column;font-size:9px;display:flex}.import-guide span{color:#71807a;margin-top:2px}.roster-setting-head{align-items:center;gap:10px;margin-bottom:8px;display:flex}.roster-setting-head select{width:120px}.roster-setting-head b{font-size:11px}.roster-setting-head span{color:#8c6b27;background:#fff1cf;border-radius:4px;padding:4px 7px;font-size:8px}.setting-roster{border:1px solid var(--line);border-radius:6px;max-height:430px;overflow:auto}.sr-head,.sr-row{grid-template-columns:55px 120px 150px minmax(260px,1fr);display:grid}.sr-head{z-index:1;background:#e9edea;position:sticky;top:0}.sr-head span{border-right:1px solid var(--line);padding:7px;font-size:9px;font-weight:700}.sr-row input,.sr-row textarea{border:0;border-right:1px solid var(--line);border-top:1px solid var(--line);resize:vertical;min-width:0;min-height:31px;padding:7px;font-size:9px}.subject-settings{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.subject-setting{border:1px solid var(--line);border-radius:6px;grid-template-columns:1fr 70px 25px;align-items:center;padding:9px;font-size:10px;display:grid}.subject-setting label{align-items:center;gap:7px;display:flex}.subject-setting i{border-radius:3px;width:5px;height:20px}.subject-setting span{color:#83908a;font-size:8px}.subject-setting button{color:#86918c;background:0 0;border:0}.academic-calendar-settings{background:#f8fbf9;border:1px solid #d5e2dc;border-radius:8px;margin-top:18px;padding:14px}.academic-calendar-settings>div:first-child{flex-direction:column;gap:3px;display:flex}.academic-calendar-settings>div:first-child>b{font-size:12px}.academic-calendar-settings>div:first-child>span{color:#708079;font-size:9px}.term-date-grid{grid-template-columns:repeat(3,minmax(170px,1fr));gap:8px;margin-top:11px;display:grid}.term-date-grid article{background:#fff;border:1px solid #dce5e0;border-radius:7px;grid-template-columns:1fr 1fr;gap:8px;padding:10px;display:grid}.term-date-grid article>b{color:#315e51;grid-column:1/-1;font-size:11px}.term-date-grid label{color:#64736d;flex-direction:column;gap:4px;font-size:8px;display:flex}.term-date-grid input{border:1px solid #d3dad6;border-radius:5px;width:100%;height:32px;padding:0 5px;font-size:9px}.cycle-reset-option{align-items:flex-start;gap:8px;margin-top:10px;font-size:10px;display:flex}.cycle-reset-option input{margin-top:3px}.cycle-reset-option span{flex-direction:column;gap:2px;display:flex}.cycle-reset-option small{color:#71807a;font-size:8px;font-weight:400}@media (width<=800px){.term-date-grid{grid-template-columns:1fr}}.ink-actions{z-index:145;gap:6px;display:flex;position:fixed;bottom:18px;right:20px}.ink-actions button{color:#53635d;background:#fff;border:1px solid #cdd2ce;border-radius:24px;align-items:center;gap:6px;height:40px;padding:0 13px;font-size:10px;display:flex;box-shadow:0 4px 14px #26392f25}.ink-actions .pen{color:#fff;background:#d56450;border-color:#d56450}.ink-actions svg{width:17px}.ink-layer{z-index:40;pointer-events:none;position:fixed;inset:64px 0 0}.ink-layer.hidden{display:none}.ink-layer canvas{pointer-events:none;width:100%;height:100%;display:block}.ink-layer.editing{z-index:100;pointer-events:auto;background:#fff1}.ink-layer.editing canvas{pointer-events:auto;touch-action:none}.ink-tools{z-index:150;background:#293f51;border-radius:12px;align-items:center;gap:6px;padding:7px;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #0004}.ink-tools button{color:#fff;background:#3a5367;border:0;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.ink-tools svg{width:17px}.ink-tools button.active{color:#263c4d;background:#efb357}.ink-tools .color{border:2px solid #fff;border-radius:50%;width:22px;height:22px}.ink-tools .done{background:#26836b;gap:5px;width:auto;padding:0 12px;display:flex}.ink-edit{pointer-events:auto;z-index:150;color:#5e6d67;background:#fff;border:1px solid #d1d6d2;border-radius:20px;align-items:center;gap:5px;padding:7px 11px;font-size:9px;display:flex;position:absolute;bottom:65px;right:20px}.ink-edit svg{width:14px}.lesson-table,.weekly-sheet,.portrait-week,.calendar,.annual-list,.unit-table{position:relative}.ink-input-catcher{z-index:110;touch-action:none;background:0 0;position:fixed;inset:0}@media (width<=1000px){.topbar{grid-template-columns:170px 1fr auto;padding:0 12px}.brand>span b{font-size:12px}nav{justify-content:flex-start;overflow-x:auto}nav button{padding:0 12px}.profile div{display:none}.content{padding:15px 14px 75px}.lesson-head,.lesson-line{grid-template-columns:65px minmax(190px,1fr) 125px minmax(160px,.8fr) 45px}.weekly-sheet,.timetable{min-width:850px}.dense-card.weekly-sheet,.dense-card.timetable{overflow:visible}.page-title{min-width:0}}@media (width<=700px){.topbar{grid-template-rows:48px 56px;grid-template-columns:1fr auto;height:104px;padding:0 10px}.brand{grid-column:1}.header-tools{grid-column:2}.profile{display:none}nav{border-top:1px solid #edf0ed;grid-area:2/1/auto/-1;justify-content:flex-start}nav button{flex-direction:column;justify-content:center;gap:0;min-width:75px;padding:4px 10px;font-size:10px}nav button svg{width:15px}.ink-layer{inset:104px 0 0}.content{padding:10px 9px 75px}.page-title{align-items:flex-start;gap:9px}.page-title h1{font-size:18px}.page-title>.actions{max-width:58%;overflow-x:auto}.school-events{border-radius:5px}.attendance{flex-direction:column;align-items:flex-end;gap:2px}.attendance button{min-width:165px;max-width:190px}.lesson-table{overflow-x:auto}.lesson-head,.lesson-line{min-width:770px}.calendar{min-width:690px}.dense-card.calendar{overflow-x:auto}.cal-day{min-height:85px}.student-checks{grid-template-columns:repeat(2,1fr)}.roster-table{overflow-x:auto}.roster-head,.roster-row{min-width:620px}.ink-actions button span{display:none}.ink-actions button{justify-content:center;width:42px;padding:0}.ink-tools{max-width:96%;overflow-x:auto}.ink-tools .color{flex:0 0 22px}}@media (width<=1000px){.settings-layout{grid-template-columns:160px 1fr}.lesson-head,.lesson-line{grid-template-columns:62px 170px 115px minmax(290px,1fr) 44px}}@media (width<=700px){.settings-layout{grid-template-columns:1fr}.settings-nav{display:flex;position:static;overflow-x:auto}.settings-nav button{white-space:nowrap}.settings-panel{padding:12px}.form-grid{grid-template-columns:1fr}.settings-head{gap:10px}.settings-head .actions{overflow-x:auto}.subject-settings,.backup-cards{grid-template-columns:1fr}.lesson-head,.lesson-line{min-width:780px}}.topbar{height:50px}.brand>img{width:29px;height:29px}.brand small{display:none}nav button{padding-top:0;padding-bottom:0}.ink-layer{inset:50px 0 0}main{min-height:calc(100vh - 50px)}.official-app-footer{border:1px solid var(--line);background:#fffdf8;border-radius:9px;grid-template-columns:minmax(150px,220px) 1fr auto;align-items:center;gap:18px;margin-top:18px;padding:18px;display:grid}.official-app-footer>img{width:100%;height:auto;display:block}.official-app-footer p{flex-direction:column;gap:2px;margin:0;display:flex}.official-app-footer p b{font-size:13px}.official-app-footer p span{color:#66736e;font-size:9px}.official-app-footer nav{flex-direction:column;align-items:flex-end;gap:5px;display:flex}.official-app-footer nav a{color:#315e51;font-size:9px;font-weight:700;text-decoration:none}.official-app-footer nav a:hover{text-decoration:underline}@media (width<=700px){.official-app-footer{text-align:center;grid-template-columns:1fr}.official-app-footer>img{width:min(220px,80%);margin:auto}.official-app-footer nav{align-items:center}}.arrival-settings{background:#f7f8f6;max-height:130px;padding:6px 16px;overflow:auto}.arrival-settings label{grid-template-columns:120px 65px 1fr;align-items:center;gap:8px;padding:5px 0;font-size:9px;display:grid}.arrival-settings select{background:#fff;border:1px solid #d3d8d4;border-radius:5px;height:28px;font-size:9px}.daily-journal{border:1px solid var(--line);background:#fff;border-radius:8px;margin-top:12px;padding:15px}.daily-journal>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.daily-journal h2{margin:3px 0 10px;font-size:15px}.daily-journal textarea{resize:vertical;color:#3d4b46;background:linear-gradient(#fff 34px,#edf0ed 35px) 0 0/100% 35px;border:0;border-top:1px solid #e8e9e6;outline:none;width:100%;min-height:230px;padding:13px 3px;font-size:13px;line-height:1.85}.journal-mic{color:#286c5c;background:#f1f8f5;border:1px solid #b9d2ca;border-radius:18px;align-items:center;gap:6px;min-height:34px;padding:0 12px;font-size:10px;font-weight:700;display:flex}.journal-mic svg{width:15px}.journal-mic.listening{color:#fff;background:#b94e45;border-color:#b94e45}.journal-speech-status{color:#735d3d;background:#fff5e9;border-radius:6px;margin:0 0 8px;padding:7px 9px;font-size:10px}.journal-speech-status.listening{color:#246957;background:#eaf6f1}.journal-search{border:1px solid var(--line);background:#fff;border-radius:9px;align-items:center;gap:8px;max-width:720px;height:44px;margin-bottom:12px;padding:0 12px;display:flex}.journal-search>svg{color:#53776c;width:18px}.journal-search input{border:0;outline:0;flex:1;min-width:0;font-size:13px}.journal-search button{color:#60706a;background:0 0;border:0;align-items:center;gap:3px;font-size:10px;display:flex}.journal-search button svg{width:14px}.journal-reader-list{gap:10px;display:grid}.journal-entry{border:1px solid var(--line);background:#fff;border-radius:9px;overflow:hidden}.journal-entry>button{text-align:left;color:#3b4e47;background:#f7faf8;border:0;border-bottom:1px solid #edf0ed;align-items:center;gap:9px;width:100%;padding:10px 14px;display:flex}.journal-entry>button>svg{color:#347764;width:18px}.journal-entry>button>svg:last-child{width:16px;margin-left:auto}.journal-entry>button span{flex-direction:column;gap:2px;display:flex}.journal-entry>button b{font-size:12px}.journal-entry>button small{color:#78867f;font-size:9px}.journal-entry p{white-space:pre-wrap;color:#35443f;margin:0;padding:15px 16px;font-size:13px;line-height:1.85}.journal-empty{color:#718079;text-align:center;background:#fafcfb;border:1px dashed #cbd6d1;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:220px;display:flex}.journal-empty svg{width:30px}.journal-empty b{font-size:13px}.journal-empty small{font-size:10px}.week-nav{align-items:center;gap:7px;display:flex}.week-nav>button:not(.outline){background:#fff;border:1px solid #d4d8d4;border-radius:6px;align-items:center;gap:3px;height:32px;padding:0 8px;font-size:9px;display:flex}.week-nav svg{width:14px}.week-nav b{padding:0 5px;font-size:12px}.week-heading strong{font-size:14px}.week-heading span{font-size:9px}.week-lesson textarea{outline:none;background:0 0!important;border:0!important;height:38px!important;padding:3px 0!important}.holiday-name{color:#b25555;font-size:8px;font-style:normal;display:block}.cal-day.holiday{background:#fff0f0}.cal-day.saturday{background:#f0f3f4}.note-mark{color:#75847e;margin-top:4px;font-size:7px;display:block}.annual-row textarea{resize:vertical;background:0 0;border:0;outline:none;min-height:35px;padding:7px 9px;font-size:10px}.annual-row.holiday-row{background:#fff1f1}.annual-row.saturday-row{background:#f0f3f4}.annual-row>span small{color:#b45252;margin-top:2px;font-size:7px;display:block}.subject-editor{max-width:620px}.subject-editor-list{grid-template-columns:repeat(3,1fr);gap:6px;padding:14px;display:grid}.subject-editor-list label{border:1px solid var(--line);border-radius:6px;align-items:center;gap:7px;padding:9px;font-size:10px;display:flex}.subject-editor-list i{border-radius:3px;width:5px;height:20px}.add-subject{background:#f4f6f4;gap:7px;padding:12px 16px;display:flex}.add-subject input{border:1px solid #d2d7d3;border-radius:6px;flex:1;padding:0 10px;font-size:10px}@media (width<=700px){.topbar{grid-template-rows:38px 50px;height:88px}.ink-layer{inset:88px 0 0}.week-nav{flex-wrap:wrap;justify-content:flex-end}.page-title:has(.week-nav){align-items:center}.subject-editor-list{grid-template-columns:repeat(2,1fr)}.arrival-settings label{grid-template-columns:90px 1fr}.arrival-settings label span{display:none}}.page-title{margin:4px 0 9px}.page-title>.eyebrow,.page-title .eyebrow{display:none}.todo-strip{border:1px solid var(--line);background:#fff;border-radius:7px;grid-template-columns:48px 1fr 175px;align-items:center;gap:8px;min-height:40px;margin-bottom:7px;padding:5px 9px;display:grid}.todo-strip>b{color:#2d7462;font-size:10px}.todo-strip>div{align-items:center;gap:12px;display:flex;overflow-x:auto}.todo-strip label{white-space:nowrap;align-items:center;gap:4px;font-size:9px;display:flex}.todo-strip label:has(input:checked) span{color:#9ba39f;text-decoration:line-through}.todo-strip form input{border:0;border-left:1px solid var(--line);outline:none;width:100%;height:27px;padding-left:9px;font-size:9px}.today-actions{align-items:flex-end;gap:10px;display:flex}.date-step{align-items:center;gap:4px;display:flex}.date-step button{background:#fff;border:1px solid #d5d9d5;border-radius:6px;align-items:center;gap:2px;height:31px;padding:0 6px;font-size:9px;display:flex}.date-step svg{width:13px}.date-step b{padding:0 5px;font-size:11px}.week-lesson textarea::placeholder{color:#b4bab7}.week-lesson{gap:1px}.week-lesson span,.week-lesson b{outline:none}.settings-panel .page-title{margin-top:0}@media (width<=800px){.todo-strip{grid-template-columns:42px 1fr}.todo-strip form{grid-column:1/-1}.today-actions{flex-direction:column;align-items:flex-end}.page-title{gap:6px}}.school-events .school-context{background:#ffffff20;border-left:1px solid #ffffff45;margin-left:auto;padding-left:14px}.school-context b{color:#c9d8dc;font-size:9px}.school-context strong{font-size:12px}.today-control{grid-template-columns:1fr auto;align-items:center;gap:10px;margin:7px 0;display:grid}.today-control .todo-strip{margin:0}.week-title-row{grid-template-columns:auto 1fr;align-items:center;gap:12px;margin:3px 0;display:grid}.week-title-row h1{white-space:nowrap;margin:0;font-size:20px}.week-title-row h1 small{color:#71807a;font-size:11px}.week-title-row .todo-strip{margin:0}.week-nav{justify-content:flex-end;margin-bottom:7px}.week-lesson select{color:#34433e;background:0 0;border:0;outline:none;width:100%;min-width:0;font-size:10px;font-weight:700}.week-lesson .unit-select{color:#64736d;font-size:8px;font-weight:400}.annual-row textarea:empty{background:0 0}.school-events{min-height:43px}.content{padding-top:5px}@media (width<=800px){.today-control,.week-title-row{grid-template-columns:1fr}.school-events .school-context{margin-left:0}.school-events{overflow-x:auto}.week-title-row h1{font-size:17px}}.lesson-head,.lesson-line{grid-template-columns:70px minmax(150px,.65fr) minmax(115px,.45fr) minmax(360px,2fr)}.date-banner{border:1px solid var(--line);background:#fff;border-radius:7px;align-items:center;gap:9px;height:54px;margin-bottom:6px;padding:6px 10px;display:flex}.date-banner>strong{color:#294b60;font-size:22px}.date-banner>span{color:#6e7c76;font-size:11px}.date-banner .date-step{margin-left:auto}.today-control{grid-template-columns:1fr;margin:6px 0}.absence-cell:disabled{cursor:default;color:inherit}.portrait-week{display:none}@media (width<=900px) and (orientation:portrait){.weekly-sheet{display:none!important}.portrait-week{border:1px solid var(--line);background:#fff;border-radius:8px;display:block;overflow:hidden}.portrait-days{background:#e9edea;grid-template-columns:repeat(5,1fr);display:grid}.portrait-days button{border:0;border-right:1px solid var(--line);color:#58655f;background:0 0;padding:8px 3px}.portrait-days button.active{color:#fff;background:#2e7765}.portrait-days b{font-size:10px;display:block}.portrait-days span{font-size:8px}.portrait-event{border-bottom:1px solid var(--line);background:#fff8e9;align-items:center;gap:12px;min-height:42px;padding:7px;font-size:9px;display:flex}.portrait-event>b{color:#9b6c28}.portrait-event>div{flex:1;gap:8px;min-width:0;display:flex;overflow-x:auto}.portrait-event>div>span{white-space:nowrap}.open-selected-day{color:#286d5c;background:#fff;border:1px solid #c9d8d1;border-radius:5px;flex:none;align-items:center;gap:4px;margin-left:auto;padding:5px 8px;font-size:8px;display:flex}.open-selected-day svg{width:12px;height:12px}.portrait-lesson{border-bottom:1px solid var(--line);grid-template-rows:34px 42px;grid-template-columns:45px 5px 105px 1fr;align-items:center;display:grid}.portrait-lesson>b{text-align:center;grid-row:1/3;font-size:10px}.portrait-lesson>i{grid-row:1/3;width:4px;height:100%}.portrait-lesson select{background:0 0;border:0;outline:none;padding:0 8px;font-size:10px}.portrait-lesson textarea{resize:none;border:0;border-top:1px solid #eef0ed;outline:none;grid-column:3/5;padding:7px 8px;font-size:9px}.settings-layout{grid-template-columns:1fr}.settings-nav{display:flex;position:static;overflow-x:auto}.editable-timetable{min-width:700px}.lesson-head,.lesson-line{grid-template-columns:60px 150px 110px 1fr;min-width:740px}.date-banner>strong{font-size:19px}}@media (width<=600px){.date-banner{flex-wrap:wrap;height:auto}.date-banner .date-step{justify-content:flex-end;width:100%}.school-context{display:none}}.week-lesson .class-select{text-align:center;color:#263d4a;font-size:14px;font-weight:700}.portrait-lesson .class-select{color:#263d4a;font-size:14px;font-weight:700}.subject-editor-item{border:1px solid var(--line);border-radius:6px;grid-template-columns:1fr 28px;display:grid;overflow:hidden}.subject-editor-item label{border:0!important;border-radius:0!important}.subject-editor-item>button{border:0;border-left:1px solid var(--line);color:#bd5d50;background:#fff4f2;place-items:center;display:grid}.subject-editor-item>button svg{width:15px}.subject-setting button[title=削除]{color:#bd5d50}.week-lesson.empty-period,.portrait-lesson.empty-period,.lesson-line.empty-period{background:inherit}.week-lesson.empty-period textarea,.portrait-lesson.empty-period textarea{background:0 0!important}.week-lesson .class-select,.portrait-lesson .class-select{text-align:left;padding-left:8px}.lesson-cell{align-content:start;padding-top:12px}.lesson-cell b{text-align:left;font-size:14px}.lesson-cell .class-name{border-radius:4px;width:max-content;padding:3px 7px}.period-cell{justify-content:flex-start;padding-top:12px}.ink-layer{position:absolute;inset:50px 0 auto}.ink-layer .ink-tools{position:fixed;bottom:20px}.ink-layer .ink-edit{position:fixed;bottom:65px}.ink-layer canvas{height:100%}@media (width<=700px){.ink-layer{inset:88px 0 auto}}.subject-setting .color-picker{background:0 0;border:0;width:25px;height:25px;padding:0}.empty-color-setting{border:1px solid var(--line);border-radius:6px;justify-content:space-between;align-items:center;margin-top:12px;padding:10px;font-size:9px;display:flex}.empty-color-setting label{align-items:center;gap:8px;display:flex}.empty-color-setting input{background:0 0;border:0;width:30px;height:28px}.settings-subtitle{color:#485a54;margin:16px 0 8px;font-size:12px}.activity-settings{margin-bottom:18px}.activity-settings .subject-setting{grid-template-columns:1fr 90px}.activity-settings .subject-setting span{text-align:right}.date-step .today-jump{color:#236e5c;background:#edf6f3;border-color:#bdd9d0;padding:0 9px;font-weight:700}.week-date-link{font:inherit;border:0;border-right:1px solid var(--line);cursor:pointer}.week-date-link:hover{color:#236e5c;background:#d9e7e1}.portrait-days button{cursor:pointer}.week-nav .current-week{color:#236e5c;font-weight:700;background:#edf6f3!important;border-color:#bdd9d0!important}.subject-editor .modal-head p{color:#7d8984;margin:3px 0 0;font-size:8px;font-weight:400;line-height:1.45}.unit-row.head .hours-heading{flex-direction:row;justify-content:space-between;align-items:center;padding-left:8px;padding-right:7px;display:flex}.hours-heading span:last-child{color:#506d63;font-size:8px}.unit-row .unit-period-button{color:#435a52;cursor:pointer;background:#fff;border:1px solid #d5dbd7;border-radius:5px;justify-content:center;align-items:center;gap:4px;min-width:0;height:30px;margin:6px;padding:0 6px;font-size:9px;display:flex}.unit-period-button svg{width:13px}.unit-period-button:hover{background:#f1f8f6;border-color:#81ad9f}.unit-row .unit-hours-combo{flex-direction:row;align-items:center;gap:3px;padding:5px}.unit-hours-combo label{border:1px solid #d5dbd7;border-radius:4px;align-items:center;width:58px;height:28px;padding:0 3px;display:flex}.unit-hours-combo input{text-align:right;border:0;outline:0;width:32px;min-width:0;font-size:9px}.unit-hours-combo span{color:#6f7d77;font-size:8px}.unit-hours-combo select{color:#0000;cursor:pointer;background:#fff;border:1px solid #d5dbd7;border-radius:4px;width:21px;height:28px;padding:0;font-size:0}.unit-hours-combo select option{color:#263d35;font-size:12px}.period-editor-modal .modal-head p{color:#71807a;margin:4px 0 0;font-size:9px}.dual-date-picker{border:1px solid var(--line);background:#f5f8f6;border-radius:8px;grid-template-columns:1fr 20px 1fr;align-items:end;gap:8px;margin:14px 0;padding:12px;display:grid}.dual-date-picker>span{text-align:center;color:#74817c;padding-bottom:10px}.dual-date-picker label{flex-direction:column;gap:6px;font-size:9px;display:flex}.dual-date-picker input{color:#334740;background:#fff;border:1px solid #cbd5d0;border-radius:6px;width:100%;height:40px;padding:0 7px;font-size:11px}@media (width<=600px){.dual-date-picker{grid-template-columns:1fr}.dual-date-picker>span{padding:0}.dual-date-picker input{height:48px}}.unit-modal-backdrop{align-items:flex-start;padding:32px 14px;overflow:auto}.unit-planner-modal{width:min(900px,94vw);max-height:none;padding:20px 22px}.unit-planner-modal .modal-head p{color:#71807a;margin:4px 0 0;font-size:9px}.unit-basic-form{background:#f3f8fb;border:1px solid #d7e3eb;border-left:4px solid #7fa9c5;border-radius:7px;grid-template-columns:135px 1fr 1fr 78px;gap:13px 14px;margin:18px 0;padding:12px;display:grid}.unit-basic-form label{color:#56635e;flex-direction:column;gap:5px;font-size:9px;font-weight:700;display:flex}.unit-basic-form .subject-field{grid-column:1}.unit-basic-form .title-field{grid-column:2/4}.unit-basic-form .hours-field{grid-column:4}.unit-basic-form .start-field{grid-column:1/3}.unit-basic-form .end-field{grid-column:3/5}.unit-basic-form .goal-field{grid-column:1/5}.unit-basic-form input,.unit-basic-form select,.unit-basic-form textarea{font:inherit;color:#34433e;background:#fff;border:1px solid #d4dad6;border-radius:5px;padding:8px}.unit-basic-form textarea{resize:vertical;min-height:55px}.target-classes{background:#f3f8f4;border:1px solid #d8e6dc;border-left:4px solid #83af8e;border-radius:6px;flex-wrap:wrap;align-items:center;gap:9px;padding:11px;font-size:9px;display:flex}.target-classes>b{margin-right:5px}.target-classes label{align-items:center;gap:3px;display:flex}.lesson-plan-head{border-left:4px solid #d7ae68;justify-content:space-between;align-items:end;margin:18px 0 8px;padding-left:8px;display:flex}.lesson-plan-head h4{margin:0;font-size:12px}.lesson-plan-head span{color:#7b8883;font-size:8px}.lesson-plan-table{border:1px solid #e4dbc8;border-radius:6px;max-height:300px;overflow:hidden auto}.lesson-plan-row{border-top:1px solid var(--line);grid-template-columns:40px 1.3fr 1.2fr 1.2fr 32px;min-width:720px;display:grid}.lesson-plan-row:first-child{border-top:0}.lesson-plan-row.head{z-index:1;background:#eee8dc;position:sticky;top:0}.lesson-plan-row:not(.head){background:#fffdf8}.lesson-plan-row:not(.head)>b{color:#765d32;background:#f7f0df}.lesson-plan-row>b{place-items:center;font-size:9px;display:grid}.lesson-plan-row input{border:0;border-left:1px solid var(--line);background:0 0;min-width:0;padding:8px;font-size:9px}.lesson-plan-row button{border:0;border-left:1px solid var(--line);color:#56766c;background:#fff}.lesson-plan-row button svg{width:13px}.unit-auto-place{background:#edf6f3;border:1px solid #d3e8e1;border-left:4px solid #63a08f;border-radius:6px;justify-content:space-between;align-items:center;margin-top:14px;padding:11px;font-size:9px;display:flex}.unit-auto-place label{align-items:center;gap:6px;display:flex}.unit-auto-place span{color:#6f7f79}@media (width<=700px){.unit-planner-modal{width:98vw;padding:15px}.unit-basic-form{grid-template-columns:1fr 76px;gap:10px}.unit-basic-form .subject-field{grid-column:1}.unit-basic-form .hours-field{grid-column:2}.unit-basic-form .title-field,.unit-basic-form .start-field,.unit-basic-form .end-field,.unit-basic-form .goal-field{grid-column:1/3}.unit-auto-place{flex-direction:column;align-items:flex-start;gap:5px}}.changed-period{position:relative;box-shadow:inset 0 0 0 1px #d79935}.change-badge{color:#fff;background:#d99a39;border-radius:3px;padding:1px 4px;font-size:7px;line-height:1.4;position:absolute;top:3px;right:3px}.override-note{color:#8a6a35;background:#fff6df;border-radius:5px;margin-right:auto;padding:5px 8px;font-size:8px}.week-nav .reset-week{height:30px}.week-nav .reset-week svg{width:13px}.lesson-plan-row{grid-template-columns:40px 1.3fr 1.2fr 1.2fr 62px}.lesson-row-actions{min-width:0;display:flex}.lesson-row-actions button{flex:1;padding:0}.lesson-row-actions button:disabled{opacity:.3}.lesson-summary-fields{border-left:1px solid var(--line);grid-template-rows:auto auto;align-content:start;min-width:0;display:grid}.lesson-detail-hint{color:#456d62;margin-top:3px;font-size:8px;font-weight:700;line-height:1.25;display:block}.lesson-detail-backdrop{align-items:flex-start;padding:18px 12px;overflow:auto}.lesson-detail-modal{width:min(1060px,96vw);max-height:none;padding:18px 20px}.lesson-detail-nav{justify-content:center;align-items:center;gap:16px;margin:8px 0 14px;display:flex}.lesson-detail-nav button{padding:5px 13px}.lesson-detail-nav b{color:#61716b;font-size:10px}.lesson-detail-basic{background:#f3f8fb;border:1px solid #d7e3eb;border-left:4px solid #7fa9c5;border-radius:7px;grid-template-columns:1.2fr 1fr 1fr;gap:10px;padding:12px;display:grid}.lesson-detail-basic label,.post-lesson-grid label{color:#56635e;flex-direction:column;gap:4px;font-size:9px;font-weight:700;display:flex}.lesson-detail-basic label:first-child{grid-column:1/4}.lesson-detail-basic input,.lesson-detail-basic textarea,.post-lesson-grid textarea{font:inherit;color:#34433e;resize:vertical;background:#fff;border:1px solid #d4dad6;border-radius:5px;padding:8px}.lesson-detail-basic textarea{min-height:48px}.lesson-flow-head,.post-lesson-head{justify-content:space-between;align-items:center;margin:16px 0 7px;display:flex}.lesson-flow-head h4,.post-lesson-head h4{margin:0;font-size:12px}.lesson-flow-head span,.post-lesson-head label{color:#71807a;font-size:8px}.post-lesson-head label{align-items:center;gap:5px;display:flex}.lesson-flow-table{border:1px solid var(--line);border-radius:6px;overflow-x:auto}.lesson-flow-row{--phase-bg:#f5f6f5;--phase-accent:#87928d;border-top:1px solid var(--line);background:var(--phase-bg);grid-template-columns:78px 58px 1.25fr 1fr 1fr 34px;min-width:850px;display:grid}.lesson-flow-row.phase-intro{--phase-bg:#eef7fc;--phase-accent:#62a2c8}.lesson-flow-row.phase-development{--phase-bg:#f2f8ee;--phase-accent:#78a963}.lesson-flow-row.phase-summary{--phase-bg:#fff5e8;--phase-accent:#d39a50}.lesson-flow-row:first-child{border-top:0}.lesson-flow-row.head{background:#e9edea}.lesson-flow-row.head>*{place-items:center;min-height:28px;font-size:8px;display:grid}.lesson-flow-row input,.lesson-flow-row textarea{border:0;border-left:1px solid var(--line);min-width:0;font:inherit;resize:vertical;background:0 0;min-height:54px;padding:7px;font-size:9px}.lesson-flow-row input:first-child{color:#40564e;box-shadow:inset 4px 0 0 var(--phase-accent);font-weight:700}.lesson-flow-row input{min-height:auto}.lesson-flow-row button{border:0;border-left:1px solid var(--line);color:#9b5d5d;background:#fffa}.lesson-flow-row button svg{width:13px}.add-stage{margin-top:8px;padding:5px 9px}.post-lesson-grid{background:#f8f5fb;border:1px solid #e2ddec;border-left:4px solid #9a86b5;border-radius:7px;grid-template-columns:1fr 1fr;gap:10px;padding:12px;display:grid}.post-lesson-grid textarea{min-height:68px}@media (width<=700px){.lesson-detail-modal{padding:14px}.lesson-detail-basic{grid-template-columns:1fr 1fr}.lesson-detail-basic label:first-child,.lesson-detail-basic label:last-child{grid-column:1/3}.post-lesson-grid{grid-template-columns:1fr}.lesson-flow-head span{display:none}}.cal-day .quick-add{color:#84928d;text-align:center;background:0 0;border:0;border-radius:50%;width:22px;height:22px;margin:0;padding:0;font-size:15px;position:absolute;bottom:3px;right:5px}.cal-day .quick-add:hover{color:#49685f;background:#e3ebe7}.annual-event-links{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.annual-event-links em{color:#b25555;font-style:normal}.annual-event-links button{color:#405b53;background:#f2f6f4;border:0;border-radius:4px;padding:3px 6px}.annual-event-links .list-add-event{color:#6e807a;background:0 0;font-size:14px}.event-editor-modal{width:min(620px,94vw)}.event-editor-form{grid-template-columns:1fr 1fr;gap:12px;margin:16px 0;display:grid}.event-editor-form label{color:#56635e;flex-direction:column;gap:5px;font-size:9px;font-weight:700;display:flex}.event-editor-form input,.event-editor-form textarea{font:inherit;color:#34433e;background:#fff;border:1px solid #d4dad6;border-radius:5px;padding:8px}.event-editor-form textarea{resize:vertical;min-height:62px}.event-title-field,.event-note-field{grid-column:1/3}.danger-button{color:#a64b4b;background:#fff6f6;border:1px solid #e2baba;border-radius:5px;align-items:center;gap:5px;margin-right:auto;padding:7px 10px;display:flex}.danger-button svg{width:14px}.holiday-event{color:#a54c4c!important;background:#fff0f0!important}@media (width<=600px){.event-editor-form{grid-template-columns:1fr}.event-title-field,.event-note-field{grid-column:1}}.event-editor-form{gap:16px 18px;margin:22px 0}.event-editor-form label{gap:7px}.event-editor-form input,.event-editor-form textarea{padding:10px}.event-editor-form textarea{min-height:78px}.event-attachment-field{background:#f7faf8;border:1px dashed #cdd8d3;border-radius:7px;flex-direction:column;grid-column:1/3;align-items:flex-start;gap:8px;padding:13px;display:flex}.event-attachment-field>b{color:#56635e;font-size:9px}.event-attachment-field>div{align-items:center;gap:8px;width:100%;display:flex}.event-attachment-field>div svg{width:15px}.event-attachment-field>div span{flex:1;font-size:10px}.event-attachment-field button{border:1px solid var(--line);color:#50665f;background:#fff;border-radius:4px;padding:5px 8px}.event-attachment-field label{flex-direction:row;align-items:center;gap:5px;padding:7px 10px;display:flex}.event-attachment-field small{color:#71807a;font-size:8px}.event-attachment-icon{vertical-align:-2px;color:#54766c;margin-left:5px;width:12px!important;height:12px!important;display:inline!important}.event-attachment-link{vertical-align:middle;color:#54766c!important;background:0 0!important;border:0!important;width:auto!important;margin:0!important;padding:0!important;display:inline-flex!important}.event-attachment-link:hover{color:#274f44!important}.annual-event-links .list-add-event{margin-left:auto}.month-switch .current-month{border:1px solid var(--line);background:#fff;border-radius:5px;align-items:center;gap:4px;padding:5px 8px;font-size:9px;display:flex}.month-switch .current-month svg{width:13px}.attachment-backdrop{align-items:flex-start;padding:12px}.attachment-viewer{flex-direction:column;width:min(1100px,98vw);height:calc(100vh - 24px);padding:14px;display:flex}.attachment-toolbar{align-items:center;gap:6px;margin:8px 0;display:flex}.attachment-toolbar button,.attachment-toolbar a{border:1px solid var(--line);color:#4f635d;background:#fff;border-radius:5px;align-items:center;gap:4px;padding:6px 9px;font-size:9px;text-decoration:none;display:flex}.attachment-toolbar button.active{color:#fff;background:#416a5f}.attachment-stage{border:1px solid var(--line);background:#e8ecea;border-radius:6px;flex:1;min-height:0;position:relative;overflow:hidden}.attachment-stage iframe{background:#fff;border:0;width:100%;height:100%}.attachment-stage img{max-width:100%;max-height:100%;margin:auto;display:block}.attachment-stage canvas{pointer-events:none;touch-action:none;position:absolute;inset:0}.attachment-stage.annotating canvas{pointer-events:auto;cursor:crosshair}.unsupported-attachment{color:#6f7e79;align-content:center;place-items:center;gap:12px;height:100%;display:grid}.unsupported-attachment>svg{width:50px;height:50px}.unsupported-attachment p{margin:0}.unsupported-attachment a{align-items:center;gap:6px;text-decoration:none;display:flex}@media (width<=600px){.event-editor-modal{padding:20px}.event-attachment-field{grid-column:1}.attachment-toolbar{overflow-x:auto}.attachment-toolbar>*{flex:none}}.attachment-backdrop{padding:2px}.attachment-viewer{border-radius:5px;width:calc(100vw - 4px);height:calc(100vh - 4px);padding:5px 7px}.attachment-viewer .modal-head{align-items:center;min-height:25px}.attachment-viewer .modal-head small,.attachment-viewer .modal-head p{display:none}.attachment-viewer .modal-head h3{white-space:nowrap;text-overflow:ellipsis;max-width:75vw;margin:0;font-size:11px;overflow:hidden}.attachment-toolbar{gap:3px;margin:2px 0 4px}.attachment-toolbar button,.attachment-toolbar a{padding:3px 7px;font-size:8px}.attachment-toolbar svg{width:11px}.attachment-stage{border-radius:3px}.attachment-stage img{object-fit:contain;width:100%;height:100%}.attachment-viewer{padding:2px 4px}.attachment-viewer .modal-head{height:18px;min-height:18px}.attachment-viewer .modal-head h3{font-size:8px;line-height:1}.attachment-viewer .modal-head>button{width:19px;height:19px}.attachment-viewer .modal-head>button svg{width:11px}.attachment-toolbar{gap:2px;height:20px;min-height:20px;margin:1px 0 2px}.attachment-toolbar button,.attachment-toolbar a{border-radius:3px;height:19px;padding:1px 5px;font-size:7px}.attachment-stage.pdf-stage{scrollbar-gutter:stable;background:#555;overflow:auto}.pdf-document{flex-direction:column;align-items:center;gap:10px;width:100%;min-height:100%;padding:8px 0 24px;display:flex}.pdf-document>p{color:#fff;font-size:11px}.pdf-page{background:#fff;flex:none;line-height:0;position:relative;box-shadow:0 2px 8px #0005}.pdf-page>canvas:first-child{display:block}.pdf-page-ink{touch-action:none;inset:0;pointer-events:none!important;position:absolute!important}.pdf-page-ink.active{cursor:crosshair;pointer-events:auto!important}.pdf-page>small{color:#fff;background:#333a;border-radius:8px;padding:5px;font-size:8px;line-height:1;position:absolute;bottom:5px;right:5px}.pdf-document.fit-height{gap:4px;padding:0}.pdf-document{align-items:flex-start;padding:4px 0 20px}.pdf-page{margin-left:0}.pdf-zoom-controls{border-left:1px solid var(--line);align-items:center;gap:2px;padding-left:3px;display:flex}.pdf-zoom-controls button{white-space:nowrap}.pdf-zoom-controls select{border:1px solid var(--line);color:#4f635d;background:#fff;border-radius:3px;min-width:55px;height:19px;padding:0 2px;font-size:7px}.attachment-toolbar{height:24px;min-height:24px}.attachment-toolbar button,.attachment-toolbar a{height:23px;padding:2px 7px;font-size:8px;font-weight:700}.attachment-toolbar svg{width:12px;height:12px}.attachment-toolbar .attachment-save{color:#285d8b;background:#e7f3ff;border-color:#9dc5ea}.pdf-zoom-controls{height:24px}.pdf-zoom-controls .pdf-fit-width{color:#2d6654;background:#eaf6f1;border-color:#a8d1bf}.pdf-zoom-controls .pdf-fit-page{color:#624c8d;background:#f2edfb;border-color:#c5b4e4}.pdf-zoom-controls button.active{color:#fff;background:#3e6f62;border-color:#3e6f62}.pdf-zoom-controls select{color:#765719;background:#fff6e7;border-color:#e2c78f;height:23px;font-weight:700}.attachment-toolbar .ink-command{color:#9a4538;background:#fff0ed;border-color:#e6afa6}.attachment-toolbar .eraser-command{color:#67518b;background:#f4effb;border-color:#cdbce3}.attachment-toolbar .clear-ink-command{color:#984444;background:#fff1f1;border-color:#e5b2b2}.attachment-toolbar .browse-command{color:#3d6a4b;background:#eef6f1;border-color:#b7d3c2}.attachment-stage{height:calc(100vh - 49px)}.pdf-page>canvas:first-child{pointer-events:none!important;position:relative!important;inset:auto!important}.pdf-page{min-height:1px;display:block}.image-stage{text-align:left;scrollbar-gutter:stable;overflow:auto}.attachment-stage.image-stage img{margin:0;display:block}.image-ink-document{flex:none;line-height:0;position:relative}.image-ink-document img{object-fit:fill;width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;margin:0!important;display:block!important}.image-ink-document canvas{touch-action:none;inset:0;pointer-events:none!important;position:absolute!important}.image-ink-document canvas.active{cursor:crosshair;pointer-events:auto!important}.attachment-backdrop{overflow:hidden}.attachment-viewer{min-width:0;max-width:calc(100vw - 4px);overflow:hidden}.attachment-viewer>*{min-width:0}.attachment-toolbar{flex:none;min-width:0;max-width:100%;overflow-x:auto}.attachment-stage{contain:size layout;width:100%;min-width:0;max-width:100%}.pdf-document{min-width:0;max-width:100%}.pdf-page,.image-ink-document{max-width:none}.attachment-viewer{position:relative}.attachment-back-button{z-index:45;color:#fff;cursor:pointer;background:#244f45ed;border:1px solid #fff8;border-radius:22px;justify-content:center;align-items:center;gap:4px;min-width:82px;height:42px;font-size:12px;font-weight:800;display:flex;position:absolute;top:8px;right:8px;box-shadow:0 3px 12px #162d2766}.attachment-back-button:hover{background:#173e35}.attachment-back-button:focus-visible{outline-offset:2px;outline:3px solid #f4b84a}.attachment-back-button svg{width:20px;height:20px}.attachment-viewer>.modal-head{padding-right:90px}.attachment-pen-settings{z-index:30;background:#fff;border:1px solid #bfcac5;border-radius:7px;width:285px;padding:10px;position:absolute;top:47px;right:8px;box-shadow:0 8px 24px #243c3333}.attachment-pen-settings>div:first-child{border-bottom:1px solid var(--line);align-items:center;gap:7px;padding-bottom:7px;display:flex}.attachment-pen-settings b{font-size:10px}.attachment-pen-settings small{color:#77847f;flex:1;font-size:7px}.attachment-pen-settings>div:first-child button{color:#697872;background:0 0;border:0;padding:0}.attachment-pen-settings svg{width:13px}.pen-type-options{grid-template-columns:repeat(3,1fr);gap:5px;margin:9px 0;display:grid}.pen-type-options button{border:1px solid var(--line);color:#53645e;background:#f8faf9;border-radius:5px;flex-direction:column;align-items:center;gap:5px;padding:7px;font-size:8px;display:flex}.pen-type-options button.active{color:#315b4f;background:#eaf3ef;border-color:#4f786c}.pen-type-options i{background:#344942;border-radius:5px;width:42px;display:block}.medium-sample{height:4px}.pen-color-options{justify-content:center;gap:9px;display:flex}.pen-color-options button{border:2px solid #fff;border-radius:50%;width:25px;height:25px;box-shadow:0 0 0 1px #cad2ce}.pen-color-options button.active{box-shadow:0 0 0 3px #4d7469}@media (width<=500px){.attachment-pen-settings{width:min(285px,100vw - 16px);top:45px;right:4px}}@media (width<=600px){.attachment-back-button{border-radius:20px;min-width:76px;height:40px;font-size:11px;top:5px;right:5px}.attachment-back-button svg{width:19px;height:19px}.attachment-viewer>.modal-head{padding-right:80px}}.thin-sample{height:2.4px}.marker-sample{opacity:.4;height:11px}.roster-import-preview{background:#f3faf7;border:1px solid #b9d9ce;border-radius:7px;margin-bottom:11px;padding:11px;font-size:9px}.roster-import-preview>div:first-child{align-items:center;gap:8px;display:flex}.roster-import-preview>div:first-child>svg{color:#297765;width:22px}.roster-import-preview span{flex-direction:column;gap:2px;display:flex}.roster-import-preview small{color:#71807a}.roster-import-preview p{color:#297765;align-items:center;gap:5px;margin:9px 0;display:flex}.roster-import-preview p svg{width:15px}.roster-import-preview ul{color:#a44738;background:#fff3f0;border-radius:5px;max-height:120px;margin:9px 0;padding:8px 8px 8px 25px;overflow:auto}.roster-import-preview .actions{justify-content:flex-end;gap:6px;display:flex}.roster-import-preview.has-errors{background:#fff8f6;border-color:#e3b9b0}.roster-import-message{color:#277260;background:#eaf6f1;border-radius:6px;align-items:center;gap:7px;margin-bottom:10px;padding:9px 10px;font-size:9px;display:flex}.roster-import-message>svg{width:15px}.roster-import-message button{color:#277260;background:#fff;border:1px solid #a9cfc3;border-radius:5px;align-items:center;gap:4px;margin-left:auto;padding:5px 8px;display:flex}.roster-import-message button svg{width:13px}.roster-import-preview button:disabled{opacity:.45;cursor:not-allowed}.event-import-preview{background:#f3faf7;border:1px solid #b9d9ce;border-radius:7px;margin:0 0 10px;padding:10px 12px;font-size:9px}.event-import-preview>div:first-child{align-items:center;gap:8px;display:flex}.event-import-preview>div:first-child>svg{color:#297765;width:21px}.event-import-preview span{flex-direction:column;gap:2px;display:flex}.event-import-preview small{color:#71807a}.event-import-preview p{color:#297765;align-items:center;gap:5px;display:flex}.event-import-preview p svg{width:14px}.event-import-preview>label{align-items:center;gap:8px;font-weight:700;display:flex}.event-import-preview select{border:1px solid var(--line);background:#fff;border-radius:5px;height:30px;padding:0 8px;font-size:9px}.event-import-preview ul{color:#a44738;background:#fff3f0;border-radius:5px;max-height:110px;margin:8px 0;padding:8px 8px 8px 25px;overflow:auto}.event-import-preview .actions{justify-content:flex-end;gap:6px;margin-top:8px;display:flex}.event-import-preview.has-errors{background:#fff8f6;border-color:#e3b9b0}.event-import-preview button:disabled{opacity:.45}.event-import-message{color:#277260;background:#eaf6f1;border-radius:6px;align-items:center;gap:7px;margin-bottom:10px;padding:8px 10px;font-size:9px;display:flex}.event-import-message>svg{width:15px}.event-import-message button{color:#277260;background:#fff;border:1px solid #a9cfc3;border-radius:5px;align-items:center;gap:4px;margin-left:auto;padding:5px 8px;display:flex}.event-import-message button svg{width:13px}.bulk-roster-preview{background:#f3faf7;border:1px solid #b9d9ce;border-radius:7px;margin-bottom:11px;padding:11px;font-size:9px}.bulk-roster-title{align-items:center;gap:8px;margin-bottom:9px;display:flex}.bulk-roster-title>svg{color:#297765;width:22px}.bulk-roster-title span{flex-direction:column;display:flex}.bulk-roster-title small{color:#71807a}.bulk-class-list{grid-template-columns:repeat(2,minmax(210px,1fr));gap:6px;display:grid}.bulk-class-list label{background:#fff;border:1px solid #d6e7e0;border-radius:5px;grid-template-columns:20px 75px 1fr 18px;align-items:center;gap:5px;padding:8px;display:grid}.bulk-class-list label>span{flex-direction:column;display:flex}.bulk-class-list label>span small{color:#72807b}.bulk-class-list label>svg{color:#27806a;width:15px}.bulk-class-list label em{color:#a44738;font-size:8px;font-style:normal;line-height:1.4}.bulk-class-list label.has-errors{background:#fff4f1;border-color:#e5c0b8}.bulk-roster-preview>.actions{justify-content:flex-end;gap:6px;margin-top:9px;display:flex}.bulk-roster-preview button:disabled{opacity:.45}@media (width<=700px){.bulk-class-list{grid-template-columns:1fr}}.unit-import-preview{background:#f3faf7;border:1px solid #b9d9ce;border-radius:7px;margin-bottom:10px;padding:10px 12px;font-size:9px}.unit-import-preview>div:first-child{align-items:center;gap:8px;display:flex}.unit-import-preview>div:first-child>svg{color:#297765;width:21px}.unit-import-preview span{flex-direction:column;display:flex}.unit-import-preview small{color:#71807a}.unit-import-preview p{color:#297765;align-items:center;gap:5px;display:flex}.unit-import-preview p svg{width:14px}.unit-import-preview>label{align-items:center;gap:8px;font-weight:700;display:flex}.unit-import-preview select{border:1px solid var(--line);background:#fff;border-radius:5px;height:30px;padding:0 8px;font-size:9px}.unit-import-preview ul{color:#a44738;background:#fff3f0;border-radius:5px;max-height:130px;margin:8px 0;padding:8px 8px 8px 25px;overflow:auto}.unit-import-preview .actions{justify-content:flex-end;gap:6px;margin-top:8px;display:flex}.unit-import-preview.has-errors{background:#fff8f6;border-color:#e3b9b0}.unit-import-preview button:disabled{opacity:.45}.unit-import-message{color:#277260;background:#eaf6f1;border-radius:6px;align-items:center;gap:7px;margin-bottom:10px;padding:8px 10px;font-size:9px;display:flex}.unit-import-message>svg{width:15px}.unit-import-message button{color:#277260;background:#fff;border:1px solid #a9cfc3;border-radius:5px;align-items:center;gap:4px;margin-left:auto;padding:5px 8px;display:flex}.unit-import-message button svg{width:13px}@media (width<=900px) and (orientation:portrait){.topbar{grid-template-columns:155px 1fr auto;padding:0 10px}.profile{display:none}nav button{padding:0 10px;font-size:11px}.content{padding:8px 10px 76px}.page-title{flex-wrap:wrap;align-items:center}.page-title>.actions{max-width:70%;margin-left:auto;overflow-x:auto}.date-banner{height:auto;min-height:50px}.school-events{padding:7px 10px}.school-context{display:none}.lesson-table{overflow:hidden}.lesson-head,.lesson-line{grid-template-columns:56px 130px 105px minmax(0,1fr)!important;min-width:0!important}.lesson-line>*{min-width:0}.lesson-memo{min-height:78px}.daily-journal textarea{min-height:270px}.calendar{min-width:0!important}.cal-day{min-height:92px;padding:5px}.cal-day button{padding:3px;font-size:8px}.annual-row{grid-template-columns:36px 36px minmax(180px,.9fr) minmax(210px,1.2fr);min-width:0}.unit-row{grid-template-columns:60px minmax(185px,1.4fr) 105px 82px 72px 55px;min-width:0}.unit-row>*{padding:8px 6px}.settings-panel{min-height:0}.editable-timetable{grid-template-columns:40px repeat(5,minmax(88px,1fr));width:100%;min-width:0}.edit-corner,.edit-day{padding:7px 2px}.edit-cell{padding:3px}.edit-cell select{height:25px;padding:0 2px;font-size:8px}.modal{max-height:calc(100vh - 24px)}.unit-planner-modal,.lesson-detail-modal{width:calc(100vw - 24px);max-width:none}.unit-basic-form{gap:8px}.lesson-plan-table,.lesson-flow-table{overflow-x:auto}.attachment-viewer{max-height:none}}.more-events{display:none}@media (width<=600px){.page-title{grid-template-columns:1fr;display:grid}.page-title>.actions{width:100%;max-width:100%;margin:0;padding-bottom:2px;overflow-x:auto}.page-title>.actions>*{flex:none}.units-page-title>.actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid;overflow:visible}.units-page-title>.actions>*{width:100%;min-width:0;padding-left:5px;padding-right:5px}.school-events>b{z-index:1;background:#294b60;position:sticky;left:0}.lesson-table{background:0 0;border:0;overflow:visible}.lesson-head{display:none}.lesson-line{border:1px solid var(--line);border-radius:7px;grid-template-rows:48px minmax(76px,auto);margin-bottom:7px;overflow:hidden;background:#fff!important;grid-template-columns:48px minmax(0,1fr) 88px!important;display:grid!important}.lesson-line>*{border-bottom:0!important;min-height:0!important}.period-cell{grid-row:1/3;padding-top:10px;border-right:1px solid var(--line)!important}.lesson-cell{grid-column:2;padding:7px 9px 5px 12px}.lesson-cell b{font-size:12px}.absence-cell{grid-column:3;padding:4px;border-left:1px solid var(--line)!important}.lesson-memo{grid-area:2/2/auto/4;min-height:76px;border-top:1px solid var(--line)!important;border-right:0!important}.daily-journal{padding:11px}.daily-journal textarea{min-height:220px}.date-banner>strong{font-size:18px}.date-banner>span{font-size:9px}.date-step button{font-size:8px}.calendar{width:100%;min-width:0!important}.dense-card.calendar{overflow:visible}.cal-head{height:24px;padding:5px 1px;font-size:8px}.cal-day{min-height:clamp(70px,16.6667svh - 39.1667px,130px);padding:3px 2px;overflow:hidden}.cal-day>b{font-size:9px}.cal-day button{border-left-width:2px;margin-top:2px;padding:2px;font-size:7px;line-height:1.25;overflow:hidden}.cal-day button>span:first-child{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.cal-day button small{white-space:nowrap;font-size:6px}.event-target,.mobile-extra-event,.cal-day .note-mark{display:none!important}.more-events{color:#66736e;margin-top:2px;font-size:6px;display:block}.quick-add{bottom:0;right:1px;background:0 0!important;border:0!important;width:auto!important;padding:0!important;font-size:10px!important}.holiday-name{white-space:nowrap;text-overflow:ellipsis;font-size:6px;overflow:hidden}.annual-row{min-width:580px}.unit-table{background:0 0;border:0}.unit-row{min-width:700px}.settings-panel{padding:10px 6px}.editable-timetable{grid-template-columns:32px repeat(5,minmax(55px,1fr));font-size:7px}.edit-corner,.edit-day{padding:6px 1px;font-size:8px}.edit-period{text-align:center;padding:2px;font-size:7px}.edit-cell{gap:2px;padding:2px}.edit-cell select{height:24px;padding:0 1px;font-size:7px}.settings-head{flex-direction:column}.settings-head .actions{width:100%;padding-top:7px}.modal-backdrop{padding:6px}.modal{border-radius:8px;width:100%;max-height:calc(100vh - 12px)}.modal-head,.modal-foot{padding:10px 12px}.unit-modal-backdrop{padding:6px}.unit-planner-modal{width:100%;padding:10px}.unit-planner-modal .modal-head p{display:none}.unit-basic-form{grid-template-columns:minmax(0,1fr) 64px;gap:7px;margin:10px 0}.unit-basic-form .title-field,.unit-basic-form .start-field,.unit-basic-form .end-field,.unit-basic-form .goal-field{grid-column:1/3}.target-classes{gap:6px;padding:7px}.lesson-plan-head{margin:10px 0 6px}.lesson-plan-head span{display:none}.lesson-plan-table{max-height:42vh;overflow:hidden}.lesson-plan-row.head{display:none}.lesson-plan-row:not(.head){grid-template-rows:34px 34px 58px;grid-template-columns:28px minmax(0,1fr) 54px;min-width:0}.lesson-plan-row:not(.head)>b{grid-area:1/1/4}.lesson-plan-row:not(.head)>input:first-of-type{grid-area:1/2}.lesson-plan-row:not(.head)>input:nth-of-type(2){border-top:1px solid var(--line);grid-area:2/2}.lesson-plan-row:not(.head)>.lesson-summary-fields{grid-area:3/2}.lesson-plan-row:not(.head)>.lesson-row-actions{grid-area:1/3/4}.unit-auto-place{margin-top:8px;padding:8px}.unit-planner-modal>.modal-foot{flex-wrap:wrap;gap:6px}.unit-planner-modal>.modal-foot>span{width:100%;font-size:8px}.backup-cards article{padding:13px}.unit-import-preview>label,.event-import-preview>label{flex-direction:column;align-items:flex-start}.unit-import-preview select,.event-import-preview select{width:100%}.school-events .school-context{display:none!important}.lesson-line{border-radius:5px;grid-template-rows:30px 30px;margin-bottom:3px;grid-template-columns:42px minmax(0,1fr) 78px!important}.lesson-line>*{min-height:0!important}.period-cell{padding-top:5px;font-size:9px}.lesson-cell{align-content:center;padding:3px 6px 2px 10px}.lesson-cell b{font-size:10px;line-height:1.1}.lesson-cell span{margin-top:1px;font-size:7px}.absence-cell{padding:2px}.absence-cell span,.absence-cell small{padding:2px 3px;font-size:7px}.lesson-memo{height:30px;padding:5px 6px;font-size:8px;line-height:1.25;min-height:30px!important}.attachment-viewer{padding:4px 5px}.attachment-viewer .modal-head{height:26px;min-height:26px}.attachment-viewer .modal-head h3{max-width:78vw;font-size:9px}.attachment-viewer .modal-head>button{width:30px;height:30px}.attachment-toolbar{flex-wrap:wrap;align-content:center;gap:4px;height:auto;min-height:72px;margin:3px 0 5px;display:flex;overflow:visible}.attachment-toolbar button,.attachment-toolbar a{border-radius:5px;justify-content:center;height:32px;min-height:32px;padding:4px 8px;font-size:8px}.attachment-toolbar svg{width:14px;height:14px}.pdf-zoom-controls{border-left:0;flex:170px;gap:3px;min-width:0;height:32px;padding-left:0;display:flex}.pdf-zoom-controls button{flex:1;min-width:0;padding-left:4px;padding-right:4px}.pdf-zoom-controls select{min-width:48px;height:32px;font-size:8px}.attachment-toolbar .attachment-save{flex:none}.attachment-toolbar .ink-command,.attachment-toolbar .eraser-command,.attachment-toolbar .clear-ink-command,.attachment-toolbar .browse-command{flex:72px}.attachment-stage{flex:1;height:auto;min-height:0}.event-editor-modal{height:auto;max-height:calc(100svh - 12px);padding:0;overflow:hidden}.event-editor-modal .modal-head,.event-editor-modal .modal-foot{flex:none;padding:8px 10px}.event-editor-modal .modal-head h3{font-size:14px}.event-editor-modal .modal-head p{margin:1px 0;font-size:8px}.event-editor-form{gap:7px;min-height:0;margin:0;padding:9px 10px;overflow-y:auto}.event-editor-form label{gap:3px;font-size:8px}.event-editor-form input,.event-editor-form textarea{padding:7px}.event-editor-form textarea{min-height:48px}.event-attachment-field{padding:8px}.event-attachment-field>small{font-size:7px;line-height:1.35}.event-editor-modal .modal-foot button{min-height:34px}.unit-planner-modal{overscroll-behavior:contain;height:calc(100svh - 12px);max-height:calc(100svh - 12px);overflow:hidden auto}.unit-planner-modal>*{flex-shrink:0}.unit-planner-modal .lesson-plan-table{flex:none;max-height:none;overflow:visible}.unit-planner-modal .modal-head{z-index:5;background:#fff;position:sticky;top:0}.unit-planner-modal>.modal-foot{z-index:5;background:#fff;position:sticky;bottom:0}}@media (width<=900px) and (orientation:portrait),(width<=600px){.unit-modal-backdrop{align-items:stretch;padding:6px;overflow:hidden}.unit-planner-modal{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;width:100%;height:calc(100dvh - 12px);max-height:calc(100dvh - 12px);overflow:hidden auto}.unit-planner-modal>*{flex-shrink:0}.unit-planner-modal .lesson-plan-table{flex:none;max-height:none;overflow:visible}.unit-planner-modal>.modal-head{z-index:6;background:#fff;position:sticky;top:0}.unit-planner-modal>.modal-foot{z-index:6;background:#fff;position:sticky;bottom:0}.lesson-detail-backdrop{padding:6px;overflow:hidden}.lesson-detail-modal{overscroll-behavior:contain;width:100%;height:calc(100svh - 12px);max-height:calc(100svh - 12px);padding:8px;overflow:hidden auto}.lesson-detail-modal>*{flex-shrink:0}.lesson-detail-modal>.modal-head{z-index:6;background:#fff;padding:9px 10px;position:sticky;top:-8px}.lesson-detail-modal>.modal-foot{z-index:6;background:#fff;padding:9px 10px;position:sticky;bottom:-8px}.lesson-detail-modal>.modal-head h3{font-size:14px}.lesson-detail-modal>.modal-head p{margin:2px 0;font-size:8px}.lesson-detail-nav{gap:9px;margin:7px 0}.lesson-detail-nav button{min-height:34px}.lesson-detail-basic{grid-template-columns:1fr;gap:7px}.lesson-detail-basic label,.lesson-detail-basic label:first-child,.lesson-detail-basic label:last-child{grid-column:1}.lesson-detail-basic input,.lesson-detail-basic textarea{padding:7px}.lesson-detail-basic textarea{min-height:44px}.lesson-flow-head,.post-lesson-head{margin:11px 0 6px}.lesson-flow-head span{display:none}.lesson-flow-table{border:0;overflow:visible}.lesson-flow-row.head{display:none}.lesson-flow-row:not(.head){border:1px solid var(--line);border-left:5px solid var(--phase-accent);background:var(--phase-bg);border-radius:6px;grid-template-rows:34px repeat(3,minmax(54px,auto));grid-template-columns:minmax(0,1fr) 64px 38px;min-width:0;margin-bottom:8px;display:grid;overflow:hidden}.lesson-flow-row:not(.head)>input:first-of-type{grid-area:1/1}.lesson-flow-row:not(.head)>input:nth-of-type(2){grid-area:1/2}.lesson-flow-row:not(.head)>textarea:first-of-type{grid-area:2/1/auto/4}.lesson-flow-row:not(.head)>textarea:nth-of-type(2){grid-area:3/1/auto/4}.lesson-flow-row:not(.head)>textarea:nth-of-type(3){grid-area:4/1/auto/4}.lesson-flow-row:not(.head)>button{grid-area:1/3}.lesson-flow-row input,.lesson-flow-row textarea{border-top:1px solid var(--line);border-left:0;min-height:0;padding:7px}.lesson-flow-row:not(.head)>input{border-top:0;border-right:1px solid var(--line)}.lesson-flow-row button{border-left:1px solid var(--line)}.add-stage{min-height:34px}.post-lesson-grid{grid-template-columns:1fr;gap:7px}.post-lesson-grid textarea{min-height:54px}.lesson-detail-modal>.modal-foot span{font-size:8px;line-height:1.3}.lesson-detail-modal>.modal-foot button{flex:none;min-height:36px}}@media (width>=601px) and (width<=900px) and (orientation:portrait){.unit-planner-modal{padding:12px 14px}.unit-planner-modal .lesson-plan-table{width:100%;overflow:hidden}.unit-planner-modal .lesson-plan-row{grid-template-columns:34px minmax(0,1.15fr) minmax(0,1fr) minmax(0,1fr) 60px;width:100%;min-width:0}.unit-planner-modal .lesson-plan-row input{padding:6px}}.brief-preview-backdrop{z-index:260;padding:10px;overflow:hidden}.brief-preview-modal{width:min(920px,100vw - 20px);height:calc(100vh - 20px);max-height:none;overflow:hidden}.brief-preview-modal>.modal-head{min-height:48px;padding:7px 12px}.brief-preview-modal>.modal-head h3{margin:0;font-size:14px}.brief-preview-modal>.modal-head p{color:#73807b;margin:1px 0 0;font-size:8px}.brief-preview-actions{border-bottom:1px solid var(--line);background:#f4f8f6;justify-content:space-between;align-items:center;gap:10px;padding:5px 12px;font-size:8px;display:flex}.brief-preview-actions button{flex:none;min-height:32px}.brief-preview-actions button:disabled{opacity:.6;cursor:wait}.brief-sheet-stage{background:#4f5955;flex:1;min-height:0;padding:12px;overflow:auto}.lesson-brief-sheet{color:#17231f;background:#fff;width:794px;max-width:100%;min-height:1123px;margin:0 auto;padding:28px 32px 34px;font-size:10.5px;box-shadow:0 3px 16px #0005}.brief-print-title{text-align:left;letter-spacing:.04em;margin:0;font-size:23px}.brief-teacher{text-align:right;margin:4px 0 12px;font-size:13px}.brief-meta{border:1px solid #43524d;grid-template-columns:4fr 2fr 2fr 2fr;display:grid}.brief-meta>div{border-right:1px solid #43524d;grid-template-columns:max-content minmax(0,1fr);min-width:0;min-height:34px;display:grid}.brief-meta>div:nth-child(4){border-right:0}.brief-meta b,.brief-meta span{min-width:0;padding:7px 6px}.brief-meta b{text-align:center;white-space:nowrap;background:#eef3f1;border-right:1px solid #43524d}.brief-meta span{overflow-wrap:anywhere;line-height:1.45}.brief-summary{border:1px solid #43524d;border-top:0;grid-template-columns:1fr 1fr;display:grid}.brief-summary section{min-height:72px;padding:9px}.brief-summary section:nth-child(odd){border-right:1px solid #43524d}.brief-summary h3{color:#315e51;margin:0 0 5px;font-size:10.5px}.brief-summary p{white-space:pre-wrap;margin:0;line-height:1.55}.brief-flow-title{text-align:left;margin:14px 0 5px;font-size:14px}.brief-flow{border-collapse:collapse;table-layout:fixed;width:100%;margin-top:0}.brief-flow col.brief-col-phase,.brief-flow col.brief-col-minutes{width:4.18%}.brief-flow col.brief-col-activity,.brief-flow col.brief-col-response{width:34.27%}.brief-flow col.brief-col-support{width:23.1%}.brief-flow th,.brief-flow td{vertical-align:top;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid #43524d;padding:6px;font-size:10.5px;line-height:1.42}.brief-flow th{background:#e8efec;font-size:10px}.brief-flow .brief-phase-cell{text-align:center;vertical-align:middle;writing-mode:vertical-rl;text-orientation:upright;letter-spacing:.08em;padding:6px 4px;font-weight:700}.brief-flow .brief-minutes-cell{text-align:center;vertical-align:middle;padding:6px 2px}.brief-flow .phase-intro td{background:#eef7fc}.brief-flow .phase-development td{background:#f2f8ee}.brief-flow .phase-summary td{background:#fff5e8}.brief-footer{color:#596761;justify-content:space-between;margin-top:12px;font-size:8.5px;display:flex}@media (width<=600px){.brief-preview-backdrop{padding:4px}.brief-preview-modal{width:100%;height:calc(100svh - 8px)}.brief-preview-modal>.modal-head{min-height:42px;padding:5px 9px}.brief-preview-actions{padding:5px 9px}.brief-preview-actions span{display:none}.brief-preview-actions button{width:100%;min-height:36px}.brief-sheet-stage{padding:4px}.lesson-brief-sheet{min-height:calc(141.4vw - 22.624px);padding:9px;font-size:5.5px}.brief-print-title{font-size:12px}.brief-teacher{margin:2px 0 6px;font-size:7px}.brief-meta>div{min-height:21px}.brief-meta b,.brief-meta span{padding:4px 3px}.brief-summary section{min-height:47px;padding:5px}.brief-summary h3{margin-bottom:3px;font-size:6.5px}.brief-flow-title{margin:7px 0 3px;font-size:8px}.brief-flow th,.brief-flow td{padding:3px;font-size:5.5px}.brief-flow th{font-size:5.5px}.brief-footer{margin-top:6px;font-size:5.5px}}.pdf-capture-host{pointer-events:none;z-index:-1000;width:794px;position:fixed;top:0;left:-10000px}.pdf-capture-host .lesson-brief-sheet{width:794px!important;max-width:none!important;min-height:1123px!important;box-shadow:none!important;margin:0!important;padding:28px 32px 34px!important;font-size:10.5px!important}.pdf-capture-host .brief-print-title{margin:0!important;font-size:23px!important}.pdf-capture-host .brief-teacher{margin:4px 0 12px!important;font-size:13px!important}.pdf-capture-host .brief-meta{grid-template-columns:4fr 2fr 2fr 2fr!important}.pdf-capture-host .brief-meta>div{grid-template-columns:max-content minmax(0,1fr)!important;min-height:34px!important}.pdf-capture-host .brief-meta b,.pdf-capture-host .brief-meta span{padding:7px 6px!important}.pdf-capture-host .brief-summary section{min-height:72px!important;padding:9px!important}.pdf-capture-host .brief-summary h3{margin:0 0 5px!important;font-size:10.5px!important}.pdf-capture-host .brief-flow-title{margin:14px 0 5px!important;font-size:14px!important}.pdf-capture-host .brief-flow{margin-top:0!important}.pdf-capture-host .brief-flow th,.pdf-capture-host .brief-flow td{padding:6px!important;font-size:10.5px!important}.pdf-capture-host .brief-flow th{font-size:10px!important}.pdf-capture-host .brief-flow .brief-phase-cell{padding:6px 4px!important}.pdf-capture-host .brief-flow .brief-minutes-cell{padding:6px 2px!important}.pdf-capture-host .brief-footer{margin-top:12px!important;font-size:8.5px!important}.document-preview-backdrop{z-index:265;padding:8px;overflow:hidden}.document-preview-modal{width:min(1180px,100vw - 16px);height:calc(100vh - 16px);max-height:none;overflow:hidden}.document-preview-modal>.modal-head{min-height:47px;padding:7px 12px}.document-preview-modal>.modal-head h3{margin:0;font-size:14px}.document-preview-modal>.modal-head p{color:#73807b;margin:1px 0 0;font-size:8px}.document-preview-actions{border-bottom:1px solid var(--line);background:#f1f7f4;justify-content:space-between;align-items:center;gap:10px;min-height:43px;padding:5px 12px;font-size:9px;display:flex}.document-preview-actions button{flex:none;min-height:33px}.document-preview-actions button:disabled{opacity:.6;cursor:wait}.document-sheet-stage{background:#4f5955;flex:1;min-height:0;padding:12px;overflow:auto}.weekly-pdf-sheet{color:#17231f;background:#fff;width:1123px;min-height:794px;margin:0 auto;padding:22px 26px 17px;font-size:9px;box-shadow:0 3px 16px #0005}.weekly-pdf-sheet>header{border-bottom:2px solid #395249;grid-template-columns:145px 1fr auto;align-items:center;height:48px;margin-bottom:8px;display:grid}.weekly-pdf-sheet>header>div{align-items:baseline;gap:9px;display:flex}.weekly-pdf-sheet h1{letter-spacing:.12em;margin:0;font-size:21px}.weekly-pdf-sheet>header>div span{color:#48695e;font-size:10px;font-weight:700}.weekly-pdf-sheet>header>p{text-align:center;margin:0;font-size:13px;font-weight:700}.weekly-pdf-sheet>header dl{grid-template-columns:auto auto;gap:2px 6px;margin:0;font-size:8px;display:grid}.weekly-pdf-sheet>header dt{color:#6e7b76}.weekly-pdf-sheet>header dd{margin:0;font-weight:700}.weekly-pdf-grid{border:0;border-top:1px solid #596762;border-left:1px solid #596762;grid-template-rows:40px 52px repeat(7,82px);grid-template-columns:44px repeat(5,1fr);display:grid}.weekly-pdf-grid>*{border-bottom:1px solid #596762;border-right:1px solid #596762;min-width:0}.weekly-pdf-corner,.weekly-pdf-day,.weekly-pdf-event-label,.weekly-pdf-period{background:#edf1ef;justify-content:center;align-items:center;font-weight:700;display:flex}.weekly-pdf-day{flex-direction:column}.weekly-pdf-day b{font-size:12px}.weekly-pdf-day span{color:#65746e;font-size:8px}.weekly-pdf-event-label{background:#fff5dd}.weekly-pdf-event{background:#fffaf0;padding:5px 6px;overflow:hidden}.weekly-pdf-event b,.weekly-pdf-event span{font-size:7px;line-height:1.4;display:block}.weekly-pdf-event b{color:#a15745}.weekly-pdf-period{font-size:10px}.weekly-pdf-cell{background:#fff;padding:6px 7px 4px 10px;position:relative;overflow:hidden}.weekly-pdf-cell>i{width:4px;position:absolute;top:0;bottom:0;left:0}.weekly-pdf-cell>b{color:#243a32;font-size:12px;display:block}.weekly-pdf-cell>small{color:#69766f;margin-top:1px;font-size:7px;display:block}.weekly-pdf-cell>span{color:#3e6256;white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:8px;font-weight:700;display:block;overflow:hidden}.weekly-pdf-cell>em{color:#63716c;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:7px;font-style:normal;display:block;overflow:hidden}.weekly-pdf-cell>p{white-space:pre-wrap;border-top:1px dotted #b8c1bd;margin:3px 0 0;padding-top:3px;font-size:7px;line-height:1.35}.weekly-pdf-cell.empty{background:#f2f3f2}.weekly-pdf-sheet>footer,.roster-check-sheet>footer{color:#6d7974;justify-content:space-between;align-items:end;height:16px;font-size:7px;display:flex}.roster-pdf-modal{max-width:1180px}.roster-pdf-controls{border-bottom:1px solid var(--line);background:#fff;grid-template-columns:minmax(220px,1fr) 110px 100px auto auto;align-items:end;gap:8px 10px;padding:9px 12px;display:grid}.roster-pdf-controls label{color:#596761;flex-direction:column;gap:4px;font-size:8px;font-weight:700;display:flex}.roster-pdf-controls input,.roster-pdf-controls select{background:#fff;border:1px solid #cfd5d1;border-radius:5px;height:31px;padding:0 8px;font-size:9px}.roster-pdf-controls .check-control{white-space:nowrap;flex-direction:row;align-items:center;height:31px}.roster-pdf-controls .check-control input{height:auto}.roster-header-inputs{grid-column:1/-1;align-items:center;gap:5px;display:flex;overflow-x:auto}.roster-header-inputs b,.roster-header-tools b{white-space:nowrap;margin-right:3px;font-size:8px}.roster-header-inputs input{flex:0 0 78px;width:78px}.roster-header-tools{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:5px;display:flex}.roster-header-tools button{color:#385c51;background:#f5f8f7;border:1px solid #c8d3ce;border-radius:5px;min-height:29px;padding:0 10px;font-size:9px;font-weight:700}.roster-header-tools button:hover{background:#e9f2ee}.roster-header-tools button:disabled{opacity:.45;cursor:not-allowed}.roster-header-tools button.undo{background:#eef6f3;border-color:#84a69a;align-items:center;gap:4px;margin-left:auto;display:flex}.roster-header-tools button.undo svg{width:12px;height:12px}.roster-same-text{align-items:center;gap:4px;display:flex}.roster-same-text input{width:120px;height:29px}.roster-same-text button{background:#e8f2ee}.roster-check-sheet{color:#17231f;background:#fff;margin:0 auto;padding:20px 25px 14px;font-size:8px;box-shadow:0 3px 16px #0005}.roster-check-sheet.landscape{width:1123px;min-height:794px}.roster-check-sheet.portrait{width:794px;min-height:1123px}.roster-check-sheet>header{border-bottom:2px solid #395249;justify-content:space-between;align-items:center;height:45px;margin-bottom:8px;display:flex}.roster-check-sheet>header h1{letter-spacing:.08em;margin:0;font-size:20px}.roster-check-sheet>header div{align-items:center;gap:22px;display:flex}.roster-check-sheet>header b{font-size:12px}.roster-check-sheet>header span{color:#68756f;font-size:8px}.roster-check-sheet table{border-collapse:collapse;table-layout:fixed;width:100%}.roster-check-sheet th,.roster-check-sheet td{text-align:center;border:1px solid #596762;padding:2px 4px;overflow:hidden}.roster-check-sheet th{background:#e8efec;height:25px;font-size:8px;line-height:1.2}.roster-check-sheet td:nth-child(2){text-align:left;font-weight:600}.roster-check-sheet tbody tr{height:15px}.roster-check-sheet .number-column{width:38px}.roster-check-sheet .name-column{width:118px}.roster-check-sheet .kana-column{width:120px}.roster-check-sheet .notes-column{width:145px}.roster-check-sheet.portrait tbody tr{height:22px}.roster-check-sheet.portrait .name-column{width:100px}.roster-check-sheet.portrait .kana-column{width:105px}.roster-check-sheet.portrait .notes-column{width:110px}.pdf-capture-host .weekly-pdf-sheet,.pdf-capture-host .roster-check-sheet.landscape{width:1123px!important;max-width:none!important;min-height:794px!important;box-shadow:none!important;margin:0!important}.pdf-capture-host .roster-check-sheet.portrait{width:794px!important;max-width:none!important;min-height:1123px!important;box-shadow:none!important;margin:0!important}.specialist-subject-field{color:#53615c;grid-column:1/-1;gap:7px;font-size:10px;font-weight:700;display:grid}.specialist-subject-field>div{background:#fbfcfb;border:1px solid #d4d8d4;border-radius:7px;flex-wrap:wrap;gap:6px;padding:9px;display:flex}.specialist-subject-field label{cursor:pointer;background:#fff;border:1px solid #dfe4e1;border-radius:6px;flex-direction:row;align-items:center;gap:6px;min-height:31px;padding:5px 9px}.specialist-subject-field input{width:15px;height:15px;padding:0}.specialist-subject-field i{border-radius:3px;width:5px;height:20px}.specialist-subject-field small{color:#7b8782;font-size:8px;font-weight:400}.lesson-cell .lesson-subject-badge{color:#fff;border-radius:10px;grid-column:1/-1;justify-self:start;margin-top:5px;padding:4px 7px;font-size:9px;font-weight:700;line-height:1}.weekly-subject-badge{white-space:nowrap;border-radius:8px;padding:2px 5px;font-weight:700;color:#fff!important}.hybrid-week-controls{flex:1;align-items:center;gap:3px;min-width:0;display:flex!important}.hybrid-week-controls select{min-width:0!important;padding:0 2px!important;font-size:7px!important}.hybrid-week-controls .role-select{color:#315e51;flex:0 0 38px;font-weight:700}.hybrid-week-controls .class-select{flex:1}.hybrid-week-controls .subject-select{flex:0 52px}.portrait-period-control{min-width:0}.portrait-period-control>.hybrid-week-controls{grid-template-columns:40px minmax(0,1fr);display:grid!important}.portrait-period-control>.hybrid-week-controls .subject-select{grid-column:1/-1;width:100%}.edit-cell .role-select{color:#315e51;background:#eef6f3;font-weight:700}.empty-setting-label{color:#87908c;background:#f1f2f1;border-radius:4px;place-items:center;min-height:25px;font-size:8px;display:grid}@media (width<=650px){.document-preview-backdrop{padding:4px}.document-preview-modal{width:100%;height:calc(100svh - 8px)}.document-preview-modal>.modal-head{min-height:42px;padding:5px 9px}.document-preview-actions{padding:5px 9px}.document-preview-actions span{display:none}.document-preview-actions button{width:100%;min-height:38px}.document-sheet-stage{padding:4px}.roster-pdf-controls{grid-template-columns:1fr 90px 86px;padding:7px}.roster-title-control{grid-column:1/-1}.roster-pdf-controls .check-control{height:28px}.roster-header-inputs,.roster-header-tools{grid-column:1/-1}.roster-header-tools{gap:6px}.roster-header-tools button{min-height:34px;padding:0 12px}.roster-header-tools button.undo{margin-left:0}.weekly-pdf-sheet,.roster-check-sheet.landscape,.roster-check-sheet.portrait{margin:0}.roster-pdf-button{white-space:nowrap}}.lesson-cell .lesson-subject-badge{border-radius:4px;grid-column:auto;place-self:center start;margin:0 0 0 6px;padding:3px 8px 3px 10px;font-size:14px;font-weight:700;line-height:1;color:#263d4a!important}.week-lesson .weekly-subject-select,.portrait-lesson .weekly-subject-select{color:#263d4a;text-align:left;border:0;border-radius:4px;min-width:58px;padding:3px 5px 3px 9px;font-size:10px;font-weight:700}.lesson-head.hybrid-today-row,.lesson-line.hybrid-today-row{grid-template-columns:70px minmax(145px,.75fr) minmax(170px,.9fr) minmax(115px,.45fr) minmax(300px,1.6fr)}.lesson-head.external-device:not(.hybrid-today-row),.lesson-line.external-device:not(.hybrid-today-row){grid-template-columns:70px minmax(190px,.8fr) minmax(360px,2fr)}.lesson-head.hybrid-today-row.external-device,.lesson-line.hybrid-today-row.external-device{grid-template-columns:70px minmax(145px,.75fr) minmax(180px,.9fr) minmax(360px,1.7fr)}.settings-nav button:disabled{opacity:.42;cursor:not-allowed}.device-mode-note{border-left:4px solid #4e8a78}.device-mode-note.external{background:#fff8ee;border-left-color:#be7b42}@media (width<=700px){.lesson-line.external-device:not(.hybrid-today-row){grid-template-rows:48px minmax(76px,auto);grid-template-columns:42px minmax(0,1fr)!important}.lesson-line.external-device:not(.hybrid-today-row) .period-cell{grid-area:1/1/3}.lesson-line.external-device:not(.hybrid-today-row) .lesson-cell{grid-area:1/2}.lesson-line.external-device:not(.hybrid-today-row) .lesson-memo{grid-area:2/2}.lesson-line.hybrid-today-row.external-device{grid-template-rows:48px minmax(76px,auto);grid-template-columns:42px minmax(0,1fr) minmax(0,1fr)!important}.lesson-line.hybrid-today-row.external-device .period-cell{grid-area:1/1/3}.lesson-line.hybrid-today-row.external-device .class-timetable-cell{grid-area:1/2}.lesson-line.hybrid-today-row.external-device .teacher-schedule-cell{grid-area:1/3}.lesson-line.hybrid-today-row.external-device .lesson-memo{grid-area:2/2/auto/4}}.teacher-role-label,.teacher-role-inline{color:#52645d;background:#edf3f0;border-radius:5px;padding:4px 7px;font-size:9px;font-weight:700}.hybrid-week-controls{flex-direction:column;align-items:stretch;gap:4px;width:100%}.week-lesson .hybrid-week-controls select{font-size:10px!important}.week-lesson .class-select,.portrait-lesson .class-select{font-size:10px}.week-lesson .teacher-role-inline,.portrait-lesson .teacher-role-inline{font-size:10px;line-height:1.15}.hybrid-class-row,.hybrid-teacher-row{grid-template-columns:34px minmax(0,1fr);align-items:center;gap:3px;width:100%;display:grid!important}.hybrid-class-row{grid-template-columns:minmax(0,1fr)}.hybrid-teacher-row{grid-template-columns:38px minmax(0,1fr) minmax(42px,.7fr)}.hybrid-teacher-row .teacher-role-inline{grid-column:2/4;padding:3px 5px}.teacher-schedule-cell .teacher-specialist-content{color:#52645d;grid-column:1/-1;margin-top:5px;font-size:9px;line-height:1.35}.edit-cell .hybrid-setting-label{color:#6c7974;font-size:7px;font-weight:700}.edit-cell .role-select.is-empty{color:#8a9490;background:#f7f8f7;border-color:#e7eae8;font-weight:400}.weekly-pdf-cell .weekly-pdf-class-plan{color:#43564e;border-bottom:1px solid #d8dedb;margin-bottom:2px;padding-bottom:3px;font-size:9px;font-weight:700;display:block}.weekly-pdf-hybrid-specialist-heading{white-space:nowrap;align-items:baseline;gap:7px;min-width:0;display:flex}.weekly-pdf-hybrid-specialist-heading b,.weekly-pdf-hybrid-specialist-heading small{color:#344a42;font-size:9px;font-weight:700}.weekly-pdf-specialist-heading{white-space:nowrap;align-items:baseline;gap:7px;min-width:0;display:flex}.weekly-pdf-specialist-heading b{color:#243a32;font-size:12px}.weekly-pdf-specialist-heading small{color:#536760;font-size:9px;font-weight:700}.editable-timetable .edit-cell{grid-auto-rows:max-content;align-content:start}.period-count-settings{background:#f6faf8;border:1px solid #dce7e2;border-radius:7px;align-items:center;gap:10px;margin:0 0 10px;padding:9px 10px;font-size:9px;display:flex}.period-count-settings>span{color:#718079}.period-count-settings>div{gap:6px;margin-left:auto;display:flex}.period-count-settings label{align-items:center;gap:3px;font-weight:700;display:flex}.period-count-settings select{background:#fff;border:1px solid #d4dcd8;border-radius:5px;height:28px;font-size:9px}.no-school-period{color:#9aa29e!important;background:#f1f3f2!important}.edit-cell.no-school-period{place-items:start stretch;min-height:32px}.no-period-label{text-align:center;color:#9aa29e;padding:6px 4px;font-size:8px;display:block}.week-day-control{box-sizing:border-box;flex-direction:row;justify-content:center;align-items:center;gap:3px;height:43px;padding:3px;display:flex;overflow:hidden}.week-day-control .week-date-link{cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;min-width:0;padding:0;display:flex}.week-day-control .week-date-link strong{white-space:nowrap;font-size:11px}.week-day-control .week-date-link span{white-space:nowrap;font-size:7px}.week-day-control select{color:#56645f;background:#fff;border:1px solid #d8dfdc;border-radius:4px;width:76px;min-width:0;max-width:76px;height:25px;padding:0 1px;font-size:7px}.week-lesson.no-school-period{place-items:center;display:grid}.week-lesson.no-school-period>span{color:#9aa29e;font-size:8px}.weekly-pdf-cell.no-school-period{background:#f1f3f2!important}@media (width<=820px){.period-count-settings{flex-direction:column;align-items:flex-start}.period-count-settings>div{flex-wrap:wrap;width:100%;margin-left:0}.week-day-control{flex-direction:row;gap:2px}.week-day-control select{width:70px;max-width:70px;height:22px;font-size:7px}.portrait-lesson:has(.hybrid-week-controls){--hybrid-control-width:58px;grid-template-rows:minmax(82px,auto) 38px 48px;grid-template-columns:42px 5px minmax(0,1fr)}.portrait-lesson:has(.hybrid-week-controls)>.portrait-period-control{grid-area:1/3;width:100%}.portrait-lesson:has(.hybrid-week-controls)>.portrait-period-control+select{border-top:1px solid #e5eae7;grid-area:2/3;min-height:36px;padding:0 10px;font-size:10px}.portrait-lesson:has(.hybrid-week-controls)>textarea{grid-area:3/3;min-height:48px}.portrait-period-control>.hybrid-week-controls{flex-direction:column;align-items:stretch;gap:6px;width:100%;padding:5px 4px;display:flex!important}.portrait-period-control .hybrid-class-row{grid-template-columns:var(--hybrid-control-width) minmax(0,1fr);gap:4px;display:grid!important}.portrait-period-control .hybrid-class-row>select{width:var(--hybrid-control-width);grid-column:1}.portrait-period-control .hybrid-teacher-row{grid-template-columns:var(--hybrid-control-width) minmax(88px,1fr) minmax(58px,.72fr);align-items:center;gap:4px;display:grid!important}.portrait-period-control>.hybrid-week-controls .hybrid-teacher-row>.role-select{width:100%;grid-column:1!important}.portrait-period-control>.hybrid-week-controls .hybrid-teacher-row>.class-select{width:100%;grid-column:2!important}.portrait-period-control>.hybrid-week-controls .hybrid-teacher-row>.subject-select{width:100%;grid-column:3!important}.portrait-period-control .hybrid-week-controls select{white-space:nowrap;background:#fff;border:1px solid #d6dfdb;border-radius:6px;min-height:36px;padding:0 5px!important;font-size:11px!important}.portrait-period-control .teacher-role-inline{align-items:center;min-height:36px;padding:0 8px;font-size:11px;display:flex}}@media (width<=520px){.portrait-lesson:has(.hybrid-week-controls){--hybrid-control-width:52px;grid-template-columns:38px 4px minmax(0,1fr)}.portrait-period-control .hybrid-teacher-row{grid-template-columns:var(--hybrid-control-width) minmax(78px,1fr) minmax(52px,.68fr)}.portrait-period-control .hybrid-teacher-row .role-select{padding:0 2px!important;font-size:10px!important}}@media (width<=820px){.lesson-head.hybrid-today-row{display:none}.lesson-line.hybrid-today-row{grid-template-rows:48px minmax(76px,auto);grid-template-columns:48px minmax(0,1fr) minmax(0,1fr) 88px!important;display:grid!important}.lesson-line.hybrid-today-row .period-cell{grid-area:1/1/3}.lesson-line.hybrid-today-row .class-timetable-cell{grid-area:1/2}.lesson-line.hybrid-today-row .teacher-schedule-cell{grid-area:1/3}.lesson-line.hybrid-today-row .absence-cell{grid-area:1/4}.lesson-line.hybrid-today-row .lesson-memo{grid-area:2/2/auto/5}}@media (width<=520px){.lesson-line.hybrid-today-row{grid-template-columns:42px minmax(0,1fr) minmax(0,1fr) 66px!important}.lesson-line.hybrid-today-row .lesson-cell{padding:5px 4px 3px 8px}.lesson-line.hybrid-today-row .lesson-cell b{font-size:10px}.lesson-cell .lesson-subject-badge{margin-left:3px;padding:3px 5px 3px 8px;font-size:10px}}@media (width<=820px){.lesson-line.hybrid-today-row.external-device{grid-template-columns:48px minmax(0,1fr) minmax(0,1fr)!important}.lesson-line.hybrid-today-row.external-device .lesson-memo{grid-column:2/4}}@media (width<=520px){.lesson-line.hybrid-today-row.external-device{grid-template-columns:42px minmax(0,1fr) minmax(0,1fr)!important}}.sharing-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.sharing-summary article{background:#f4faf7;border:1px solid #d8e5df;border-radius:8px;align-items:flex-start;gap:10px;padding:13px;display:flex}.sharing-summary article.never-share{background:#fff8f1;border-color:#eadfd4}.sharing-summary svg{color:#377d69;flex:0 0 20px;width:20px}.sharing-summary .never-share svg{color:#a16d45}.sharing-summary b,.sharing-summary span{display:block}.sharing-summary b{margin-bottom:3px;font-size:11px}.sharing-summary span{color:#68766f;font-size:9px;line-height:1.5}.sharing-options{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.sharing-option{border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:9px;padding:12px 14px;display:grid}.sharing-option:last-child{border-bottom:0}.sharing-option input{accent-color:#2f7d69;width:17px;height:17px}.sharing-option span b,.sharing-option span small{display:block}.sharing-option span b{font-size:11px}.sharing-option span small{color:#738079;margin-top:2px;font-size:8px;line-height:1.45}.sharing-option em{color:#2f7865;background:#eaf6f1;border-radius:12px;padding:4px 8px;font-size:8px;font-style:normal;font-weight:700}.sharing-option input:not(:checked)~em{color:#7b8580;background:#eef0ef}.sharing-conflict-note{border-left:4px solid #6b81a8;margin-top:14px}.sync-registration{background:linear-gradient(135deg,#f5fbf8,#fff);border:1px solid #bdd8cf;border-radius:10px;margin-bottom:16px;padding:14px}.sync-registration.registration-error{background:#fff7f4;border:2px solid #d9654b;box-shadow:0 0 0 3px #f8ddd6}.registration-alert{color:#8b3d2b;background:#fbe0d9;border-radius:7px;align-items:center;gap:7px;margin-bottom:10px;padding:9px;font-size:10px;display:flex}.registration-alert svg{width:18px}.sync-provider-panel{background:#fff;border:1px solid #d7dfdc;border-radius:10px;margin-bottom:14px;padding:14px}.sync-provider-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.sync-provider-head b,.sync-provider-head span{display:block}.sync-provider-head b{color:#344f47;font-size:12px}.sync-provider-head span{color:#6d7a75;margin-top:3px;font-size:9px}.sync-provider-head em{color:#2f705e;background:#e9f5f0;border-radius:13px;padding:5px 9px;font-size:8px;font-style:normal;font-weight:700}.sync-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.sync-provider-card{cursor:pointer;background:#fafcfb;border:1px solid #d7dfdc;border-radius:8px;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:9px;padding:10px;display:grid;position:relative}.sync-provider-card.selected{background:#f0f8f5;border-color:#4d927f;box-shadow:inset 0 0 0 1px #4d927f}.sync-provider-card input{opacity:0;pointer-events:none;position:absolute}.sync-provider-card i{color:#42665b;background:#edf1ef;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;font-style:normal;font-weight:800;display:flex}.sync-provider-card span b,.sync-provider-card span small{display:block}.sync-provider-card span b{color:#354a44;font-size:10px}.sync-provider-card span small{color:#748079;margin-top:2px;font-size:8px}.sync-provider-card svg{color:#2f7d69;width:17px}.cloud-provider-status{background:#f6f3ea;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:10px;display:flex}.cloud-provider-status b,.cloud-provider-status span{display:block}.cloud-provider-status b{color:#625840;font-size:9px}.cloud-provider-status span{color:#7d735c;margin-top:3px;font-size:8px;line-height:1.45}.cloud-provider-status button{border:0;border-radius:7px;flex:none;padding:8px 10px;font-size:8px;font-weight:700}.cloud-provider-status button:not(:disabled){color:#fff;cursor:pointer;background:#347a68}.cloud-provider-status button.connected{color:#286b58;background:#e2f3ed}.sync-setup-warning{color:#8b3f1f;text-align:left;cursor:pointer;background:#fff3eb;border:2px solid #d98754;border-radius:9px;align-items:center;gap:10px;width:100%;margin:10px 0;padding:12px;display:flex}.sync-setup-warning svg{flex:none;width:22px;height:22px}.sync-setup-warning span,.sync-setup-warning b,.sync-setup-warning small{display:block}.sync-setup-warning b{font-size:12px}.sync-setup-warning small{margin-top:3px;font-size:9px;line-height:1.5}.cloud-state{color:#52635d;background:#f0f4f2;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;margin-top:9px;padding:9px 10px;display:flex}.cloud-state span{background:#dfe8e4;border-radius:12px;flex:none;padding:4px 8px;font-size:9px;font-weight:800}.cloud-state small{text-align:right;font-size:8px;line-height:1.4}.cloud-state-waiting{color:#725a29;background:#fff7e6}.cloud-state-waiting span{background:#f5dfad}.cloud-state-saving,.cloud-state-checking,.cloud-state-connecting{color:#365f78;background:#edf5fa}.cloud-state-saving span,.cloud-state-checking span,.cloud-state-connecting span{background:#d8e8f2}.cloud-state-saved,.cloud-state-connected{color:#286b58;background:#eaf7f2}.cloud-state-saved span,.cloud-state-connected span{background:#cfeadf}.cloud-state-error,.cloud-state-needsSetup{color:#8a3d2d;background:#fff0ed}.cloud-state-error span,.cloud-state-needsSetup span{background:#f4d4cc}.cloud-sync-actions{gap:8px;margin-top:8px;display:flex}.cloud-sync-actions button{color:#2f705e;cursor:pointer;background:#fff;border:1px solid #8fb9ab;border-radius:7px;justify-content:center;align-items:center;gap:5px;min-height:36px;padding:8px 11px;font-size:9px;font-weight:700;display:inline-flex}.cloud-sync-actions button:disabled{cursor:not-allowed;opacity:.45}.cloud-sync-actions svg{width:15px}.cloud-initial-sync{background:#fff9ec;border:1px solid #efcf91;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 10px;margin-top:9px;padding:10px;display:grid}.cloud-initial-sync b,.cloud-initial-sync span{display:block}.cloud-initial-sync b{color:#725a29;font-size:9px}.cloud-initial-sync span{color:#826f49;grid-column:1;font-size:8px}.cloud-initial-sync button{color:#72581f;cursor:pointer;background:#fff;border:1px solid #d3a64d;border-radius:7px;grid-area:1/2/3;align-items:center;gap:5px;min-height:38px;padding:8px 10px;font-size:8px;font-weight:700;display:inline-flex}.cloud-initial-sync button:disabled{cursor:not-allowed;opacity:.45}.cloud-initial-sync svg{width:15px}.cloud-message{color:#376d5e;background:#eef7f3;border-radius:7px;margin-top:8px;padding:8px;font-size:8px;line-height:1.5;display:block}.provider-guidance{color:#65766f;margin-top:9px;font-size:8px;line-height:1.5;display:block}.sync-registration-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.sync-registration-head b,.sync-registration-head span{display:block}.sync-registration-head b{color:#285f51;font-size:12px}.sync-registration-head span{color:#687a74;margin-top:3px;font-size:9px}.sync-registration-head em{color:#2d705e;background:#e5f4ee;border-radius:14px;flex:none;padding:5px 9px;font-size:8px;font-style:normal;font-weight:700}.sync-registration-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.sync-registration-fields label{color:#50645d;font-size:9px;font-weight:700}.sync-registration-fields input{width:100%;font:inherit;background:#fff;border:1px solid #cbd8d3;border-radius:7px;margin-top:5px;padding:9px 10px;display:block}.sync-registration-fields label.missing{color:#a33e2b}.sync-registration-fields label.missing input{background:snow;border:2px solid #d9654b}.sync-manual-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.sync-manual-actions button,.sync-manual-actions label{color:#286b58;cursor:pointer;background:#fff;border:1px solid #8eb9aa;border-radius:7px;justify-content:center;align-items:center;min-height:38px;padding:8px 12px;font-size:10px;font-weight:700;display:inline-flex}.sync-manual-actions button{color:#fff;background:#2f7d69;border-color:#2f7d69}.sync-message{color:#2f705e;margin:9px 0 0;font-size:9px;font-weight:700}.sync-registration-note{color:#68776f;margin-top:10px;font-size:8px;line-height:1.55;display:block}.sync-history{border-top:1px solid #d9e5e0;margin-top:12px;padding-top:10px}.sync-history>b{color:#45645a;margin-bottom:6px;font-size:9px;display:block}.sync-history>div{color:#65746e;grid-template-columns:36px minmax(0,1fr) auto auto;align-items:center;gap:7px;padding:5px 0;font-size:8px;display:grid}.sync-history>div span{color:#2f705e;text-align:center;background:#e9f4ef;border-radius:5px;padding:3px 5px;font-weight:700}.sync-history>div strong{text-overflow:ellipsis;white-space:nowrap;color:#3c5049;overflow:hidden}.sync-history>div em{color:#2f705e;font-style:normal}@media (width<=700px){.sync-provider-panel{padding:12px 10px}.sync-provider-grid{grid-template-columns:1fr}.cloud-provider-status{flex-direction:column;align-items:flex-start}.cloud-provider-status button{min-height:38px}.cloud-state{flex-direction:column;align-items:flex-start}.cloud-state small{text-align:left}.cloud-sync-actions{grid-template-columns:1fr 1fr;display:grid}.cloud-initial-sync{grid-template-columns:1fr}.cloud-initial-sync button{grid-area:auto/1;justify-content:center;margin-top:5px}.sync-registration{padding:12px 10px}.sync-registration-fields{grid-template-columns:1fr}.sync-manual-actions>*{flex:145px}.sync-history>div{grid-template-columns:34px minmax(0,1fr) auto}.sync-history>div time{grid-column:2;font-size:7px}.sharing-summary{grid-template-columns:1fr}.sharing-option{grid-template-columns:22px minmax(0,1fr);padding:11px 10px}.sharing-option em{grid-column:2;justify-self:start}}.settings-page-host.hidden{display:none}.cloud-auto-sync{cursor:pointer;background:#f5fbf9;border:1px solid #cfe1dc;border-radius:10px;align-items:flex-start;gap:10px;padding:11px 12px;display:flex}.cloud-auto-sync input{accent-color:#287c6d;width:18px;height:18px;margin-top:2px}.cloud-auto-sync span{gap:2px;display:grid}.cloud-auto-sync b{color:#235f55;font-size:14px}.cloud-auto-sync small{color:#657772;font-size:12px;line-height:1.45}.sync-conflict-panel{background:#fffaf1;border:1px solid #e4b56e;border-radius:12px;margin:14px 0;padding:14px}.sync-conflict-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.sync-conflict-head>div{gap:3px;display:grid}.sync-conflict-head b{color:#8a571b;font-size:15px}.sync-conflict-head span{color:#756654;font-size:12px}.sync-conflict-head em{color:#fff;background:#f0a84c;border-radius:999px;padding:4px 8px;font-size:11px;font-style:normal;font-weight:700}.sync-conflict-bulk{background:#fff3dc;border-radius:9px;align-items:center;gap:10px;margin:0 0 10px;padding:9px;display:flex}.sync-conflict-bulk button,.sync-conflict-newest{color:#8a571b;background:#fff;border:1px solid #c98a35;border-radius:7px;min-height:38px;font-weight:700}.sync-conflict-bulk button{white-space:nowrap;padding:7px 12px}.sync-conflict-bulk small{color:#756654;font-size:11px}.sync-conflict-panel article{border-top:1px solid #eadbc7;padding:12px 0}.sync-conflict-panel h3{color:#4f4437;margin:0 0 8px;font-size:14px}.sync-conflict-choices{grid-template-columns:1fr 1fr;gap:10px;display:grid}.sync-conflict-choices>div{background:#fff;border:1px solid #e2d8ca;border-radius:9px;grid-template-columns:1fr auto;gap:4px 8px;padding:10px;display:grid}.sync-conflict-choices b{color:#3f5049;font-size:12px}.sync-conflict-choices small{color:#7e817d;font-size:10px}.sync-conflict-choices p{overflow-wrap:anywhere;background:#f5f5f3;border-radius:6px;grid-column:1/-1;min-height:34px;margin:3px 0;padding:7px;font-size:11px;line-height:1.45}.sync-conflict-choices button{color:#fff;background:#3b7d6e;border:0;border-radius:7px;grid-column:1/-1;min-height:38px;font-weight:700}.sync-conflict-newest{width:100%;margin-top:8px}.sync-conflict-later{color:#857868;margin-top:7px;display:block}.onedrive-app-warning{color:#7a531f;background:#fff8e9;border:1px solid #e0b36c;border-radius:9px;align-items:flex-start;gap:9px;margin-bottom:10px;padding:11px 12px;display:flex}.onedrive-app-warning>svg{flex:0 0 20px;width:20px}.onedrive-app-warning span{gap:3px;display:grid}.onedrive-app-warning b{font-size:11px}.onedrive-app-warning small{color:#806a4b;font-size:8px;line-height:1.5}@media (width<=620px){.sync-conflict-choices{grid-template-columns:1fr}.sync-conflict-panel{padding:11px}.sync-conflict-bulk{flex-direction:column;align-items:stretch}.sync-conflict-bulk button{white-space:normal}}.app{--ui-accent:#2f7d69;--ui-accent-dark:#225f51;--ui-accent-soft:#e7f2ee;--ui-page:#f4f3ef}.app.theme-blue{--ui-accent:#3f6f9f;--ui-accent-dark:#315b83;--ui-accent-soft:#e9f1f8;--ui-page:#f3f6f8}.app.theme-orange{--ui-accent:#a96535;--ui-accent-dark:#87502a;--ui-accent-soft:#f8eee6;--ui-page:#f7f4f0}.app.theme-mono{--ui-accent:#111;--ui-accent-dark:#000;--ui-accent-soft:#eee;--ui-page:#fff;color:#000}.app.theme-mono .topbar,.app.theme-mono .dense-card,.app.theme-mono .date-banner,.app.theme-mono .school-events,.app.theme-mono .todo-strip,.app.theme-mono .daily-journal,.app.theme-mono .settings-panel,.app.theme-mono .settings-nav{box-shadow:none;color:#000;background-color:#fff;border-color:#222}.app.theme-mono .date-banner,.app.theme-mono .school-events{color:#fff;background:#111}.app.theme-mono .lesson-line,.app.theme-mono .week-lesson,.app.theme-mono .portrait-lesson,.app.theme-mono .cal-day,.app.theme-mono .unit-row{border-color:#333;background:#fff!important}.app.theme-mono .lesson-line i,.app.theme-mono .week-lesson i,.app.theme-mono .portrait-lesson i{background:#111!important}.app.theme-mono .subject-tag{border:2px solid #111;font-weight:700;color:#000!important;background:#fff!important}.app.theme-mono input,.app.theme-mono textarea,.app.theme-mono select,.app.theme-mono button{color:#000;border-color:#555}.app.theme-mono small,.app.theme-mono .eyebrow{color:#333}.app.theme-mono .ink-tools{color:#000;box-shadow:none;background:#fff;border:2px solid #000}.app.theme-mono .ink-tools button{color:#000;background:#fff;border:1px solid #222}.app.theme-mono .ink-tools button.active,.app.theme-mono .ink-tools .done{color:#fff;background:#000;border-color:#000}.app.theme-mono .ink-tools .color{filter:grayscale();border:2px solid #000;box-shadow:inset 0 0 0 2px #fff}.app.theme-mono .ink-actions button{color:#000;box-shadow:none;background:#fff;border:2px solid #000}.app.theme-mono .ink-actions .pen{color:#fff;background:#000;border-color:#000}.app{background:var(--ui-page)}.app nav button.active,.app .settings-nav button.active{color:var(--ui-accent);border-color:var(--ui-accent)}.app .primary,.app button.primary{background:var(--ui-accent);border-color:var(--ui-accent)}.app.theme-mono .primary,.app.theme-mono button.primary{color:#fff;background:#000;border:2px solid #000}.app.theme-mono .outline,.app.theme-mono button.outline{color:#000;background:#fff;border:2px solid #000}.app.theme-mono .subject-editor-item{background:#fff;border:2px solid #000}.app.theme-mono .subject-editor-item:has(input:checked){background:#ddd;box-shadow:inset 5px 0 #000}.app.theme-mono .subject-editor-item>button{color:#fff;background:#000;border:0;border-left:2px solid #000}.app.theme-mono .subject-editor-item>button:focus-visible{outline-offset:2px;outline:3px double #000}.app.theme-mono .add-subject{background:#eee;border-top:2px solid #000;border-bottom:2px solid #000}.unit-item-actions{justify-content:flex-end;align-items:center;gap:4px;display:flex;padding:4px!important}.unit-item-actions .outline{min-width:36px}.unit-delete-check{cursor:pointer;justify-content:center;align-items:center;gap:2px;font-size:9px;display:flex}.unit-delete-check input{width:16px;height:16px}.unit-row.selected-for-delete{background:#fff3f0}.unit-bulk-delete,.unit-delete-button{color:#973e32;background:#fff4f2;border:1px solid #c56b5d;border-radius:6px;justify-content:center;align-items:center;gap:4px;min-height:34px;padding:0 9px;font-size:11px;font-weight:700;display:inline-flex}.unit-bulk-delete svg,.unit-delete-button svg{width:14px}.unit-bulk-delete:disabled{opacity:.4;cursor:not-allowed}.app.theme-mono .unit-bulk-delete,.app.theme-mono .unit-delete-button{color:#fff;background:#000;border:2px solid #000}.app.theme-mono .unit-bulk-delete:disabled{color:#555;background:#fff;border-color:#777}.app.theme-mono .unit-row.selected-for-delete{box-shadow:inset 5px 0 #000;background:#ddd!important}.app .seg button.active{background:var(--ui-accent);color:#fff}.app .autosave,.app .eyebrow{color:var(--ui-accent)}.app .date-banner,.app .school-events{background:var(--ui-accent-dark)}.app .date-banner>strong,.app .date-banner>span{color:#fff}.app .topbar{border-bottom-color:color-mix(in srgb,var(--ui-accent) 28%,#dcded9);box-shadow:inset 0 4px var(--ui-accent),0 2px 12px #263b3010}.app nav button.active,.app .weekly-sheet .week-corner,.app .weekly-sheet .week-heading,.app .portrait-days{background:var(--ui-accent-soft)}.app .portrait-days button.active{background:var(--ui-accent);color:#fff}.app .week-nav .current-week,.app .date-step .today-jump{background:var(--ui-accent-soft)!important;border-color:var(--ui-accent)!important;color:var(--ui-accent-dark)!important}.app .week-date-link:hover,.app .open-selected-day{background:var(--ui-accent-soft);color:var(--ui-accent-dark);border-color:var(--ui-accent)}.app .weekly-sheet,.app .portrait-week{border-top:3px solid var(--ui-accent)}.app.font-large{zoom:1.15;width:100%;min-height:86.9566vh}.app.font-xlarge{zoom:1.28;width:100%;min-height:78.125vh}.app.font-maximum{zoom:1.42;width:100%;min-height:70.4225vh}.app.font-large .pdf-capture-host{zoom:.8696;font-size:initial}.app.font-xlarge .pdf-capture-host{zoom:.78125;font-size:initial}.app.font-maximum .pdf-capture-host{zoom:.7042;font-size:initial}.app.font-large .document-preview-backdrop{zoom:.8696}.app.font-xlarge .document-preview-backdrop{zoom:.78125}.app.font-maximum .document-preview-backdrop{zoom:.7042}.app.font-large .attachment-backdrop,.app.font-large .event-editor-modal{zoom:.8696}.app.font-xlarge .attachment-backdrop,.app.font-xlarge .event-editor-modal{zoom:.78125}.app.font-maximum .attachment-backdrop,.app.font-maximum .event-editor-modal{zoom:.7042}.document-preview-modal>.modal-head,.document-preview-actions{z-index:4;flex:none;position:relative}.document-preview-actions{box-shadow:0 2px #0002}.event-editor-modal .event-editor-form{flex:1;min-height:0;padding-right:4px;overflow-y:auto}.event-editor-modal>.modal-head,.event-editor-modal>.modal-foot,.attachment-viewer>.modal-head,.attachment-viewer>.attachment-toolbar{z-index:5;flex:none;position:relative}.absence-picker-modal{max-width:100%;overflow:hidden}.absence-picker-modal>.modal-head,.absence-picker-modal>.modal-foot{z-index:2;background:#fff;flex:none;position:relative}.absence-picker-modal>.student-checks{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.absence-picker-modal>.student-checks button{min-width:0;overflow:hidden}.absence-picker-modal>.student-checks button>b{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:inherit;overflow:hidden}.absence-picker-modal>.student-checks button>svg{flex:none}.absence-picker-modal>.arrival-settings label{grid-template-columns:minmax(0,90px) minmax(0,1fr);min-width:0}.absence-picker-modal>.arrival-settings label>b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.absence-picker-modal>.arrival-settings select{width:100%;min-width:0;max-width:100%;display:block}@media (orientation:portrait){.absence-picker-modal{place-self:stretch stretch;width:auto;min-width:0;max-width:none;height:auto;min-height:0;max-height:none}.absence-picker-modal>.student-checks{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}.absence-picker-modal>.arrival-settings{flex:0 auto;max-height:min(24svh,130px);padding:5px 10px;overflow-y:auto}.absence-picker-modal>.modal-foot{min-height:54px;padding:8px 12px;position:sticky;bottom:0}.absence-picker-modal>.modal-foot .primary{min-width:82px;min-height:38px}}.ink-tools .ink-input-mode{box-shadow:inset 0 0 0 2px #9fb4c2}.ink-tools .ink-input-mode.touch-mode{color:#263c4d;background:#efb357;box-shadow:inset 0 0 0 2px #fff}.app.theme-mono .ink-tools .ink-input-mode{border:2px solid #000}.app.theme-mono .ink-tools .ink-input-mode.touch-mode{color:#fff;background:#000}.attachment-viewer>.attachment-toolbar{background:#fff}.attachment-viewer .attachment-toolbar{align-items:center;height:auto;min-height:38px;padding:3px 0}.attachment-viewer .attachment-toolbar button,.attachment-viewer .attachment-toolbar a,.attachment-viewer .pdf-zoom-controls select{height:34px;min-height:34px;padding-top:5px;padding-bottom:5px}.attachment-viewer .pdf-zoom-controls{align-items:center;height:34px}@media (width<=700px),(pointer:coarse){.attachment-viewer .attachment-toolbar{min-height:46px}.attachment-viewer .attachment-toolbar button,.attachment-viewer .attachment-toolbar a,.attachment-viewer .pdf-zoom-controls select{height:40px;min-height:40px;padding-top:7px;padding-bottom:7px}.attachment-viewer .pdf-zoom-controls{height:40px}}.app.density-compact .dense-card{border-radius:7px}.app.density-compact .content{padding-top:5px}.app.density-compact .page-title{margin-bottom:5px}.app.density-compact .lesson-line>*,.app.density-compact .annual-row>*{padding-top:5px;padding-bottom:5px}.theme-preset-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:8px 0 22px;display:grid}.theme-preset-grid>button{color:#34433e;text-align:left;background:#fff;border:1px solid #d8dfdc;border-radius:10px;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:9px;min-height:64px;padding:10px;display:grid}.theme-preset-grid>button.selected{border:2px solid var(--ui-accent);background:var(--ui-accent-soft)}.theme-preset-grid i{border-radius:50%;width:28px;height:28px}.theme-preset-grid span{gap:2px;display:grid}.theme-preset-grid b{font-size:11px}.theme-preset-grid small{color:#74817c;font-size:8px}.theme-preset-grid svg{width:17px;color:var(--ui-accent)}.display-option-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.display-option-grid>div{background:#fafbf9;border:1px solid #dde2df;border-radius:10px;gap:7px;padding:14px;display:grid}.display-option-grid>div>b{font-size:12px}.display-option-grid>div>span{color:#68756f;font-size:9px}.display-option-grid .seg{justify-self:start}.display-setting-note{background:var(--ui-accent-soft);color:var(--ui-accent-dark);border-radius:8px;align-items:center;gap:8px;margin-top:15px;padding:10px 12px;font-size:9px;display:flex}.display-setting-note svg{width:17px}.settings-title-actions .outline{white-space:nowrap}.getting-started-title{align-items:center}.getting-started-title p{color:#68776f;margin:4px 0 0;font-size:11px}.setup-progress{color:#65746f;background:#edf1ef;border-radius:999px;align-items:center;gap:6px;padding:7px 11px;font-size:11px;font-weight:800;display:flex}.setup-progress.ready{color:#24705b;background:#e4f5ee}.getting-started-hero{padding:18px;overflow:visible}.getting-started-intro{background:var(--ui-accent-soft);border-radius:8px;margin-bottom:14px;padding:12px 14px}.getting-started-intro b{color:var(--ui-accent-dark);font-size:15px}.getting-started-intro p{color:#607069;margin:4px 0 0;font-size:11px;line-height:1.55}.setup-steps>article{background:#fff;border:1px solid #dce2df;border-radius:10px;grid-template-columns:34px minmax(0,1fr) 24px;gap:12px;padding:15px;display:grid;position:relative}.setup-steps>article.complete{background:#f7fcfa;border-color:#a8d2c4}.setup-number{background:var(--ui-accent);color:#fff;border-radius:50%;place-items:center;width:32px;height:32px;font-size:14px;font-weight:800;display:grid}.setup-actions{flex-wrap:wrap;gap:8px;display:flex}.setup-actions button{color:#40554d;background:#fff;border:1px solid #bdc9c4;border-radius:7px;align-items:center;gap:6px;min-height:38px;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.setup-actions button.sample{border-color:var(--ui-accent);color:var(--ui-accent-dark);background:var(--ui-accent-soft)}.setup-actions svg{width:16px}.onboarding-fields{grid-template-columns:1fr 1fr;gap:10px;margin-top:5px;display:grid}.onboarding-fields label{color:#50645d;gap:5px;font-size:11px;font-weight:700;display:grid}.onboarding-fields input{color:#2f413a;background:#fff;border:1px solid #bdc9c4;border-radius:7px;min-width:0;height:42px;padding:0 11px;font-size:14px}.setup-steps article>div>small{color:#6e7c76;margin-top:7px;font-size:10px;display:block}.offline-quick-status{background:#eef5f2;border-radius:8px;align-items:center;gap:10px;padding:11px 12px;display:flex}.offline-quick-status>svg{width:25px;color:var(--ui-accent)}.offline-quick-status span{gap:2px;display:grid}.offline-quick-status b{font-size:12px}.offline-quick-status small{color:#65756f;font-size:10px;line-height:1.45}.setup-confirm{color:#42564f;align-items:center;gap:7px;margin-top:10px;font-size:12px;font-weight:700;display:flex}.setup-confirm input{width:18px;height:18px}.onboarding-offline-details{border-top:1px solid #e1e6e3;margin-top:10px;padding-top:8px}.onboarding-offline-details summary{cursor:pointer;color:var(--ui-accent-dark);font-size:11px;font-weight:700}.onboarding-offline-details .offline-settings{margin-top:10px}.setup-finish label{align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.setup-finish label.disabled{opacity:.45}.setup-finish input{width:18px;height:18px}.setup-finish .primary{min-height:40px;font-size:12px}.setup-finish small{color:#7a8681;grid-column:1/-1;font-size:10px}@media (width<=700px){.getting-started-hero{padding:10px}.setup-steps>article{grid-template-columns:30px minmax(0,1fr);gap:8px;padding:11px}.setup-number{width:28px;height:28px}.setup-check{position:absolute;top:9px;right:9px}.onboarding-fields,.setup-finish{grid-template-columns:1fr}.setup-finish .primary{width:100%}.settings-title-actions{flex-direction:column;align-items:flex-end}.settings-title-actions .outline{height:38px}.app.font-xlarge{zoom:1.18;width:100%;min-height:84.7458vh}.app.font-maximum{zoom:1.3;width:100%;min-height:76.923vh}}.annual-command{gap:8px;margin:4px 0 10px;display:grid}.annual-command-head{grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;min-height:42px;display:grid}.annual-command-head h1{color:#263b34;margin:0;font-size:22px}.annual-command-head>b{white-space:nowrap;color:#30463e;font-size:15px}.annual-tools{justify-self:end;position:relative}.annual-settings,.annual-command-row>button{color:#4c5e57;cursor:pointer;background:#fff;border:1px solid #c8d0cc;border-radius:7px;font-weight:700}.annual-settings{align-items:center;gap:5px;min-height:38px;padding:0 11px;font-size:11px;display:flex}.annual-settings svg{width:16px}.annual-tools-menu{z-index:90;background:#fff;border:1px solid #cfd7d3;border-radius:9px;width:240px;padding:5px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 30px #1d342b2b}.annual-tools-menu>button,.annual-tools-menu>label{box-sizing:border-box;color:#354a42;text-align:left;cursor:pointer;background:#fff;border:0;border-radius:6px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;width:100%;min-height:51px;padding:7px 9px;display:grid}.annual-tools-menu>button:hover,.annual-tools-menu>label:hover{background:#edf5f2}.annual-tools-menu svg{color:#347763;width:18px}.annual-tools-menu span{gap:2px;display:grid}.annual-tools-menu b{font-size:11px}.annual-tools-menu small{color:#74817c;font-size:8px;font-weight:500}.annual-command-row{grid-template-columns:1.28fr repeat(3,1fr);gap:7px;width:min(620px,100%);margin:0 auto;display:grid}.annual-command-row>button{white-space:nowrap;justify-content:center;align-items:center;gap:5px;min-width:0;height:44px;padding:0 9px;font-size:11px;display:flex}.annual-command-row>button svg{flex:none;width:17px}.annual-command-row>.annual-view-toggle{color:#286b59;background:#eef7f3;border-color:#5e907f}.annual-command-row>.annual-current-month{color:#376d95;background:#edf5fb;border-color:#447da7}.unit-command{gap:8px;margin:4px 0 10px;display:grid}.unit-command-head{justify-content:space-between;align-items:center;gap:10px;min-height:42px;display:flex}.unit-command-head h1{color:#263b34;margin:0;font-size:22px}.unit-tools{position:relative}.unit-settings{color:#4c5e57;cursor:pointer;background:#fff;border:1px solid #c8d0cc;border-radius:7px;align-items:center;gap:5px;min-height:38px;padding:0 11px;font-size:11px;font-weight:700;display:flex}.unit-settings svg{width:16px}.unit-tools-menu{top:calc(100% + 6px);right:0}.unit-command-row{grid-template-columns:1fr 1fr;gap:7px;width:min(620px,100%);margin:0 auto;display:grid}.unit-command-row>button{color:#286b59;cursor:pointer;background:#eef7f3;border:1px solid #5e907f;border-radius:7px;justify-content:center;align-items:center;gap:6px;min-width:0;height:44px;padding:0 10px;font-size:11px;font-weight:800;display:flex}.unit-command-row>button svg{width:17px}.unit-command-row>.unit-add-command{color:#fff;background:#347caa;border-color:#347caa}.unit-command-row>.unit-selection-delete{color:#963e32;background:#fff1ee;border-color:#c56b5d}.annual-calendar-view{grid-template-rows:28px repeat(var(--calendar-weeks,6),minmax(0,1fr));height:var(--calendar-viewport-height,calc(100dvh - 190px));min-height:0;overflow:hidden!important}.annual-calendar-view .cal-head{height:auto}.annual-calendar-view .cal-day{min-height:0;overflow:hidden}.annual-calendar-view .cal-day button:not(.quick-add)>span:first-child{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.annual-calendar-view .more-events{color:#65746e;margin-top:2px;font-size:7px;display:block}body:has(.annual-calendar-view) .content{padding-bottom:0}body:has(.annual-calendar-view) main{min-height:calc(100dvh - 50px)}body:has(.annual-calendar-view) .ink-layer{overflow:visible!important}.topbar{z-index:130}.ink-input-catcher{clip-path:inset(50px 0 0)}@media (width<=700px){.ink-input-catcher{clip-path:inset(88px 0 0)}}.unit-date-range-field{color:#596861;flex-direction:column;grid-column:1/-1;gap:5px;font-size:9px;display:flex}.unit-range-trigger{color:#315e51;text-align:left;background:#f3f8f6;border:1px solid #b9d2ca;border-radius:7px;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;width:100%;min-height:42px;padding:6px 10px;display:grid}.unit-range-trigger>svg{width:17px}.unit-range-trigger>span{align-items:center;gap:8px;min-width:0;display:flex}.unit-range-trigger strong{white-space:nowrap;font-size:9px}.unit-range-trigger i{color:#7c8984;font-style:normal}.unit-range-trigger small{color:#4f776b;white-space:nowrap;font-size:7px}.unit-range-picker{background:#f7faf8;border:1px solid #ccdcd6;border-radius:8px;padding:10px 12px}.unit-range-summary{grid-template-columns:1fr 24px 1fr;align-items:center;gap:5px;margin-bottom:8px;display:grid}.unit-range-summary>span{color:#7a8581;background:#fff;border:1px solid #d4ddd9;border-radius:6px;flex-direction:column;gap:2px;padding:7px 9px;font-size:8px;display:flex}.unit-range-summary>span.selected{color:#294f44;background:#edf7f3;border-color:#6fa897}.unit-range-summary>span b{font-size:7px}.unit-range-summary>i{text-align:center;color:#75847e;font-style:normal}.unit-range-month{grid-template-columns:34px 1fr 34px;align-items:center;margin-bottom:5px;display:grid}.unit-range-month b{text-align:center;color:#304f46;font-size:11px}.unit-range-month button{color:#315f52;background:#e7f1ed;border:0;border-radius:5px;place-items:center;height:30px;display:grid}.unit-range-month svg{width:16px}.unit-range-weekdays,.unit-range-days{grid-template-columns:repeat(7,1fr);display:grid}.unit-range-weekdays b{text-align:center;color:#6d7975;padding:3px;font-size:7px}.unit-range-weekdays b:first-child{color:#b25353}.unit-range-weekdays b:last-child{color:#426a97}.unit-range-days button{color:#304039;background:#fff;border:0;place-items:center;height:32px;padding:0;font-size:9px;display:grid;position:relative}.unit-range-days button.outside{color:#b7bfbc;background:#fafbfa}.unit-range-days button.in-range{background:#dcefe8}.unit-range-days button.range-start,.unit-range-days button.range-end{color:#fff;background:#2f7d69;border-radius:16px;font-weight:800}.unit-range-picker>p{text-align:center;color:#687771;margin:7px 0 0;font-size:7px}.period-editor-modal{width:min(520px,100vw - 20px)}.period-editor-modal>.unit-range-picker{margin:12px}@media (width<=600px){.unit-range-days button{height:36px}.unit-range-picker{padding:8px}.period-editor-modal>.unit-range-picker{margin:8px}.unit-date-range-field{grid-column:1/3}}.unit-planner-modal{width:min(980px,100vw - 24px);overflow-x:hidden}.unit-planner-modal .title-field input::placeholder,.unit-planner-modal .goal-field textarea::placeholder{color:#aeb8b4;opacity:1;font-weight:400}.unit-planner-modal>.modal-foot{z-index:12;box-shadow:0 -6px 14px #203a3020}@media (width<=600px){.unit-range-trigger{grid-template-columns:22px 1fr;padding:6px 8px}.unit-range-trigger small{grid-column:2}.unit-planner-modal>.modal-foot{flex-wrap:nowrap}.unit-planner-modal>.modal-foot>span{display:none}.unit-planner-modal>.modal-foot button{flex:1}}@media (orientation:landscape) and (height<=650px){.unit-planner-modal{height:calc(100dvh - 12px);max-height:calc(100dvh - 12px);padding:8px 12px}.unit-planner-modal>.modal-head{padding:6px 10px}.unit-planner-modal>.modal-head p{display:none}.unit-basic-form{gap:6px;margin:6px 0}.unit-range-picker{max-width:460px;margin:0 auto}.unit-planner-modal>.modal-foot{padding:7px 10px}}.unit-planner-modal{flex-direction:column!important;width:min(1100px,100vw - 12px)!important;max-width:calc(100vw - 12px)!important;height:calc(100svh - 12px)!important;max-height:calc(100svh - 12px)!important;padding:0!important;display:flex!important;overflow:hidden!important}.unit-planner-modal>.modal-head,.unit-planner-modal>.modal-foot{z-index:10;background:#fff;flex:none!important;position:relative!important;top:auto!important;bottom:auto!important}.unit-planner-modal>.modal-head{padding:10px 14px}.unit-planner-modal>.modal-foot{padding:9px 14px;margin:0!important}.unit-planner-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-width:0;min-height:0;padding:0 14px 12px;overflow:hidden auto}.unit-planner-scroll>*{min-width:0;max-width:100%}.unit-planner-scroll .lesson-plan-table{width:100%;max-width:100%;max-height:none!important;overflow:visible!important}.unit-modal-backdrop:before{content:"";z-index:-1;pointer-events:none;background:#1f2d2a66;position:fixed;inset:-100vmax}:is(body:has(.unit-planner-modal) .ink-actions,body:has(.unit-planner-modal) .ink-edit){visibility:hidden!important}@media (width<=600px){.unit-modal-backdrop{padding:6px!important}.unit-planner-modal{width:100%!important;max-width:100%!important;height:calc(100svh - 12px)!important}.unit-planner-scroll{padding:0 8px 8px}.unit-planner-scroll .lesson-plan-row:not(.head){width:100%;min-width:0}.unit-planner-modal>.modal-foot{padding:7px 8px}.unit-planner-modal>.modal-foot button{min-width:0}}@media (width>=901px) and (height>=651px) and (hover:hover) and (pointer:fine){.unit-modal-backdrop{align-items:stretch;padding-top:6px!important;padding-bottom:6px!important;overflow:hidden!important}.unit-planner-modal{min-height:0;height:auto!important;max-height:none!important}}@media (orientation:landscape) and (height<=650px){.unit-modal-backdrop{align-items:stretch;padding-top:max(6px,env(safe-area-inset-top))!important;padding-bottom:max(6px,env(safe-area-inset-bottom))!important}.unit-planner-modal{min-height:0;height:auto!important;max-height:none!important}.unit-planner-scroll{padding:0 10px 8px}.unit-planner-modal>.modal-head,.unit-planner-modal>.modal-foot{padding:6px 10px}}.subject-editor-backdrop{padding:6px!important;overflow:hidden!important}.subject-editor{min-width:0;min-height:0;flex-direction:column!important;width:min(620px,100%)!important;max-width:100%!important;max-height:calc(100svh - 12px)!important;display:flex!important;overflow:hidden!important}.subject-editor>.modal-head,.subject-editor>.add-subject,.subject-editor>.modal-foot{flex:none}.subject-editor-list{flex:auto;grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;min-height:0;overflow:hidden auto}.subject-editor-item,.subject-editor-item>label,.subject-editor-item span{min-width:0}.subject-editor-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.subject-editor>.add-subject,.subject-editor>.add-subject input{min-width:0}.subject-editor>.add-subject button{flex:none}:is(body:has(.subject-editor) .ink-actions,body:has(.subject-editor) .ink-edit){visibility:hidden!important}@media (width<=900px){.subject-editor-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (orientation:landscape) and (height<=650px){.subject-editor-backdrop{align-items:stretch}.subject-editor{height:auto!important;max-height:none!important}.subject-editor>.modal-head{padding:7px 10px}.subject-editor>.modal-head p{display:none}.subject-editor-list{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(38px,auto);align-content:start;gap:5px;padding:8px}.subject-editor-item{min-height:38px}.subject-editor-list label{padding:6px}.subject-editor>.add-subject,.subject-editor>.modal-foot{padding:7px 10px}}@media (width<=430px){.subject-editor>.modal-head{padding:9px 10px}.subject-editor>.modal-foot{padding:8px 10px}.subject-editor>.modal-foot span{display:none}.subject-editor>.modal-foot button{min-width:96px;margin-left:auto}}@media (width<=900px){.theme-preset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.annual-calendar-view{height:var(--calendar-viewport-height,calc(100dvh - 210px));min-height:0}}@media (width<=700px){.settings-page-host,.settings-page-host>.page-title,.settings-page-host>.settings-layout{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.theme-preset-grid{gap:7px}.theme-preset-grid>button{grid-template-columns:24px minmax(0,1fr) 16px;min-height:54px;padding:8px}.theme-preset-grid i{width:22px;height:22px}.display-option-grid{grid-template-columns:1fr}.annual-calendar-view{height:var(--calendar-viewport-height,calc(100dvh - 255px));grid-template-rows:24px repeat(var(--calendar-weeks,6),minmax(0,1fr));min-height:0}.annual-calendar-view .cal-day{min-height:0}.annual-calendar-view .cal-day button small{display:none}body:has(.annual-calendar-view) main{min-height:calc(100dvh - 88px)}}.materials-compact-head{grid-template-columns:auto minmax(0,1fr) auto auto}.materials-direct-add{color:#216c57;white-space:nowrap;cursor:pointer;background:#edf7f3;border:1px solid #38806b;border-radius:7px;justify-content:center;align-items:center;gap:4px;height:36px;padding:0 8px;font-size:9px;font-weight:700;display:flex}.materials-direct-add svg{width:14px}.materials-direct-add.busy{opacity:.6;pointer-events:none}.document-materials.dense-document-list>article.direct-material{grid-template-columns:minmax(0,1fr) 42px 34px}.document-delete{color:#a4473d;background:#fff8f7;border:0;border-left:1px solid #eadbd8;place-items:center;height:100%;padding:0;display:grid}.document-delete svg{width:14px}.photo-delete{color:#fff;background:#8c3935dc;border:0;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;display:grid;position:absolute;top:5px;right:5px;box-shadow:0 1px 4px #0003}.photo-delete svg{width:15px}@media (width<=700px){.materials-direct-add{height:38px;padding:0 6px}.document-materials.dense-document-list>article.direct-material{grid-template-columns:minmax(0,1fr) 38px 36px}.photo-delete{width:28px;height:28px;top:4px;right:4px}}@media (width>=701px) and (width<=1100px){.page-materials .materials-direct-add{font-size:12px}.page-materials .document-materials.dense-document-list>article.direct-material{grid-template-columns:minmax(0,1fr) 50px 42px}}@media (width<=600px){.page-annual .content{padding-left:4px;padding-right:4px}.annual-command,.annual-calendar-view,.annual-list{box-sizing:border-box;width:100%;max-width:100%;margin-left:0;margin-right:0}.annual-command{gap:6px;margin-top:1px;margin-bottom:7px}.annual-command-head{grid-template-columns:1fr auto 1fr;gap:5px;min-height:37px}.annual-command-head h1{font-size:19px}.annual-command-head>b{font-size:13px}.annual-settings{min-height:36px;padding:0 8px;font-size:10px}.annual-settings svg{width:15px}.annual-tools-menu{width:min(260px,100vw - 16px)}.annual-command-row{grid-template-columns:1.28fr repeat(3,1fr);gap:4px}.annual-command-row>button{border-radius:6px;gap:2px;height:46px;padding:0 3px;font-size:10px}.annual-command-row>button svg{width:15px}.page-units .content{padding-left:4px;padding-right:4px}.unit-command,.subject-tabs,.unit-table{box-sizing:border-box;width:100%;max-width:100%;margin-left:0;margin-right:0}.unit-command{gap:6px;margin-top:1px;margin-bottom:7px}.unit-command-head{min-height:37px}.unit-command-head h1{font-size:19px}.unit-settings{min-height:36px;padding:0 8px;font-size:10px}.unit-settings svg{width:15px}.unit-tools-menu{width:min(260px,100vw - 16px)}.unit-command-row{gap:4px}.unit-command-row>button{border-radius:6px;height:46px;padding:0 5px;font-size:11px}.unit-command-row>button svg{width:16px}.subject-tabs{margin-bottom:7px}}@media (width<=430px){.annual-calendar-view{height:var(--calendar-viewport-height,calc(100dvh - 248px));min-height:0}}@media (orientation:landscape){body:has(.annual-calendar-view){overflow:hidden auto}.annual-calendar-view{grid-template-rows:28px repeat(var(--calendar-weeks,6),minmax(86px,auto));scrollbar-gutter:auto;height:auto!important;overflow:hidden visible!important}body:has(.annual-calendar-view) .content{padding-bottom:18px}.attachment-backdrop{padding:0!important}.attachment-viewer{border-radius:0!important;width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;padding:2px 4px!important}.attachment-viewer>.modal-head{display:none}.attachment-viewer>.attachment-toolbar{flex-wrap:nowrap!important;height:44px!important;min-height:44px!important;margin:0 0 2px!important;padding:2px 82px 2px 0!important;overflow:auto hidden!important}.attachment-viewer .attachment-toolbar button,.attachment-viewer .attachment-toolbar a,.attachment-viewer .pdf-zoom-controls select{height:38px!important;min-height:38px!important;padding-top:5px!important;padding-bottom:5px!important}.attachment-viewer .pdf-zoom-controls{flex:none!important;height:38px!important;min-height:38px!important}.attachment-viewer .attachment-back-button{min-width:76px;height:38px;top:3px;right:4px}.attachment-viewer>.attachment-stage{flex:auto;height:auto!important;min-height:0!important}}.attachment-stage.pdf-stage,.attachment-stage.image-stage{touch-action:none}.app button,.app [role=button],.app label.outline,.app a.primary,.app a.outline,.app summary,.attachment-pen-settings{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.app button,.app [role=button]{touch-action:manipulation}.annual-calendar-view .calendar-event-title{white-space:nowrap;align-items:center;gap:3px;min-width:0;overflow:visible;display:flex!important}.annual-calendar-view .calendar-event-title>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.annual-calendar-view .calendar-event-title .event-attachment-icon{color:#345f53;flex:0 0 12px;margin-left:0!important;display:block!important}.event-editor-form label,.unit-basic-form label{font-size:11px}.event-editor-form input,.event-editor-form textarea,.unit-basic-form input,.unit-basic-form select,.unit-basic-form textarea{font-size:14px;line-height:1.25}.event-date-field{color:#56635e;flex-direction:column;gap:7px;min-width:0;font-size:11px;font-weight:700;display:flex}.event-date-picker{min-width:0;position:relative}.event-date-trigger{color:#34433e;text-align:left;background:#fff;border:1px solid #d4dad6;border-radius:5px;align-items:center;gap:7px;width:100%;height:38px;padding:0 9px;font-size:14px;display:flex}.event-date-trigger svg{color:#57746a;flex:0 0 15px;width:15px;height:15px}.event-date-calendar{z-index:45;background:#fff;border:1px solid #cfd8d3;width:252px;max-width:min(82vw,252px);padding:5px;position:absolute;top:calc(100% + 2px);left:0;box-shadow:0 5px 12px #1c342b24}.event-date-calendar-head{grid-template-columns:30px 1fr 30px;align-items:center;height:31px;display:grid}.event-date-calendar-head b{text-align:center;color:#34483f;font-size:12px}.event-date-calendar-head button{color:#4d665c;background:#fff;border:0;place-items:center;height:28px;display:grid}.event-date-calendar-head svg{width:14px;height:14px}.event-date-weekdays,.event-date-days{grid-template-columns:repeat(7,1fr);display:grid}.event-date-weekdays span{text-align:center;color:#7a8681;padding:3px 0;font-size:9px;font-weight:500}.event-date-weekdays span:first-child{color:#b25252}.event-date-weekdays span:last-child{color:#47709a}.event-date-days>span,.event-date-days>button{height:30px}.event-date-days>button{color:#263a33;background:#fff;border:0;font-size:13px;font-weight:500}.event-date-days>button:nth-child(7n+1){color:#b25252}.event-date-days>button:nth-child(7n){color:#47709a}.event-date-days>button.selected{background:var(--ui-accent);color:#fff;border-radius:4px;font-weight:800}.event-date-days>button:active{background:var(--ui-accent-soft)}.event-time-choice{grid-template-columns:minmax(92px,.8fr) minmax(132px,1.2fr);gap:8px;min-width:0;display:grid}.event-time-choice>label,.event-period-field{min-width:0}.event-period-field{color:#56635e;flex-direction:column;gap:7px;font-size:11px;font-weight:700;display:flex}.event-period-picker{min-width:0;position:relative}.event-period-trigger{color:#34433e;text-align:left;background:#fff;border:1px solid #d4dad6;border-radius:5px;justify-content:space-between;align-items:center;gap:4px;width:100%;min-width:0;height:38px;padding:0 7px 0 9px;font-size:14px;display:flex}.event-period-trigger>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.event-period-trigger svg{flex:0 0 13px;width:13px;height:13px}.event-period-menu{z-index:40;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #cfd8d3;flex-direction:column;width:100%;max-height:min(260px,48svh);display:flex;position:absolute;top:calc(100% + 2px);left:0;overflow-y:auto;box-shadow:0 5px 12px #1c342b24}.event-period-menu button{color:#40514b;text-align:left;white-space:nowrap;background:#fff;border:0;border-bottom:1px solid #e7ebe9;flex:none;min-height:34px;padding:6px 8px;font-size:10px;line-height:1.2}.event-period-menu button:last-child{border-bottom:0}.event-period-menu button:hover,.event-period-menu button.active{color:#263d35;background:#f3f6f4}.event-clock-wrap{min-width:0;position:relative}.event-clock-input{grid-template-columns:minmax(0,1fr) 8px minmax(0,1fr);align-items:center;gap:3px;min-width:0;display:grid}.event-clock-input input{text-align:center;width:100%;min-width:0}.event-clock-input input.active{border-color:#799b8e;box-shadow:inset 0 0 0 1px #799b8e}.event-clock-input span{text-align:center;color:#65736d}.event-number-pad{z-index:40;background:#fff;border:1px solid #cfd8d3;grid-template-columns:repeat(3,1fr);width:100%;min-width:132px;display:grid;position:absolute;top:calc(100% + 2px);left:0;box-shadow:0 5px 12px #1c342b24}.event-number-pad button{color:#263d35;background:#fff;border:1px solid #e7ebe9;border-top:0;border-left:0;min-height:36px;font-size:12px}.event-number-pad button:nth-child(3n){border-right:0}.event-number-pad button:nth-last-child(-n+3){border-bottom:0}.event-number-pad button:active{background:#f0f3f1}.event-period-trigger:disabled,.event-clock-input input:disabled{color:#9aa49f;opacity:1;background:#eef1ef}.lesson-line.empty-period .lesson-memo,.week-lesson.empty-period textarea,.portrait-lesson.empty-period textarea{color:#17201d!important;background:#f0f2f1!important}.lesson-line.empty-period .lesson-memo::placeholder,.week-lesson.empty-period textarea::placeholder,.portrait-lesson.empty-period textarea::placeholder{color:#a6afab}.lesson-memo.memo-filled,.week-lesson textarea:not(:placeholder-shown),.portrait-lesson textarea.memo-filled{font-weight:400;color:#17201d!important}.schedule-break-row{border-bottom:1px solid var(--line);background:#f0f2f1;grid-template-columns:70px minmax(0,1fr);display:grid}.schedule-break-row>b{border-right:1px solid var(--line);color:#65716c;place-items:center;padding:5px;font-size:9px;display:grid}.schedule-break-row textarea,.week-break-cell textarea{resize:none;color:#7d8783;background:0 0;border:0;outline:none;width:100%;height:30px;min-height:30px;padding:6px 8px;font-size:10px;line-height:1.5;overflow:hidden}.schedule-break-row.has-memo textarea,.week-break-cell.has-memo textarea{color:#b54f43;background:#fff8f6;font-weight:700}.week-break-label,.week-break-cell{border-top:1px solid var(--line);border-right:1px solid var(--line);background:#f0f2f1;min-height:34px}.week-break-label{color:#65716c;text-align:center;place-items:center;padding:4px;font-size:8px;font-weight:700;display:grid}.week-break-cell{align-items:center;display:flex}.week-break-cell>b{color:#65716c;flex:0 0 58px;padding-left:8px;font-size:9px}.portrait-week>.week-break-cell{border-right:0;border-bottom:1px solid var(--line)}.todo-strip label{padding-right:22px;position:relative}.todo-delete{color:#a9b0ad;background:0 0;border:0;place-items:center;width:20px;height:20px;padding:0;display:grid;position:absolute;right:1px}.todo-delete:hover{color:#b44f43}.todo-delete svg{width:13px;height:13px}.pdf-capture-host{--ui-accent:#2f7d69;--ui-accent-dark:#225f51;--ui-accent-soft:#e7f2ee;--ui-page:#fff;font-size:initial}.offline-banner{z-index:260;color:#684a18;background:#fff1cf;border-bottom:1px solid #cf9c45;justify-content:center;align-items:center;gap:9px;min-height:38px;padding:7px 14px;display:flex;position:sticky;top:0}.offline-banner>svg{width:19px;min-width:19px}.offline-banner>span{align-items:baseline;gap:8px;display:flex}.offline-banner b{font-size:11px}.offline-banner small{font-size:9px}@media (width<=700px){.offline-banner{justify-content:flex-start}.offline-banner>span{gap:1px;display:grid}}.school-events .event-attachment-link{color:#fff;vertical-align:middle;background:#ffffff1f;border:1px solid #ffffff70;border-radius:50%;place-items:center;width:28px;height:28px;margin-left:4px;display:inline-grid}.school-events .event-attachment-icon{color:#fff;margin:0;width:16px!important;height:16px!important}.school-events .school-event-item{cursor:pointer;touch-action:pan-x;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;transition:background-color .15s,box-shadow .15s}.school-events .school-event-item:hover{background:#ffffff25}.school-events .school-event-item:focus-visible{outline-offset:-2px;outline:2px solid #fff;box-shadow:0 0 0 3px #ffffff45}.school-events .school-event-item strong{align-items:center;gap:3px;display:flex}.school-events>b>span{font-size:inherit;color:inherit}.school-events .school-event-add{z-index:3;color:#ffffffd6;width:28px;height:28px;box-shadow:none;background:0 0;border:0;flex:0 0 28px;place-items:center;margin-left:auto;margin-right:-6px;padding:0;display:grid;position:sticky;right:0}.school-events .school-event-add:hover{color:#fff}.school-events .school-event-add:focus-visible{outline-offset:0;outline:1px solid #fff}.school-events .school-event-add svg{width:12px;height:12px;margin:0}.app.theme-mono .school-events .school-event-add{color:#fff}.compact-delete-layer{z-index:260;background:0 0;position:fixed;inset:0}.compact-delete-popover{box-sizing:border-box;color:#33453f;background:#fff;border:1px solid #dfb4ad;border-radius:10px;grid-template-columns:minmax(0,1fr) auto 34px;align-items:center;gap:6px;height:54px;padding:6px 7px 6px 11px;display:grid;position:fixed;box-shadow:0 8px 24px #233c3450}.compact-delete-popover>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.compact-delete-popover button{touch-action:manipulation;border:0;border-radius:7px;justify-content:center;align-items:center;gap:4px;height:40px;font-weight:800;display:flex}.compact-delete-confirm{color:#fff;background:#b94f43;padding:0 10px;font-size:12px}.compact-delete-confirm svg{width:15px;height:15px}.compact-delete-close{color:#617069;background:#f2f4f3;padding:0}.compact-delete-close svg{width:17px;height:17px}:is(body:has(.event-editor-modal) .ink-actions,body:has(.event-editor-modal) .ink-edit){visibility:hidden!important}.app input::placeholder,.app textarea::placeholder{color:#bfc7c3!important;opacity:1!important;font-weight:400!important}@media (orientation:landscape) and (height<=650px){.modal-backdrop:has(.event-editor-modal){padding:max(5px,env(safe-area-inset-top)) 6px max(5px,env(safe-area-inset-bottom));align-items:stretch;overflow:hidden}.event-editor-modal{place-self:stretch center;width:min(760px,100%);height:auto;min-height:0;max-height:none;padding:0;overflow:hidden}.event-editor-modal>.modal-head{padding:5px 10px}.event-editor-modal>.modal-head small,.event-editor-modal>.modal-head p{display:none}.event-editor-modal>.modal-head h3{margin:0;font-size:13px}.event-editor-modal .event-editor-form{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;flex:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 8px;min-height:0;margin:0;padding:6px 10px;overflow:hidden auto}.event-editor-modal .event-editor-form label{gap:2px;font-size:8px}.event-editor-modal .event-editor-form input,.event-editor-modal .event-editor-form textarea{min-width:0;padding:6px;font-size:12px}.event-editor-modal .event-date-field{gap:2px;font-size:8px}.event-editor-modal .event-date-trigger{height:31px;font-size:12px}.event-editor-modal .event-date-calendar{width:226px;padding:4px}.event-editor-modal .event-date-days>span,.event-editor-modal .event-date-days>button{height:27px}.event-editor-modal .event-date-days>button{font-size:12px}.event-editor-modal .event-period-field{gap:2px;font-size:8px}.event-editor-modal .event-period-trigger{height:31px;font-size:12px}.event-editor-modal .event-period-menu button{min-height:31px;padding:5px 7px;font-size:9px}.event-editor-modal .event-clock-input{gap:2px}.event-editor-modal .event-number-pad button{min-height:32px;font-size:11px}.event-editor-modal .event-editor-form textarea{min-height:40px}.event-editor-modal .event-title-field,.event-editor-modal .event-note-field,.event-editor-modal .event-attachment-field{grid-column:1/3}.event-editor-modal .event-attachment-field{gap:5px;padding:6px}.event-editor-modal>.modal-foot{padding:5px 10px}.event-editor-modal>.modal-foot button{min-height:32px}}@media (width<=600px),(orientation:landscape) and (height<=500px) and (pointer:coarse){.school-events>b{background:inherit;border-right:0;gap:0;padding-right:6px}.school-events>b>span{display:none}}.sharing-settings-flow{flex-direction:column;display:flex}.sharing-settings-flow>.settings-head{order:-3}.sharing-settings-flow>.sync-registration{border-color:var(--ui-accent);background:var(--ui-accent-soft);order:-2;margin:0 0 14px}.sharing-settings-flow>.sync-provider-panel{order:-1}.sync-registration-head b{font-size:14px}.sync-registration-head span{font-size:10px}.welcome-backdrop{z-index:300;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#17332d99}.welcome-modal{text-align:center;width:min(560px,100vw - 24px);padding:26px}.welcome-mark{background:var(--ui-accent);color:#fff;border-radius:13px;place-items:center;width:48px;height:48px;margin:0 auto 12px;font-size:22px;font-weight:800;display:grid}.welcome-modal h2{color:#263b34;margin:0;font-size:22px}.welcome-modal>p{color:#68766f;max-width:430px;margin:9px auto 18px;font-size:11px;line-height:1.7}.welcome-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.welcome-options>button{color:#34463f;text-align:left;background:#fff;border:1px solid #d5ded9;border-radius:11px;grid-template-columns:32px 1fr;align-items:center;gap:9px;min-height:92px;padding:14px;display:grid}.welcome-options>button.sample{border-color:var(--ui-accent);background:var(--ui-accent-soft)}.welcome-options svg{width:25px;color:var(--ui-accent)}.welcome-options span{gap:4px;display:grid}.welcome-options b{font-size:12px}.welcome-options small{color:#718079;font-size:9px;line-height:1.5}.welcome-close{color:#697870;background:0 0;border:0;margin-top:13px;font-size:9px;text-decoration:underline}.reset-section{background:#fffaf4;border:1px solid #e2c5a8;border-radius:10px;margin-top:18px;padding:14px}.reset-section-head{align-items:flex-start;gap:9px;display:flex}.reset-section-head>svg{color:#a8612e;width:22px}.reset-section-head h3{color:#74431f;margin:0;font-size:13px}.reset-section-head p{color:#806b5c;margin:4px 0 0;font-size:9px}.reset-actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:12px;display:grid}.reset-actions>button{color:#4d4b46;text-align:left;background:#fff;border:1px solid #d8c9bb;border-radius:8px;grid-template-columns:25px 1fr;align-items:center;gap:8px;padding:11px;display:grid}.reset-actions>button.danger{color:#8e3d30;border-color:#dda99e}.reset-actions svg{width:20px}.reset-actions span{gap:3px;display:grid}.reset-actions b{font-size:10px}.reset-actions small{color:#7c7771;font-size:8px;line-height:1.45}@media (width<=700px){.welcome-modal{padding:20px 14px}.welcome-options,.reset-actions{grid-template-columns:1fr}.welcome-options>button{min-height:78px}.school-events .event-attachment-link{width:34px;height:34px}}.getting-started-title>div>p{color:#687770;margin:5px 0 0;font-size:11px}.setup-progress{color:#687770;background:#fff;border:1px solid #d7dfdb;border-radius:18px;align-items:center;gap:6px;padding:8px 13px;font-size:10px;font-weight:800;display:inline-flex}.setup-progress svg{width:16px}.setup-progress.ready{color:#28634e;background:#eaf6f0;border-color:#8fc0aa}.getting-started-hero{max-width:980px;margin:0 auto;padding:22px}.getting-started-hero>div:first-child>b{color:#294b41;font-family:Noto Serif JP,serif;font-size:18px}.getting-started-hero>div:first-child>p{color:#687770;max-width:720px;margin:6px 0 18px;font-size:11px;line-height:1.8}.setup-steps{gap:11px;display:grid}.setup-steps article{background:#fbfcfb;border:1px solid #d9e0dc;border-radius:9px;grid-template-columns:42px minmax(0,1fr) 25px;align-items:start;gap:13px;padding:17px;display:grid;position:relative}.setup-steps article.complete{background:#f3faf6;border-color:#9dc8b5}.setup-number{color:#fff;background:#426d60;border-radius:50%;place-items:center;width:36px;height:36px;font-size:15px;font-weight:900;display:grid}.setup-steps h2{color:#294b41;margin:0;font-size:14px}.setup-steps p{color:#687770;margin:5px 0 11px;font-size:10px;line-height:1.7}.setup-check{color:#32805f;width:22px}.setup-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.setup-actions button,.setup-steps article>div>button{color:#365c50;background:#fff;border:1px solid #b9c9c1;border-radius:6px;align-items:center;gap:5px;padding:8px 11px;font-size:9px;font-weight:800;display:inline-flex}.setup-actions button svg,.setup-steps article>div>button svg{width:14px}.setup-actions button.sample{background:#edf7f2}.setup-confirm{color:#4f625b;background:#fff;border-radius:5px;align-items:center;gap:6px;padding:7px 10px;font-size:9px;font-weight:700;display:flex}.setup-finish{border-top:1px solid #dce3df;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:16px;padding-top:16px;display:grid}.setup-finish>label{color:#405a51;align-items:center;gap:7px;font-size:10px;font-weight:700;display:flex}.setup-finish>label.disabled{color:#9aa5a0}.setup-finish>button{align-items:center;gap:5px;display:flex}.setup-finish>button svg{width:15px}.setup-finish>small{color:#7b8782;grid-column:1/-1;font-size:8px}.settings-title-actions{align-items:center;gap:9px;display:flex}.settings-title-actions>button{align-items:center;gap:5px;display:flex}.settings-title-actions>button svg{width:14px}.settings-nav-group{color:#798680;letter-spacing:.08em;margin:11px 8px 5px;font-size:8px;display:block}.settings-nav-group:first-child{margin-top:2px}@media (width<=700px){.getting-started-hero{padding:13px}.setup-steps article{grid-template-columns:34px minmax(0,1fr) 20px;gap:8px;padding:13px 10px}.setup-number{width:30px;height:30px;font-size:12px}.setup-actions{align-items:stretch}.setup-actions button,.setup-steps article>div>button,.setup-confirm{min-height:38px}.setup-finish{grid-template-columns:1fr}.setup-finish>button{justify-content:center}.settings-title-actions{justify-content:space-between;width:100%}.settings-title-actions .autosave{white-space:nowrap}}.onboarding-sync-choice{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.setup-steps .onboarding-sync-choice>button{justify-items:start;gap:3px;min-height:58px;padding:10px 12px;display:grid}.onboarding-sync-choice button.selected{border-color:var(--ui-accent);background:var(--ui-accent-soft);box-shadow:inset 4px 0 var(--ui-accent)}.onboarding-sync-choice button b{font-size:11px}.onboarding-sync-choice button small{color:#65756f;margin:0;font-size:8px;font-weight:500}.onboarding-google-sync{background:#f7faf8;border:1px solid #d7e2dd;border-radius:8px;gap:9px;margin-top:10px;padding:11px;display:grid}.onboarding-google-sync>div{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 10px;display:grid}.onboarding-google-sync>div>b,.onboarding-google-sync>div>span{grid-column:1}.onboarding-google-sync>div>b{font-size:11px}.onboarding-google-sync>div>span{color:#61726b;font-size:9px}.setup-steps .onboarding-google-sync>div>button{grid-area:1/2/3;min-height:36px}.setup-steps .onboarding-google-sync button.connected{border:1px solid var(--ui-accent);background:var(--ui-accent);color:#fff;border-radius:6px;padding:7px 10px}.onboarding-first-sync{border-top:1px solid #dbe3df;padding-top:9px}.onboarding-first-sync>div{grid-column:1/-1;gap:7px;margin-top:6px;display:flex}.onboarding-first-sync>div button{min-height:36px}@media (width<=700px){.onboarding-sync-choice,.onboarding-google-sync>div{grid-template-columns:1fr}.setup-steps .onboarding-google-sync>div>button{grid-area:auto/1;justify-content:center;justify-self:stretch}.onboarding-first-sync>div{flex-direction:column}.settings-page-title{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin:2px 0 8px;display:grid}.settings-page-title>div:first-child{min-width:0}.settings-page-title h1{font-size:21px}.settings-page-title>.settings-title-actions{width:auto;min-width:0;margin:0;padding:0;display:block;overflow:visible}.settings-page-title .settings-title-actions>button{white-space:nowrap;min-height:40px;padding:0 12px;font-size:12px}.settings-page-title .settings-title-actions>button svg{width:16px}.settings-page-title .autosave{display:none}.settings-layout{display:block}.settings-nav{box-sizing:border-box;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;width:100%;max-width:100%;margin:0 0 8px;padding:4px;display:grid;position:static;overflow:visible}.settings-nav button{text-align:center;white-space:normal;flex-direction:column;justify-content:center;gap:2px;min-width:0;min-height:52px;padding:5px 2px;font-size:9px;line-height:1.2;display:flex}.settings-nav button svg{flex:none;width:17px;height:17px}.settings-panel{box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin:0;padding:10px 4px;overflow:hidden}}.settings-section-title{border-left:4px solid var(--ui-accent);color:#294b41;margin:16px 0 9px;padding-left:9px;font-size:15px}.timetable-cycle-settings{margin-bottom:4px}.term-settings-title{margin-top:22px}.timetable-week-toolbar{justify-content:space-between;align-items:center;gap:8px;margin:10px 0;display:flex}.timetable-week-toolbar .setting-weeks{margin:0}.timetable-week-toolbar .actions{gap:6px;display:flex}.timetable-week-toolbar .actions button{align-items:center;gap:4px;min-height:36px;display:flex}.timetable-week-toolbar .actions svg{width:15px}@media (width<=700px){.settings-section-title{font-size:15px}.timetable-cycle-settings{grid-template-columns:1fr}.academic-calendar-settings,.term-date-grid,.term-date-grid article{box-sizing:border-box;min-width:0;max-width:100%}.timetable-cycle-settings,.period-count-settings,.timetable-week-toolbar,.editable-timetable,.academic-calendar-settings{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.timetable-week-toolbar{gap:4px}.timetable-week-toolbar .seg{min-width:0}.timetable-week-toolbar .seg button{padding-left:8px;padding-right:8px}.timetable-week-toolbar .actions{gap:3px;min-width:0;margin-left:auto}.timetable-week-toolbar .actions button{min-width:0;padding:0 6px;font-size:9px}.timetable-week-toolbar .actions svg{width:13px}.academic-calendar-settings>.cycle-reset-option{order:-1;margin-bottom:10px}}.roster-settings-head{position:relative}.roster-tools-menu{flex:none;position:relative}.roster-tools-menu summary{color:#345d51;cursor:pointer;background:#fff;border:1px solid #b8c9c2;border-radius:7px;align-items:center;gap:5px;min-height:38px;padding:0 12px;font-size:11px;font-weight:800;list-style:none;display:flex}.roster-tools-menu summary::-webkit-details-marker{display:none}.roster-tools-menu summary svg{width:16px}.roster-tools-menu>div{z-index:25;background:#fff;border:1px solid #cbd6d1;border-radius:9px;gap:4px;width:250px;padding:6px;display:grid;position:absolute;top:calc(100% + 5px);right:0;box-shadow:0 10px 28px #26443b2e}.roster-tools-menu>div button,.roster-tools-menu>div label{color:#315b50;cursor:pointer;background:#f3f8f6;border:0;border-radius:6px;align-items:center;gap:7px;min-height:40px;padding:0 9px;font-size:11px;font-weight:700;display:flex}.roster-tools-menu>div button:hover,.roster-tools-menu>div label:hover{background:#e5f2ed}.roster-tools-menu>div svg{width:16px}.roster-tools-menu>div small{color:#718079;padding:5px 7px;font-size:8px;line-height:1.45}.roster-setting-head .roster-pdf-button{white-space:nowrap;align-items:center;gap:5px;min-height:38px;margin-left:auto;display:flex}.roster-setting-head .roster-pdf-button svg{width:16px}@media (width<=700px){.roster-settings-head{flex-direction:row;align-items:center;width:100%;min-width:0;max-width:100%}.roster-settings-head>div{min-width:0}.roster-settings-head p{display:none}.roster-tools-menu>div{width:min(280px,100vw - 16px);max-width:none;right:0}.roster-setting-head{grid-template-columns:minmax(0,1fr) auto auto;gap:6px;width:100%;min-width:0;max-width:100%;display:grid}.roster-setting-head select{width:100%;min-width:0}.roster-setting-head .roster-pdf-button{margin:0;padding:0 8px;font-size:10px}.roster-setting-head>span{grid-column:1/-1}}.period-editor-modal{width:min(430px,100vw - 24px);padding:12px}.subject-editor{width:min(560px,100vw - 24px)}.welcome-modal{width:min(440px,100vw - 24px);padding:20px}.event-editor-modal{width:min(540px,100vw - 24px);padding:18px 20px}.journal-export-modal .journal-export-body{padding:12px}.journal-export-modal .journal-export-summary{padding:9px}.journal-export-modal .journal-export-choices>button{min-height:66px;padding:9px}.journal-export-modal .modal-foot{padding-top:9px;padding-bottom:9px}@media (width<=600px){.modal-backdrop:not(.attachment-backdrop):not(.document-preview-backdrop):not(.brief-preview-backdrop):not(.unit-modal-backdrop):not(.lesson-detail-backdrop):not(.portrait-week-detail-backdrop){padding:8px}.period-editor-modal{width:min(360px,100vw - 16px);padding:6px}.period-editor-modal>.modal-head p,.period-editor-modal>.modal-head small{display:none}.period-editor-modal>.unit-range-picker{margin:4px}.subject-editor{width:min(430px,100vw - 16px)!important}.subject-editor>.modal-head p,.subject-editor>.modal-head small{display:none}.journal-export-modal{width:min(380px,100vw - 16px);max-height:calc(100svh - 16px)}.journal-export-modal .modal-head small,.journal-export-modal .modal-foot>span{display:none}.journal-export-modal .journal-export-choices{gap:5px;margin-top:8px}.journal-export-modal .journal-export-choices>button{min-height:48px;padding:7px 9px}.journal-export-modal .journal-export-choices small{display:none}.journal-export-modal .journal-export-warning{margin-top:7px;padding:7px 8px;font-size:9px}.welcome-modal{width:min(380px,100vw - 16px);padding:15px 12px}.welcome-modal h2{font-size:19px}.welcome-modal>p{margin:6px auto 11px}.event-editor-modal{width:min(430px,100vw - 16px);padding:0}}.timetable-stamp-panel{box-sizing:border-box;background:#f5faf8;border:1px solid #cbded7;border-radius:9px;width:100%;min-width:0;max-width:100%;margin:0 0 12px;padding:10px}.timetable-stamp-panel>div:first-child{align-items:baseline;gap:9px;margin-bottom:8px;display:flex}.timetable-stamp-panel>div:first-child b{color:#294f44;white-space:nowrap;font-size:12px}.timetable-stamp-panel>div:first-child span{color:#66766f;font-size:9px}.timetable-stamp-palette{overscroll-behavior-x:contain;grid-template-rows:repeat(2,38px);grid-auto-columns:minmax(62px,1fr);grid-auto-flow:column;gap:5px;max-width:100%;padding:2px 1px 5px;display:grid;overflow-x:auto}.timetable-stamp-palette button{border:1px solid color-mix(in srgb,var(--stamp-color,#75998e) 55%,#cbd5d1);background:color-mix(in srgb,var(--stamp-color,#75998e) 13%,#fff);color:#29483f;cursor:pointer;border-radius:7px;min-width:62px;font-size:10px;font-weight:800;position:relative}.timetable-stamp-palette button.active{border-color:var(--ui-accent);background:var(--ui-accent);color:#fff;box-shadow:0 0 0 2px var(--ui-accent-soft)}.timetable-stamp-palette button.eraser{background:#fff;border-style:dashed}.timetable-stamp-palette button.eraser.active{background:#80564f;border-style:solid}.edit-cell .timetable-stamp-cell{border:1px solid color-mix(in srgb,var(--cell-color,#9db0a9) 45%,#d8dedb);background:color-mix(in srgb,var(--cell-color,#9db0a9) 15%,#fff);color:#294139;cursor:default;border-radius:5px;width:100%;min-width:0;height:34px;font-size:11px;font-weight:800}.edit-cell .timetable-stamp-cell.ready{cursor:pointer}.edit-cell .timetable-stamp-cell.ready:hover,.edit-cell .timetable-stamp-cell.ready:focus-visible{border-color:var(--ui-accent);box-shadow:0 0 0 2px var(--ui-accent-soft)}.edit-cell .timetable-stamp-cell.empty{background:#fff}@media (width<=700px){.timetable-stamp-panel{margin-bottom:9px;padding:8px 5px}.timetable-stamp-panel>div:first-child{margin:0 3px 6px;display:block}.timetable-stamp-panel>div:first-child b,.timetable-stamp-panel>div:first-child span{display:block}.timetable-stamp-panel>div:first-child span{margin-top:2px}.timetable-stamp-palette{grid-template-rows:repeat(2,40px);grid-auto-columns:64px}.timetable-stamp-palette button{min-width:64px;font-size:10px}.edit-cell .timetable-stamp-cell{height:24px;padding:0 1px;font-size:8px}}.seasonal-unit-card{color:#5a4822;box-sizing:border-box;background:#fff9e8;border:1px solid #d6b45d;border-radius:10px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-width:0;max-width:100%;margin:0 0 10px;padding:11px 44px 11px 12px;display:grid;position:relative}.seasonal-unit-card.import{color:#28594b;background:#f1faf6;border-color:#91bdaf}.seasonal-unit-card>svg{width:24px}.seasonal-unit-card>span{flex-direction:column;gap:2px;min-width:0;display:flex}.seasonal-unit-card b{font-size:12px}.seasonal-unit-card small{font-size:9px;line-height:1.4}.seasonal-unit-card>.primary{white-space:nowrap;min-height:38px}.seasonal-dismiss{width:30px;height:30px;color:inherit;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:7px;right:7px}.seasonal-dismiss svg{width:17px}.unit-stock-backdrop{z-index:280;padding:10px}.unit-stock-modal{width:min(560px,100vw - 20px);max-height:calc(100svh - 20px);overflow:hidden}.unit-stock-list{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;min-height:0;padding:10px;display:grid;overflow:auto}.unit-stock-list>label{cursor:pointer;background:#fff;border:1px solid #d6deda;border-radius:7px;align-items:center;gap:8px;min-width:0;min-height:50px;padding:8px;display:flex}.unit-stock-list>label.selected{border-color:var(--ui-accent);background:var(--ui-accent-soft);box-shadow:inset 4px 0 var(--ui-accent)}.unit-stock-list>label input{flex:none}.unit-stock-list>label span{flex-direction:column;gap:2px;min-width:0;display:flex}.unit-stock-list>label b{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.unit-stock-list>label small{color:#6f7c77;font-size:8px}.unit-stock-list>.journal-empty{grid-column:1/-1}.unit-stock-note{color:#705931;background:#fff6e6;border-radius:7px;align-items:flex-start;gap:6px;margin:0 10px 8px;padding:8px;font-size:9px;line-height:1.5;display:flex}.unit-stock-note svg{flex:none;width:16px}.unit-stock-modal .modal-foot{gap:7px}.unit-stock-modal .modal-foot>span{margin-right:auto}@media (width<=600px){.seasonal-unit-card{grid-template-columns:24px minmax(0,1fr);padding:9px 38px 9px 9px}.seasonal-unit-card>.primary{grid-column:1/-1;width:100%}.unit-stock-modal{width:calc(100vw - 16px);max-height:calc(100svh - 16px)}.unit-stock-modal .modal-head p,.unit-stock-modal .modal-head small{display:none}.unit-stock-list{grid-template-columns:1fr;padding:7px}.unit-stock-note{margin:0 7px 6px}.unit-stock-modal .modal-foot{grid-template-columns:1fr 1fr;padding:8px;display:grid}.unit-stock-modal .modal-foot>span{grid-column:1/-1}.unit-stock-modal .modal-foot button{min-width:0;padding-left:7px;padding-right:7px}}.materials-command{background:linear-gradient(135deg,#f5faf8,#fff);border:1px solid #cddbd6;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:3px 0 10px;padding:11px 14px;display:flex}.materials-command>div:first-child{align-items:center;gap:10px;min-width:0;display:flex}.materials-command>div:first-child>svg{color:#2d7764;width:28px}.materials-command h1{margin:0;font-size:21px}.materials-command small{color:#687871;margin-top:2px;font-size:9px;display:block}.materials-summary{align-items:center;gap:8px;display:flex}.materials-summary>b{white-space:nowrap;color:#35584d;font-size:12px}.materials-summary>b span{color:#6c7d77;font-weight:500}.materials-summary>button{color:#42695c;background:#fff;border:1px solid #b9ccc5;border-radius:6px;align-items:center;gap:4px;min-height:32px;padding:4px 8px;font-size:8px;display:flex}.materials-summary>button svg{width:13px}.materials-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.material-card{background:#fff;border:1px solid #d5ddd9;border-radius:10px;grid-template-rows:minmax(62px,auto) auto;grid-template-columns:82px minmax(0,1fr);gap:8px 10px;min-width:0;padding:9px;display:grid;box-shadow:0 2px 8px #29473c0b}.material-card.material-hidden{color:#6f7975;background:#f5f6f5}.material-preview{color:#366b5d;cursor:pointer;background:#eef5f2;border:1px solid #d4ddd9;border-radius:8px;grid-row:1/3;width:82px;min-height:100px;padding:0;position:relative;overflow:hidden}.material-preview .event-attachment-thumbnail{object-fit:cover;border:0;border-radius:0;width:100%;height:100%;min-height:100px}.material-preview .material-file-icon{place-items:center;height:100%;display:grid}.material-preview .material-file-icon svg{width:31px}.material-preview:has(img) .material-file-icon{display:none}.material-preview>span{color:#fff;background:#213d34d9;border-radius:4px;padding:2px 5px;font-size:7px;font-weight:700;position:absolute;bottom:5px;left:5px}.material-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.material-copy>b{text-overflow:ellipsis;white-space:nowrap;color:#243c34;font-size:12px;overflow:hidden}.material-copy>small{color:#4e665e;font-size:9px}.material-copy>em{text-overflow:ellipsis;white-space:nowrap;color:#89938f;font-size:7px;font-style:normal;overflow:hidden}.material-actions{grid-template-columns:1fr 1.15fr;gap:6px;display:grid}.material-actions button{white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:4px;min-width:0;min-height:34px;padding:4px 6px;font-size:9px;display:flex}.material-actions button svg{width:14px}.material-visibility{color:#67756f;background:#fff;border:1px solid #c8d1cd}.material-visibility.active{color:#24715d;background:#edf8f3;border-color:#6ea492;font-weight:700}.materials-empty{color:#687a73;text-align:center;background:#f9fbfa;border:1px dashed #bbc9c3;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:230px;display:flex}.materials-empty svg{width:38px}.materials-empty b{font-size:14px}.materials-empty span{font-size:9px}.materials-safety-note{color:#397261;background:#eef7f3;border-radius:7px;align-items:center;gap:6px;margin:10px 0 0;padding:8px 10px;font-size:8px;display:flex}.materials-safety-note svg{width:14px}@media (width<=700px){.materials-command{padding:9px 10px}.materials-command h1{font-size:18px}.materials-command small{font-size:8px}.materials-summary{flex-direction:column;align-items:flex-end;gap:3px}.materials-summary>b{font-size:10px}.materials-summary>b span{display:block}.materials-summary>button{min-height:28px;padding:3px 5px}.materials-grid{grid-template-columns:1fr}.material-card{grid-template-columns:72px minmax(0,1fr);padding:8px}.material-preview{width:72px;min-height:92px}.material-preview .event-attachment-thumbnail{min-height:92px}.material-copy>b{font-size:11px}.material-actions button{min-height:38px;font-size:9px}}.materials-tabs{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:8px;display:grid}.materials-tabs button{color:#61716b;background:#fff;border:1px solid #cbd5d1;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:43px;font-size:11px;font-weight:700;display:flex}.materials-tabs button svg{width:17px}.materials-tabs button b{background:#edf1ef;border-radius:10px;min-width:20px;padding:2px 5px;font-size:8px}.materials-tabs button.active{color:#236c58;background:#edf7f3;border-color:#4a8a76}.materials-tabs button.active b{background:#fff}.materials-search{background:#fff;border:1px solid #adc7be;border-radius:8px;align-items:center;gap:7px;height:42px;margin-bottom:8px;padding:0 9px;display:flex}.materials-search>svg{color:#3f7967;width:18px}.materials-search input{color:#293d36;border:0;outline:0;flex:1;min-width:0;font-size:11px}.materials-search button{color:#66756f;background:0 0;border:0;place-items:center;width:28px;height:28px;padding:0;display:grid}.materials-search button svg{width:16px}.document-materials{gap:6px;display:grid}.document-materials>article{background:#fff;border:1px solid #d5ddd9;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;padding:7px;display:grid}.document-materials>article.material-hidden{opacity:.72;background:#f2f4f3}.document-open{text-align:left;color:#2e493f;background:0 0;border:0;grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;gap:8px;min-width:0;padding:4px 6px;display:grid}.document-open>svg:first-child{color:#3c806c;width:24px}.document-open>svg:last-child{width:16px}.document-open span{flex-direction:column;gap:3px;min-width:0;display:flex}.document-open b{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.document-open small{color:#71807b;font-size:8px}.document-materials>article>div{gap:5px;display:flex}.document-materials>article>div button{white-space:nowrap;border-radius:6px;align-items:center;gap:4px;min-height:34px;padding:4px 7px;font-size:8px;display:flex}.document-materials>article>div button svg{width:13px}.photo-materials{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.photo-materials>article{aspect-ratio:1;background:#e9eeeb;border-radius:8px;position:relative;overflow:hidden}.photo-materials>article.material-hidden{opacity:.52}.photo-open{background:#e9eeeb;border:0;width:100%;height:100%;padding:0}.photo-open .event-attachment-thumbnail{object-fit:cover;border:0;border-radius:0;width:100%;height:100%}.photo-source,.photo-visibility{color:#fff;background:#19362ec7;border:0;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;display:grid;position:absolute;top:5px;box-shadow:0 1px 4px #0003}.photo-source{right:5px}.photo-visibility{left:5px}.photo-source svg,.photo-visibility svg{width:15px}@media (width<=700px){.materials-tabs button{min-height:46px;font-size:11px}.materials-search{height:44px}.document-materials>article{grid-template-columns:1fr}.document-materials>article>div{grid-template-columns:1fr 1fr;padding-left:42px;display:grid}.document-materials>article>div button{justify-content:center;min-height:38px}.photo-materials{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.photo-source,.photo-visibility{width:28px;height:28px;top:4px}.photo-source{right:4px}.photo-visibility{left:4px}}.document-list-tools{align-items:stretch;gap:6px;margin-bottom:6px;display:flex}.document-list-tools .materials-search{flex:1;min-width:0;height:38px;margin:0}.document-batch-hide{color:#9b4036;background:#fff4f2;border:1px solid #c57970;border-radius:7px;justify-content:center;align-items:center;gap:5px;min-width:132px;padding:0 8px;font-size:9px;font-weight:700;display:flex}.document-batch-hide svg{width:14px}.document-batch-hide b{color:#fff;background:#a9483d;border-radius:10px;min-width:19px;padding:2px 5px;font-size:7px}.document-materials.dense-document-list{background:#fff;border:1px solid #d4dbd8;border-radius:7px;gap:2px;overflow:hidden}.document-materials.dense-document-list>article{-webkit-user-select:none;user-select:none;border:0;border-bottom:1px solid #e3e7e5;border-radius:0;grid-template-columns:minmax(0,1fr) 42px 34px;gap:0;height:36px;min-height:36px;padding:0;display:grid}.document-materials.dense-document-list>article:last-child{border-bottom:0}.document-materials.dense-document-list>article.selected{background:#e7f4ef;box-shadow:inset 3px 0 #28806a}.document-materials.dense-document-list>article.material-hidden{opacity:.65;background:#f2f3f2}.document-file{text-align:left;color:#2d413a;background:0 0;border:0;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:5px;min-width:0;height:100%;padding:0 6px;display:grid}.document-file i{color:#4c7769;place-items:center;width:20px;height:20px;display:grid}.document-file i svg{width:15px}.document-file b{text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600;overflow:hidden}.dense-document-list time{color:#74807c;border-left:1px solid #edf0ee;place-items:center;height:100%;font-size:8px;display:grid}.document-source{color:#4d6f64;background:#fafbfa;border:0;border-left:1px solid #e3e7e5;place-items:center;height:100%;padding:0;display:grid}.document-source svg{width:15px}@media (width<=700px){.document-list-tools .materials-search{height:40px}.document-batch-hide{min-width:118px;padding:0 5px;font-size:8px}.document-materials.dense-document-list>article{grid-template-columns:minmax(0,1fr) 38px 36px;height:40px;min-height:40px}.document-file{grid-template-columns:18px minmax(0,1fr);gap:4px;padding:0 5px}.document-file i{width:18px}.document-file i svg{width:14px}.document-file b{font-size:10px}.dense-document-list time{font-size:8px}}.materials-compact-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:4px;height:40px;margin:0 0 4px;display:grid}.materials-compact-head>b{color:#263c35;white-space:nowrap;padding:0 2px;font-size:16px}.materials-compact-head .materials-search{border-radius:7px;height:36px;margin:0}.materials-compact-head>button{color:#4e6b61;white-space:nowrap;background:#fff;border:1px solid #b9c9c3;border-radius:7px;justify-content:center;align-items:center;gap:4px;height:36px;padding:0 8px;font-size:9px;font-weight:700;display:flex}.materials-compact-head>button svg{width:14px}.materials-compact-head>button.active{color:#236c58;background:#edf7f3;border-color:#4a8a76}.materials-compact-head>button:disabled{opacity:.42}.page-materials .materials-tabs{gap:4px;margin-bottom:4px}.page-materials .materials-tabs button{border-radius:7px;min-height:38px;font-size:10px}.document-list-tools.batch-only{justify-content:flex-end;margin:0 0 3px}.page-materials .photo-materials{gap:4px}@media (width<=700px){.page-materials .content{padding-left:4px!important;padding-right:4px!important}.materials-compact-head{height:42px}.materials-compact-head>b{font-size:17px}.materials-compact-head .materials-search,.materials-compact-head>button{height:38px}.materials-compact-head>button{padding:0 7px}.page-materials .materials-tabs button{min-height:40px}.page-materials .photo-materials{gap:3px}}.lesson-plan-row>textarea{border:0;border-left:1px solid var(--line);resize:none;field-sizing:content;background:0 0;width:100%;min-width:0;height:auto;min-height:34px;padding:8px;font-size:9px;line-height:1.45;overflow:hidden}.lesson-summary-fields textarea{box-sizing:border-box;color:#34433e;width:100%;min-width:0;height:auto;min-height:54px;font:inherit;resize:none;background:0 0;border:0;padding:8px;font-size:9px;line-height:1.45;overflow:hidden}.lesson-summary-fields textarea+textarea{border-top:1px solid var(--line)}.lesson-detail-modal textarea{box-sizing:border-box;height:auto;overflow:hidden}.lesson-detail-backdrop{z-index:220}:is(body:has(.lesson-detail-modal) .ink-actions,body:has(.lesson-detail-modal) .ink-edit){visibility:hidden!important}@media (width<=600px){.lesson-plan-row:not(.head){grid-template-rows:auto auto auto!important}.lesson-plan-row:not(.head)>textarea:first-of-type{grid-area:1/2}.lesson-plan-row:not(.head)>textarea:nth-of-type(2){border-top:1px solid var(--line);grid-area:2/2}.lesson-plan-row:not(.head)>textarea{min-height:44px;padding:9px 10px;font-size:14px!important;line-height:1.55!important}.lesson-summary-fields{grid-template-rows:auto auto;align-self:start}.lesson-summary-fields textarea{field-sizing:content;min-height:44px;padding:9px 10px;font-size:14px!important;line-height:1.55!important}.lesson-plan-row:not(.head)>b{font-size:12px!important}}.unit-title-cell{cursor:pointer;min-width:0}.unit-title-cell:focus-visible{outline:2px solid var(--ui-accent);outline-offset:-3px}.unit-title-copy{flex-direction:column;min-width:0;display:flex}.unit-select-indicator{display:none}@media (width<=600px){.unit-title-cell{touch-action:pan-x pan-y;-webkit-user-select:none;user-select:none}.unit-title-cell.selection-mode{grid-template-columns:20px minmax(0,1fr);align-items:center;gap:6px;display:grid!important}.unit-title-cell.selection-mode .unit-select-indicator{color:#fff;background:#fff;border:1.5px solid #8fa19a;border-radius:4px;place-items:center;width:18px;height:18px;font-size:13px;font-weight:900;line-height:1;display:grid}.unit-title-cell.selection-mode .unit-select-indicator.checked{border-color:var(--ui-accent);background:var(--ui-accent)}}.event-editor-modal{position:relative}.event-attachment-field label.disabled{opacity:.55;pointer-events:none}.event-attachment-field .optimized-photo-note{color:#3c7563;margin-top:2px;font-size:7px;display:block}.attachment-processing-overlay{z-index:30;border-radius:inherit;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:wait;background:#fffffff2;place-items:center;display:grid;position:absolute;inset:0}.attachment-processing-overlay>div{color:#315b4f;text-align:center;justify-items:center;gap:8px;padding:22px;display:grid}.attachment-processing-overlay i{border:4px solid #cfe0da;border-top-color:var(--ui-accent);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite attachment-processing-spin}.attachment-processing-overlay b{font-size:13px}.attachment-processing-overlay small{color:#6f7f79;font-size:9px}@keyframes attachment-processing-spin{to{transform:rotate(360deg)}}.event-attachment-thumbnail{object-fit:cover;background:#fff;border:1px solid #d8dedb;border-radius:8px;flex:0 0 52px;width:52px;height:52px}.attachment-viewer>.attachment-toolbar{margin:0 0 3px!important;padding:3px 0!important}.attachment-stage-wrap{flex:auto;min-width:0;min-height:0;position:relative;overflow:hidden}.attachment-stage-wrap>.attachment-stage{width:100%;min-width:0;min-height:0;height:100%!important}.attachment-name-overlay{z-index:24;text-overflow:ellipsis;white-space:nowrap;color:#fff;pointer-events:none;background:#243c33c9;border:1px solid #fff8;border-radius:12px;max-width:min(62%,420px);padding:4px 9px;font-size:8px;line-height:1.2;position:absolute;top:7px;left:7px;overflow:hidden;box-shadow:0 2px 8px #162d2740}.attachment-return-button{z-index:46;color:#fff;cursor:pointer;background:#244f45ee;border:1px solid #fff9;border-radius:24px;justify-content:center;align-items:center;gap:5px;min-width:96px;height:46px;font-size:12px;font-weight:900;display:flex;position:absolute;bottom:10px;right:10px;box-shadow:0 3px 12px #162d2766}.attachment-return-button:hover{background:#173e35}.attachment-return-button:focus-visible{outline-offset:2px;outline:3px solid #f4b84a}.attachment-return-button svg{width:21px;height:21px}.app.theme-mono .attachment-return-button{color:#000!important;box-shadow:none!important;background:#fff!important;border:2px solid #000!important}.app.theme-mono .attachment-return-button:hover,.app.theme-mono .attachment-return-button:focus-visible{color:#000!important;background:#eee!important}.attachment-viewer .attachment-toolbar .ink-command{flex:none;justify-content:center;min-width:104px!important;height:42px!important;padding:7px 14px!important;font-size:11px!important;font-weight:900!important}.attachment-viewer .attachment-toolbar .ink-command svg{width:18px!important;height:18px!important}.attachment-viewer .attachment-input-mode{flex:none;justify-content:center;color:#36534a!important;background:#f7faf9!important;border:2px solid #9fb4c2!important;min-width:126px!important;height:42px!important;padding:3px 8px!important;font-weight:800!important}.attachment-viewer .attachment-input-mode.touch-mode{box-shadow:inset 0 0 0 2px #fff;color:#263c4d!important;background:#efb357!important;border-color:#d39132!important}.attachment-viewer .input-mode-diagram{white-space:nowrap;justify-content:center;align-items:center;gap:5px;display:flex}.attachment-viewer .input-mode-choice{opacity:.4;justify-content:center;align-items:center;gap:2px;width:36px;transition:opacity .15s,transform .15s;display:flex}.attachment-viewer .input-mode-choice svg{stroke-width:1.7px;width:14px!important;height:14px!important}.attachment-viewer .input-mode-choice small{font-size:6px;font-weight:700}.attachment-viewer .input-mode-choice.selected{opacity:1;font-weight:900;transform:scale(1.08)}.attachment-viewer .input-mode-choice.selected svg{stroke-width:2.5px;width:24px!important;height:24px!important}.attachment-viewer .input-mode-choice.selected small{font-size:8px;font-weight:900}.attachment-viewer .input-mode-diagram>i{opacity:.65;font-size:12px;font-style:normal;font-weight:900}.app.theme-mono .attachment-viewer .attachment-input-mode{color:#000!important;background:#fff!important;border-color:#000!important}.app.theme-mono .attachment-viewer .attachment-input-mode.touch-mode{color:#fff!important;background:#000!important}.attachment-viewer .attachment-toolbar .attachment-save,.attachment-viewer .attachment-toolbar .pdf-cache-clear,.attachment-viewer .attachment-toolbar .clear-ink-command{font-size:8px!important;font-weight:700!important}.attachment-viewer .attachment-toolbar .attachment-share{flex:none;justify-content:center;color:#245f91!important;background:#e7f3ff!important;border-color:#78aeda!important;min-width:76px!important;font-weight:900!important}.attachment-viewer .attachment-toolbar .attachment-share svg{width:17px!important;height:17px!important}.attachment-viewer .attachment-toolbar .attachment-share:disabled{opacity:.58;cursor:wait}.app.theme-mono .attachment-viewer .attachment-toolbar .attachment-share{color:#000!important;background:#fff!important;border:2px solid #000!important}@media (width<=700px),(pointer:coarse){.attachment-viewer>.attachment-toolbar{min-height:50px!important;padding:3px 0!important}.attachment-viewer .attachment-toolbar .ink-command{min-width:118px!important;height:46px!important;min-height:46px!important;padding:8px 16px!important;font-size:12px!important}.attachment-viewer .attachment-input-mode{min-width:138px!important;height:46px!important;min-height:46px!important;padding:3px 9px!important}.attachment-viewer .input-mode-choice{width:40px}.attachment-viewer .input-mode-choice.selected svg{width:27px!important;height:27px!important}.attachment-viewer .input-mode-choice.selected small{font-size:9px}.attachment-viewer .attachment-toolbar .eraser-command,.attachment-viewer .attachment-toolbar .browse-command{height:42px!important;min-height:42px!important}.attachment-viewer .attachment-toolbar .attachment-save,.attachment-viewer .attachment-toolbar .pdf-cache-clear,.attachment-viewer .attachment-toolbar .clear-ink-command{align-self:center;height:34px!important;min-height:34px!important;padding:4px 7px!important;font-size:7px!important}.attachment-viewer .attachment-toolbar .attachment-share{min-width:86px!important;height:42px!important;min-height:42px!important;font-size:10px!important}.attachment-name-overlay{max-width:58%;padding:3px 7px;font-size:7px;top:5px;left:5px}.attachment-return-button{right:8px;bottom:max(8px,env(safe-area-inset-bottom));border-radius:26px;min-width:104px;height:50px;font-size:13px}}@media (width>=701px){.unit-planner-modal>.modal-head small,.lesson-detail-modal>.modal-head small{font-size:12px!important}.unit-planner-modal>.modal-head h3,.lesson-detail-modal>.modal-head h3{line-height:1.35;font-size:20px!important}.unit-planner-modal>.modal-head p,.lesson-detail-modal>.modal-head p{line-height:1.5;font-size:12px!important}.unit-basic-form{grid-template-columns:150px minmax(0,1fr) minmax(0,1fr) 95px;gap:15px 16px;padding:16px}.unit-basic-form label{gap:7px;line-height:1.4;font-size:14px!important}.unit-basic-form input,.unit-basic-form select,.unit-basic-form textarea{min-height:44px;padding:9px 11px;font-size:16px!important;line-height:1.5!important}.unit-basic-form textarea{min-height:78px}.unit-date-range-field{gap:7px;line-height:1.4;font-size:14px!important}.unit-range-trigger{min-height:48px;padding:8px 12px}.unit-range-trigger strong{font-size:14px}.unit-range-trigger small{font-size:12px}.unit-range-trigger i{font-size:14px}.unit-range-summary>span,.unit-range-summary>span b{font-size:12px}.unit-range-month b{font-size:14px}.unit-range-weekdays b{font-size:12px}.unit-range-days button{height:40px;font-size:14px}.unit-range-picker>p{font-size:12px;line-height:1.5}.target-classes{gap:12px;padding:14px;font-size:14px;line-height:1.4}.target-classes label{gap:6px}.target-classes input{width:18px;height:18px}.lesson-plan-head{margin-top:22px}.lesson-plan-head h4{font-size:18px}.lesson-plan-head span{font-size:12px;line-height:1.5}.lesson-plan-table{max-height:none;overflow:visible}.lesson-plan-row{grid-template-columns:48px minmax(0,1.3fr) minmax(0,1.2fr) minmax(0,1.2fr) 76px;min-width:820px}.lesson-plan-row>b{line-height:1.4;font-size:14px!important}.lesson-plan-row.head>span{place-items:center;font-size:14px;font-weight:700;display:grid}.lesson-plan-row>textarea{min-height:64px;padding:10px 11px;font-size:14px!important;line-height:1.5!important}.lesson-plan-row input{min-height:38px;padding:8px 10px;line-height:1.4;font-size:14px!important}.lesson-summary-fields textarea{min-height:72px;padding:10px 11px;font-size:14px!important;line-height:1.5!important}.lesson-row-actions button{min-width:36px}.lesson-row-actions button svg{width:18px;height:18px}.unit-auto-place{gap:18px;padding:14px;font-size:14px;line-height:1.5}.unit-auto-place span{font-size:12px}.unit-planner-modal>.modal-foot>span{font-size:12px;line-height:1.5}.unit-planner-modal>.modal-foot button{min-height:42px;padding:8px 14px;font-size:14px}.lesson-detail-nav button{min-height:40px;font-size:14px}.lesson-detail-nav b{font-size:14px}.lesson-detail-basic label,.post-lesson-grid label{gap:7px;font-size:14px;line-height:1.4}.lesson-detail-basic input,.lesson-detail-basic textarea,.post-lesson-grid textarea{min-height:44px;padding:10px 11px;font-size:16px!important;line-height:1.5!important}.lesson-detail-basic textarea{min-height:72px}.lesson-flow-head h4,.post-lesson-head h4{font-size:18px}.lesson-flow-head span,.post-lesson-head label{font-size:12px;line-height:1.5}.lesson-flow-row{grid-template-columns:92px 64px minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr) 42px;min-width:940px}.lesson-flow-row.head>*{min-height:38px;font-size:12px;font-weight:700}.lesson-flow-row input,.lesson-flow-row textarea{min-height:74px;padding:10px;font-size:14px!important;line-height:1.5!important}.lesson-flow-row input{min-height:44px}.lesson-flow-row button svg{width:17px;height:17px}.add-stage{min-height:40px;padding:8px 12px;font-size:14px}.post-lesson-grid textarea{min-height:96px}.lesson-detail-modal>.modal-foot>span{font-size:12px;line-height:1.5}.lesson-detail-modal>.modal-foot button{min-height:42px;font-size:14px}.units-page-title h1{font-size:24px;line-height:1.35}.units-page-title>.actions{gap:8px}.units-page-title>.actions button,.units-page-title>.actions label{min-height:40px;padding:8px 12px;font-size:13px}.subject-tabs{gap:8px;margin-bottom:14px}.subject-tabs button{min-width:82px;min-height:42px;padding:9px 15px;font-size:14px;line-height:1.3}.unit-table{overflow-x:auto}.unit-table .unit-row{grid-template-columns:90px minmax(310px,1.5fr) 135px 112px 105px 118px;min-width:980px;min-height:72px;font-size:14px;line-height:1.4}.unit-table .unit-row>*{padding:12px 14px}.unit-table .unit-row.head{min-height:46px;font-size:14px;font-weight:700}.unit-table .unit-row.head .hours-heading span:last-child{font-size:12px}.unit-table .subject-tag{margin:10px;padding:7px 8px;font-size:14px;font-weight:700}.unit-table .unit-title-copy{gap:4px}.unit-table .unit-title-copy b{font-size:16px;line-height:1.4}.unit-table .unit-title-copy small{margin:0;font-size:13px;line-height:1.5}.unit-table .unit-period-button{height:40px;margin:7px;padding:0 8px;font-size:13px}.unit-table .unit-period-button svg{width:16px;height:16px}.unit-table .unit-hours-combo{gap:6px;padding:7px}.unit-table .unit-hours-combo label{width:72px;height:40px;padding:0 6px}.unit-table .unit-hours-combo input{width:40px;font-size:14px}.unit-table .unit-hours-combo span{font-size:12px}.unit-table .unit-hours-combo select{width:28px;height:40px}.unit-table .unit-hours-combo select option,.unit-table .unit-progress b{font-size:14px}.unit-table .unit-progress i{height:6px;margin-top:8px}.unit-table .unit-item-actions{gap:7px;padding:7px!important}.unit-table .unit-item-actions .outline{min-width:54px;height:40px;margin:0;padding:0 9px;font-size:14px}.unit-table .unit-delete-check{gap:5px;font-size:13px}.unit-table .unit-delete-check input{width:18px;height:18px}}@media (width>=701px) and (width<=1180px),(width>=701px) and (pointer:coarse){.unit-planner-modal>.modal-head small,.lesson-detail-modal>.modal-head small{font-size:11px!important}.unit-planner-modal>.modal-head h3,.lesson-detail-modal>.modal-head h3{font-size:18px!important}.unit-planner-modal>.modal-head p,.lesson-detail-modal>.modal-head p{font-size:11px!important}.unit-basic-form{grid-template-columns:120px minmax(0,1fr) minmax(0,1fr) 82px;gap:11px 12px;padding:12px}.unit-basic-form label,.unit-date-range-field{font-size:13px!important}.unit-basic-form input,.unit-basic-form select,.unit-basic-form textarea{min-height:44px;font-size:16px!important}.unit-basic-form textarea{min-height:72px}.unit-range-trigger{min-height:46px}.unit-range-trigger strong{font-size:13px}.unit-range-trigger small,.unit-range-weekdays b{font-size:11px}.unit-range-days button{height:40px;font-size:13px}.target-classes{font-size:13px}.lesson-plan-head h4{font-size:17px}.lesson-plan-head span{font-size:11px}.unit-planner-scroll .lesson-plan-table{overscroll-behavior-x:contain;max-width:100%;overflow-x:auto!important}.lesson-plan-row{grid-template-columns:44px minmax(180px,1.25fr) minmax(170px,1.15fr) minmax(170px,1.15fr) 68px;min-width:760px}.lesson-plan-row>b,.lesson-plan-row.head>span{font-size:13px!important}.lesson-plan-row>textarea,.lesson-plan-row input,.lesson-summary-fields textarea{font-size:14px!important;line-height:1.5!important}.unit-auto-place{font-size:13px}.unit-auto-place span,.unit-planner-modal>.modal-foot>span{font-size:11px}.unit-planner-modal>.modal-foot button{min-height:44px;font-size:13px}.lesson-detail-nav button,.lesson-detail-nav b,.lesson-detail-basic label,.post-lesson-grid label{font-size:13px}.lesson-detail-basic input,.lesson-detail-basic textarea,.post-lesson-grid textarea{font-size:16px!important}.lesson-flow-head h4,.post-lesson-head h4{font-size:17px}.lesson-flow-head span,.post-lesson-head label{font-size:11px}.lesson-flow-table{overscroll-behavior-x:contain;max-width:100%;overflow-x:auto!important}.lesson-flow-row{grid-template-columns:82px 58px minmax(190px,1.2fr) minmax(175px,1fr) minmax(175px,1fr) 40px;min-width:860px}.lesson-flow-row input,.lesson-flow-row textarea{font-size:14px!important}.lesson-detail-modal>.modal-foot button{min-height:44px;font-size:13px}.units-page-title h1{font-size:22px}.units-page-title>.actions button,.units-page-title>.actions label,.subject-tabs button{min-height:44px;font-size:13px}.unit-table .unit-row{grid-template-columns:78px minmax(250px,1.5fr) 120px 102px 94px 106px;min-width:850px;min-height:66px;font-size:13px}.unit-table .unit-row>*{padding:10px 11px}.unit-table .unit-row.head{min-height:44px;font-size:13px}.unit-table .subject-tag{font-size:13px}.unit-table .unit-title-copy b{font-size:15px}.unit-table .unit-title-copy small{font-size:12px}.unit-table .unit-period-button,.unit-table .unit-item-actions .outline{min-height:44px;font-size:13px}.unit-table .unit-hours-combo label,.unit-table .unit-hours-combo select{height:44px}.unit-table .unit-hours-combo input,.unit-table .unit-progress b{font-size:13px}}@media (width>=701px) and (width<=900px) and (orientation:portrait){.topbar{grid-template-rows:50px 62px;grid-template-columns:minmax(0,1fr) auto;height:112px;padding:0 14px}.topbar .brand{grid-area:1/1}.topbar .header-tools{grid-area:1/2}.topbar .profile{display:none}.topbar>nav{border-top:1px solid #edf0ed;grid-area:2/1/auto/3;justify-content:stretch;width:100%;min-width:0;overflow:hidden}.topbar>nav button{flex-direction:column;flex:1 1 0;justify-content:center;gap:1px;min-width:0;padding:4px 2px;font-size:11px}.topbar>nav button svg{width:18px;height:18px}main{min-height:calc(100vh - 112px)}.page-weekly .week-title-row h1{font-size:22px}.page-weekly .week-title-row h1 small,.page-weekly .week-nav>button{font-size:12px}.page-weekly .week-nav b{font-size:14px}.page-weekly .week-day-control .week-date-link strong{font-size:13px}.page-weekly .week-day-control .week-date-link span{font-size:11px}.page-weekly .event-label,.page-weekly .week-period{font-size:12px}.page-weekly .day-event span{font-size:11px;line-height:1.4}.page-weekly .week-period small{font-size:10px}.page-weekly .week-lesson b{font-size:13px}.page-weekly .week-lesson span{font-size:11px;line-height:1.4}.page-weekly .week-lesson select{font-size:12px}.page-weekly .week-lesson textarea{font-size:13px;line-height:1.45}.page-journals .journal-reader-title h1{font-size:22px}.page-journals .journal-reader-title small{font-size:11px}.page-journals .journal-period-trigger,.page-journals .journal-period-menu button{font-size:12px}.page-journals .journal-search input{font-size:14px}.page-journals .journal-search button,.page-journals .journal-export-open{font-size:12px}.page-journals .journal-entry>button b{font-size:14px}.page-journals .journal-entry>button small{font-size:11px}.page-journals .journal-entry p{padding:14px 15px;font-size:14px;line-height:1.8}.page-materials .materials-compact-head>b{font-size:22px}.page-materials .materials-compact-head .materials-search input{font-size:14px}.page-materials .materials-compact-head>button{font-size:12px}.page-materials .materials-tabs button{min-height:44px;font-size:13px}.page-materials .materials-tabs button b{font-size:10px}.page-materials .document-materials.dense-document-list>article{grid-template-columns:minmax(0,1fr) 50px 42px;height:46px;min-height:46px}.page-materials .document-file{grid-template-columns:24px minmax(0,1fr);gap:7px;padding:0 8px}.page-materials .document-file i,.page-materials .document-file i svg{width:18px}.page-materials .document-file b{font-size:13px}.page-materials .dense-document-list time{font-size:10px}.page-materials .document-source svg{width:17px}.unit-basic-form{grid-template-columns:minmax(0,1fr) 78px}.unit-basic-form .title-field,.unit-basic-form .start-field,.unit-basic-form .end-field,.unit-basic-form .goal-field,.unit-date-range-field{grid-column:1/3}.unit-planner-scroll,.unit-planner-modal>.modal-foot{padding-left:10px;padding-right:10px}.units-page-title{align-items:flex-start}.units-page-title>.actions{max-width:62%}}@media (width>=901px) and (hover:hover) and (pointer:fine){.week-title-row h1{font-size:22px}.week-title-row h1 small{font-size:12px}.week-nav>button:not(.outline){min-height:38px;padding:0 10px;font-size:12px}.week-nav b{font-size:14px}.week-day-control{gap:5px;height:52px;padding:5px}.week-day-control .week-date-link strong{font-size:13px}.week-day-control .week-date-link span{font-size:11px}.week-day-control select{width:104px;max-width:104px;height:34px;padding:0 5px;font-size:11px}.event-label{font-size:12px}.day-event{min-height:54px;padding:7px}.day-event span{font-size:11px;line-height:1.45}.week-period{font-size:13px}.week-period small{font-size:10px}.week-lesson{gap:4px;padding:8px}.week-lesson b{font-size:13px}.week-lesson span{font-size:11px;line-height:1.4}.week-lesson select{font-size:13px}.week-lesson .unit-select{font-size:11px}.week-lesson textarea{font-size:13px;line-height:1.45;height:42px!important}.date-step button{min-height:38px;padding:0 9px;font-size:12px}.date-step b,.school-events>b,.school-events strong{font-size:13px}.school-events span{font-size:12px}.school-events small,.school-context b{font-size:11px}.school-context strong{font-size:13px}.todo-strip>b,.todo-strip label,.todo-strip form input,.lesson-head{font-size:12px}.period-cell{font-size:13px}.period-cell small{font-size:11px}.lesson-cell b{font-size:14px}.lesson-cell span{font-size:12px;line-height:1.4}.absence-cell span,.absence-cell small{font-size:12px}.lesson-memo{font-size:14px;line-height:1.55}.daily-journal h2{font-size:17px}.daily-journal textarea{font-size:14px;line-height:1.75}.month-switch b{font-size:17px}.cal-head,.cal-day>b{font-size:12px}.cal-day button:not(.quick-add){font-size:11px;line-height:1.35}.cal-day button:not(.quick-add) small{font-size:10px;line-height:1.35}.holiday-name{font-size:10px;line-height:1.3}.annual-calendar-view .more-events,.note-mark{font-size:10px}.annual-row{font-size:12px}.annual-row textarea{font-size:13px;line-height:1.5}.annual-row>span small{font-size:10px}.event-editor-form label{font-size:13px}.event-editor-form input,.event-editor-form textarea{font-size:14px;line-height:1.5}.period-count-settings{font-size:12px}.period-count-settings select{height:36px;font-size:12px}.edit-corner,.edit-day,.edit-period{font-size:12px}.edit-cell{gap:5px;padding:6px}.edit-cell select{height:34px;padding:0 5px;font-size:12px}.edit-cell .hybrid-setting-label{font-size:10px}.settings-layout{grid-template-columns:220px minmax(0,1fr);gap:16px}.settings-nav button{min-height:44px;padding:11px 10px;font-size:13px}.settings-head h2{font-size:19px}.settings-head p{font-size:12px;line-height:1.55}.form-grid label{font-size:13px}.form-grid select,.form-grid input,.roster-setting-head select{height:42px;font-size:14px}.setting-note{font-size:12px;line-height:1.5}.display-option-grid>div>b{font-size:15px}.display-option-grid>div>span{font-size:12px;line-height:1.5}.display-option-grid .seg button{min-height:38px;font-size:12px}.theme-preset-grid b{font-size:14px}.theme-preset-grid small{font-size:11px;line-height:1.4}.display-setting-note{font-size:12px;line-height:1.5}.backup-cards h3{font-size:16px}.backup-cards p{font-size:12px;line-height:1.65}.backup-cards article>button,.backup-cards article>label{min-height:42px;font-size:12px}.backup-message,.import-guide div{font-size:12px;line-height:1.5}.roster-setting-head b{font-size:13px}.roster-setting-head span{font-size:11px}.sr-head span{font-size:12px}.sr-row input,.sr-row textarea{font-size:13px;line-height:1.45}.subject-setting{font-size:13px}.subject-setting span{font-size:11px}}.sync-waiting-toast{z-index:5000;color:#214d42;background:#f4fbf8;border:1px solid #9bb8af;border-radius:12px;align-items:center;gap:10px;max-width:min(390px,100vw - 28px);padding:12px 14px;display:flex;position:fixed;top:64px;right:18px;box-shadow:0 8px 28px #23463c2e}.sync-waiting-toast svg{flex:none;width:20px;height:20px}.sync-waiting-toast span{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.sync-waiting-toast b{font-size:13px}.sync-waiting-toast small{font-size:11px;line-height:1.45}.sync-waiting-toast>button{color:#315f53;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.sync-waiting-toast>button:hover{background:#dfeee9}.sync-waiting-toast>button svg{width:16px;height:16px}@media (width<=600px){.sync-waiting-toast{max-width:none;padding:9px 10px;top:96px;left:10px;right:10px}.sync-waiting-toast small{font-size:10px}}.journal-reader-title{align-items:baseline;gap:9px;margin:4px 0 9px;display:flex}.journal-reader-title h1{color:#263b34;margin:0;font-size:22px}.journal-reader-title small{color:#64756e;font-size:10px}.journal-period-picker{flex:none;position:relative}.journal-period-trigger{color:#286b59;cursor:pointer;background:#edf7f3;border:1px solid #91bdaf;border-radius:9px;align-items:center;gap:6px;min-width:142px;height:44px;padding:0 10px;font-size:11px;font-weight:800;display:flex}.journal-period-trigger svg{flex:none;width:16px}.journal-period-trigger svg:last-child{width:14px;margin-left:auto}.journal-period-menu{z-index:90;background:#fff;border:1px solid #b8d1c8;border-radius:9px;width:170px;padding:5px;position:absolute;top:calc(100% + 5px);left:0;box-shadow:0 10px 26px #203b312b}.journal-period-menu button{color:#40554d;text-align:left;cursor:pointer;background:#fff;border:0;border-radius:6px;justify-content:space-between;align-items:center;width:100%;height:40px;padding:0 9px;font-size:11px;display:flex}.journal-period-menu button.active{color:#246654;background:#e4f3ed;font-weight:800}.journal-period-menu svg{color:#27715d;width:16px}.daily-journal>div:first-child{align-items:center;margin-bottom:10px}.daily-journal>div:first-child h2{margin:0}@media (width<=700px){.daily-journal>div:first-child{align-items:center}}.journal-search-mark{color:#40350c;background:#ffe58a;border-radius:3px;padding:0 .08em;text-decoration:none;box-shadow:0 1px #d3ad32}.journal-entry>button .journal-search-mark{color:#33483f;background:#ffdf70}.app.theme-mono .journal-search-mark{color:#000;box-shadow:none;background:#fff;border:1px solid #000}.daily-journal textarea.speech-following{padding-bottom:5.55em;scroll-padding-bottom:5.55em}.tutorial-tour-backdrop{z-index:220;background:#142b2673;place-items:center;padding:14px;display:grid;position:fixed;inset:0}.tutorial-tour{text-align:center;color:#263b34;background:#fff;border:1px solid #c7d8d1;border-radius:18px;flex-direction:column;align-items:center;width:min(430px,100%);min-height:410px;padding:22px;display:flex;box-shadow:0 18px 54px #10241f55}.tutorial-tour-progress{justify-content:center;align-self:stretch;gap:7px;margin-bottom:22px;display:flex}.tutorial-tour-progress i{background:#dce5e1;border-radius:4px;width:28px;height:5px}.tutorial-tour-progress i.active{background:var(--ui-accent)}.tutorial-tour-progress i.done{background:#9abeb2}.tutorial-tour-icon{background:var(--ui-accent-soft);width:82px;height:82px;color:var(--ui-accent);border-radius:24px;place-items:center;margin-bottom:16px;display:grid}.tutorial-tour-icon svg{width:42px;height:42px}.tutorial-tour>small{color:#6d7f78;font-size:11px;font-weight:800}.tutorial-tour h2{margin:7px 0 12px;font-size:24px}.tutorial-tour p{max-width:330px;margin:0;font-size:15px;line-height:1.8}.tutorial-tour>em{color:#6a7b75;margin-top:12px;font-size:11px;font-style:normal}.tutorial-tour footer{justify-content:space-between;align-items:center;width:100%;margin-top:auto;padding-top:24px;display:flex}.tutorial-tour footer button{border-radius:9px;min-height:44px;padding:0 16px}.tutorial-tour footer .primary{align-items:center;gap:5px;display:flex}.tutorial-tour footer svg{width:18px}.tutorial-skip{color:#65766f;background:0 0;border:0}.tutorial-target{position:relative;z-index:205!important;outline-offset:4px!important;outline:4px solid #f2b84a!important;box-shadow:0 0 0 9999px #16352e33!important}.page-tutorial-hint{z-index:215;color:#2a4038;background:#fffef9;border:1px solid #b9d2c8;border-radius:12px;padding:14px 15px;position:fixed;box-shadow:0 8px 28px #152e2755}.page-tutorial-hint.fallback{width:min(320px,100vw - 20px);bottom:18px;left:50%;transform:translate(-50%)}.page-tutorial-hint b{color:#285f51;font-size:14px;display:block}.page-tutorial-hint p{margin:6px 0 12px;font-size:12px;line-height:1.65}.page-tutorial-hint footer{justify-content:flex-end;gap:7px;display:flex}.page-tutorial-hint footer button{background:#fff;border:1px solid #ccd8d3;border-radius:7px;min-height:35px;padding:0 11px;font-size:11px}.page-tutorial-hint footer .primary{border-color:var(--ui-accent);background:var(--ui-accent);color:#fff}.app.theme-mono .tutorial-tour-icon{color:#000;background:#fff;border:2px solid #000}.app.theme-mono .tutorial-tour-progress i.active,.app.theme-mono .tutorial-tour-progress i.done{background:#000}.app.theme-mono .tutorial-target{outline-color:#000!important}.app.theme-mono .page-tutorial-hint{color:#000;background:#fff;border:2px solid #000}.app.theme-mono .page-tutorial-hint b{color:#000}@media (width<=700px){.tutorial-tour{min-height:min(430px,100svh - 28px);padding:18px 16px}.tutorial-tour-icon{width:72px;height:72px}.tutorial-tour h2{font-size:21px}.tutorial-tour p{font-size:14px}.page-tutorial-hint{max-height:42svh;overflow:auto}.settings-title-actions{grid-template-columns:1fr 1fr;display:grid!important}.settings-title-actions .autosave{grid-column:1/-1}}.journal-search-row{align-items:center;gap:8px;margin-bottom:12px;display:flex}.journal-search-row .journal-search{flex:1;margin-bottom:0}.journal-search.active{border-color:#5b9b87;box-shadow:0 0 0 2px #dcefe8}.journal-export-open{color:#286b59;cursor:pointer;background:#edf8f4;border:1px solid #9fc9bb;border-radius:9px;flex:none;align-items:center;gap:6px;height:44px;padding:0 13px;font-size:11px;font-weight:800;display:flex}.journal-export-open svg{width:16px}.journal-export-modal{width:min(590px,96vw)}.journal-export-body{padding:16px}.journal-export-summary{background:#f3faf7;border:1px solid #c9ddd6;border-radius:9px;align-items:center;gap:10px;padding:12px;display:flex}.journal-export-summary>svg{color:#2c7764;width:22px}.journal-export-summary span{flex-direction:column;gap:3px;display:flex}.journal-export-summary b{font-size:13px}.journal-export-summary small{color:#65756f;font-size:10px}.journal-export-warning,.journal-export-message{border-radius:7px;align-items:flex-start;gap:7px;margin:11px 0 0;padding:9px 10px;font-size:10px;line-height:1.5;display:flex}.journal-export-warning{color:#735a32;background:#fff6e8}.journal-export-message{color:#286b59;background:#eaf7f2}.journal-export-warning svg,.journal-export-message svg{flex:none;width:16px}.journal-export-choices{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:13px;display:grid}.journal-export-choices>button{color:#36544a;text-align:left;cursor:pointer;background:#fff;border:1px solid #cbd8d3;border-radius:9px;align-items:center;gap:8px;min-height:86px;padding:11px;display:flex}.journal-export-choices>button:hover{background:#f4faf8;border-color:#71aa98}.journal-export-choices>button>svg{color:#2f7663;flex:none;width:21px}.journal-export-choices span{flex-direction:column;gap:3px;display:flex}.journal-export-choices b{font-size:11px}.journal-export-choices small{color:#72817b;font-size:9px;line-height:1.35}@media (width<=600px){.page-journals{overflow-x:hidden}.page-journals .content{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding-left:4px;padding-right:4px}.journal-reader-title{box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin:1px 0 7px}.journal-reader-title h1{font-size:19px}.journal-reader-title small{font-size:9px}.journal-search-row{box-sizing:border-box;grid-template-columns:86px minmax(0,1fr);align-items:stretch;gap:4px;width:100%;min-width:0;max-width:100%;display:grid}.journal-search-row:has(.journal-export-open){grid-template-columns:86px minmax(0,1fr) 40px}.journal-period-picker{width:86px;min-width:0}.journal-period-trigger{gap:2px;width:86px;min-width:86px;height:40px;padding:0 5px;font-size:9px}.journal-period-trigger>svg:first-child{display:none}.journal-period-trigger span{white-space:nowrap;min-width:0;overflow:hidden}.journal-period-menu{width:132px}.journal-search-row .journal-search{box-sizing:border-box;gap:5px;width:100%;min-width:0;max-width:none;height:40px;padding:0 6px}.journal-search input{font-size:13px}.journal-search button{flex:0 0 24px;justify-content:center;width:24px;min-width:24px;padding:0;font-size:0}.journal-export-open{justify-content:center;width:40px;height:40px;padding:0;font-size:0}.journal-export-open svg{width:18px}.journal-export-choices{grid-template-columns:1fr}.journal-export-choices>button{min-height:64px}.journal-export-body{padding:12px}.journal-reader-list{box-sizing:border-box;width:100%;min-width:0;max-width:100%}}.unit-auto-place{gap:10px}.unit-auto-place span{flex:1}.unit-auto-place-remove{color:#91483e;white-space:nowrap;background:#fff;border:1px solid #c89c94;border-radius:6px;min-height:32px;padding:5px 9px;font-size:9px;font-weight:700}@media (width<=700px){.unit-auto-place-remove{width:100%;min-height:40px;font-size:11px}}@media (width<=1100px) and (orientation:portrait){.weekly-sheet{display:none!important}.portrait-week-overview{border-top:3px solid var(--ui-accent);background:#fff;grid-template-columns:13px repeat(5,minmax(0,1fr));display:grid;overflow:hidden}.portrait-week-corner,.portrait-week-period,.portrait-week-day,.portrait-week-cell{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0}.portrait-week-corner{background:var(--ui-accent-soft);color:#63716b;writing-mode:vertical-rl;place-items:center;font-size:8px;font-weight:800;display:grid}.portrait-week-day{box-sizing:border-box;background:var(--ui-accent-soft);color:#365249;flex-direction:column;justify-content:flex-start;align-items:center;gap:1px;height:58px;min-height:58px;padding:4px 2px;display:flex;overflow:hidden}.portrait-week-day b{flex:none;font-size:12px;line-height:1.2}.portrait-week-day span{flex:none;font-size:9px;line-height:1.2}.portrait-week-day small{color:#8a5227;-webkit-line-clamp:2;overflow-wrap:anywhere;text-align:left;background:#fff3dc;border-radius:5px;-webkit-box-orient:vertical;max-width:calc(100% - 2px);padding:1px 3px;font-size:8.5px;line-height:1.2;display:-webkit-box;overflow:hidden}.portrait-week-period{color:#51635c;background:#f6f8f6;place-items:center;font-size:10px;font-weight:900;display:grid}.portrait-week-cell{text-align:left;color:#354941;background:#fff;flex-direction:column;gap:3px;min-height:clamp(64px,10.2svh,96px);padding:7px 4px 5px;display:flex;position:relative;overflow:hidden}.portrait-week-cell>i{width:3px;position:absolute;top:0;bottom:0;left:0}.portrait-week-cell>b{white-space:nowrap;text-overflow:ellipsis;padding-left:3px;font-size:11px;line-height:1.2;overflow:hidden}.portrait-week-cell>span{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:8px;line-height:1.3;display:-webkit-box;overflow:hidden}.portrait-week-cell>em{color:#285f50;-webkit-line-clamp:3;overflow-wrap:anywhere;background:#fff9;border-radius:5px;-webkit-box-orient:vertical;align-self:stretch;margin-top:auto;padding:2px 3px;font-size:8px;font-style:normal;line-height:1.3;display:-webkit-box;overflow:hidden}.portrait-week-cell.no-school-period{color:#9aa39f;justify-content:center;align-items:center;display:flex}.portrait-week-cell:active{filter:brightness(.94)}.portrait-week-detail-backdrop{align-items:stretch;padding:8px}.portrait-week-detail{border-radius:10px;width:100%;height:100%;max-height:none}.portrait-week-detail-body{flex-direction:column;flex:1;gap:12px;min-height:0;padding:14px;display:flex;overflow:auto}.portrait-week-detail-body>label{flex-direction:column;gap:5px;display:flex}.portrait-week-detail-body>label>span{color:#62716b;font-size:10px;font-weight:800}.portrait-week-detail-body select,.portrait-week-detail-body textarea{background:#fff;border:1px solid #cdd7d2;border-radius:8px;width:100%;padding:9px;font-size:13px}.portrait-week-detail-body textarea{resize:vertical;min-height:150px;line-height:1.6}.portrait-detail-control select{width:100%;min-height:40px}.portrait-detail-hint{color:#52635c;background:#f4f7f5;border-radius:7px;margin:0;padding:9px;font-size:11px}.portrait-open-unit{color:#285f50;text-align:left;background:#eff8f5;border:1px solid #a7ccbf;border-radius:9px;align-items:center;gap:9px;width:100%;padding:11px;display:flex}.portrait-open-unit>svg{flex:none;width:20px}.portrait-open-unit>svg:last-child{width:16px;margin-left:auto}.portrait-open-unit span{flex-direction:column;gap:2px;display:flex}.portrait-open-unit b{font-size:12px}.portrait-open-unit small{font-size:9px}.portrait-week-detail .modal-foot{flex-wrap:wrap;gap:7px}.portrait-week-detail .modal-foot>button{flex:1;min-width:150px}}@media (width<=600px) and (orientation:portrait){.portrait-week-overview{grid-template-columns:11px repeat(5,minmax(0,1fr));width:calc(100% + 12px);margin-left:-6px}.portrait-week-corner{writing-mode:vertical-rl;font-size:7px}.portrait-week-period{font-size:9px}.portrait-week-cell{min-height:clamp(58px,9.2svh,82px);padding:5px 2px}.portrait-week-cell>b{font-size:9px}.portrait-week-cell>span{-webkit-line-clamp:2;font-size:7px}.portrait-week-cell>em{-webkit-line-clamp:2;padding:1px 2px;font-size:7px}.portrait-week-day{height:52px;min-height:52px;padding-top:3px}.portrait-week-day small{-webkit-line-clamp:2;padding:1px 2px;font-size:7.5px}.portrait-week-detail-body{padding:11px}}@media (width<=600px){.page-weekly .content{padding-left:4px;padding-right:4px}.page-weekly .week-title-row,.page-weekly .week-title-row .todo-strip,.page-weekly .week-nav,.page-weekly .portrait-week-overview{box-sizing:border-box;width:100%;max-width:100%;margin-left:0;margin-right:0}.week-nav{grid-template-columns:40px repeat(3,minmax(0,1fr)) 40px;justify-content:stretch;align-items:stretch;gap:6px;margin-bottom:8px;display:grid}.week-nav .override-note{display:none}.week-nav .week-range{text-align:center;grid-area:1/1/auto/-1;padding:3px 0 2px;font-size:14px}.week-nav>button{touch-action:manipulation;justify-content:center;width:100%;border-radius:10px!important;height:48px!important;min-height:48px!important;margin:0!important;padding:0 4px!important;font-size:12px!important}.week-nav .reset-week{grid-area:2/1}.week-nav .reset-week span,.week-nav .week-pdf span{display:none}.week-nav .reset-week svg,.week-nav .week-pdf svg{width:19px;height:19px}.week-nav .week-prev{grid-area:2/2}.week-nav .current-week{grid-area:2/3}.week-nav .week-next{grid-area:2/4}.week-nav .week-pdf{grid-area:2/5}}@media (width<=600px) and (orientation:portrait){.page-weekly .portrait-week-overview{width:100%;margin-left:0}}.today-after-school{border:0;border-top:1px solid var(--line);color:#48564f;text-align:left;background:#f4f1e8;grid-template-columns:70px minmax(0,1fr) 28px;align-items:center;width:100%;min-height:42px;padding:0;display:grid}.today-after-school b{border-right:1px solid var(--line);align-self:stretch;place-items:center;font-size:10px;display:grid}.today-after-school span{white-space:nowrap;text-overflow:ellipsis;padding:7px 10px;font-size:10px;overflow:hidden}.today-after-school svg{width:14px}.today-after-school.has-items{color:#725c28;background:#fff8e8}.week-after-school-label,.week-after-school-cell{border-top:1px solid var(--line);border-right:1px solid var(--line);min-height:40px}.week-after-school-label{background:#f4f1e8;place-items:center;font-size:9px;font-weight:700;display:grid}.week-after-school-cell{color:#66716c;text-align:left;background:#faf8f1;border-bottom:0;border-left:0;align-items:center;gap:4px;padding:5px 7px;display:flex;overflow:hidden}.week-after-school-cell span{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:8px;overflow:hidden}.week-after-school-cell svg{flex:none;width:12px}.week-after-school-cell.has-items{color:#725c28;background:#fff8e8;font-weight:700}.portrait-after-school-label,.portrait-after-school-cell{border-top:1px solid var(--line);border-right:1px solid var(--line);min-height:36px}.portrait-after-school-label{background:#f4f1e8;place-items:center;font-size:8px;font-weight:700;display:grid}.portrait-after-school-cell{color:#66716c;text-align:left;background:#faf8f1;border-bottom:0;border-left:0;padding:3px 2px;overflow:hidden}.portrait-after-school-cell b{font-size:7px;display:block}.portrait-after-school-cell span{white-space:nowrap;text-overflow:ellipsis;font-size:7px;display:block;overflow:hidden}.portrait-after-school-cell.has-items{color:#725c28;background:#fff8e8}.after-school-modal{width:min(620px,100vw - 20px)}.after-school-editor-list{gap:10px;padding:12px 16px;display:grid;overflow:auto}.after-school-editor-item{background:#fafbf9;border:1px solid #d8ddd9;border-radius:9px;gap:8px;padding:11px;display:grid}.after-school-item-head{justify-content:space-between;align-items:center;display:flex}.after-school-item-head .danger-text{color:#a4473d;background:0 0;border:0;align-items:center;gap:3px;font-size:9px;display:flex}.after-school-item-head svg{width:13px}.after-school-primary-fields{grid-template-columns:minmax(0,1fr) 130px;gap:8px;display:grid}.after-school-editor-item label{gap:3px;display:grid}.after-school-editor-item label>span{color:#64716b;font-size:9px;font-weight:700}.after-school-editor-item input,.after-school-editor-item select,.after-school-editor-item textarea{width:100%;font:inherit;background:#fff;border:1px solid #cbd3ce;border-radius:6px;padding:8px;font-size:11px}.after-school-editor-item textarea{resize:vertical;min-height:48px}.after-school-add-row{padding:0 16px 10px}.after-school-add-row button{min-height:38px}@media (width<=600px){.today-after-school{border:1px solid var(--line);border-radius:7px;grid-template-columns:48px minmax(0,1fr) 26px;margin-bottom:7px;overflow:hidden}.today-after-school b,.today-after-school span{font-size:9px}.after-school-editor-list,.after-school-editor-item{padding:9px}.after-school-primary-fields{grid-template-columns:minmax(0,1fr) 105px}.after-school-editor-item input,.after-school-editor-item select,.after-school-editor-item textarea{font-size:16px}.after-school-add-row{padding:0 9px 8px}}.modal-backdrop:has(.event-editor-modal){place-items:start center;padding-top:clamp(8px,4vh,36px)}.event-primary-row{grid-column:1/3;grid-template-columns:minmax(160px,1fr) auto auto;align-items:center;gap:10px;display:grid}.event-primary-row .event-title-input{box-sizing:border-box;width:100%;min-width:0;height:42px}.after-school-check,.event-repeat-check{color:#755d24;white-space:nowrap;background:0 0;border:0;align-items:center;gap:5px;padding:0;font-weight:700;flex-direction:row!important;display:inline-flex!important}.after-school-check input,.event-repeat-check input{accent-color:#b17a2b;width:17px;height:17px}.event-repeat-check select{height:34px;font:inherit;color:#405049;background:#fff;border:1px solid #cbd3ce;border-radius:6px;padding:0 7px}.after-school-type-select{grid-column:1/3;grid-template-columns:36px minmax(0,180px);align-items:center;gap:7px;display:grid!important}.after-school-type-select>span{color:#65716c;font-size:9px;font-weight:700}.after-school-type-select select{height:36px;font:inherit;background:#fff;border:1px solid #cbd3ce;border-radius:6px;padding:0 8px}.school-event-item.after-school-event{box-shadow:inset 4px 0 #c18a35;color:#705721!important;background:#fff4d8!important}.school-event-item.after-school-event>span,.school-event-item.after-school-event small{color:#7d652d}.compact-delete-popover.series-delete{grid-template-columns:1fr;gap:5px;height:auto;min-height:150px;padding:10px;display:grid}.compact-delete-popover.series-delete>strong{padding-right:26px}.compact-delete-popover.series-delete>button:not(.compact-delete-close){color:#405049;background:#fff;border:1px solid #d7ddd9;border-radius:6px;height:34px;font-weight:700}.compact-delete-popover.series-delete>.compact-delete-confirm{color:#a43f34;background:#fff1ef;border-color:#e5b1aa}@media (width<=600px){.event-primary-row{grid-template-columns:minmax(0,1fr) auto auto;gap:6px}.event-primary-row .event-title-input{height:48px!important;padding:8px!important;font-size:16px!important}.after-school-check,.event-repeat-check{gap:3px;font-size:10px!important}.after-school-check input,.event-repeat-check input{width:16px;height:16px}.event-repeat-check select,.after-school-type-select select{font-size:16px}.event-repeat-check select{width:72px;height:38px;padding:0 3px}.after-school-type-select{grid-template-columns:32px minmax(0,150px)}}.after-school-type-select{transition:opacity .15s}.after-school-type-select.disabled{opacity:.34}.after-school-type-select.disabled select{cursor:not-allowed}.event-delete-confirm-layer{z-index:90;border-radius:inherit;background:#1f2d2a70;place-items:center;padding:12px;display:grid;position:absolute;inset:0}.event-delete-confirm{background:#fff;border:1px solid #dfb4ad;border-radius:11px;gap:7px;width:min(300px,100% - 16px);padding:12px;display:grid;box-shadow:0 12px 36px #1b2e2855}.event-delete-confirm>strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.event-delete-confirm>small{color:#718079;font-size:9px}.event-delete-confirm>button{color:#3d5049;background:#fff;border:1px solid #d4dbd7;border-radius:7px;min-height:40px;font-weight:800}.event-delete-confirm>button.danger{color:#a23f35;background:#fff1ef;border-color:#e1aaa3;justify-content:center;align-items:center;gap:5px;display:flex}.event-delete-confirm>button.danger svg{width:16px}.event-delete-confirm>button.cancel{color:#566760;background:#eef3f1;border:0}.compact-delete-progress{color:#2f7d69;justify-content:center;align-items:center;gap:8px;min-height:48px;font-weight:800;display:flex}.compact-delete-progress i{border:2px solid #bdd5cd;border-top-color:#2f7d69;border-radius:50%;width:17px;height:17px;animation:.8s linear infinite spin}@media (width<=600px){.topbar>nav{width:100%;overflow:hidden}.topbar>nav button{flex:1 1 0;min-width:0;padding:4px 1px;font-size:9px}.page-today .content{padding-left:4px;padding-right:4px}.date-banner{grid-template-columns:auto minmax(0,1fr);gap:3px 8px;padding:7px 8px;display:grid}.date-banner>strong{grid-area:1/1}.date-banner>span{grid-area:1/2;align-self:center;min-width:0}.date-banner .date-step{grid-area:2/1/auto/3;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;margin:3px 0 0;display:grid}.date-banner .date-step button{touch-action:manipulation;border-radius:10px;justify-content:center;width:100%;height:48px;min-height:48px;padding:0 6px;font-size:12px}.page-today .lesson-table{width:100%;margin-left:0}.lesson-line{grid-template-columns:20px minmax(0,1fr) 78px!important}.period-cell{text-align:center;justify-content:center;align-items:center;padding:0!important;font-size:0!important}.period-cell>span{display:none}.period-cell:before{content:attr(data-short-period);font-size:10px;font-weight:900;line-height:1}.period-cell>small{margin-top:4px;font-size:7px!important}}@media (width<=520px){.lesson-line.hybrid-today-row{grid-template-columns:20px minmax(0,1fr) minmax(0,1fr) 66px!important}.lesson-line.external-device:not(.hybrid-today-row){grid-template-columns:20px minmax(0,1fr)!important}.lesson-line.hybrid-today-row.external-device{grid-template-columns:20px minmax(0,1fr) minmax(0,1fr)!important}}@media (width<=600px){.daily-journal{padding:11px}.daily-journal>div{align-items:flex-start}.daily-journal h2{font-size:16px}.journal-mic{min-height:38px;font-size:11px}.daily-journal textarea{min-height:240px;font-size:14px;line-height:1.8}.journal-search{max-width:none}.journal-entry p{padding:13px;font-size:14px;line-height:1.8}}.event-title-field>small{color:#728079;font-weight:500}.day-event .weekly-event-open{min-width:0;max-width:calc(100% - 24px);color:inherit;font:inherit;text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;padding:0;overflow:hidden}.day-event .weekly-event-open:hover{text-underline-offset:2px;text-decoration:underline}.day-event .weekly-event-open:focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px;border-radius:2px}.event-editor-form>.event-attachment-field{grid-column:1/3}.event-details-toggle{color:#315b4f;text-align:left;background:#f7fbf9;border:1px solid #c7d7d1;border-radius:8px;grid-column:1/3;align-items:center;gap:10px;width:100%;padding:10px 12px;display:flex}.event-details-toggle>svg{flex:none;width:18px;height:18px}.event-details-toggle>svg:last-child{margin-left:auto;transition:transform .15s}.event-details-toggle.open>svg:last-child{transform:rotate(90deg)}.event-details-toggle span{flex-direction:column;flex:1;gap:2px;display:flex}.event-details-toggle b{font-size:12px}.event-details-toggle small{color:#6c7d76;font-size:9px}.event-details-panel{background:#fbfdfc;border:1px solid #dce6e2;border-radius:8px;grid-column:1/3;grid-template-columns:1fr 1fr;gap:16px 18px;padding:12px;display:grid}.event-details-panel .event-note-field{grid-column:1/3}.event-details-panel>*{min-width:0}.event-details-panel input,.event-details-panel textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.event-note-field textarea{resize:none;field-sizing:content;height:auto;min-height:54px;overflow:hidden}.event-attachment-field>div>span{min-width:0;overflow:hidden}.event-attachment-field>div>span>strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.event-attachment-field .attachment-remove-button{font-weight:800;color:#a63f35!important;background:#fff3f1!important;border-color:#cf786d!important}.event-attachment-field .attachment-view-button{color:#2f6757;font-weight:700}.event-attachment-field .original-file-name{color:#7b8983;text-overflow:ellipsis;white-space:nowrap;max-width:360px;margin-top:2px;display:block;overflow:hidden}.event-attachment-field .attachment-display-name{flex-direction:column;align-items:stretch;width:100%;padding:0;font-size:10px;display:flex}.event-attachment-field .attachment-display-name input{width:100%;padding:7px 9px;font-size:13px}.attachment-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%;display:grid!important}.attachment-quick-actions>label{cursor:pointer;justify-content:center;align-items:center;gap:6px;width:100%;min-width:0;display:flex}.attachment-quick-actions svg{width:17px;height:17px}.attachment-quick-actions .attachment-camera{color:#fff;background:#3e8b73;border-color:#3e8b73}@media (width<=600px){.event-editor-form>.event-attachment-field,.event-details-toggle,.event-details-panel{grid-column:1/3}.event-details-panel{grid-template-columns:minmax(0,1fr);gap:7px;padding:7px}.event-details-panel>*,.event-details-panel .event-note-field{grid-column:1}.event-time-choice{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.modal-backdrop:has(.event-editor-modal){height:100dvh;padding:max(4px,env(safe-area-inset-top)) 6px 4px;place-items:start center;overflow:hidden}.event-editor-modal{width:100%;max-height:calc(100dvh - max(8px,env(safe-area-inset-top)));align-self:start;padding:0;overflow:hidden}.event-editor-modal>.modal-head{background:var(--ui-accent-dark);color:#fff;min-height:54px;padding:7px 10px}.event-editor-modal>.modal-head button{color:#fff}.event-editor-modal>.modal-head small{display:none}.event-editor-modal>.modal-head h3{color:#fff;margin:0;font-size:16px}.event-editor-modal>.modal-head p{color:#eaf4f0;margin:1px 0 0;font-size:9px}.event-editor-modal .event-editor-form{gap:7px;margin:0;padding:8px 10px;overflow-y:auto}.event-title-field{grid-template-columns:58px minmax(0,1fr);align-items:center;gap:6px!important;display:grid!important}.event-title-field>span{font-size:13px}.event-title-field>small{display:none}.event-title-field>input{grid-column:2;min-width:0;height:50px;line-height:1.35;padding:9px 11px!important;font-size:18px!important}.event-editor-form>.event-attachment-field{background:0 0;border:0;border-radius:0;gap:0;padding:0}.event-editor-form>.event-attachment-field>b,.event-editor-form>.event-attachment-field>small{display:none}.attachment-quick-actions>label{border-radius:10px;min-height:76px;font-size:14px;font-weight:800}.attachment-quick-actions svg{width:23px;height:23px}.attachment-quick-actions .attachment-library{border-color:var(--ui-accent);background:var(--ui-accent);color:#fff}.event-details-toggle{color:#245f50;background:#e7f4ef;border-color:#98c3b6;gap:7px;min-height:44px;padding:7px 10px}.event-details-toggle.open{background:#d4ebe3}.event-details-toggle span{display:block}.event-details-toggle b{font-size:11px}.event-details-toggle small{display:none}.event-details-toggle>svg{width:16px;height:16px}.event-editor-modal>.modal-foot{gap:7px;min-height:58px;padding:7px 10px}.event-editor-modal>.modal-foot button{min-height:44px}.unit-planner-modal>.modal-head{min-height:62px;padding:8px 10px!important}.unit-planner-modal>.modal-head small{letter-spacing:.08em;font-size:9px;line-height:1.2}.unit-planner-modal>.modal-head h3{color:#263d35;margin:2px 0 0;font-weight:900;line-height:1.25;font-size:22px!important}.unit-planner-modal>.modal-head p{color:#667770;margin:2px 0 0;font-size:11px;line-height:1.35}.unit-planner-modal>.modal-head>button{color:#40544d;border-radius:50%;flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid}.unit-planner-modal>.modal-head>button svg{width:23px;height:23px}.unit-planner-modal .goal-field textarea{resize:none;field-sizing:content;height:auto;min-height:72px;padding:10px 11px;overflow:hidden;font-size:16px!important;line-height:1.6!important}.lesson-detail-modal textarea,.lesson-flow-row textarea,.post-lesson-grid textarea{resize:none;field-sizing:content;height:auto;min-height:52px;overflow:hidden;font-size:15px!important;line-height:1.6!important}.post-lesson-head{margin:14px 0 7px}.post-lesson-head h4{color:#2c4039;font-size:18px;line-height:1.35}.post-lesson-head label{font-size:13px;line-height:1.4}.post-lesson-head input{width:19px;height:19px}.post-lesson-grid{gap:8px;padding:9px}.post-lesson-grid label{color:#40554d;gap:6px;font-size:14px;line-height:1.4}.post-lesson-grid textarea{min-height:52px;padding:10px 11px;font-size:16px!important;line-height:1.6!important}}.page-materials .materials-compact-head{grid-template-columns:auto minmax(0,1fr) auto auto}@media (width<=700px){.page-materials .materials-direct-add{height:38px;padding:0 6px}}.document-list-tools.batch-only button{white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:4px;min-height:34px;padding:0 8px;font-size:9px;font-weight:800;display:flex}.document-list-tools.batch-only button svg{width:14px}.document-batch-favorite{color:#795a00;background:#fff8dd;border:1px solid #d7a92f}.document-batch-important{color:#9d3e34;background:#fff1ef;border:1px solid #cf786d}.document-list-tools.batch-only .document-batch-hide{color:#3e6559;background:#f3f8f6;border-color:#8ca9a0;min-width:86px}.document-list-tools.batch-only .document-batch-hide b{background:#52786c}.dense-document-list>article.material-favorite .document-file i{color:#b88708}.dense-document-list>article.material-important .document-file i{color:#b4473d}.document-delete.protected{color:#b4473d;opacity:1;background:#fff2ef}@media (width<=700px){.document-list-tools.batch-only{grid-template-columns:1fr 1fr 1fr;display:grid}.document-list-tools.batch-only button{min-width:0;padding:0 4px;font-size:8px}}.period-cell{color:inherit;cursor:pointer;background:0 0;border:0;font-family:inherit}.period-cell:hover{background:#ffffff70}.period-cell:focus-visible{outline:2px solid var(--ui-accent);outline-offset:-3px}.week-unit-control{grid-template-columns:minmax(0,1fr) auto;min-width:0;align-items:center!important;gap:3px!important;display:grid!important}.week-unit-control .unit-select{min-width:0}.desktop-week-detail-button{color:#2d6959;cursor:pointer;background:#f2f8f6;border:1px solid #9ebfb4;border-radius:5px;height:22px;padding:0 6px;font-size:8px;font-weight:800}.desktop-week-detail-button:hover{background:#dff0ea}.today-lesson-detail{width:min(620px,100vw - 24px)}.today-lesson-detail .portrait-week-detail-body{flex-direction:column;gap:12px;padding:14px;display:flex;overflow:auto}.today-lesson-detail .portrait-week-detail-body>label{flex-direction:column;gap:5px;display:flex}.today-lesson-detail .portrait-week-detail-body>label>span{color:#62716b;font-size:10px;font-weight:800}.today-lesson-detail select,.today-lesson-detail textarea{box-sizing:border-box;background:#fff;border:1px solid #cdd7d2;border-radius:8px;width:100%;padding:9px;font-size:13px}.today-lesson-detail textarea{resize:none;field-sizing:content;height:auto;min-height:150px;line-height:1.6;overflow:hidden}.today-detail-subject{color:#2e5146;background:#eef5f2;border-radius:8px;align-items:center;min-height:42px;padding:0 10px;font-size:14px;display:flex}.today-detail-assignment{flex-direction:column;grid-column:1/-1;gap:5px;min-width:0;display:flex}.today-detail-assignment>span{color:#62716b;font-size:10px;font-weight:800}.today-detail-assignment-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.today-detail-assignment-controls>label{flex-direction:column;gap:4px;min-width:0;display:flex}.today-detail-assignment-controls small{color:#62716b;font-size:10px;font-weight:700}.today-detail-assignment-controls select{min-height:42px}.today-detail-assignment-controls .today-detail-subject{box-sizing:border-box;width:100%}@media (width<=1100px){.today-lesson-detail{width:100%;height:100%;max-height:none}.today-lesson-detail .portrait-week-detail-body{flex:1;min-height:0}}.portrait-week-detail{flex-direction:column;width:min(760px,100vw - 32px);display:flex}.portrait-week-detail .portrait-week-detail-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-content:start;gap:12px 14px;padding:16px;display:grid;overflow:auto}.portrait-week-detail-body>label{flex-direction:column;gap:5px;min-width:0;display:flex}.portrait-week-detail-body>label>span{color:#62716b;font-size:10px;font-weight:800}.portrait-week-detail-body select,.portrait-week-detail-body textarea{box-sizing:border-box;background:#fff;border:1px solid #cdd7d2;border-radius:8px;width:100%;min-width:0;padding:9px;font-size:13px}.portrait-detail-control,.portrait-detail-control>select,.portrait-detail-control>div{width:100%;min-width:0}.portrait-detail-hint,.portrait-open-unit,.portrait-week-detail-body>.journal-empty,.portrait-week-detail-body>.change-badge,.portrait-week-detail-body .hour-memo-field{grid-column:1/-1}.portrait-week-detail-body .hour-memo-field textarea{resize:none;height:auto;min-height:108px;max-height:none;line-height:1.6;overflow:hidden}.today-lesson-detail .portrait-week-detail-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}@media (width<=700px){.portrait-week-detail{width:100%;height:100%;max-height:none}.portrait-week-detail .portrait-week-detail-body,.today-lesson-detail .portrait-week-detail-body{flex-direction:column;flex:1;gap:12px;min-height:0;padding:12px;display:flex}.today-detail-assignment-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.today-detail-assignment-controls select,.today-detail-assignment-controls .today-detail-subject{min-height:48px;font-size:15px}.portrait-week-detail-body .hour-memo-field{flex:none}.portrait-week-detail-body .hour-memo-field textarea{min-height:108px;font-size:15px;line-height:1.65}}.unit-planner-modal .goal-field textarea{color:#34433e;letter-spacing:normal;font-family:inherit;font-weight:400}.sync-provider-card.disabled{cursor:not-allowed;opacity:.62}.cloud-recovery-start,.cloud-recovery-active{background:#fff9eb;border:1px solid #d5ad62;border-radius:10px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:12px;padding:13px;display:grid}.cloud-recovery-start>svg,.cloud-recovery-active>svg{color:#9a6716;width:22px}.cloud-recovery-start>div,.cloud-recovery-active>div{flex-direction:column;gap:4px;min-width:0;display:flex}.cloud-recovery-start b,.cloud-recovery-active b{color:#5e4216;font-size:11px}.cloud-recovery-start span,.cloud-recovery-active span{color:#766548;font-size:9px;line-height:1.5}.cloud-recovery-active{background:#fff5e9;border-color:#cf8746;grid-template-columns:30px minmax(0,1fr);margin:0 0 12px}.cloud-recovery-active>div>div{flex-wrap:wrap;gap:8px;margin-top:7px;display:flex}.cloud-recovery-active button{min-height:38px}.cloud-recovery-active .primary{background:#9b5d22}.cloud-recovery-active .primary:hover{background:#804a18}@media (width<=650px){.cloud-recovery-start{grid-template-columns:24px minmax(0,1fr)}.cloud-recovery-start>button{grid-column:1/3;width:100%}.cloud-recovery-active{grid-template-columns:24px minmax(0,1fr)}.cloud-recovery-active>div>div{grid-template-columns:1fr;display:grid}.cloud-recovery-active button{width:100%}}.shared-material-backdrop{z-index:240;padding:10px}.shared-material-dialog{width:min(430px,100vw - 20px);overflow:hidden}.shared-material-dialog>header{border-bottom:1px solid var(--line);background:#eef7f3;align-items:center;gap:10px;padding:14px 16px;display:flex}.shared-material-dialog>header>svg{color:#2d7865;width:28px}.shared-material-dialog header small{color:#6d7b76;font-size:9px;display:block}.shared-material-dialog header h3{margin:2px 0 0;font-size:17px}.shared-material-body{gap:12px;padding:14px 16px;display:grid}.shared-material-body>p{border:1px solid var(--line);background:#fafcfb;border-radius:7px;align-items:center;gap:9px;margin:0;padding:9px;display:flex}.shared-material-body>p>svg{color:#52756b;width:22px}.shared-material-body>p span{min-width:0;display:grid}.shared-material-body>p b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shared-material-body>p small{color:#7c8984}.shared-material-body>label{gap:5px;font-size:9px;font-weight:700;display:grid}.shared-material-body input{height:38px;font:inherit;border:1px solid #cbd5d0;border-radius:6px;padding:0 9px;font-size:12px}.shared-material-category{grid-template-columns:auto 1fr 1fr;align-items:center;gap:6px;display:grid}.shared-material-category>span{font-size:9px;font-weight:700}.shared-material-category button{color:#54665f;background:#fff;border:1px solid #cbd5d0;border-radius:6px;justify-content:center;align-items:center;gap:5px;height:38px;font-weight:700;display:flex}.shared-material-category button.active{color:#276653;background:#e7f4ef;border-color:#4b8b78}.shared-material-category svg{width:16px}.shared-material-dialog>footer{border-top:1px solid var(--line);justify-content:flex-end;gap:7px;padding:10px 16px;display:flex}.shared-material-dialog>footer button{min-width:100px;height:38px}@media (width<=600px){.shared-material-backdrop{padding-top:max(8px,env(safe-area-inset-top));place-items:start center}.shared-material-dialog{margin-top:5vh}.shared-material-body{padding:12px}.shared-material-dialog>footer{padding:9px 12px}.shared-material-dialog>footer button{flex:1;min-width:0}}.absence-transition-note{color:#526762;background:#f3f8f6;border-bottom:1px solid #dbe7e3;margin:0;padding:12px 20px;font-size:.9rem;line-height:1.5}.offline-settings{flex-direction:column;gap:16px;display:flex}.offline-status-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.offline-status-grid article{border:1px solid var(--line);background:#fafbf9;border-radius:8px;grid-template-columns:38px 1fr 20px;align-items:center;gap:8px;padding:13px;display:grid}.offline-status-grid article>svg:first-child{color:#60736c;width:25px;height:25px}.offline-status-grid article>svg:last-child{color:#218067;width:17px}.offline-status-grid article div{flex-direction:column;display:flex}.offline-status-grid article b{font-size:10px}.offline-status-grid article span{color:#65756f;font-size:8px}.offline-status-grid article.ready{background:#f1faf6;border-color:#acd2c5}.offline-status-grid article.waiting{background:#fff9eb;border-color:#e1c995}.offline-storage-note{color:#536861;background:#eef5f2;border-radius:7px;flex-wrap:wrap;align-items:center;gap:12px;padding:9px 11px;font-size:8px;display:flex}.offline-storage-note span:nth-child(2){flex:1}.offline-storage-note button{color:#315f52;background:#fff;border:1px solid #9fc5b8;border-radius:5px;padding:5px 8px}.offline-file-section,.install-guide,.about-app-section{border:1px solid var(--line);background:#fff;border-radius:9px;padding:15px}.offline-section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:11px;display:flex}.offline-section-head h3{margin:0;font-size:12px}.offline-section-head p{color:#6d7c76;margin:3px 0 0;font-size:8px}.offline-section-head button{align-items:center;gap:5px;display:flex}.offline-section-head button svg{width:14px}.offline-file-list{flex-direction:column;gap:5px;display:flex}.offline-file-list article{border-top:1px solid #edf0ee;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:8px 2px;display:grid}.offline-file-list article:first-child{border-top:0}.offline-file-list article>div{flex-direction:column;min-width:0;display:flex}.offline-file-list b{white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.offline-file-list span{color:#75827d;font-size:7px}.offline-file-list em{white-space:nowrap;border-radius:12px;padding:4px 7px;font-size:7px;font-style:normal}.offline-file-list em.stored{color:#24705b;background:#e4f5ee}.offline-file-list em.available{color:#3b668f;background:#edf3fa}.offline-file-list em.cloud{color:#806e61;background:#f2f0ee}.offline-file-list article>button{border:1px solid var(--line);color:#50645d;background:#fff;border-radius:5px;align-items:center;gap:3px;padding:5px 7px;font-size:8px;display:flex}.offline-file-list article>button svg{width:12px}.offline-file-list article>button:disabled{opacity:.4}.offline-empty{text-align:center;color:#75827d;background:#f6f8f7;border-radius:6px;padding:14px;font-size:8px}.offline-message{color:#216c57;background:#eaf7f1;border-radius:6px;align-items:center;gap:6px;margin-top:9px;padding:8px;font-size:8px;display:flex}.offline-message svg{width:14px}.install-device-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.install-device-grid details{border:1px solid var(--line);background:#fafbf9;border-radius:7px;padding:9px}.install-device-grid summary{cursor:pointer;align-items:center;gap:6px;font-size:9px;font-weight:800;display:flex}.install-device-grid summary svg{width:16px}.install-device-grid ol{color:#586a63;margin:9px 0 2px;padding-left:20px;font-size:8px;line-height:1.7}.about-app-section>div:first-child{align-items:center;gap:8px;margin-bottom:10px;display:flex}.about-app-section>div:first-child>svg{color:#397565;width:22px}.about-app-section>div:first-child span{flex-direction:column;display:flex}.about-app-section>div:first-child b{font-size:11px}.about-app-section>div:first-child small{color:#6f7d78;font-size:8px}.about-app-section dl{grid-template-columns:repeat(2,1fr);gap:7px;margin:0;display:grid}.about-app-section dl>div{background:#f6f8f7;border-radius:6px;padding:8px}.about-app-section dt{color:#486057;font-size:8px;font-weight:800}.about-app-section dd{color:#66756f;margin:3px 0 0;font-size:8px;line-height:1.5}.app-update-notice{z-index:160;background:#f3fbf7;border:1px solid #8fbbae;border-radius:10px;grid-template-columns:28px 1fr auto 28px;align-items:center;gap:8px;width:min(430px,100vw - 20px);padding:10px;display:grid;position:fixed;bottom:74px;right:14px;box-shadow:0 8px 28px #203f3550}.app-update-notice>svg{color:#28705d;width:22px}.app-update-notice span{flex-direction:column;display:flex}.app-update-notice b{font-size:10px}.app-update-notice small{color:#60716b;font-size:7px}.app-update-notice button{cursor:pointer;border-radius:6px}.app-update-notice .update-now{color:#fff;background:#2f7d69;border:0;padding:7px 10px;font-size:9px;font-weight:800}.app-update-notice .update-later{color:#60716b;background:0 0;border:0;place-items:center;padding:4px;display:grid}.app-update-notice .update-later svg{width:16px}@media (width<=760px){.offline-status-grid,.install-device-grid,.about-app-section dl{grid-template-columns:1fr}.offline-section-head{flex-direction:column;align-items:flex-start}.offline-section-head button{justify-content:center;width:100%}.offline-file-section,.install-guide,.about-app-section{padding:11px}.offline-file-list article{grid-template-columns:minmax(0,1fr) auto}.offline-file-list article>button{grid-column:1/3;justify-content:center;min-height:34px}.app-update-notice{grid-template-columns:24px 1fr 26px;bottom:68px;right:6px}.app-update-notice .update-now{grid-column:1/4;width:100%;min-height:38px}.app-update-notice .update-later{grid-area:1/3}}.app-update-notice button:disabled{cursor:wait;opacity:.75}.app-update-notice.is-updating>svg{animation:1s linear infinite planner-update-spin}@keyframes planner-update-spin{to{transform:rotate(360deg)}}.app-update-notice{box-sizing:border-box}@media (width<=760px){.app-update-notice{grid-template-columns:24px minmax(0,1fr) 26px;width:auto;max-width:none;left:6px;right:6px}.app-update-notice .update-now{min-height:42px}}.legal-link-grid{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:7px;margin-top:11px;padding-top:11px;display:grid}.legal-link-grid button{color:#315c50;cursor:pointer;background:#f7faf9;border:1px solid #b9cbc5;border-radius:7px;justify-content:center;align-items:center;gap:6px;min-height:42px;font-size:9px;font-weight:800;display:flex}.legal-link-grid button svg{width:16px}.legal-backdrop{z-index:180;padding:10px}.legal-modal{flex-direction:column;width:min(860px,100vw - 20px);height:min(900px,100vh - 20px);max-height:none;padding:0;display:flex;overflow:hidden}.legal-modal>header{border-bottom:1px solid var(--line);background:#f7faf8;flex:0 0 50px;grid-template-columns:90px 1fr 40px;align-items:center;height:50px;padding:0 10px;display:grid}.legal-modal>header b{text-align:center;color:#35594e;font-size:11px}.legal-modal>header button{color:#3d6559;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:2px;padding:7px;font-size:9px;font-weight:800;display:flex}.legal-modal>header button:first-child{background:#e8f2ee}.legal-modal>header button svg{width:16px}.legal-content{color:#293b35;flex:1;padding:24px clamp(18px,5vw,52px) 50px;line-height:1.8;overflow:auto}.legal-content h2{color:#234c40;margin:0 0 3px;font-size:20px}.legal-content .legal-date{color:#75827d;margin:0 0 22px;font-size:8px}.legal-content h3{color:#315f52;border-bottom:1px solid #dfe7e3;margin:25px 0 7px;padding-bottom:4px;font-size:12px}.legal-content p,.legal-content li{font-size:9px}.legal-content ol,.legal-content ul{padding-left:22px}.legal-content code{background:#edf2f0;border-radius:3px;padding:2px 4px;font-size:8px}.contact-preparing{background:#fff9e9;border:1px solid #d7c07c;border-radius:8px;align-items:center;gap:10px;padding:14px;display:flex}.contact-preparing>svg{color:#997522;width:28px}.contact-preparing>div{flex-direction:column;display:flex}.contact-preparing b{font-size:11px}.contact-preparing span{color:#6f6754;font-size:8px}.contact-warning{background:#eef6f3;border-radius:8px;align-items:flex-start;gap:9px;padding:12px;display:flex}.contact-warning svg{color:#2c7561;flex:0 0 22px;width:22px}.contact-warning p{margin:0}@media (width<=600px){.legal-link-grid{grid-template-columns:1fr}.legal-link-grid button{min-height:46px}.legal-backdrop{padding:0}.legal-modal{border-radius:0;width:100vw;max-width:none;height:100svh}.legal-modal>header{flex-basis:48px;height:48px}.legal-content{padding:18px 15px 45px}.legal-content h2{font-size:17px}.legal-content h3{font-size:11px}.legal-content p,.legal-content li{font-size:9px;line-height:1.75}}.contact-preparing a{color:#2d6757;width:max-content;margin-top:6px;font-size:10px;font-weight:800;text-decoration:underline}.legal-link-grid{grid-template-columns:repeat(4,1fr)}.contact-mail-form{background:#f8faf9;border:1px solid #dce5e1;border-radius:8px;grid-template-columns:1fr 1fr;gap:10px;padding:13px;display:grid}.contact-mail-form label{color:#4b6058;flex-direction:column;gap:4px;font-size:8px;font-weight:800;display:flex}.contact-mail-form input,.contact-mail-form select,.contact-mail-form textarea{font:inherit;color:#2d3d37;background:#fff;border:1px solid #cdd8d3;border-radius:6px;padding:8px}.contact-mail-form textarea{resize:vertical;min-height:120px}.contact-mail-form .contact-body,.contact-mail-form>small{grid-column:1/-1}.contact-mail-form>small{color:#697873;font-size:7px}.contact-mail-form>button{color:#fff;background:#2f7d69;border:0;border-radius:6px;grid-column:2;justify-content:center;align-items:center;gap:5px;min-height:38px;font-size:9px;font-weight:800;display:flex}.contact-mail-form>button:disabled{opacity:.45}.contact-mail-form>button svg{width:15px}.guide-intro{background:#eef6f3;border-radius:8px;align-items:center;gap:10px;padding:13px;display:flex}.guide-intro>svg{color:#2d7461;width:28px}.guide-intro>div{flex-direction:column;display:flex}.guide-intro b{font-size:11px}.guide-intro span{color:#62736d;font-size:8px}@media (width<=850px) and (width>=601px){.legal-link-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.legal-link-grid,.contact-mail-form{grid-template-columns:1fr}.contact-mail-form .contact-body,.contact-mail-form>small,.contact-mail-form>button{grid-column:1}.contact-mail-form>button{min-height:44px}}.daily-backup-section{background:#f2faf7;border:1px solid #a9cfc2;border-radius:9px;margin-bottom:14px;padding:14px}.daily-backup-section>div:first-child h3{margin:0;font-size:13px}.daily-backup-section>div:first-child p{color:#65756f;margin:4px 0 8px;font-size:9px}.daily-backup-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.daily-backup-heading>div{min-width:0}.daily-backup-heading>button{white-space:nowrap;justify-content:center;align-items:center;gap:5px;min-height:34px;display:flex}.daily-backup-heading>button svg{width:13px}.daily-backup-section>span{color:#26705c;margin-bottom:9px;font-size:8px;display:block}.daily-backup-picker{border-top:1px solid #d8ebe4;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding-top:10px;display:grid}.daily-backup-picker label{color:#4f645d;flex-direction:column;gap:5px;font-size:9px;font-weight:700;display:flex}.daily-backup-picker select{color:#34433e;background:#fff;border:1px solid #b8cdc6;border-radius:6px;width:100%;min-height:36px;padding:0 9px;font-size:10px}.daily-backup-picker button{justify-content:center;align-items:center;gap:5px;min-height:36px;display:flex}.daily-backup-picker button svg{width:13px}.daily-backup-empty{color:#6d7d77;font-size:9px}@media (width<=650px){.daily-backup-heading{flex-direction:column}.daily-backup-heading>button{width:100%}.daily-backup-picker{grid-template-columns:1fr}.daily-backup-picker button{width:100%}}.recently-deleted-toggle{color:#655b52;background:#fff;border:1px solid #ded3c8;border-radius:7px;justify-content:center;align-items:center;gap:5px;width:100%;min-height:34px;margin-top:5px;font-size:9px;font-weight:800;display:flex}.recently-deleted-toggle svg{width:14px;transition:transform .15s}.recently-deleted-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.recently-deleted-section{background:#fffaf5;border:1px solid #d8cec3;border-radius:9px;margin-bottom:14px;padding:14px}.recently-deleted-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.recently-deleted-head h3{margin:0;font-size:13px}.recently-deleted-head p{color:#746b63;margin:4px 0 10px;font-size:9px}.recently-deleted-head>span{color:#6f5e50;background:#eee5dc;border-radius:12px;padding:4px 9px;font-size:8px}.recently-deleted-list{flex-direction:column;display:flex}.recently-deleted-list article{border-top:1px solid #eee5dc;grid-template-columns:24px minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:9px 0;display:grid}.recently-deleted-list article>svg{color:#8b7767;width:17px}.recently-deleted-list article>div{flex-direction:column;min-width:0;display:flex}.recently-deleted-list article b{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.recently-deleted-list article span{color:#7a7068;font-size:8px}.recently-deleted-list article button{min-height:32px}.trash-permanent-delete{color:#8b4f47;background:0 0;border:0;font-size:8px}.recently-deleted-empty{color:#65756f;border-top:1px solid #eee5dc;align-items:center;gap:7px;padding-top:11px;font-size:9px;display:flex}.recently-deleted-empty svg{color:#2d8169;width:16px}.delete-undo-toast{z-index:170;background:#f4fbf8;border:1px solid #9bbeb2;border-radius:10px;grid-template-columns:24px minmax(0,1fr) auto 26px;align-items:center;gap:9px;width:min(520px,100vw - 24px);padding:10px 11px;display:grid;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #203f3540}.delete-undo-toast>svg{color:#4a6d62;width:19px}.delete-undo-toast span{flex-direction:column;min-width:0;display:flex}.delete-undo-toast b{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.delete-undo-toast small{color:#687770;font-size:8px}.delete-undo-toast button{color:#285f50;background:#fff;border:1px solid #9fc5b8;border-radius:6px;align-items:center;gap:4px;padding:7px 9px;font-size:9px;font-weight:800;display:flex}.delete-undo-toast button svg{width:13px}.delete-undo-toast .delete-undo-close{background:0 0;border:0;place-items:center;padding:3px;display:grid}.delete-undo-toast .delete-undo-close svg{width:15px}@media (width<=650px){.recently-deleted-list article{grid-template-columns:22px minmax(0,1fr) auto}.recently-deleted-list .trash-permanent-delete{grid-column:2/4;justify-self:end}.delete-undo-toast{grid-template-columns:22px minmax(0,1fr) 26px;bottom:8px}.delete-undo-toast>button:not(.delete-undo-close){grid-column:1/4;justify-content:center}.delete-undo-toast .delete-undo-close{grid-area:1/3}}
