:root {
 --green:#405b24;
 --brown:#9f8975;
 --orange:#b96529;
 --cream:#f7f5ed;
 --text:#253624;
}
*{box-sizing:border-box}
body{margin:0;background:var(--cream);color:var(--text);font-family:Arial,Helvetica,sans-serif}
.layout{display:flex;min-height:100vh}
.sidebar{width:205px;flex-shrink:0;background:var(--brown);padding:15px 12px 30px}
.logo{display:block;width:155px;max-width:100%;margin:0 auto 22px}
.nav a{display:block;color:white;text-decoration:none;font-size:13px;padding:9px 10px;border-radius:5px;margin:1px 0}
.nav a:hover,.nav a.active{background:rgba(42,58,26,.35)}
.main{flex:1;min-width:0;padding:18px 24px 40px}
.hero{background:linear-gradient(120deg,#66792c,#36541f);border-radius:13px;padding:23px 24px;color:white;margin-bottom:20px}
.hero h1{font-family:Georgia,serif;font-size:29px;margin:0 0 16px}
.hero p{margin:0;font-size:13px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:13px;margin-bottom:26px}
.card{background:white;border:1px solid #e5e7e0;border-radius:10px;padding:18px;min-height:122px}
.card .count{font-family:Georgia,serif;font-size:29px;margin-bottom:12px}
.btn{display:inline-block;background:var(--orange);border:0;border-radius:5px;padding:10px 14px;color:white;text-decoration:none;font-weight:bold;font-size:12px;cursor:pointer}
.btn:hover{background:#934b1d}
.panel{background:white;border:1px solid #e5e7e0;border-radius:10px;padding:18px;margin-bottom:20px;overflow-x:auto}
h2{font-family:Georgia,serif;font-weight:normal;font-size:22px}
table{border-collapse:collapse;width:100%;font-size:13px}
th{background:#edf2e9;text-align:left}
th,td{padding:12px;border-bottom:1px solid #e8e8e8}
input,select,textarea{display:block;width:100%;padding:11px;margin:7px 0 17px;border:1px solid #cdd2c9;border-radius:5px;font:inherit}
textarea{min-height:120px}
label{font-size:13px;font-weight:bold}
.form{max-width:740px}
.login{max-width:420px;margin:9vh auto;background:white;padding:30px;border-radius:12px;box-shadow:0 8px 35px #0002}
.login img{display:block;width:180px;margin:0 auto 20px}
.error{background:#ffe8e2;color:#832b1d;padding:13px;margin-bottom:18px}
.footer{margin-top:30px;font-size:11px;color:#879485}
@media(max-width:750px){
.layout{display:block}
.sidebar{width:100%}
.nav{display:flex;flex-wrap:wrap}
.main{padding:14px}
.hero h1{font-size:24px}
}
