@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Barlow+Condensed:wght@500;600&family=Barlow:wght@400;500;600&display=swap');

:root{
  --bg:#0A0A0A;
  --surface:#161311;
  --surface-raised:#1F1A16;
  --line:#2B2521;
  --gold:#F5A800;
  --orange:#E85C00;
  --red:#C41230;
  --white:#F5F1EA;
  --muted:#8A8178;
}
*{box-sizing:border-box;}
body{
  margin:0;
  background:var(--bg);
  color:var(--white);
  font-family:'Barlow',sans-serif;
}
a{color:var(--gold);}
h1,h2,h3{font-family:'Bebas Neue',sans-serif;letter-spacing:.5px;color:var(--white);margin:0 0 .5rem;}
h1{font-size:2rem;} h2{font-size:1.4rem;} h3{font-size:1.1rem;}
label{font-family:'Barlow Condensed',sans-serif;font-weight:600;text-transform:uppercase;font-size:.8rem;letter-spacing:.4px;color:var(--muted);display:block;margin-bottom:.3rem;}
input,select,textarea{
  width:100%;background:var(--surface-raised);border:1px solid var(--line);border-radius:6px;
  padding:.6rem .7rem;color:var(--white);font-family:'Barlow',sans-serif;font-size:.9rem;margin-bottom:1rem;
}
input:focus,select:focus,textarea:focus{outline:1px solid var(--gold);}
button,.btn{
  background:var(--gold);border:none;border-radius:6px;padding:.6rem 1.1rem;color:#1a1200;
  font-family:'Barlow Condensed',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.4px;
  font-size:.85rem;cursor:pointer;text-decoration:none;display:inline-block;
}
.btn-outline{background:transparent;border:1px solid var(--gold);color:var(--gold);}
.btn-danger{background:var(--red);color:var(--white);}
.wrap{max-width:1100px;margin:0 auto;padding:1.5rem;}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--line);}
.wordmark{font-family:'Bebas Neue',sans-serif;font-size:1.6rem;color:var(--gold);}
.wordmark span{color:var(--white);}
nav.tabs{display:flex;gap:.4rem;margin-bottom:1.5rem;flex-wrap:wrap;}
nav.tabs a{
  padding:.5rem .9rem;border-radius:6px;border:1px solid var(--line);color:var(--muted);
  font-family:'Barlow Condensed',sans-serif;font-weight:600;text-transform:uppercase;font-size:.8rem;
  text-decoration:none;
}
nav.tabs a.active{background:var(--orange);color:#1a0800;border-color:var(--orange);}
.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:1.2rem;margin-bottom:1rem;}
.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.9rem;margin-bottom:1.5rem;}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:1rem;}
.kpi .num{font-family:'Bebas Neue',sans-serif;font-size:2rem;color:var(--gold);}
.kpi .label{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.3px;}
table{width:100%;border-collapse:collapse;font-size:.88rem;}
th,td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid var(--line);}
th{color:var(--muted);font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;font-size:.75rem;letter-spacing:.4px;}
.badge{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.72rem;font-weight:600;text-transform:uppercase;}
.badge-open{background:rgba(245,168,0,.15);color:var(--gold);}
.badge-full{background:rgba(196,18,48,.15);color:var(--red);}
.badge-cancelled{background:rgba(138,129,120,.2);color:var(--muted);}
.notice{padding:.7rem .9rem;border-left:4px solid var(--red);background:rgba(196,18,48,.12);border-radius:6px;font-size:.85rem;margin-bottom:1rem;}
.login-box{max-width:360px;margin:4rem auto;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:2rem;}
.error{color:var(--red);font-size:.85rem;margin-bottom:1rem;}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;}
.cal-head{background:var(--surface-raised);padding:.4rem;text-align:center;font-family:'Barlow Condensed',sans-serif;font-size:.75rem;text-transform:uppercase;color:var(--muted);}
.cal-day{background:var(--surface);min-height:80px;padding:.4rem;font-size:.78rem;}
.cal-day .date-num{color:var(--muted);font-family:'Barlow Condensed',sans-serif;}
.cal-day.has-booking{border-left:3px solid var(--gold);}
.cal-pill{display:block;background:var(--surface-raised);border-radius:4px;padding:.15rem .3rem;margin-top:.2rem;font-size:.68rem;color:var(--white);text-decoration:none;}
.cal-pill.mine{background:var(--gold);color:#1a1200;}
