/* Admin – jednoduché, přehledné, funkční rozhraní nad stejnou paletou jako web. */

.admin-telo{ background:#0F0D0B; }

.admin-layout{ display:grid; grid-template-columns:250px 1fr; min-height:100vh; }

.admin-sidebar{
  background:var(--inkoust-2); border-right:1px solid var(--linka);
  display:flex; flex-direction:column; padding:1.6em 1.2em;
  position:sticky; top:0; height:100vh;
}
.admin-sidebar__logo{ display:flex; flex-direction:column; margin-bottom:2em; line-height:1; }
.admin-nav{ display:flex; flex-direction:column; gap:.2em; flex:1; }
.admin-nav__odkaz{
  padding:.65em .7em; border-radius:var(--radius); color:var(--popel);
  font-size:.92rem; font-weight:500;
}
.admin-nav__odkaz:hover{ background:var(--zed); color:var(--krida); }
.admin-nav__odkaz--aktivni{ background:var(--mosaz); color:var(--inkoust-2); font-weight:600; }

.admin-sidebar__spodek{ display:flex; flex-direction:column; gap:.6em; padding-top:1.5em; border-top:1px solid var(--linka); }
.admin-odkaz-web{ font-size:.85rem; color:var(--popel); }
.admin-odkaz-web:hover{ color:var(--mosaz); }
.admin-odkaz-web--odhlasit{ color:var(--terc); }

.admin-obsah{ padding:2.4em 2.8em 4em; max-width:980px; }
.admin-obsah__hlavicka h1{ font-size:1.5rem; margin-bottom:1.2em; text-transform:none; letter-spacing:0; }

.hlaska{ padding:.9em 1.1em; border-radius:var(--radius); margin-bottom:1.6em; font-size:.92rem; }
.hlaska--ok{ background:rgba(92,138,74,.16); border:1px solid var(--zelena); color:var(--krida); }
.hlaska--chyba{ background:rgba(184,57,43,.16); border:1px solid var(--terc); color:var(--krida); }

.admin-karta{ background:var(--zed); border:1px solid var(--linka); border-radius:8px; padding:1.8em; margin-bottom:1.6em; }
.admin-karta h2{ font-size:1.05rem; text-transform:none; letter-spacing:0; margin-bottom:.3em; }
.admin-karta__popis{ color:var(--popel); font-size:.88rem; margin-bottom:1.4em; }

.f-pole{ display:flex; flex-direction:column; gap:.4em; margin-bottom:1.2em; }
.f-pole label, .f-popisek{ font-size:.82rem; color:var(--popel); font-weight:500; }
.f-pole input[type=text], .f-pole input[type=email], .f-pole input[type=password],
.f-pole input[type=time], .f-pole input[type=number], .f-pole input[type=date],
.f-pole input[type=file], .f-pole textarea, .f-pole select{
  font:inherit; background:var(--inkoust-2); border:1px solid var(--linka); border-radius:var(--radius);
  padding:.7em .85em; color:var(--krida); width:100%;
}
.f-pole input:focus, .f-pole textarea:focus, .f-pole select:focus{ border-color:var(--mosaz); }
.f-napoveda{ font-size:.78rem; color:var(--popel-tmava); }
.f-radek{ display:grid; grid-template-columns:1fr 1fr; gap:1.2em; }
.f-radek3{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:1.2em; }
.f-checkbox{ display:flex; align-items:center; gap:.6em; font-size:.9rem; color:var(--krida); }
.f-checkbox input{ width:18px; height:18px; }

.btn{
  display:inline-flex; align-items:center; gap:.5em; cursor:pointer;
  font:inherit; font-weight:600; font-size:.88rem;
  padding:.7em 1.3em; border-radius:var(--radius); border:1px solid transparent;
}
.btn-primarni{ background:var(--mosaz); color:var(--inkoust-2); }
.btn-primarni:hover{ background:#EAA63F; }
.btn-cervene{ background:var(--terc); color:var(--krida); }
.btn-cervene:hover{ background:#D14433; }
.btn-obrys{ background:transparent; border-color:var(--popel-tmava); color:var(--krida); }
.btn-obrys:hover{ border-color:var(--mosaz); color:var(--mosaz); }
.btn-maly{ padding:.4em .8em; font-size:.78rem; }

.admin-tabulka{ width:100%; border-collapse:collapse; }
.admin-tabulka th{ text-align:left; font-size:.78rem; text-transform:uppercase; letter-spacing:.04em; color:var(--popel); padding:.5em .6em; border-bottom:1px solid var(--linka); }
.admin-tabulka td{ padding:.65em .6em; border-bottom:1px solid var(--linka); font-size:.92rem; vertical-align:top; }
.admin-tabulka tr:last-child td{ border-bottom:none; }
.admin-tabulka__akce{ display:flex; gap:.5em; white-space:nowrap; }

.admin-dny{ display:flex; flex-direction:column; gap:.8em; }
.admin-den{ display:grid; grid-template-columns:110px auto 130px 130px; align-items:center; gap:1em; padding:.7em 0; border-bottom:1px solid var(--linka); }
.admin-den__nazev{ font-weight:600; }

.admin-prehled-mrizka{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1.2em; }
.admin-sekce-nadpis{
  font-size:1rem; font-weight:700; color:var(--popel); text-transform:uppercase;
  letter-spacing:.06em; margin:2em 0 .9em; padding-bottom:.4em; border-bottom:1px solid var(--linka);
}
.admin-sekce-nadpis:first-of-type{ margin-top:0; }
.admin-dlazdice{ background:var(--zed); border:1px solid var(--linka); border-radius:8px; padding:1.4em; display:flex; flex-direction:column; gap:.6em; }
.admin-dlazdice h3{ font-size:.95rem; text-transform:none; letter-spacing:0; }
.admin-dlazdice p{ color:var(--popel); font-size:.85rem; }
.admin-dlazdice a{ color:var(--mosaz); font-size:.85rem; font-weight:600; margin-top:auto; }

.admin-nahled-obrazek{ width:100%; max-width:260px; aspect-ratio:4/3; object-fit:cover; border-radius:var(--radius); border:1px solid var(--linka); margin-bottom:.8em; }
.admin-nahled-kulato{ width:110px; height:110px; border-radius:50%; object-fit:cover; border:1px solid var(--linka); margin-bottom:.8em; }
.admin-bez-obrazku{ color:var(--popel-tmava); font-size:.85rem; font-style:italic; margin-bottom:.8em; }

.admin-prihlaseni{ min-height:100vh; display:flex; align-items:center; justify-content:center; padding:2em; }
.admin-prihlaseni__karta{ width:100%; max-width:360px; background:var(--zed); border:1px solid var(--linka); border-radius:8px; padding:2.4em; }
.admin-prihlaseni__karta .logo{ margin-bottom:1.6em; }

.f-skupina-nadpis{ font-family:var(--font-display); text-transform:uppercase; letter-spacing:.04em; font-size:.95rem; color:var(--mosaz); margin:1.6em 0 .8em; padding-top:1.2em; border-top:1px solid var(--linka); }
.f-skupina-nadpis:first-child{ margin-top:0; padding-top:0; border-top:none; }

@media (max-width: 880px){
  .admin-layout{ grid-template-columns:1fr; }
  .admin-sidebar{ position:relative; height:auto; flex-direction:row; flex-wrap:wrap; align-items:center; }
  .admin-sidebar__logo{ margin-bottom:0; margin-right:1em; }
  .admin-nav{ flex-direction:row; flex-wrap:wrap; }
  .admin-sidebar__spodek{ border-top:none; padding-top:0; flex-direction:row; margin-left:auto; }
  .admin-obsah{ padding:1.6em 1.2em 3em; }
  .f-radek, .f-radek3{ grid-template-columns:1fr; }
  .admin-den{ grid-template-columns:1fr; gap:.4em; }
}
