:root { --bg:#0f1320; --card:#161b2e; --text:#ffffff; --muted:#a9b1c7; --accent:#5da8ff; --ok:#2ecc71; --err:#ff6b6b; }
*{box-sizing:border-box} body{margin:0;font:16px/1.5 system-ui,Segoe UI,Roboto,Arial;color:var(--text);background:linear-gradient(180deg,#0b1020,#10162a)}
.container{max-width:980px;margin:auto;padding:20px}
.container.small{max-width:480px}
.lead{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.subgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:800px){.subgrid{grid-template-columns:1fr}}
label{display:flex;flex-direction:column;gap:6px}
input[type=text],input[type=email],input[type=password],input[type=number],input[type=time],input[type=search],select,textarea{padding:12px 14px;border:1px solid #2a3150;border-radius:10px;background:#0e1324;color:var(--text);width:100%;min-height:40px}
textarea{min-height:100px;padding-top:10px}
button,.btn{padding:10px 14px;border-radius:10px;border:1px solid #2a3150;background:var(--accent);color:#071426;cursor:pointer;text-decoration:none;display:inline-block}
.btn.outline{background:transparent;color:var(--text)}
.btn.small{padding:6px 10px;font-size:14px}
.btn.danger{background:var(--err);color:#220}
.msg{padding:10px;border-radius:10px;margin:10px 0}
.msg.error{background:#2a0f18;color:#ffd6d6}
.msg.ok{background:#0f2a18;color:#d6ffea}
.slot{margin:18px 0;padding:16px;border:1px solid #2a3150;border-radius:14px;background:var(--card)}
.radio{display:flex;align-items:center;gap:10px;padding:8px 0}
.actions{margin-top:18px}
.muted{color:var(--muted)}
.table{display:block;border:1px solid #2a3150;border-radius:12px;overflow:hidden}
.tr{display:grid;grid-template-columns:70px 1fr 1fr 100px 170px 2fr;gap:8px;padding:10px;border-bottom:1px solid #1e2542;align-items:center}
.tr.th{background:#0e152a;font-weight:700}
.row-actions{display:flex;gap:8px;flex-wrap:wrap}
.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:8px}
.panel{border:1px solid #2a3150;background:var(--card);border-radius:12px;padding:14px;margin:14px 0}
.badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:999px;background:#3a3f5d;color:#ccd}
.toolbar{display:flex;gap:8px;margin:10px 0;flex-wrap:wrap}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:8px}

/* Responsive tweaks */
@media (max-width: 900px) {
  .tr{grid-template-columns:50px 1fr;grid-auto-rows:auto;padding:8px}
  .tr.th{display:none} /* hide header row in mobile, we'll show labels per cell */
  .table .tr{border-bottom:1px solid #1e2542}
  .table .tr > div{padding:6px 0}
  .table .tr > div:first-child{font-weight:700}
  .row-actions{justify-content:flex-end}
  .admin-header{flex-direction:column;align-items:flex-start}
  .toolbar{width:100%}
  .btn{width:100%}
  .actions .btn{width:100%}
  .subgrid{grid-template-columns:1fr}
}

/* Make form controls touch friendly */
input,select,textarea,button{touch-action:manipulation}

/* Table horizontal scroll on small screens */
.table-wrapper{overflow-x:auto}

/* Admin hamburger for small screens */
.hamburger{display:none;background:transparent;border:0;color:var(--text);font-size:20px;padding:8px;border-radius:8px}
@media(max-width:800px){
  .hamburger{display:inline-block}
  .admin-nav{display:none;width:100%}
  .admin-nav.open{display:block}
  .admin-nav a{display:block;margin:6px 0}
}

/* Small helpers */
.inline{display:inline-block}
.mini{max-width:160px}

/* === Gárdonyi logó + footer stílus === */
.site-header{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:1rem 0 1.5rem 0;
}
.site-header .logo{
  width:180px;
  height:auto;
  opacity:0.95;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.6));
  transition:opacity .2s ease, transform .2s ease;
}
.site-header .logo:hover{
  opacity:1;
  transform:scale(1.03);
}

.site-footer{
  text-align:center;
  padding:2rem 0 1rem 0;
  color:var(--muted);
  font-size:0.9rem;
  border-top:1px solid rgba(255,255,255,.08);
  margin-top:3rem;
}
.site-footer strong{
  color:var(--text);
  font-weight:600;
}


