:root{--ink:#172b28;--green:#175c48;--lime:#ddedb3;--paper:#f5f6f2;--muted:#73817a;--line:#e0e6dd}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px 'DM Sans',sans-serif}aside{width:238px;background:#142f29;color:#c8d9cd;position:fixed;inset:0 auto 0 0;padding:35px 23px;display:flex;flex-direction:column}.brand{color:white;text-decoration:none;font:800 28px Manrope,sans-serif;letter-spacing:-1px}.brand span{color:var(--lime)}.brand small{display:block;font:9px 'DM Sans';letter-spacing:2px;margin-top:12px;color:#97b2a1}nav{margin-top:48px;display:grid;gap:8px}nav button{text-align:left;background:none;color:#bdcfc4;border:0;padding:13px 15px;border-radius:8px;font-size:14px}nav button.active{background:var(--lime);color:#153b2c;font-weight:700}nav button span{display:inline-block;width:29px}.aside-bottom{margin-top:auto;font-size:12px}.aside-bottom p{color:#91ab9b;font-size:11px}.aside-bottom b{display:inline-block;background:#36564b;padding:10px;border-radius:50%;margin:25px 8px 0 0}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#d9bb73;margin-right:5px}main{margin-left:238px;padding:0 42px 45px;max-width:1800px}header{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}header i{color:#8da586;margin-left:14px}.notice{padding:13px 0;font-size:10px;letter-spacing:1px;color:#7b8069}.heading{display:flex;justify-content:space-between;align-items:center;margin:25px 0}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--green);font-weight:700}h1{font:700 32px Manrope,sans-serif;margin:7px 0;letter-spacing:-1px}h2{font:700 18px Manrope,sans-serif;margin:0 0 18px}h3{font:700 15px Manrope}p{line-height:1.6;color:var(--muted)}button{cursor:pointer;font:inherit}button.primary{background:var(--green);color:white;border:0;border-radius:7px;padding:12px 18px}button.secondary{background:white;border:1px solid var(--line);padding:10px 15px;border-radius:7px;color:var(--ink)}button:disabled{cursor:not-allowed;opacity:.45}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:25px 0}.card,.panel{background:white;border:1px solid var(--line);border-radius:12px;padding:23px}.card small{color:var(--muted)}.card strong{display:block;font:700 32px Manrope,sans-serif;margin:13px 0 5px}.card:first-child{background:var(--green);color:white;border:0}.card:first-child small,.card:first-child p{color:#c1d6c5}.card p{font-size:11px;margin:0}.grid{display:grid;grid-template-columns:1.8fr 1fr;gap:23px}.panel{margin-bottom:20px}.panel-head{display:flex;justify-content:space-between;align-items:center}.panel-head button{border:0;background:none;color:var(--green)}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);padding:13px 9px;border-bottom:1px solid var(--line)}td{padding:17px 9px;border-bottom:1px solid #edf0e9}td small{display:block;color:var(--muted);margin-top:5px}.rowlink{border:0;background:none;text-align:left;color:var(--ink);font-weight:600;padding:0;max-width:320px}.badge{display:inline-block;background:#fff1d8;color:#956b24;padding:5px 8px;border-radius:5px;font-size:10px;white-space:nowrap}.badge.ok{background:#e1eedf;color:#3f6c45}.step{display:flex;gap:13px;padding:14px 0;border-bottom:1px solid var(--line)}.step b{background:#edf2e5;border-radius:8px;padding:12px;height:41px;color:#517249}.step p{font-size:12px;margin:4px 0}.step strong{font-size:12px}.empty{padding:30px 15px;text-align:center;border:1px dashed var(--line);border-radius:8px;color:var(--muted);line-height:1.7}.toolbar{display:flex;gap:12px;margin:20px 0}input,select,textarea{border:1px solid #d5ddd2;border-radius:6px;padding:10px;background:#fff;color:var(--ink);font:inherit;max-width:100%}input.search{width:360px}label{display:grid;gap:7px;font-size:12px;margin:13px 0}textarea{min-height:90px}dialog{border:0;border-radius:15px;width:min(1100px,95vw);padding:32px;color:var(--ink);max-height:90vh}dialog::backdrop{background:#10272088;backdrop-filter:blur(4px)}.close{position:absolute;top:12px;right:15px;background:none;border:0;font-size:25px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.actions{display:flex;gap:12px;margin-top:20px}.lines input{width:90px}.lines td:first-child{min-width:220px}.scroll{overflow:auto}.schedule{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.day{min-height:130px;background:#f7f8f3;border:1px solid var(--line);padding:10px;border-radius:7px}.day.today{border-color:#548665}.day small{color:var(--muted)}.event{background:#dfebd1;padding:8px;font-size:11px;margin-top:10px;border-radius:5px}.bar{height:9px;background:#edf1e7;border-radius:10px;margin:12px 0 23px}.bar span{display:block;height:100%;background:#8cac75;border-radius:10px}#toast{position:fixed;bottom:25px;right:25px;background:#173e30;color:#fff;padding:15px 22px;border-radius:9px;display:none;max-width:450px}.compact td{padding:10px 9px}.muted{color:var(--muted);font-size:12px}.error{background:#fff1db;color:#876125;padding:14px;border-radius:7px}a{color:var(--green)}@media(max-width:1100px){main{padding:0 22px 30px}.grid{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,1fr)}.schedule{grid-template-columns:repeat(4,1fr)}}@media(max-width:700px){aside{position:relative;width:100%;padding:20px}.brand{font-size:24px}nav{margin-top:20px;display:flex;overflow:auto}nav button{white-space:nowrap}.aside-bottom{display:none}main{margin:0;padding:0 16px}.heading{align-items:flex-start;gap:12px}h1{font-size:25px}header{height:55px}.cards{gap:8px}.card{padding:16px}.formgrid{grid-template-columns:1fr}.schedule{grid-template-columns:repeat(2,1fr)}.panel{padding:15px}.toolbar{flex-wrap:wrap}}

.auth-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(130deg,#173c30,#f0f3e7)}.auth-card{width:min(440px,92vw);background:white;border-radius:18px;padding:38px;box-shadow:0 30px 100px #10272035}.auth-card h1{font-size:30px}.auth-card form{margin:26px 0}.auth-card button{width:100%;margin-top:12px}.auth-link{display:inline-block;margin:20px 0;font-weight:700}
