:root{--ink:#243b34;--muted:#7a8782;--green:#205b49;--light:#e9f2ed;--line:#e8ece8;--bg:#f6f7f4;--orange:#c27c36;--purple:#8573b5;--blue:#5986ac;--shadow:0 3px 14px #203e3003}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px Arial,sans-serif;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a2c6b4;outline-offset:3px}button{border:0;background:none}svg{height:20px;width:20px;vertical-align:middle;stroke-width:1.65;flex-shrink:0}button span[data-icon]{display:inline-flex}.sidebar{width:246px;background:#fff;position:fixed;inset:0 auto 0 0;z-index:20;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:30px 20px 18px}.brand{display:flex;align-items:center;gap:11px;font:800 30px Georgia,sans-serif;letter-spacing:-1.3px;padding:0 11px}.brand-icon{display:inline-flex;justify-content:center;align-items:center;font-size:33px;line-height:1;background:var(--green);color:white;width:39px;height:42px;border-radius:12px;position:relative;letter-spacing:-3px;padding-bottom:6px}.brand-icon>span{font-size:22px;color:#c9dba4;align-self:flex-start;margin:0 0 0 1px}.brand-sub{display:block;font:600 8px Arial,sans-serif;letter-spacing:1.8px;margin-top:0;color:var(--muted)}.school{display:flex;gap:10px;align-items:center;background:#f7f8f5;border:1px solid var(--line);border-radius:9px;padding:12px 10px;margin:34px 0 26px;font-weight:650;font-size:12px}.school small{display:block;color:var(--muted);font-size:9px;font-weight:400;margin-top:2px}.school-mark{font:800 17px Georgia;letter-spacing:-1px}.school-mark span{color:#6b9a72;font-size:13px}.nav-caption{font-size:9px;font-weight:700;color:#9aa49e;letter-spacing:1.5px;margin:0 12px 12px}.nav-item{display:flex;align-items:center;width:100%;gap:12px;border-radius:7px;text-align:left;font-size:12px;font-weight:550;padding:12px 13px;margin-bottom:5px;color:#66756e;white-space:nowrap}.nav-item svg{width:18px;height:18px}.nav-item:hover{background:#f6f8f4}.nav-item.active{background:#eaf2e9;color:#285942;font-weight:700}.nav-item.active:after{content:'';background:#4f8057;height:6px;width:6px;border-radius:50%;margin-left:auto}.nav-item .count{font-size:9px;border-radius:5px;background:#e9ede7;padding:0 6px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:35px}.sidebar-bottom .nav-item{font-size:11px}.help-card{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--line);border-radius:9px;padding:13px 10px;margin:22px 0 18px;width:100%;font-size:10px}.help-card>span:last-child{margin-left:auto;color:var(--muted)}.help-card small{display:block;color:var(--muted);font-size:8px;margin-top:3px}.profile{display:flex;gap:11px;align-items:center;text-align:left;width:100%;border-top:1px solid var(--line);padding:18px 6px 0;font-size:12px;font-weight:650}.profile small{display:block;color:var(--muted);font-size:10px;font-weight:400;margin-top:2px}.profile>span:last-child{margin-left:auto}.avatar{width:36px;height:36px;background:#e9eedf;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;color:#5a7049}.avatar.small{width:31px;height:31px;font-size:10px}.workspace{margin-left:246px}.topbar{height:76px;padding:0 40px;display:flex;justify-content:space-between;align-items:center;background:#fff;border-bottom:1px solid var(--line)}.crumb{display:flex;gap:14px;align-items:center;font-size:11px;color:#8b9690}.crumb strong{font-weight:550;color:#4a5b52}.crumb-slash{color:#c5ccc6}.top-actions{display:flex;gap:24px;align-items:center}.demo-dot{font-size:9px;color:#8b9690;display:flex;align-items:center;gap:6px}.demo-dot:before{content:'';width:5px;height:5px;border-radius:50%;background:#8fa87b}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:7px;color:#76867b}.icon-button:hover{background:#eef2eb}.notification{position:relative}.notification i{position:absolute;top:6px;right:7px;background:#c38550;border:2px solid #fff;border-radius:50%;width:7px;height:7px}.menu-toggle{display:none}main{max-width:1600px;margin:auto;padding:32px 40px 28px;min-height:calc(100vh - 126px)}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:15px}.eyebrow{font-size:9px;letter-spacing:1.6px;font-weight:700;color:#839080}.page-heading h1{font:750 28px/1.3 Georgia,sans-serif;letter-spacing:-.9px;margin:7px 0 8px}.page-heading p{margin:0;color:#8a948c;font-size:11px}.context-select{border:1px solid #e0e6dd;background:#fff;border-radius:7px;padding:10px 29px 10px 12px;font-size:10px;color:#5d6a60;max-width:240px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:26px}.stat{background:#fff;border:1px solid var(--line);padding:18px 19px 16px;border-radius:10px;box-shadow:var(--shadow)}.stat-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#7e887f}.stat-icon{width:29px;height:29px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#f0f4ec;color:#729464}.stat-icon svg{height:16px;width:16px}.stat:nth-child(2) .stat-icon{background:#f5f0e7;color:#bc9c6b}.stat:nth-child(3) .stat-icon{background:#edf0f7;color:#8199bc}.stat:nth-child(4) .stat-icon{background:#f1edf5;color:#9c8cb5}.stat-value{font:750 28px Georgia;letter-spacing:-1px;margin:5px 0 3px}.stat-value small{font-size:14px;color:#a5aca2;font-weight:500;letter-spacing:0}.stat-meta{font-size:9px;color:#929c91}.stat-meta .positive{color:#719468}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 287px;gap:22px}.left-col,.right-col{display:flex;flex-direction:column;gap:21px}.card{background:white;border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow);min-width:0}.card-header{display:flex;justify-content:space-between;align-items:center;padding:20px 23px 16px;gap:10px}.card h2{font:700 14px Georgia;margin:0;letter-spacing:-.25px}.card-sub{font-size:10px;color:var(--muted);margin:4px 0 0}.text-link{font-size:10px;color:#5b7b57;font-weight:600;display:inline-flex;align-items:center;gap:6px;padding:3px 0}.text-link svg{width:13px;height:13px}.date-nav{display:flex;align-items:center;gap:4px;color:#77846f;font-size:9px}.date-nav .icon-button{width:24px;height:24px}.date-nav svg{width:14px;height:14px}.today-label{padding:0 23px;margin-bottom:17px;font-size:10px;color:#84907c;display:flex;gap:7px;align-items:center}.tiny-dot{width:5px;height:5px;border-radius:50%;background:#8da576}.lesson-list{padding:0 23px 5px}.lesson{display:flex;gap:15px;margin-bottom:14px;align-items:stretch}.lesson-time{width:40px;font-size:10px;font-weight:600;color:#6d796a;text-align:right;padding-top:9px;flex-shrink:0}.lesson-time small{display:block;font-weight:400;color:#a5ada1;font-size:9px;margin-top:3px}.lesson-block{flex:1;border:1px solid #e7ece3;border-left:3px solid #9bae83;background:#f5f7ef;border-radius:6px;padding:12px 14px;text-align:left;position:relative;min-width:0}.lesson-block h3{font-size:11px;margin:0 0 6px;font-weight:650}.lesson-block p{font-size:9px;color:#859079;margin:0;display:flex;gap:12px;flex-wrap:wrap}.lesson-block p svg{width:11px;height:11px}.lesson-block.blue{background:#f1f5f7;border-color:#e5edf0;border-left-color:#83a4b9}.lesson-block.blue p{color:#8295a1}.lesson-block.purple{background:#f5f2f7;border-color:#ece6f0;border-left-color:#ac98bc}.lesson-block.purple p{color:#988ba4}.lesson-tag{position:absolute;right:11px;top:11px;font-size:8px;color:#829174;background:#eaf0e0;padding:2px 7px;border-radius:4px}.break{margin:0 0 14px 55px;display:flex;align-items:center;gap:10px;font-size:8px;color:#acb2a4}.break:before,.break:after{content:'';height:1px;flex:1;border-top:1px dashed #e5e9df}.card-footer{border-top:1px solid #f0f2ed;padding:12px 23px;display:flex;justify-content:space-between;color:#9aa38f;font-size:9px}.badge{border-radius:4px;padding:3px 7px;background:#eef4e7;font-size:8px;color:#718565;font-weight:550;white-space:nowrap}.badge.orange{background:#fbf0e1;color:#b78e54}.badge.blue{background:#eaf1f6;color:#7c9ab1}.badge.purple{background:#f1ecf6;color:#9c85b6}.badge.red{background:#faeae4;color:#b87b65}.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);padding:0 23px;margin-bottom:1px}.tab{font-size:10px;color:#98a18e;padding:0 0 11px;position:relative}.tab.active{color:#547448;font-weight:600}.tab.active:after{content:'';position:absolute;bottom:-1px;height:2px;background:#759660;left:0;right:0}.task-row{display:flex;gap:12px;align-items:center;padding:15px 23px;border-bottom:1px solid #f0f2eb}.task-row:last-child{border-bottom:0}.check{width:17px;height:17px;accent-color:#537754;cursor:pointer;flex-shrink:0}.task-info{flex:1;min-width:0}.task-title{font-size:11px;font-weight:550;display:block;padding:0;text-align:left}.task-title:hover{text-decoration:underline}.task-info p{font-size:9px;color:#9aa28f;margin:5px 0 0}.task-row.done .task-title{text-decoration:line-through;color:#9ca592}.task-date{font-size:9px;color:#ad9572;text-align:right}.task-date small{display:block;margin-top:3px;color:#a4ab9b;font-size:8px}.calendar-card{padding:19px 20px 15px}.month-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.month-head h2{font-size:12px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.cal-weekday{font-size:8px;color:#a4ac9c;padding-bottom:7px}.cal-day{font-size:9px;border-radius:6px;height:27px;position:relative;padding:3px;color:#728267}.cal-day:hover{background:#edf2e6}.cal-day.center{background:#f0f4e9}.cal-day.company{background:#f8f2e7;color:#aa9876}.cal-day.selected{background:#607e4f;color:white;font-weight:600}.cal-day.today:after{content:'';position:absolute;width:3px;height:3px;border-radius:50%;background:#789363;bottom:2px;left:calc(50% - 1.5px)}.calendar-legend{display:flex;gap:13px;margin-top:15px;padding-top:12px;border-top:1px solid #f0f2ec;font-size:8px;color:#9ba58f}.legend-dot{width:6px;height:6px;display:inline-block;background:#c2d0ab;border-radius:2px;margin-right:5px}.legend-dot.company{background:#e9d7b6}.news{padding:0 20px}.news-item{display:flex;gap:10px;padding:13px 0;border-bottom:1px solid #f0f2ec;width:100%;text-align:left}.news-item:last-child{border-bottom:0;padding-bottom:20px}.news-icon{width:28px;height:28px;border-radius:7px;background:#eff3e9;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#8a9c74}.news-icon svg{width:14px;height:14px}.news-item:nth-child(2) .news-icon{background:#edf1f7;color:#8c9db6}.news-item:nth-child(3) .news-icon{background:#f8f1e7;color:#b99b72}.news-copy strong{display:block;font-size:10px;font-weight:550}.news-copy p{font-size:9px;margin:3px 0;color:#9ba58f;line-height:1.6}.news-copy small{font-size:8px;color:#adb5a3}.contact-card{padding:18px 20px}.contact-person{display:flex;gap:10px;align-items:center;margin-top:17px}.contact-person .avatar{width:31px;height:31px;background:#f1eee5;color:#9c947f;font-size:9px}.contact-person strong{display:block;font-size:10px;font-weight:600}.contact-person small{font-size:9px;color:#9aa48f}.contact-person .icon-button{margin-left:auto;border:1px solid #edf0e6;width:28px;height:28px}.contact-person svg{width:13px;height:13px}.quick-note{font-size:9px;color:#8c9a80;display:flex;gap:8px;align-items:flex-start;padding:0 5px}.quick-note svg{width:13px;height:13px;margin-top:1px}footer{font-size:9px;color:#a1aa9a;margin:0 40px;padding:18px 0;border-top:1px solid #e8ece1;display:flex;justify-content:space-between;gap:10px}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px;flex-wrap:wrap}.toolbar-group{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 14px;border:1px solid #dfe6d9;background:#fff;border-radius:7px;font-size:11px;font-weight:550}.button:hover{background:#f1f4ec}.button svg{width:15px;height:15px}.button.primary{background:var(--green);border-color:var(--green);color:white}.button.primary:hover{background:#164536}.button.danger{color:#b26b52}.section-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:22px}.section-tabs .button{border-color:transparent;background:transparent;color:#8b9780}.section-tabs .button.active{background:#e7eee1;color:#537047}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:11px}th{font-size:9px;color:#98a18c;font-weight:550;background:#fafbf8;padding:14px 20px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:18px 20px;border-bottom:1px solid #eef1e9}tr:last-child td{border-bottom:0}td strong{font-weight:600}.grade{font:750 18px Georgia;color:#56704c}.grade small{font-size:10px;color:#a4ae96;font-weight:400}.data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.data-grid .card{padding:23px}.data-grid h2{margin-bottom:18px}.field-list{display:grid;grid-template-columns:1fr 1fr;gap:19px}.field-list dt{font-size:9px;color:#9ca58f;margin-bottom:4px}.field-list dd{font-size:12px;margin:0}.empty{padding:55px 24px;text-align:center;color:#98a58d}.empty svg{height:32px;width:32px;margin-bottom:12px}.empty h3{font:700 15px Georgia;color:#5a7051}.empty p{font-size:11px}.search{background:white;border:1px solid #e0e6d8;border-radius:7px;padding:10px 12px;font-size:11px;min-width:200px;color:#5d7052}.list-card{padding:20px 23px}.list-card+.list-card{margin-top:13px}.list-card h3{font:700 14px Georgia;margin:8px 0}.list-card p{color:#8d9980;font-size:11px}.list-meta{display:flex;gap:20px;font-size:10px;color:#a3ad96;flex-wrap:wrap}.list-actions{display:flex;gap:10px;margin-top:16px;align-items:center}.progress{height:5px;background:#edf1e7;border-radius:10px;overflow:hidden;margin:12px 0}.progress>span{display:block;background:#8ea277;height:100%}.week-grid{display:grid;grid-template-columns:48px repeat(5,minmax(110px,1fr));min-width:690px;position:relative;padding:0 12px 15px;gap:0 6px}.week-grid .day-head{text-align:center;height:53px;padding:10px 0;font-size:9px;color:#96a187;border-bottom:1px solid var(--line)}.day-head strong{font-size:13px;color:#607451;margin-left:5px}.week-column{height:520px;position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 51px,#f0f2eb 51px,#f0f2eb 52px)}.hour{height:52px;font-size:9px;color:#acb49f;padding-top:0}.week-event{position:absolute;left:0;right:0;padding:10px 8px;border-radius:6px;background:#f0f4e9;border-left:3px solid #a2b187;overflow:hidden;text-align:left;width:100%;font-size:9px}.week-event.blue{background:#eef3f6;border-color:#9ab3c4}.week-event.purple{background:#f3eff6;border-color:#b2a2c1}.week-event strong{display:block;font-size:10px;line-height:1.4;margin-bottom:5px}.week-event small{display:block;font-size:8px;color:#8c9b7e;margin-top:5px}.info-strip{display:flex;align-items:center;gap:10px;border:1px solid #e4eadd;background:#f1f5ea;border-radius:8px;padding:12px 16px;color:#819071;font-size:10px;margin-bottom:20px}.info-strip svg{width:16px;height:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid .full{grid-column:1/-1}label.form-label{font-size:10px;font-weight:550;display:block;color:#708163}label.form-label input:not([type=checkbox]),label.form-label select,label.form-label textarea{display:block;width:100%;padding:10px 11px;border:1px solid #dee5d6;background:white;border-radius:6px;margin-top:6px;font-size:12px;color:var(--ink)}textarea{resize:vertical;min-height:80px}.check-label{display:flex;gap:8px;align-items:flex-start;font-size:10px;color:#849473}.check-label input{accent-color:var(--green)}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.form-hint{font-size:10px;color:#9da68f;margin:9px 0 0}dialog{border:1px solid var(--line);border-radius:15px;width:min(580px,calc(100% - 32px));padding:24px;color:var(--ink);box-shadow:0 30px 100px #173a3028;max-height:90vh;overflow-y:auto}dialog::backdrop{background:#192f2866;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}dialog h2{font:750 23px Georgia;letter-spacing:-.5px;margin:0 0 12px}dialog h3{font-size:12px;margin:22px 0 8px}dialog p{font-size:12px;color:#87957b;line-height:1.8}dialog .field-list{margin-top:24px}.toast{position:fixed;left:calc(50% + 100px);transform:translate(-50%,20px);bottom:28px;background:#244e3c;color:#fff;padding:13px 20px;border-radius:8px;box-shadow:0 6px 24px #20452d25;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:99;max-width:90%}.toast.show{opacity:1;transform:translate(-50%,0)}.chart-bars{display:flex;align-items:flex-end;gap:22px;height:145px;border-bottom:1px solid var(--line);padding:0 15px;margin:10px 0 30px}.chart-group{flex:1;display:flex;align-items:flex-end;justify-content:center;gap:5px;height:100%;position:relative}.chart-bar{width:22px;background:#8fa77b;border-radius:3px 3px 0 0;position:relative}.chart-bar.group{background:#dce5d4}.chart-bar span{position:absolute;top:-18px;font-size:8px;left:50%;transform:translateX(-50%)}.chart-group>small{position:absolute;bottom:-23px;font-size:8px;color:#9aa68d;white-space:nowrap}.steps{display:flex;gap:30px;margin:0 0 25px;font-size:11px;color:#a5ae98}.steps .active{color:#547548;font-weight:650}.step-number{display:inline-flex;background:#edf2e6;width:25px;height:25px;align-items:center;justify-content:center;border-radius:50%;margin-right:6px}.signin{max-width:430px;margin:80px auto;padding:40px;text-align:center}.scrim{display:none}.error-text{color:#b66e52;font-size:11px;margin-top:12px}.highlight{background:#f5f7ef;padding:16px;border-radius:8px}.source-note{font-size:9px;color:#a4ae98;margin-top:20px}
@media(min-width:1500px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 330px}.stat{padding:22px}.lesson-block{padding:16px}.card-header{padding-top:24px}}@media(max-width:1200px){.sidebar{width:212px;padding-left:14px;padding-right:14px}.workspace{margin-left:212px}.topbar{padding:0 26px}main{padding:28px 26px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 252px;gap:18px}.stats{gap:12px}.stat{padding:15px}.stat-top{font-size:9px}.stat-value{font-size:25px}.card-header,.task-row{padding-left:18px;padding-right:18px}.lesson-list{padding-left:18px;padding-right:18px}.lesson-tag{display:none}.brand{padding:0 8px}.nav-item{font-size:11px}.help-card small{font-size:7px}footer{margin:0 26px}.page-heading h1{font-size:25px}}@media(max-width:890px){.dashboard-grid{grid-template-columns:1fr}.right-col{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.right-col .quick-note{display:none}.right-col .contact-card{grid-column:1/-1}.contact-card .contact-person{display:inline-flex;min-width:220px;margin-right:20px}.page-heading{align-items:flex-start}.stats{grid-template-columns:repeat(2,1fr)}.top-actions{gap:13px}.data-grid{grid-template-columns:1fr}.page-heading h1{font-size:24px}.context-select{max-width:200px}.demo-dot{display:none}}@media(max-width:740px){.sidebar{transform:translateX(-100%);transition:.2s;width:246px}.sidebar.open{transform:translateX(0)}.workspace{margin-left:0}.menu-toggle{display:inline-flex;margin-right:2px}.topbar{height:65px;padding:0 18px}.crumb{gap:8px;font-size:10px}main{padding:23px 18px}.page-heading{flex-wrap:wrap;margin-bottom:21px}.page-heading h1{font-size:26px}.page-heading p{font-size:11px}.context-select{font-size:9px;max-width:100%}.stats{gap:10px;margin-bottom:20px}.stat{padding:13px 14px}.stat-value{font-size:26px}.stat-meta{font-size:8px}.dashboard-grid{gap:18px}.right-col{display:flex}.calendar-card{padding:20px}.cal-day{height:34px}.card-header{padding:18px}.card-header h2{font-size:13px}.lesson-block p{font-size:9px;gap:9px}.lesson-time{width:32px;font-size:9px}.lesson{gap:10px}.today-label{padding-left:18px}.break{margin-left:42px}.task-row{gap:10px}.task-title{font-size:10px}.task-info p{font-size:8px}.task-date{font-size:8px}.task-row .badge{display:none}.card-footer{padding:12px 18px}.right-col .contact-card{display:block}.contact-card .contact-person{display:flex}.news-item{padding:16px 0}.news-copy strong{font-size:11px}.news-copy p{font-size:10px}footer{margin:0 18px;font-size:8px;flex-direction:column}.scrim.open{display:block;position:fixed;inset:0;background:#183a2f55;z-index:19;backdrop-filter:blur(2px)}.toast{left:50%;font-size:11px;min-width:270px;text-align:center}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.toolbar{align-items:flex-start}.toolbar-group{gap:6px}.button{font-size:10px;padding:8px 11px}.section-tabs{gap:3px}.search{min-width:0;width:100%}.field-list{gap:17px}.data-grid .card{padding:20px}.list-meta{gap:10px}.top-actions{gap:12px}.chart-bars{gap:16px}.info-strip{font-size:9px}.week-grid{min-width:620px}.steps{gap:15px;font-size:10px}.signin{margin-top:20px;padding:28px}.month-head h2{font-size:13px}}
@media print{.sidebar,.topbar,.toolbar,.section-tabs,footer,.toast,.demo-dot{display:none!important}.workspace{margin:0}main{padding:0;max-width:none}.card{box-shadow:none;break-inside:avoid}.week-grid{min-width:0}.week-column{height:520px}.page-heading h1{font-size:22px}.table-wrap{overflow:visible}body{background:white;-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* Keep supporting text readable at compact viewport widths. */
:root{--muted:#69786d}body{font-family:Arial,system-ui,sans-serif}.page-heading h1{font-size:clamp(26px,2.4vw,35px)}.page-heading p{font-size:13px;color:#68776c}.eyebrow,.today-label,.stat-meta,.card-footer,.cal-weekday,.calendar-legend,.contact-person small,.news-copy p,.news-copy small,.task-info p,.task-date small,.form-hint,.source-note{color:#6d7d6e}.card h2{font-size:16px}.stat-top,.stat-meta,.context-select,.text-link,.today-label,.tab,.card-sub,.button{font-size:11px}.lesson-block h3,.task-title,.news-copy strong{font-size:12px}.lesson-block p,.task-info p,.news-copy p,.calendar-legend{font-size:10px}.lesson-block p,.lesson-block.blue p,.lesson-block.purple p{color:#657568}.badge{font-size:9px}.calendar-card .icon-button{width:26px;height:26px}.cal-day{font-size:11px}.topbar{height:64px}.nav-item{font-size:13px}.school{font-size:13px}.nav-caption{color:#69796c}.sidebar{overflow-y:auto}.sidebar-bottom{padding-top:20px}.page-heading:focus{outline:none}#main:focus{outline:none}.week-grid .day-head{font-size:11px}.week-event strong{font-size:11px}.week-event small{font-size:9px}.week-event:focus-visible{z-index:1}.week-column{background:#fff repeating-linear-gradient(to bottom,transparent 0,transparent 51px,#f0f2eb 51px,#f0f2eb 52px)}#planning-card:fullscreen{background:white;padding:20px;overflow:auto}.sidebar .nav-item .count{min-width:19px;text-align:center}.calendar-grid button{min-width:0}
@media(max-width:1200px) and (min-width:891px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 236px}.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-top{font-size:10px;min-height:32px;gap:4px}.stat-icon{width:24px;height:24px;flex-shrink:0}.stat-meta{font-size:9px}}
@media(max-width:740px){.sidebar{visibility:hidden}.sidebar.open{visibility:visible}.page-heading p{font-size:12px}.stat-meta{font-size:10px}.task-title{font-size:12px}.task-info p,.task-date,.task-date small{font-size:10px}.lesson-block h3{font-size:12px}.lesson-block p{font-size:10px}.card-footer{font-size:10px}.topbar{height:59px}.cal-day{height:36px}.chart-bars{padding:0;gap:8px}.chart-bar{width:13px}}
