:root{
  --bg:#2b3034;
  --bg-deep:#202428;
  --panel:#222629;
  --panel-2:#30363b;
  --panel-3:#3a4147;
  --line:#414950;
  --text:#e8edf0;
  --muted:#9aa5ad;
  --accent:#e6b92f;
  --accent-blue:#59b8df;
  --green:#63c985;
  --red:#dd6262;
  --radius:3px;
  --shadow:0 1px 3px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html{min-height:100%;background:var(--bg)}
body#body{
  margin:0 !important;
  padding:118px max(24px,calc((100vw - 1180px)/2)) 60px !important;
  min-height:100vh;
  color:var(--text);
  background:linear-gradient(180deg,#24282c 0,#2d3338 150px,#2b3034 100%) fixed !important;
  font-family:"Rubik",Arial,sans-serif;
  font-size:14px;
}
a{color:inherit;text-decoration:none}

/* Top navigation made from the existing sidebar so PHP links and permissions stay intact. */
.sidebar{
  position:fixed !important;
  z-index:1000 !important;
  inset:0 0 auto 0 !important;
  width:100% !important;
  height:92px !important;
  min-height:92px;
  padding:0 max(24px,calc((100vw - 1180px)/2)) !important;
  overflow:visible !important;
  background:#202428 !important;
  border-bottom:1px solid #343a3f;
  box-shadow:0 2px 10px rgba(0,0,0,.28);
  display:grid !important;
  grid-template-columns:145px 1fr auto;
  grid-template-rows:46px 46px;
  align-items:center;
}
.sidebarheader{
  grid-column:1;grid-row:1/3;
  padding:0 !important;
  justify-content:flex-start !important;
  height:100%;
}
.sidebarheader a{display:flex;align-items:center;gap:10px}
.sidebarheader a::after{
  content:"StayPF";
  color:#f1f3f4;
  font-size:24px;
  font-weight:800;
  letter-spacing:-1px;
  font-style:italic;
}
.tek-logo{width:42px !important;height:42px !important;object-fit:contain !important;border-radius:50% !important}
.sidebar-rows{
  grid-column:2;grid-row:2;
  height:46px;
  display:flex;
  align-items:stretch;
  gap:2px;
  min-width:0;
}
.sidebar-rows>a{display:flex;min-width:0}
.sidebar-row{
  height:46px !important;
  width:auto !important;
  padding:0 12px !important;
  margin:0 !important;
  border-radius:0 !important;
  border-bottom:2px solid transparent;
  background:transparent !important;
  color:#aab3b9 !important;
  font-size:12px !important;
  font-weight:600;
  text-transform:uppercase;
  white-space:nowrap;
}
.sidebar-row:hover{background:#2a3034 !important;color:#fff !important;border-bottom-color:var(--accent-blue)}
.sidebar-row[style*="background-color"]{background:#2c3237 !important;color:#fff !important;border-bottom-color:var(--accent)}
.sidebar-icon{height:14px !important;width:14px;object-fit:contain;margin:0 7px 0 0 !important;opacity:.78}
.sidebar-text{margin:0 !important;width:auto !important;color:inherit !important;display:block !important}
.notif-normal,.notif-red,.notif-green,.notif-red-leader{margin-left:7px !important;min-width:18px;height:18px;padding:2px 5px;border-radius:10px;font-size:10px;display:inline-flex;align-items:center;justify-content:center}
.login-panel{
  position:static !important;
  grid-column:3;grid-row:1/3;
  display:flex;
  align-items:center;
  gap:8px;
  color:inherit !important;
}
.login-div{width:auto !important}
.miniprofile{margin:0 !important;padding:4px 8px !important;background:#292f33 !important;border:1px solid #363d42;border-radius:3px !important;min-width:170px;height:52px}
.miniprofile:hover{background:#333a3f !important}
.miniavatar{width:38px !important;height:38px !important;margin:0 8px 0 0 !important;border-radius:3px !important}
.profilinfo{padding:0 !important;align-items:flex-start !important;text-shadow:none !important}
.sidebaralnev{font-size:13px !important;font-weight:700 !important}
.sidebarrendfokozat{font-size:10px !important;color:var(--muted) !important}
.button-panel{width:auto !important}
.logout-text{width:36px !important;height:36px !important;margin:0 !important;padding:0 !important;color:transparent !important;border:1px solid #41494f !important;background:#292f33 !important;box-shadow:none !important;position:relative}
.logout-text::after{content:"↪";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#b5bec4;font-size:18px}
.logout-text:hover{background:#3a2d2d !important;border-color:#7d4545 !important}
.nav-bar,.copyrightdiv{display:none !important}

/* General content/card system */
body#body>div:not(.nav-bar):not(.login-mainpanel),
body#body>form,
body#body>section{max-width:1180px;margin-left:auto;margin-right:auto}
.main-header,.main-text,.main-text-db,.desc-title-main{
  background:var(--panel) !important;
  border:1px solid #343b40 !important;
  border-radius:var(--radius) !important;
  box-shadow:var(--shadow);
}
.main-header{padding:13px 16px !important;margin:0 0 12px !important;color:#cbd2d6 !important;font-size:15px !important;font-weight:600 !important}
.main-header::first-letter{color:inherit}
.index-sep{display:grid !important;grid-template-columns:minmax(0,1fr) 320px;gap:12px;align-items:start;width:100% !important}
.index-div,.index-div1,.index-div2{width:auto !important;margin:0 !important}
.index-div{display:contents !important}
.index-div1{grid-column:1}
.index-div2{grid-column:2;grid-row:1}

.felhivas-main,.feed-container,.leader-panel,.profile-grid-element,.form-main,.igenyles-aktiv,.c11-aktiv-main,.c11-history-main,.jarmuvek-div,.add-bg,.nv-bg,.cb-cont,.event-cont{
  background:var(--panel) !important;
  border:1px solid #353c41 !important;
  border-radius:var(--radius) !important;
  box-shadow:var(--shadow) !important;
  overflow:hidden;
}
.felhivas-main{margin:0 0 12px !important;border-left:3px solid var(--accent) !important}
.felhivas-header{background:#282e32 !important;padding:11px 14px !important;border-bottom:1px solid #373e43;display:flex;align-items:center}
.felhivas-title{font-size:14px !important;font-weight:700 !important;color:#eef1f2}
.felhivas-warn{font-size:15px !important;margin-right:8px}
.felhivas-body{padding:15px !important;color:#c5ccd0 !important;line-height:1.55;background:transparent !important}
.felhivas-author{padding:9px 14px !important;background:#1f2326 !important;color:#7f8a91 !important;font-size:11px;border-top:1px solid #30363a}
.newsToggle{background:var(--panel-2) !important;border:1px solid #41494f !important;border-radius:3px;padding:11px 14px !important;color:#d9dee1 !important;margin-bottom:10px}

/* Tables */
table,.default-table,.h-table,.jarmu-igenyles-table{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid #383f44;border-radius:3px;overflow:hidden;color:#cbd1d5}
th,.default-table th,.jarmu-igenyles-th{background:#343b40 !important;color:#eef1f2 !important;padding:10px 12px !important;border:1px solid #454d53 !important;font-size:12px;text-align:left}
td,.default-table td,.jarmu-igenyles-td{padding:9px 12px !important;border:1px solid #363d42 !important;background:#252a2e !important;color:#c3cbd0}
tr:nth-child(even) td{background:#292f33 !important}
tr:hover td{background:#30373c !important}

/* Forms and buttons */
input,select,textarea{
  background:#343b40 !important;
  color:#eef1f2 !important;
  border:1px solid #4a535a !important;
  border-radius:3px !important;
  padding:8px 10px;
  font:inherit;
  outline:none;
}
input:focus,select:focus,textarea:focus{border-color:var(--accent-blue) !important;box-shadow:0 0 0 2px rgba(89,184,223,.15)}
button,.button-default,.button-blue,.button-green,.button-red,.button-darkred,.button-red-small,.button-red-small2,.leader-panel-button,.profile-edit-button,.profile-edit-save{
  border:0 !important;border-radius:3px !important;padding:8px 12px !important;font-family:inherit !important;font-weight:600 !important;box-shadow:none !important;cursor:pointer;transition:.15s ease
}
.button-default{background:#4a5359 !important;color:#fff !important}
.button-blue{background:#459bc0 !important;color:white !important}
.button-green{background:#54aa72 !important;color:white !important}
.button-red,.button-darkred,.button-red-small,.button-red-small2{background:#b85151 !important;color:white !important}
button:hover,.button-default:hover,.button-blue:hover,.button-green:hover,.button-red:hover{filter:brightness(1.12)}

/* Database/profile grids */
.db-wrapper{gap:8px !important;align-items:stretch !important}
.db-cont{width:100% !important;background:var(--panel) !important;border:1px solid #383f44 !important;border-radius:3px !important;padding:10px !important}
.db-cont:hover{background:#30363b !important;border-color:#4c565d !important}
.db-rank-div-name,.db-rank-div-namelader,.db-rank-div-namenyug{width:100% !important;background:#222629;border:1px solid #383f44 !important;padding:10px 14px !important;margin:12px 0 4px !important;border-radius:3px}
.profile-grid,.leader-grid,.form-grid,.jarmu-grid{gap:12px !important}
.profile-background,.index-profile-bg,.index-profile-bg-edit{background:var(--panel) !important;border:1px solid #373f44 !important;border-radius:3px !important;box-shadow:var(--shadow) !important}

/* Login */
body#body:not(:has(.sidebar)){padding:0 !important;background:radial-gradient(circle at 50% 35%,#353d43 0,#252a2e 44%,#1e2225 100%) !important}
.login-mainpanel{height:100vh !important;min-height:620px;padding:30px}
.login-mainpanel::before{content:"StayPF";font-size:38px;font-weight:900;font-style:italic;letter-spacing:-2px;color:#f0f2f3;margin-bottom:5px}
.login-mainpanel::after{content:"Felhasználói vezérlőpult";position:absolute;transform:translateY(-182px);font-size:11px;text-transform:uppercase;letter-spacing:2px;color:#8b979f}
.login-logo img{width:70px !important;height:70px !important;object-fit:contain}
.login-bejelentkezes{font-size:20px !important;margin-top:12px !important;text-shadow:none !important}
.login-seemta{font-size:12px !important;margin-top:4px !important;color:#8e989f !important}
.login-form{margin-top:20px !important;background:#22272b;border:1px solid #3b4349;padding:24px;border-radius:4px;box-shadow:0 15px 50px rgba(0,0,0,.35)}
.login-mainpanel input,.login-mainpanel button{width:320px !important;margin-bottom:10px !important;border-radius:3px !important;padding:11px 13px !important}
.login-mainpanel .login-submit,.submit2{width:320px !important;background:var(--accent) !important;color:#202326 !important}

::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:#202428}
::-webkit-scrollbar-thumb{background:#505960;border-radius:8px}
::-webkit-scrollbar-thumb:hover{background:#68737b}

@media(max-width:1050px){
  body#body{padding:132px 14px 40px !important}
  .sidebar{height:112px !important;grid-template-columns:100px 1fr auto;grid-template-rows:50px 62px;padding:0 14px !important}
  .sidebarheader a::after{font-size:18px}.tek-logo{width:32px !important;height:32px !important}
  .sidebar-rows{overflow-x:auto;height:62px}
  .sidebar-row{height:48px !important;padding:0 9px !important;font-size:10px !important}
  .miniprofile{min-width:135px}.sidebarrendfokozat{display:none}
  .index-sep{grid-template-columns:1fr !important}.index-div1,.index-div2{grid-column:1 !important;grid-row:auto !important}
}
@media(max-width:650px){
  body#body{padding-top:150px !important}
  .sidebar{height:130px !important;grid-template-columns:1fr auto;grid-template-rows:56px 74px}
  .sidebarheader{grid-column:1;grid-row:1}.login-panel{grid-column:2;grid-row:1}.sidebar-rows{grid-column:1/3;grid-row:2}
  .miniprofile{min-width:auto}.profilinfo{display:none !important}.miniavatar{margin:0 !important}.logout-text{margin-left:5px !important}
  .sidebar-row{padding:0 10px !important}.sidebar-icon{display:none}
  table{display:block;overflow-x:auto;white-space:nowrap}
}


/* Parkolásfelügyelet főoldali áttekintő */
.parking-dashboard{display:grid;gap:12px;margin:0 0 14px}
.parking-profile-card,.parking-recent-card,.parking-stat{background:linear-gradient(145deg,#252b2f,#202529);border:1px solid #394147;border-radius:5px;box-shadow:0 5px 18px rgba(0,0,0,.16)}
.parking-profile-card{display:flex;align-items:center;padding:16px 18px;border-left:3px solid var(--accent)}
.parking-avatar-wrap{width:64px;height:64px;border-radius:6px;overflow:hidden;background:#30373c;margin-right:15px;flex:none}
.parking-avatar{width:100%;height:100%;object-fit:cover}
.parking-eyebrow{display:block;color:var(--accent);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;margin-bottom:4px}
.parking-profile-copy h1{margin:0;color:#f2f4f5;font-size:22px}.parking-profile-copy h1 small{font-size:15px;color:#9ba6ac;font-weight:500}
.parking-meta{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:8px;color:#aab3b8;font-size:11px}.parking-meta span{position:relative}.parking-meta span+span:before{content:'•';margin-right:12px;color:#59636a}
.parking-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.parking-stat{display:flex;align-items:center;padding:14px;min-height:68px}.parking-stat-icon{font-size:22px;margin-right:11px;filter:grayscale(.25)}
.parking-stat strong{display:block;color:#f1f3f4;font-size:18px;line-height:1.15}.parking-stat small{display:block;color:#8f9aa0;font-size:10px;margin-top:4px}
.parking-recent-card{padding:0;overflow:hidden}.parking-section-title{display:flex;justify-content:space-between;align-items:center;padding:11px 14px;background:#2a3034;border-bottom:1px solid #394147;color:#eef1f2;font-weight:700;font-size:12px}.parking-section-title a{color:var(--accent);font-size:10px;text-decoration:none}
.parking-recent-list{padding:2px 14px 7px}.parking-recent-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 2px;border-bottom:1px solid #343b40;background:transparent!important}.parking-recent-row:last-child{border-bottom:0}.parking-recent-row strong{display:block;color:#dfe4e6;font-size:12px}.parking-recent-row small{display:block;color:#7f8b91;font-size:10px;margin-top:3px;max-width:720px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.parking-recent-row time{color:#8f9aa0;font-size:10px;white-space:nowrap}.parking-empty{padding:18px 2px;color:#8f9aa0;text-align:center}
/* Napló: egybefüggő lista, külön kártyaháttér nélkül */
.feed-container{background:var(--panel)!important}.feed-body{padding:5px 12px!important}.feed-row{background:transparent!important;background-color:transparent!important;border:0!important;border-bottom:1px solid #353c41!important;border-radius:0!important;box-shadow:none!important;margin:0!important;padding:9px 0!important}.feed-row:last-child{border-bottom:0!important}.feed-row1{background:transparent!important;color:#819098!important}.feed-row2{background:transparent!important;color:#c5ccd0!important}
/* A címek első betűje ne kapjon külön sárga színt */
.main-header::first-letter{color:inherit!important}
@media(max-width:1000px){.parking-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.parking-profile-card{align-items:flex-start}.parking-stat-grid{grid-template-columns:1fr}.parking-meta{display:grid;gap:5px}.parking-meta span+span:before{display:none}.parking-profile-copy h1{font-size:18px}.parking-recent-row{align-items:flex-start;flex-direction:column;gap:5px}}
