:root{
  --brown:#3d2b1f;--brown-dark:#241811;--gold:#c8973a;--green:#4a5d3a;
  --cream:#f7f1e3;--cream-dark:#ede2c8;--wine:#7a3b2e;--white:#fffdf8;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Segoe UI',Georgia,sans-serif;background:var(--cream);color:var(--brown)}
a{color:var(--wine);text-decoration:none}

.admin-wrap{display:flex;min-height:100vh}
.sidebar{width:230px;background:var(--brown-dark);color:var(--cream);padding:1.5rem 0;flex-shrink:0}
.sidebar h2{color:var(--gold);padding:0 1.3rem 1.2rem;font-size:1.2rem;border-bottom:1px solid rgba(200,151,58,.3);margin-bottom:1rem}
.sidebar a{display:block;color:var(--cream);padding:.7rem 1.3rem;font-size:.92rem;border-left:3px solid transparent}
.sidebar a:hover,.sidebar a.active{background:rgba(200,151,58,.12);border-left-color:var(--gold);color:var(--gold)}
.sidebar .logout{margin-top:2rem;color:#d99;opacity:.8}

.main{flex:1;padding:2rem 2.5rem;overflow-x:auto}
.main h1{color:var(--wine);margin-bottom:1.5rem;font-size:1.6rem}

.card{background:var(--white);border:1px solid var(--cream-dark);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 10px rgba(61,43,31,.06)}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.2rem;margin-bottom:2rem}
.stat-box{background:var(--white);border-radius:8px;padding:1.3rem;text-align:center;border:1px solid var(--cream-dark);box-shadow:0 2px 10px rgba(61,43,31,.06)}
.stat-box .num{font-size:2rem;font-weight:bold;color:var(--wine)}
.stat-box .label{font-size:.82rem;color:#8a7a63;margin-top:.3rem}

table{width:100%;border-collapse:collapse}
th,td{padding:.7rem .8rem;text-align:left;border-bottom:1px solid var(--cream-dark);font-size:.92rem}
th{background:var(--cream-dark);color:var(--brown-dark)}
tr:hover{background:#fbf7ec}

.btn{display:inline-block;background:var(--wine);color:#fff;padding:.55rem 1.2rem;border-radius:5px;border:none;font-size:.9rem;cursor:pointer}
.btn:hover{background:#5e2e23}
.btn-sm{padding:.35rem .8rem;font-size:.8rem}
.btn-green{background:var(--green)}
.btn-green:hover{background:#374828}
.btn-gray{background:#888}
.btn-gray:hover{background:#666}

label{display:block;font-weight:bold;font-size:.85rem;margin-top:1rem;margin-bottom:.3rem}
input,select,textarea{width:100%;padding:.6rem;border:1px solid #ccc;border-radius:5px;font-size:.95rem;font-family:inherit}

.alert{padding:.8rem 1rem;border-radius:6px;margin-bottom:1.2rem;font-size:.9rem}
.alert-ok{background:#e6ecdf;color:var(--green)}
.alert-err{background:#fbe4e0;color:var(--wine)}

.badge{display:inline-block;padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:bold}
.badge-neu{background:#fde3b0;color:#8a5a00}
.badge-bestaetigt{background:#dcecd0;color:var(--green)}
.badge-abgelehnt{background:#fbe0dc;color:var(--wine)}

.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--brown-dark)}
.login-box{background:var(--white);padding:2.5rem;border-radius:10px;width:100%;max-width:360px;box-shadow:0 10px 40px rgba(0,0,0,.3)}
.login-box h1{color:var(--wine);text-align:center;margin-bottom:1.5rem;font-size:1.4rem}
.login-box button{width:100%;margin-top:1.5rem}

@media(max-width:800px){
  .admin-wrap{flex-direction:column}
  .sidebar{width:100%;display:flex;overflow-x:auto;padding:.8rem}
  .sidebar h2{display:none}
  .sidebar a{white-space:nowrap;border-left:none;border-bottom:3px solid transparent}
}
