:root{--green:#124f3d;--green2:#0d3d30;--gold:#d9a93b;--bg:#f3f5f4;--card:#fff;--text:#18211d;--muted:#66736d;--line:#dfe5e1;--danger:#b42318;--shadow:0 12px 30px rgba(18,79,61,.10)}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}button,input,textarea,select{font:inherit}button,a{transition:.16s ease}.admin-shell{min-height:100vh;display:grid;grid-template-columns:270px 1fr}.sidebar{background:linear-gradient(180deg,var(--green2),#082b22);color:#fff;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:30}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:22px 20px;border-bottom:1px solid rgba(255,255,255,.12)}.sidebar-brand strong,.sidebar-brand span{display:block}.sidebar-brand span{font-size:12px;opacity:.7;margin-top:2px}.brand-mark{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,var(--gold),#f4d47e);color:#173d30;display:grid;place-items:center;font-weight:900;letter-spacing:-1px;box-shadow:0 10px 24px rgba(0,0,0,.18)}.brand-mark.small{width:42px;height:42px;border-radius:13px}.sidebar nav{padding:14px 12px;overflow:auto}.nav-label{padding:20px 10px 7px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;opacity:.55}.nav-item{display:block;width:100%;border:0;background:transparent;color:#fff;text-align:left;padding:11px 12px;border-radius:10px;cursor:pointer;margin:2px 0}.nav-item:hover,.nav-item.active{background:rgba(255,255,255,.13)}.sidebar-bottom{margin-top:auto;padding:18px 20px;border-top:1px solid rgba(255,255,255,.12);font-size:12px}.sidebar-bottom span{display:block;opacity:.7;margin-bottom:8px}.sidebar-bottom a{color:#fff}.main-column{min-width:0}.topbar{min-height:92px;padding:18px 28px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:18px;position:sticky;top:0;z-index:20}.topbar h1{font-size:23px;margin:0}.topbar p{margin:4px 0 0;color:var(--muted);font-size:13px}.topbar>a{margin-left:auto}.menu-toggle{display:none;border:0;background:#eef3f0;border-radius:10px;padding:9px 12px}.content-area{padding:28px;max-width:1500px;margin:0 auto}.loading{padding:60px;text-align:center;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.stat-card,.panel{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.stat-card{padding:21px}.stat-card span{font-size:13px;color:var(--muted)}.stat-card strong{display:block;font-size:34px;color:var(--green);margin-top:8px}.panel{margin-top:18px;padding:22px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.panel-head h2,.panel-head h3{margin:0}.panel-head p{margin:4px 0 0;color:var(--muted);font-size:13px}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.primary,.secondary,.danger,.ghost{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:10px 14px;font-weight:700;text-decoration:none;cursor:pointer;border:1px solid transparent}.primary{background:var(--green);color:#fff}.primary:hover{background:var(--green2)}.secondary{background:#fff;border-color:var(--line);color:var(--green)}.secondary:hover,.ghost:hover{background:#eef4f1}.danger{background:#fff1f0;border-color:#ffd2cd;color:var(--danger)}.ghost{background:transparent;border-color:var(--line);color:var(--text)}.small-btn{padding:7px 10px;font-size:12px}.wide{width:100%}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#f7f9f8}tr:last-child td{border-bottom:0}.thumb{width:64px;height:44px;border-radius:8px;object-fit:cover;background:#e6ebe8}.status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700}.status.on{background:#e8f7ef;color:#087443}.status.off{background:#f1f2f1;color:#6b756f}.language-tabs,.section-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:18px}.tab-btn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;cursor:pointer}.tab-btn.active{background:var(--green);border-color:var(--green);color:#fff}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid.one{grid-template-columns:1fr}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}label{display:block;font-size:13px;font-weight:700;color:#35433c}input,textarea,select{width:100%;border:1px solid #ccd5d0;border-radius:9px;padding:10px 11px;margin-top:6px;background:#fff;color:var(--text)}textarea{min-height:110px;resize:vertical;line-height:1.45}input:focus,textarea:focus,select:focus{outline:3px solid rgba(18,79,61,.12);border-color:var(--green)}.help{font-size:12px;color:var(--muted);margin-top:5px}.check-row{display:flex;align-items:center;gap:8px}.check-row input{width:auto;margin:0}.image-input-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.alert{padding:11px 13px;border-radius:9px;margin:12px 0}.alert.error{background:#fff1f0;color:#8f1d13}.alert.info{background:#edf7f3;color:#145642}.modal-backdrop{position:fixed;inset:0;background:rgba(8,27,21,.68);display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}.modal{background:#fff;width:min(920px,100%);max-height:92vh;border-radius:17px;box-shadow:0 30px 80px rgba(0,0,0,.3);display:flex;flex-direction:column}.modal.wide-modal{width:min(1180px,100%)}.modal-head,.modal-foot{padding:16px 20px;display:flex;align-items:center;gap:12px}.modal-head{border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font-size:20px}.modal-head button{margin-left:auto}.modal-body{padding:20px;overflow:auto}.modal-foot{border-top:1px solid var(--line);justify-content:flex-end}.icon-btn{border:0;background:#eef2f0;border-radius:9px;width:36px;height:36px;cursor:pointer}.lang-panel{display:none}.lang-panel.active{display:block}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:13px}.media-card{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden;position:relative}.media-card img{display:block;width:100%;height:112px;object-fit:cover;background:#edf0ef}.media-card-body{padding:9px}.media-card strong{font-size:11px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-card small{color:var(--muted)}.media-card .select-media{position:absolute;inset:0;border:0;background:transparent;cursor:pointer}.media-actions{display:flex;gap:6px;margin-top:8px}.upload-box{border:2px dashed #bdcbc4;background:#f8faf9;padding:22px;border-radius:13px;text-align:center;margin-bottom:18px}.search-row{display:flex;gap:10px;margin-bottom:15px}.search-row input{margin:0}.toast{position:fixed;right:24px;bottom:24px;background:#173d30;color:#fff;padding:12px 16px;border-radius:10px;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);pointer-events:none;z-index:200}.toast.show{opacity:1;transform:none}.toast.error{background:#8f1d13}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#1f6a53,#082b22 60%)}.login-card{width:min(430px,calc(100% - 30px));background:#fff;border-radius:20px;padding:34px;box-shadow:0 30px 90px rgba(0,0,0,.35)}.login-card .brand-mark{margin:0 auto 18px}.login-card h1{text-align:center;margin:0}.login-card p{text-align:center;color:var(--muted);margin-bottom:24px}.login-card label{margin-top:14px}.back-link{display:block;text-align:center;margin-top:18px;color:var(--green)}.empty{text-align:center;padding:38px;color:var(--muted)}.preview-box{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:11px;background:#f8faf9}.preview-box img{width:88px;height:62px;object-fit:cover;border-radius:8px}.badge{font-size:11px;background:#edf3f0;color:var(--green);padding:4px 7px;border-radius:999px}.section-block{padding:18px 0;border-top:1px solid var(--line)}.section-block:first-child{border-top:0;padding-top:0}.section-block h3{margin:0 0 13px}.danger-zone{border-color:#f0c6c2}.muted{color:var(--muted)}@media(max-width:1050px){.cards{grid-template-columns:repeat(2,1fr)}.admin-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-285px;width:270px;transition:left .2s}.sidebar.open{left:0}.menu-toggle{display:inline-flex}.form-grid.three{grid-template-columns:1fr 1fr}}@media(max-width:680px){.topbar{padding:14px}.topbar p{display:none}.topbar>a{padding:8px 10px;font-size:12px}.content-area{padding:14px}.cards,.form-grid,.form-grid.three{grid-template-columns:1fr}.panel{padding:15px}.panel-head{align-items:flex-start;flex-direction:column}.modal-backdrop{padding:0}.modal{max-height:100vh;height:100vh;border-radius:0}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}th,td{padding:10px}.hide-mobile{display:none}}

.room-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.room-admin-card{display:grid;grid-template-columns:190px minmax(0,1fr);min-height:190px;background:#fff;border:1px solid #d8e2dd;border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(0,45,35,.07)}.room-admin-cover{background:#e8efeb;min-height:190px}.room-admin-cover img{width:100%;height:100%;min-height:190px;object-fit:cover;display:block}.room-cover-empty{height:100%;min-height:190px;display:flex;align-items:center;justify-content:center;color:#61716b;font-weight:700}.room-admin-body{padding:20px;display:flex;flex-direction:column;gap:16px}.room-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.room-admin-head h3{margin:0 0 7px;font-size:1.2rem}.room-admin-head p{margin:0;color:#61716b;line-height:1.45}.room-admin-meta{display:flex;gap:8px;flex-wrap:wrap}.room-admin-meta span{background:#edf4f0;border-radius:999px;padding:7px 10px;font-size:.83rem;color:#28463c}.rich-editor{min-height:260px;padding:16px;border:1px solid #cbd8d2;border-radius:12px;background:#fff;line-height:1.55;overflow:auto}.rich-editor:focus{outline:3px solid rgba(0,103,77,.14);border-color:#0a6b50}.rich-editor p:first-child{margin-top:0}.rich-editor p:last-child{margin-bottom:0}.rich-editor .room-price-box{padding:12px;background:#f4f7f5;border-radius:10px}.rich-editor .amenity-list{padding-left:22px}@media(max-width:1250px){.room-admin-grid{grid-template-columns:1fr}}@media(max-width:700px){.room-admin-card{grid-template-columns:1fr}.room-admin-cover,.room-admin-cover img,.room-cover-empty{min-height:210px;height:210px}.room-admin-head{flex-direction:column}.rich-editor{min-height:220px}}
/* Programok – UNAS-szerű, kártyás kiválasztás */
.program-category-block{margin-top:26px;padding-top:24px;border-top:1px solid var(--line)}
.program-category-block:first-of-type{margin-top:18px}
.program-category-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.program-category-head h3{margin:0;font-size:1.15rem}
.program-category-head p{margin:5px 0 0;color:var(--muted);font-size:.9rem}
.program-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.program-admin-card{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:220px;background:#fff;border:1px solid #d8e2dd;border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(0,45,35,.07)}
.program-admin-cover{background:#e8efeb;min-height:220px}
.program-admin-cover img{width:100%;height:100%;min-height:220px;object-fit:cover;display:block}
.program-cover-empty{height:100%;min-height:220px;display:flex;align-items:center;justify-content:center;color:#61716b;font-weight:700}
.program-admin-body{padding:20px;display:flex;flex-direction:column;gap:16px}
.program-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.program-admin-head h3{margin:0 0 7px;font-size:1.2rem}
.program-admin-head p{margin:0;color:#61716b;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.program-admin-meta{display:flex;gap:8px;flex-wrap:wrap}
.program-admin-meta span{background:#edf4f0;border-radius:999px;padding:7px 10px;font-size:.83rem;color:#28463c}
.program-editor-preview{display:flex;align-items:center;gap:14px;padding:13px;margin-bottom:14px;border:1px solid var(--line);border-radius:14px;background:#f8faf9}
.program-editor-preview img{width:150px;height:98px;object-fit:cover;border-radius:10px;background:#e8efeb}
.program-editor-preview strong{display:block;margin-bottom:5px}
.program-editor-preview p{margin:0;color:var(--muted);font-size:.85rem}
.program-preview-empty{width:150px;height:98px;border-radius:10px;background:#e8efeb;display:grid;place-items:center;text-align:center;padding:10px;color:var(--muted);font-size:.8rem}
@media(max-width:1250px){.program-admin-grid{grid-template-columns:1fr}}
@media(max-width:700px){
  .program-admin-card{grid-template-columns:1fr}
  .program-admin-cover,.program-admin-cover img,.program-cover-empty{height:220px;min-height:220px}
  .program-admin-head,.program-category-head{flex-direction:column}
  .program-editor-preview{align-items:flex-start}
  .program-editor-preview img,.program-preview-empty{width:118px;height:82px;flex:0 0 auto}
}
/* Program árak szerkesztése */
.program-pricing-editor{margin-top:16px;padding:16px;border:1px solid #d8e2dd;border-radius:14px;background:#f7faf8}
.program-pricing-editor h4{margin:0 0 12px;color:#0a5543;font-size:1rem}
.program-pricing-editor textarea{min-height:120px}
/* Programár: külön megnevezés és külön ár mező */
.program-price-editor-labels,
.program-price-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 24px minmax(190px,.65fr) 42px;
  align-items:center;
  gap:8px;
}
.program-price-editor-labels{
  margin:12px 0 6px;
  color:#5f6e68;
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.program-price-rows{display:grid;gap:9px}
.program-price-row input{width:100%;margin:0}
.program-price-colon{
  display:grid;
  place-items:center;
  font-size:1.25rem;
  font-weight:900;
  color:#0a5543;
}
.price-row-remove{
  width:38px;
  height:38px;
  padding:0;
  border-radius:10px;
  font-size:1.2rem;
}
.add-program-price-row{margin-top:10px}
@media(max-width:700px){
  .program-price-editor-labels{display:none}
  .program-price-row{
    grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr) 38px;
    gap:5px;
  }
  .program-price-row input{font-size:.88rem;padding:10px}
}
/* Programok teljes tartalomszerkesztése */
.program-detail-editor{
  margin-top:16px;
  padding:18px;
  border:1px solid #d8e2dd;
  border-radius:14px;
  background:#f8faf9;
}
.program-detail-editor h4{
  margin:0 0 14px;
  color:#0a5543;
  font-size:1rem;
}
.program-rich-editor{
  min-height:150px;
  line-height:1.65;
}
.program-detail-editor .form-grid.three{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
@media(max-width:900px){
  .program-detail-editor .form-grid.three{grid-template-columns:1fr}
}
/* Oldalszövegekhez tartozó képek */
.site-section-media-editor{
  margin-top:24px;
  padding:20px;
  border:1px solid #d8e2dd;
  border-radius:18px;
  background:#f8faf9;
}
.site-section-media-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}
.site-section-media-head h3{margin:0;color:#0a5543;font-size:1.08rem}
.site-section-media-head p{margin:5px 0 0;color:#61716b;font-size:.9rem;line-height:1.5}
.site-media-cover-preview{
  display:flex;
  align-items:center;
  gap:16px;
  margin-bottom:16px;
  padding:14px;
  border:1px solid #d8e2dd;
  border-radius:14px;
  background:#fff;
}
.site-media-cover-preview img,
.site-media-preview-empty{
  width:190px;
  height:120px;
  flex:0 0 190px;
  border-radius:11px;
  object-fit:cover;
  background:#e8efeb;
}
.site-media-preview-empty{
  display:grid;
  place-items:center;
  padding:10px;
  text-align:center;
  color:#61716b;
  font-size:.82rem;
}
.site-media-cover-preview strong{display:block;margin-bottom:5px}
.site-media-cover-preview p{margin:0;color:#61716b;font-size:.86rem}
.site-media-gallery-row textarea{min-height:150px}
.section-media-note{
  margin-top:22px;
  padding:16px 18px;
  border:1px solid #d8e2dd;
  border-radius:14px;
  background:#f7faf8;
}
.section-media-note strong{color:#0a5543}
.section-media-note p{margin:6px 0 0;color:#61716b}
.picker-upload-box{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,.7fr) auto;
  align-items:center;
  gap:14px;
  padding:16px;
  margin-bottom:16px;
  border:1px solid #d8e2dd;
  border-radius:14px;
  background:#f7faf8;
}
.picker-upload-box strong{display:block;margin-bottom:4px;color:#0a5543}
.picker-upload-box p{margin:0;color:#61716b;font-size:.82rem}
.picker-upload-box input[type="file"]{padding:9px;background:#fff}
@media(max-width:800px){
  .site-section-media-head,
  .site-media-cover-preview{flex-direction:column}
  .site-media-cover-preview img,
  .site-media-preview-empty{width:100%;height:190px;flex:auto}
  .picker-upload-box{grid-template-columns:1fr}
}
