:root{font-family:Inter,system-ui,sans-serif;color:#243129;background:#f3f1ea}*{box-sizing:border-box}body{margin:0;background:#f3f1ea;color:#243129}.top{height:68px;padding:8px 18px;background:#214b34;color:#fff;display:flex;align-items:center;gap:12px}.top img{width:72px;height:48px;object-fit:contain;background:#fff;border-radius:6px}.top div{margin-right:auto}.top small{display:block;opacity:.8}.top button,.login-box button{border:0;border-radius:8px;background:#d8b867;color:#203126;padding:10px 14px;font-weight:700}.layout{display:grid;grid-template-columns:190px 1fr;min-height:calc(100vh - 68px)}nav{padding:14px 10px;background:#e3e9e2;border-right:1px solid #ccd4cc}nav a{display:block;padding:10px;border-radius:8px;color:inherit;text-decoration:none}nav a.active{background:#c9dece;font-weight:700}main{padding:22px;max-width:1200px;width:100%}h1{margin-top:0}.lead{color:#647169}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tiles article,.panel{background:#fff;border:1px solid #d7ddd7;border-radius:12px;padding:15px}.tiles strong{display:block;font-size:24px;margin-top:5px}.panel{margin-top:14px}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.calendar span{min-height:60px;border:1px solid #dce1dc;border-radius:7px;padding:8px}.calendar .busy{background:#dcebdd}.login-page{display:grid;place-items:center;min-height:100vh;padding:18px}.login-box{width:min(390px,100%);background:#fff;border:1px solid #d7ddd7;border-radius:16px;padding:26px}.login-box img{display:block;width:120px;height:75px;object-fit:contain;margin:auto}.login-box h1{text-align:center}.login-box p,.login-box small{color:#647169}.login-box label{display:block;margin:14px 0}.login-box input{display:block;width:100%;margin-top:5px;padding:11px;border:1px solid #bdc8be;border-radius:8px}.login-box button{width:100%}.alert{background:#fae3df;border-left:4px solid #a94334;padding:10px}@media(max-width:720px){.layout{grid-template-columns:1fr}nav{display:flex;overflow:auto;border-right:0;border-bottom:1px solid #ccd4cc}nav a{white-space:nowrap}.tiles{grid-template-columns:1fr 1fr}main{padding:15px}.calendar{grid-template-columns:repeat(4,1fr)}}@media(max-width:440px){.tiles{grid-template-columns:1fr}.calendar{grid-template-columns:repeat(2,1fr)}}
