:root{--bg:#0b0c10;--paper:#0f1117;--ink:#e6e7ea;--muted:#9aa0b4;--stroke:#1c2332;--accent:#e94d3d;--radius:12px}
html,body{margin:0} body{background:var(--bg);color:var(--ink);font:16px/1.4 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
a{color:inherit;text-decoration:none}
.wrap{width:min(1000px,94vw);margin:24px auto}
.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.btn{display:inline-block;background:var(--accent);color:#fff;padding:.5rem .7rem;border-radius:8px}
table{width:100%;border-collapse:collapse;background:var(--paper);border:1px solid var(--stroke);border-radius:var(--radius);overflow:hidden}
th,td{padding:.7rem;border-bottom:1px solid var(--stroke)} th{text-align:left;color:#b6bccb;background:#101421}
.login{width:min(380px,92vw);margin:14vh auto;background:var(--paper);border:1px solid var(--stroke);padding:20px;border-radius:var(--radius)}
.login form{display:grid;gap:.7rem} .login label{display:grid;gap:.25rem}
input,textarea,select{background:#121623;color:#e6e7ea;border:1px solid #263047;border-radius:8px;padding:.55rem}
button{background:#2d8cff;color:#fff;border:none;border-radius:8px;padding:.6rem .8rem;cursor:pointer}
.note.err{background:#2c0f12;color:#ffb4b4;padding:.6rem;border-radius:8px;border:1px solid #6a2626;margin:.5rem 0}
.form{background:var(--paper);border:1px solid var(--stroke);border-radius:var(--radius);padding:18px}
.flex{display:flex;gap:12px;align-items:center}
.actions .btn[title]{min-width:auto;padding:0 .55rem}
/* Masonry: prirodzené pomery strán (ako predtým) */
.card .thumb{ display:block; }
.card .thumb img{
  width:100%;
  height:auto;      /* žiadne fixné rámiky, žiadny orez */
  display:block;
}
.gallery .card .thumb {
  height: 220px;
  overflow: hidden;
  display: block;
}

.gallery .card .thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
/* --- Admin horná lišta --- */
.adminbar{
  display:flex; justify-content:space-between; align-items:center;
  gap:12px; padding:10px 12px; margin:0 0 12px;
  background:#0f1117; border:1px solid #1c2332; border-radius:10px;
}
.adminbar .left, .adminbar .right{display:flex; gap:10px; align-items:center; flex-wrap:wrap}
.adminbar a{
  color:#e6e7ea; text-decoration:none; padding:.35rem .55rem;
  border:1px solid #1c2332; border-radius:8px;
}
.adminbar a:hover{ background:#121825 }
.adminbar .brand{
  font-weight:700; border-color:#2a334a; background:#121825;
}
.adminbar .sep{opacity:.5; padding:0 .25rem; border:none}
/* ===== PANEL toolbar (posts/galéria) ===== */
.p-toolbar{
  display:flex; flex-wrap:wrap; align-items:center;
  gap:12px; margin:10px 0 14px;
}
.p-toolbar__search{
  display:flex; gap:8px; align-items:center;
  flex:1 1 320px;
}
.p-toolbar__search .p-input{
  flex:1 1 320px;
  background:#121623; color:#e6e7ea;
  border:1px solid #263047; border-radius:8px;
  padding:.55rem;
}
.p-toolbar__actions{ display:flex; gap:10px; flex-wrap:wrap; }

.p-btn{
  display:inline-block; line-height:1;
  padding:.5rem .8rem; border-radius:10px;
  text-decoration:none; color:#e6e7ea;
  background:#101421; border:1px solid #1c2332;
}
.p-btn:hover{ background:#121825; }

.p-btn--primary{ background:#2d8cff; border-color:#2d8cff; color:#fff; }
.p-btn--danger { background:#e94d3d; border-color:#e94d3d; color:#fff; }

/* Nadpisy v kartách */
.card.project .body .title {
  color: #333;   /* tmavší text */
  font-weight: 600;
}

/* Popis projektu */
.card.project .desc {
  color: #222;   /* tmavší než pôvodných #374151 */
  font-size: .95rem;
}

/* Widgety (názvy polí, čísla, atď.) */
.pw-card h3 {
  color: #111;   /* tmavší nadpis widgetu */
}
.pw-note {
  color: #333;   /* tmavší text pre poznámky */
}
.pw-wrow {
  color: #333;   /* vietor/vlhkosť/lokalita – tmavšie */
}