:root{
  --bg:#0b0f14;
  --card:#0f1722;
  --border:rgba(255,255,255,.10);
  --text:#e7eefc;
  --muted:rgba(231,238,252,.70);
  --ok:#2dd4bf;
  --bad:#ff4d4d;
  --free:#4cd964;
  --busy:#ff3b30;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
.wrap{max-width:1100px;margin:0 auto;padding:22px}
.topbar{display:flex;gap:18px;align-items:center;justify-content:space-between;margin-bottom:18px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01))}
.brand{font-weight:800;letter-spacing:.3px}
.topnav{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end}
.link{color:var(--text);text-decoration:none;opacity:.9}
.link:hover{opacity:1;text-decoration:underline}
.card{border:1px solid var(--border);border-radius:16px;background:var(--card);padding:18px}
.grid{display:grid;grid-template-columns:1fr 1.4fr;gap:16px}
@media (max-width: 900px){.grid{grid-template-columns:1fr}}
h1,h2{margin:0 0 10px 0}
.muted{color:var(--muted)}
.tiny{font-size:12px}
.form{display:grid;gap:10px}
label{display:grid;gap:6px;font-size:14px}
input,select{
  padding:10px 12px;border-radius:12px;border:1px solid var(--border);
  background:rgba(255,255,255,.03);color:var(--text);outline:none
}
input:focus,select:focus{border-color:rgba(45,212,191,.6)}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:11px 14px;border-radius:12px;border:1px solid rgba(45,212,191,.55);
  background:rgba(45,212,191,.12);color:var(--text);font-weight:700;cursor:pointer;text-decoration:none
}
.btn:hover{background:rgba(45,212,191,.18)}
.btn-small{padding:9px 10px;border-radius:10px;font-size:13px}
.btn-danger{border-color:rgba(255,77,77,.55);background:rgba(255,77,77,.10)}
.btn-danger:hover{background:rgba(255,77,77,.16)}
.btn-ghost{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.04)}
.alert{padding:10px 12px;border-radius:12px;border:1px solid var(--border);margin:10px 0}
.alert-ok{border-color:rgba(45,212,191,.55);background:rgba(45,212,191,.10)}
.alert-bad{border-color:rgba(255,77,77,.55);background:rgba(255,77,77,.10)}
.tablewrap{overflow:auto;border-radius:12px;border:1px solid var(--border)}
.table{width:100%;border-collapse:collapse;min-width:740px}
.table th,.table td{padding:12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}
.table th{font-size:13px;color:var(--muted);font-weight:700;background:rgba(255,255,255,.02)}
.pill{display:inline-flex;padding:6px 10px;border-radius:999px;border:1px solid var(--border);font-weight:800;font-size:12px}
.pill-free{border-color:rgba(76,217,100,.55);background:rgba(76,217,100,.10)}
.pill-busy{border-color:rgba(255,59,48,.55);background:rgba(255,59,48,.10)}
.rowform{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.rowform input{min-width:220px}
.cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
