:root{
  --red:#e50914; --red2:#ff3b30; --black:#090909; --dark:#121212;
  --gray:#222; --gray2:#333; --light:#e7e7e7; --muted:#aaa;
}
*{box-sizing:border-box} body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--black);color:var(--light)}
a{color:inherit;text-decoration:none}.layout{display:flex;min-height:100vh}
.sidebar{width:245px;background:#0d0d0d;border-right:2px solid #252525;padding:22px 16px;position:sticky;top:0;height:100vh}
.brand{font-size:22px;font-weight:900;letter-spacing:1px;margin-bottom:4px}.brand span{color:var(--red)}
.tagline{color:#888;font-size:12px;margin-bottom:25px}.nav a{display:block;padding:11px 12px;margin:5px 0;border-radius:8px;color:#ccc}
.nav a:hover,.nav a.active{background:#241010;color:#fff;border-left:4px solid var(--red)}
.main{flex:1;padding:25px;max-width:1500px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}
.card{background:linear-gradient(145deg,#171717,#101010);border:1px solid #2d2d2d;border-radius:14px;padding:20px;box-shadow:0 10px 30px #0006}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.stat h3{font-size:13px;color:#aaa;margin:0}.stat .num{font-size:32px;font-weight:900;margin-top:8px}.red{color:#ff4149}
h1{margin:0;font-size:30px}h2{margin-top:0}.muted{color:#999}.btn{display:inline-block;border:0;border-radius:8px;padding:10px 14px;background:#333;color:#fff;cursor:pointer;font-weight:700}.btn:hover{background:#444}.btn-red{background:var(--red)}.btn-red:hover{background:#b90710}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
label{display:block;color:#bbb;font-size:13px;margin-bottom:6px}input,select,textarea{width:100%;background:#0c0c0c;color:#eee;border:1px solid #3a3a3a;border-radius:8px;padding:11px}textarea{min-height:100px}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px;border-bottom:1px solid #292929;vertical-align:top}th{color:#aaa;font-size:12px;text-transform:uppercase}tr:hover td{background:#171717}
.badge{display:inline-block;padding:4px 8px;border-radius:999px;background:#2b2b2b;font-size:12px}.available{color:#72e06a}.borrowed{color:#ff6b6b}
.login-wrap{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 0,#3a0a0d,#080808 55%)}
.login{width:min(430px,92vw)}.logo-big{font-size:38px;font-weight:900}.rock{font-size:42px}
.hero{padding:28px;background:linear-gradient(120deg,#23090b,#141414 55%,#080808);border:1px solid #3b1719;border-radius:18px;margin-bottom:18px}
.hero .guitar{font-size:42px;float:right}.search{display:flex;gap:8px}.search input{flex:1}
.alert{padding:12px;border-radius:8px;background:#261111;border:1px solid #5a2024;color:#ffb6b9;margin:12px 0}
.member-card{width:420px;max-width:100%;min-height:250px;padding:22px;border-radius:18px;background:linear-gradient(135deg,#111,#2a2a2a 65%,#5a090e);border:2px solid #555;position:relative;overflow:hidden}
.member-card:after{content:"🥁";position:absolute;right:15px;bottom:0;font-size:88px;opacity:.35}.member-card .brandline{color:#ff5960;font-weight:900;letter-spacing:2px}.member-card .id{font-size:24px;font-weight:900;margin:18px 0 8px}.print-only{display:none}
@media print{.sidebar,.topbar,.no-print{display:none!important}.main{padding:0}.print-only{display:block}.member-card{box-shadow:none}}
@media(max-width:800px){.sidebar{width:190px}.main{padding:16px}table{font-size:13px}}
