*{box-sizing:border-box}body{color:#243b35;background:#fafaf6;margin:0;font:15px/1.5 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}:is(button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible){outline-offset:2px;outline:3px solid #d09542}.frame{min-height:100vh;display:flex}.sidebar{color:#edf4e9;background:#193c33;flex-direction:column;flex:none;width:212px;height:100dvh;padding:30px 15px 18px;display:flex;position:sticky;top:0}.brand{letter-spacing:-1.5px;align-items:center;gap:12px;padding:0 8px 38px;font-family:Georgia,serif;font-size:29px;display:flex}.brand i{color:#284735;background:#d4dfb8;border-radius:11px;place-items:center;width:38px;height:38px;display:grid}.sideLabel,.overline,.eyebrow{letter-spacing:1.65px;font-size:10px;font-weight:750}.sideLabel{color:#afc5b9;margin:10px 13px}.sidebar nav button{color:#d3e0d8;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:13px;width:100%;margin:3px 0;padding:12px 14px;font-size:14px;font-weight:540;display:flex}.sidebar nav button.active,.sidebar nav button:hover{color:#fff;background:#35594b}.profile{border-top:1px solid #466153;align-items:center;gap:10px;margin-top:auto;padding:20px 2px 0;display:flex}.profile>span{color:#294737;background:#c8d4b1;border-radius:50%;padding:8px;font-weight:700}.profile b,.profile small{font-size:13px;display:block}.profile small{color:#c2d1c5;font-size:11px}.frame main{flex:1;min-width:0}.top{color:#65746c;background:#fff;border-bottom:1px solid #dfe3d9;justify-content:space-between;align-items:center;height:62px;padding:0 4%;font-size:12px;display:flex}.top div,.top span,.dateControl,.eyebrow,.overline,.groupControl{align-items:center;gap:9px;display:flex}.top span{font-size:11px}.content{max-width:1370px;margin:auto;padding:33px 4% 65px}.overline{color:#607966}.overline>span:not(.tick){color:#a5af9c}.tick{background:#789677;width:19px;height:2px}.titleRow{justify-content:space-between;align-items:center;gap:12px;margin:9px 0 23px;display:flex}h1,h2{letter-spacing:-1.2px;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:1.12}h1{font-size:clamp(34px,3.4vw,49px)}h2{font-size:28px}.dateControl,.groupControl select{background:#fff;border:1px solid #d8ded3;border-radius:7px;padding:7px 10px;font-size:13px}.dateControl input{color:#374c40;background:0 0;border:0;min-width:0}.hero{background:#e7eddb;border:1px solid #cbd6be;border-radius:13px;justify-content:space-between;align-items:center;min-height:205px;padding:26px 3.1%;display:flex;position:relative;overflow:hidden}.hero h2{margin-top:10px;font-size:clamp(32px,3vw,43px)}.hero p{color:#4b6051;margin:8px 0 18px;font-size:14px}.hero button{color:#fff;background:#284c3d;border:0;border-radius:6px;align-items:center;gap:15px;padding:10px 14px;font-size:13px;font-weight:650;display:inline-flex}.hero img{width:32%;min-width:190px;max-height:200px}.eyebrow{color:#607460;text-transform:uppercase;font-size:10px}.dot{background:#60865b;border-radius:50%;width:7px;height:7px}.tiles{grid-template-columns:repeat(3,1fr);gap:14px;margin:17px 0 25px;display:grid}.tiles button,.panel{background:#fff;border:1px solid #dbe1d6;border-radius:10px}.tiles button,.classRow,.actionRow{text-align:left;color:inherit;align-items:center;gap:13px;display:flex}.tiles button{padding:17px}.tiles i,.classRow i{border-radius:9px;place-items:center;width:38px;height:38px;display:grid}.tiles button>svg,.actionRow>svg:last-child{color:#839282;margin-left:auto}.tiles b,.tiles small,.classRow b,.classRow small,.actionRow b,.actionRow small{display:block}.tiles b{font:24px Georgia,serif}.tiles small,.classRow small,.actionRow small{color:#657267;font-size:12px}.sage{color:#4a7356;background:#e1eadc}.sun,.sand{color:#887444;background:#f1e9d8}.lilac{color:#7b6483;background:#eee8f1}.cols{grid-template-columns:1.22fr 1fr;align-items:start;gap:18px;display:grid}.panel{overflow:hidden}.panelHead{padding:22px 20px 18px}.panelHead h2{margin-top:6px}.classRow,.actionRow{background:0 0;border:0;border-top:1px solid #e7ebe3;width:100%;padding:12px 19px}.classRow:hover,.actionRow:hover,.tiles button:hover{background:#f6f8f1}.classRow b,.actionRow b{font-size:14px}.classRow em{color:#706b4e;background:#f4f2e8;border-radius:12px;margin-left:auto;padding:4px 8px;font:10px system-ui}.actionRow{padding:17px 20px}.actionRow>svg:first-child{color:#6b8169}.groupControl{margin-bottom:18px}.mobile{display:none}.pad{padding:12px}@media (max-width:950px){.sidebar{width:184px}.tiles{gap:8px}.tiles button{gap:8px;padding:12px}.content{padding-left:3%;padding-right:3%}}@media (max-width:740px){.sidebar{display:none}.sidebar.open{z-index:10;width:245px;display:flex;position:fixed}.mobile{color:inherit;background:0 0;border:0;padding:6px;display:inline-flex}.brand .mobile{margin-left:auto}.cols{grid-template-columns:1fr}.content{padding:23px 16px}.titleRow{flex-wrap:wrap;align-items:flex-start}.hero{min-height:185px;padding:20px}.hero>div{z-index:1;position:relative}.hero img{width:23%;min-width:90px}.hero h2{font-size:31px}.hero p{max-width:230px}.tiles i{display:none}.tiles button{min-width:0}.tiles button>svg{display:none}.tiles b{font-size:21px}.top{height:50px}.dateControl{padding:4px 8px}}@media print{.sidebar,.top,.overline,.titleRow,.groupControl{display:none!important}.frame,.frame main,.content{background:#fff;margin:0;padding:0;display:block}}.backup{background:#fff;border:1px solid #dbe1d6;border-radius:10px;margin-top:20px;padding:15px;font-size:13px}.backup summary{cursor:pointer;font-weight:600}.backup button{background:#f3f6ed;border:1px solid #c7d5c7;border-radius:6px;padding:6px 12px}body{color:#203538;background:#f4f6f7}.sidebar{background:#183638;overflow-y:auto}.sidebar nav button.active{background:#37585b;box-shadow:inset 3px 0 #b1d3ab}.brand{letter-spacing:-1.6px;font-family:system-ui;font-weight:680}.brand i{border-radius:10px}h1,h2,.tiles b{letter-spacing:-.045em;font-family:system-ui,-apple-system,sans-serif;font-weight:650}.titleRow h1{font-size:clamp(32px,3.3vw,46px)}.hero{background:linear-gradient(115deg,#e6efdc 0%,#e3ede9 85%);border-color:#cad9cf}.panel,.tiles button,.tw-card{box-shadow:0 2px 8px #1a363708}.monitor,.savedToday{margin:0 0 20px;padding:20px 22px}.monitorHead{justify-content:space-between;align-items:center;gap:9px;display:flex}.monitorHead h2{margin:6px 0;font-size:24px}.monitorHead h2 b{vertical-align:middle;color:#31544a;background:#e5ede8;border-radius:14px;padding:3px 9px;font:600 13px system-ui;display:inline-block}.settingsBtn,.settingsForm button,.savedToday button{color:#264641;background:#fff;border:1px solid #c9d7d3;border-radius:7px;padding:7px 10px;font-size:13px}.settingsBtn,.monitorEmpty,.slot{align-items:center;gap:8px;display:flex}.monitorEmpty{color:#466554;background:#f0f6f0;border-radius:8px;margin:12px 0 0;padding:12px;font-size:13px}.monitor details,.settingsForm{border-top:1px solid #e3e8e5;margin-top:12px;padding-top:12px}.monitor details summary{cursor:pointer;font-weight:650}.monitor details small{color:#577069;margin:4px 0;display:block}.monitor details button{color:#2d4645;background:#f5f7f6;border:0;border-radius:5px;align-items:center;gap:6px;margin:4px;padding:7px 11px;display:inline-flex}.settingsForm p{color:#566966;font-size:13px}.rules{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.rules label,.slot label{font-size:12px;display:grid}.rules input,.slot select,.slot input{background:#fff;border:1px solid #c9d7d3;border-radius:6px;padding:6px}.slot{flex-wrap:wrap;margin:7px 0}.settingsForm .saveBtn{color:#fff;background:#254a42}.savedToday button{margin:8px 6px 0 0}.teacher-work label.flag{align-items:center;margin-bottom:12px;font-weight:500;display:flex}.profile{padding-top:12px}@media (max-height:780px) and (min-width:741px){.sidebar{padding-top:18px}.brand{padding-bottom:22px}.sidebar nav button{padding:9px 14px}}@media (max-width:480px){.monitor,.savedToday{padding:15px}.settingsBtn{font-size:12px}.monitorHead h2{font-size:20px}.content{padding-left:12px;padding-right:12px}}.registerHint{background:#f2f6f3;border-radius:8px;padding:9px 12px}.statusTools,.registerFooter{align-items:center;gap:8px;display:flex}.teacher-work .absenceOn{color:#942d20;background:#fbe6e1;border-color:#dfaaa1}.registerFooter{background:#fff;border-top:1px solid #d0dcd4;justify-content:space-between;padding:10px 0;position:sticky;bottom:0}.registerFooter span{color:#52695e;font-size:13px}.directoryTitle{justify-content:space-between;align-items:center;gap:8px;display:flex}.directoryTitle button{color:#28534a;background:#fff;border:1px solid #cedbd4;border-radius:6px;padding:5px 8px;font-size:12px}.gradebook{gap:18px;display:grid}.gradeScroll{max-height:460px;margin-top:16px;overflow:auto}.gradebook table{border-collapse:collapse;width:100%;font-size:13px}.gradebook th,.gradebook td{text-align:start;border-bottom:1px solid #dde5e0;padding:8px 10px}.gradebook thead th{background:#eff4ef;min-width:100px;position:sticky;top:0}.gradebook th:first-child{min-width:160px}.gradebook .sourceHint{background:#f1f5ee;padding:10px;font-size:13px}.gradebook details{margin-top:18px}.gradebook .tw-card>label{margin:12px 0}.gradeReport{width:100%;max-width:900px;margin:auto}.gradeReport header{justify-content:start}@media print{body:has(.gradeReport) :not(:has(.gradeReport)):not(.gradeReport):not(.gradeReport *){display:none!important}body:has(.gradeReport) :has(.gradeReport){width:auto!important;margin:0!important;padding:0!important;display:block!important;position:static!important}.gradeReport{box-shadow:none!important;border:0!important}.gradeReport th,.gradeReport td{padding:10px}.gradeReport header{display:flex!important}}
