:root{--bg:#0b1220;--panel:#0f172a;--line:#1f2937;--text:#e2e8f0;--muted:#94a3b8;--brand:#3b82f6}
*{box-sizing:border-box} body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 system-ui,Segoe UI,Roboto}
a{color:var(--brand);text-decoration:none}
.container{width:min(1000px,92%);margin:22px auto}
.top{display:flex;justify-content:space-between;align-items:center;background:#0d1528;border-bottom:1px solid var(--line);padding:.6rem 1rem}
.top .brand{font-weight:600}
.top nav a{margin-left:1rem}
.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px;margin:10px 0}
.form label{display:block;margin-bottom:.5rem;color:var(--muted)}
.form input,.form select,.form textarea{width:100%;padding:.6rem;border:1px solid var(--line);border-radius:8px;background:#0b1324;color:var(--text)}
.btn{display:inline-block;padding:.6rem .9rem;border-radius:8px;border:1px solid var(--line);background:var(--brand);color:#fff}
.error{background:#3b1a1a;border:1px solid #5c2a2a;color:#fca5a5;padding:.5rem;border-radius:6px;margin-bottom:.6rem}
.success{background:#1c3d2a;border:1px solid #2f6b47;color:#a7f3d0;padding:.5rem;border-radius:6px;margin-bottom:.6rem}
.foot{padding:20px;color:var(--muted);text-align:center;border-top:1px solid var(--line)}
.btn.secondary{background:transparent;color:var(--text);border:1px solid var(--line)}
.btn.link{background:transparent;border:none;padding:0;color:var(--brand)}
.breadcrumbs{margin:10px 0 0 0;color:var(--muted)}
.breadcrumbs a{color:var(--muted)}
.breadcrumbs span{margin:0 .25rem}
.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:.55rem .7rem;border-bottom:1px solid var(--line)}
.muted{color:var(--muted)}
.top nav a.active { font-weight: 600; text-decoration: underline; }
.cell.today {
  border: 2px solid #dc2626;    /* червен бордър за днес */
}
