:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#203a43;background:#f3f6f5;font-size:15px}*{box-sizing:border-box}body{margin:0;display:flex}aside{width:244px;background:#123b37;color:#fff;min-height:100vh;padding:30px 20px;position:fixed;inset:0 auto 0 0;overflow:auto}.brand{font-size:30px;font-weight:750;color:white;text-decoration:none}.brand span{display:block;font-size:11px;font-weight:400;color:#b4d2ca;margin:8px 0 35px}.identity{padding-bottom:20px;border-bottom:1px solid #42635d}.identity small{display:block;color:#b4d2ca;margin-top:6px}nav{display:grid;gap:4px;margin:22px 0}nav a{color:#cee0da;padding:11px 13px;text-decoration:none;border-radius:7px}nav a:hover,nav a.active{background:#2d5750;color:white}main{margin-left:244px;padding:40px;width:calc(100% - 244px);max-width:1700px}.eyebrow{font-size:10px;letter-spacing:2px;color:#4a8174;font-weight:700}h1{font-size:32px;letter-spacing:-1px;margin:12px 0}header p,.muted{color:#687e84}header{margin-bottom:30px}h2{font-size:19px;margin:0 0 20px}h3{font-size:14px}.panel{background:white;border:1px solid #dce6e2;border-radius:12px;padding:25px;margin-bottom:22px;overflow:auto;box-shadow:0 3px 10px #203a4303}.fields{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:20px}label{display:grid;gap:8px;font-size:13px;flex:1;min-width:190px}input,select{font:inherit;padding:11px;border:1px solid #cad9d3;border-radius:6px;width:100%;background:white;color:#203a43}button,.button{display:inline-block;background:#19745e;border:0;border-radius:6px;color:white;padding:11px 17px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;text-decoration:none}button:hover{filter:brightness(.93)}.secondary{background:#e9f0ed;color:#234e42}aside .secondary{background:#315b53;color:white}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid #e6eeea}th{color:#687e84;font-weight:500}.notice{border-left:4px solid #19745e;background:#e5f3ec;border-radius:6px;padding:16px;margin-bottom:20px}.error{background:#fff0e9;border-color:#d36938;color:#8b3f22}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:24px}.cards article{padding:23px;background:#fff;border:1px solid #dce6e2;border-radius:12px}.cards span{display:block;color:#687e84;font-size:13px}.cards strong{display:block;margin-top:18px;font-size:36px}.cards strong.status{font-size:23px}.columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}.row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e6eeea}.check{display:flex;align-items:center}.check input{width:18px}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.toolbar h2{flex:1;margin:0}.week{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:12px;margin-top:20px;min-width:800px}.day{background:#f5f8f6;padding:12px;border-radius:8px}.lesson{background:white;border-left:3px solid #2d9275;padding:12px;margin:12px 0;border-radius:5px}.lesson strong,.lesson span,.lesson small{display:block;margin-bottom:5px}.lesson small{font-size:11px;color:#687e84}.pending{color:#965323}li{margin-bottom:13px}footer{color:#7c8e90;font-size:11px;margin-top:30px}@media(max-width:900px){aside{position:static;width:100%;min-height:auto}body{display:block}nav{grid-template-columns:repeat(2,1fr)}main{margin:0;width:100%;padding:24px}.cards{grid-template-columns:repeat(2,1fr)}.columns{grid-template-columns:1fr}}@media print{aside,.no-print,form,footer{display:none!important}main{margin:0;width:100%;padding:0;max-width:none}.panel{border:0;padding:8px;overflow:visible}.week{min-width:0;grid-template-columns:repeat(5,1fr)}body{background:white}.lesson{break-inside:avoid}@page{size:landscape;margin:10mm}}
