/* admin.css - admin-only pravidla vytazena ze style.css (Faze 1b) */

body.adm-view .wrap { max-width:1600px }
/* Nápovědní text pod poli - v backendu větší mezera nahoře (frontend zůstává na .sh 2px) */
body.adm-view .sh { margin-top:7px }

.adm-lang-sw { display:flex; align-items:center; gap:7px }
.adm-lang-lbl { font-size:13px; font-weight:600; color:var(--t2,#5d6771); white-space:nowrap }
@media(max-width:640px){ .adm-lang-lbl{ display:none } }
.el-lang { position:relative; display:inline-block }
.el-lang > summary { list-style:none; cursor:pointer; display:inline-flex; align-items:center; gap:7px; padding:9px 16px; border:1px solid var(--bd); border-radius:var(--r-btn); background:var(--wh); font-size:14px; font-weight:500; color:var(--tx); font-family:inherit; -webkit-user-select:none; user-select:none; transition:border-color .15s, background .15s }
.el-lang > summary:hover { border-color:var(--b2); background:var(--c-bg) }
.el-lang > summary::-webkit-details-marker { display:none }
.el-lang > summary::marker { content:"" }
.el-lang .flag { width:20px; height:20px; border-radius:50%; overflow:hidden; display:block; flex-shrink:0; box-shadow:0 0 0 1px rgba(0,0,0,.1), inset 0 0 0 1px rgba(255,255,255,.12) }
.el-lang .flag svg { width:100%; height:100%; display:block }
.el-lang-chev { width:11px; height:11px; opacity:.55; transition:transform .18s }
.el-lang[open] .el-lang-chev { transform:rotate(180deg) }
.el-lang-menu { position:absolute; top:calc(100% + 5px); right:0; min-width:170px; padding:5px; background:var(--wh,#fff); border:1px solid var(--bd,#e4e8ec); border-radius:10px; box-shadow:0 12px 30px -10px rgba(20,30,45,.28); z-index:50 }
.el-lang-opt { display:flex; align-items:center; gap:9px; width:100%; padding:8px 10px; border:0; border-radius:7px; background:none; cursor:pointer; font-size:14px; color:var(--tx,#1b2129); text-align:left }
.el-lang-opt:hover { background:var(--c-bg,#f2f5f9) }
.el-lang-opt.is-active { font-weight:700 }
.lang-list { display:flex; flex-direction:column; margin-top:10px; max-width:440px }
.lang-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:11px 2px; border-bottom:1px solid var(--bd) }
.lang-row:last-child { border-bottom:0 }
.lang-toggle { display:flex; align-items:center; gap:11px; cursor:pointer }
.lang-list .flag { width:22px; height:22px; border-radius:50%; overflow:hidden; display:block; flex-shrink:0; box-shadow:0 0 0 1px rgba(0,0,0,.1) }
.lang-list .flag svg { width:100%; height:100%; display:block }
.lang-nm { font-size:15px; font-weight:600; color:var(--tx) }
.lang-def { display:inline-flex; align-items:center; gap:6px; cursor:pointer; font-size:13px; font-weight:500; color:var(--t2); white-space:nowrap }
.lang-def input { cursor:pointer }
.lang-def.is-off { visibility:hidden }   /* vypnutý jazyk: „Výchozí" se vůbec neukazuje, místo zůstává kvůli zarovnání */
.lang-def.is-off input { cursor:default }
.adm-title-wrap { display:flex; align-items:center; gap:11px }

.defpwd-warn { display:flex; align-items:center; gap:12px; padding:13px 16px; margin-bottom:18px; border:1px solid #f17100; background:#FEF6EC; border-radius:var(--r2,10px); font-size:14px; color:#f17100 }
.defpwd-warn span { flex:1 }@media(max-width:640px){
 .defpwd-warn { flex-wrap:wrap }}

.swk { appearance:none; -webkit-appearance:none; flex-shrink:0; width:44px; height:24px; background:#ddd; border-radius:12px; position:relative; cursor:pointer; transition:background .2s; vertical-align:middle; margin:0 }
.swk::before { content:''; position:absolute; width:20px; height:20px; left:2px; top:2px; background:#fff; border-radius:50%; transition:transform .2s; box-shadow:0 1px 3px rgba(0,0,0,.25) }
.swk:checked { background:var(--c-btn) }
.swk:checked::before { transform:translateX(20px) }

.adm-tabs { display:flex; gap:6px; margin-bottom:28px; flex-wrap:wrap; padding:14px 0; width:100% }
.adm-tab { display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:10px 16px; flex:1; background:var(--wh); border:1px solid var(--bd); border-radius:var(--r-btn); font-family:inherit; font-size:14px; font-weight:400; color:var(--t2); cursor:pointer; transition:all .15s; white-space:nowrap }
.adm-tab:hover { color:var(--tx); background:var(--c-bg); border-color:var(--b2) }
.adm-tab.active { background:var(--c-btn); border-color:var(--c-btn); color:#fff }
.adm-tab-locked { opacity:.45; cursor:not-allowed !important; pointer-events:none }
.adm-hdr { display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:12px; margin-bottom:26px }
.adm-hdr .tab-card-title { margin-bottom:0 }
.adm-hdr-btns { display:flex; gap:8px }
.tbl-ftr-sel { display:flex; flex-direction:column; gap:8px }@media(min-width:901px) and (max-width:1259px){

  .adm-tabs { display:grid; grid-template-columns:repeat(6,1fr); gap:6px 4px; padding:4px 0 }
  .adm-tab { flex:none; width:100%; justify-content:center }}
@media(min-width:641px) and (max-width:900px){

  .adm-tabs { display:grid; grid-template-columns:repeat(3,1fr); gap:6px 4px; padding:4px 0 }
  .adm-tab { flex:none; width:100%; justify-content:center }}

.adm-login { max-width:380px; margin:48px auto 0 }
.save-bar { display:flex; align-items:center; gap:14px; margin-top:26px; padding-top:0px; border-top:0px solid var(--bd) }
.save-ok { display:none }
.adm-toast { position:fixed; top:20px; right:20px; padding:14px 22px; background:#00a32a; color:#fff; font-size:15px; font-weight:600; border-radius:var(--r); z-index:99999; opacity:0; transform:translateX(60px); transition:opacity .3s, transform .3s cubic-bezier(.68,-.55,.265,1.55); pointer-events:none; display:flex; align-items:center; gap:8px }
.adm-toast::before { content:'✓'; font-size:18px; font-weight:700 }
.adm-toast.show { opacity:1; transform:translateX(0) }

.logo-prev { position:relative; display:inline-flex; align-items:center; justify-content:center; background-color:var(--chk-bg,#fff); background-image:linear-gradient(45deg,var(--chk-sq,#d8d8d8) 25%,transparent 25%),linear-gradient(-45deg,var(--chk-sq,#d8d8d8) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--chk-sq,#d8d8d8) 75%),linear-gradient(-45deg,transparent 75%,var(--chk-sq,#d8d8d8) 75%); background-size:16px 16px; background-position:0 0,0 8px,8px -8px,-8px 0; opacity:1; border:1px solid var(--bd); border-radius:var(--r); margin-bottom:8px; min-height:64px; padding:16px; transition:background-color .2s }
.item-ed { background:var(--wh); border:1px solid var(--bd); border-radius:var(--r2); overflow:clip; transition: opacity .12s, transform .12s, margin .12s, border-color .12s; position: relative; }
.item-ed
.item-ed-head { display:flex; align-items:center; gap:9px; padding:13px 16px; background:var(--wh); border-bottom:0px solid var(--bd); cursor:pointer; user-select:none }

.item-ed-lbl-wrap { flex:1; min-width:0 }
.item-ed-lbl { font-size:15px; font-weight:600; color:var(--c-title) }
.item-ed-count { font-size:12px; color:var(--t3); margin-right:8px; flex-shrink:0 }
.item-ed-actions { display:flex; align-items:center; gap:6px; flex-shrink:0 }
.art-date-future { font-size:12px; color:var(--t3); white-space:nowrap; padding-right:12px }
/* tablet: datum pod nadpis (tlačítka zůstanou vpravo v řádku s nadpisem) */
@media (min-width:641px) and (max-width:1024px){ .item-ed-head{ flex-wrap:wrap } .item-ed-actions{ order:2 } .art-date-future{ order:3; flex-basis:100%; padding-right:0; margin-top:3px } }
/* mobil: datum nad tlačítka (vše nastohované) */
@media (max-width:640px){ .art-date-future{ order:2; flex-basis:100%; padding-right:0; margin-top:3px } .item-ed-actions{ order:3 } }
.item-ed-body { padding:20px 18px; display:none }
.item-ed-body.open { display:block }

.etabs { display:flex; gap:6px; margin-bottom:20px; flex-wrap:wrap; padding:4px 0 }
.etab { display:inline-flex; align-items:center; gap:8px; padding:8px 16px; background:var(--wh); border:1px solid var(--bd); border-radius:var(--r-btn); font-family:inherit; font-size:14px; font-weight:400; color:var(--t2); cursor:pointer; transition:all .15s }
.etab:hover { color:var(--tx); background:var(--c-bg); border-color:var(--b2) }
.etab.active { background:var(--c-btn); border-color:var(--c-btn); color:#fff }@media (max-width:640px){

  .adm-hdr { flex-direction:column-reverse; gap:22px; margin-bottom:18px }
  .adm-hdr .btn-group { flex-direction:row }
  .adm-tabs { display:grid; grid-template-columns:repeat(2,1fr); gap:6px 4px; padding:4px 0; width:auto }
  .adm-tab { flex:none; width:100%; justify-content:center; padding:12px 12px; font-size:14px }
  .save-bar { flex-wrap:wrap; gap:10px }
  .item-ed-head { flex-wrap:wrap; gap:6px }
  .item-ed-count { width:100%; margin-right:0 !important; font-size:12px; color:var(--t3) }
  .item-ed-head .item-ed-tog,
  .item-ed-head .btn-out { flex:none }
  .item-ed-actions { flex-basis:100%; justify-content:flex-start; margin-top:2px }}


.tbl-hdr { display:flex; align-items:center; gap:10px; padding:14px 16px; border-bottom:1px solid var(--bd); background:var(--wh); flex-wrap:wrap }
.tbl-hdr-right { display:flex; align-items:center; gap:8px; flex-shrink:0; flex-wrap:wrap }
.tbl-ftr { display:grid; grid-template-columns:1fr auto; align-items:start; gap:12px; padding:12px 16px 12px 14px; border-top:1px solid var(--bd); background:var(--gg) }
.tbl-ftr-sel { display:flex; flex-direction:column; gap:20px; min-width:0 }
.tbl-ftr .btn-group { flex-wrap:nowrap; align-self:start }
.tbl-rez td { padding:8px 10px; vertical-align:middle }
.tbl-rez td:first-child { padding-right:4px }@media(max-width:640px){

  .tbl-hdr { gap:8px }
  .tbl-hdr-right { width:100%; justify-content:stretch }
  .tbl-ftr { grid-template-columns:1fr; gap:10px }
  .tbl-ftr .btn-group { display:grid !important; grid-template-columns:1fr 1fr; width:100% }
  .tbl-ftr .btn-group .btn-out { justify-content:center; padding:11px 4px; font-size:14px; gap:6px }
  .adm-hdr-btns { display:grid !important; grid-template-columns:1fr 1fr; width:100% }
  .adm-hdr-btns .btn-out { justify-content:center }
  .adm-lang-sw { grid-column:1/-1 }
  .adm-lang-sw .el-lang, .adm-lang-sw .el-lang > summary { width:100%; justify-content:center }
  .el-lang-menu { left:0; right:auto }
  #faq-ed-list .item-ed-lbl-wrap { flex:0 0 100% }}


.item-ed-tog { border-radius:var(--r-btn); border:1px solid var(--bd); background:var(--wh); color:var(--tx); display:inline-flex; align-items:center; justify-content:center; cursor:pointer; transition:border-color .15s,background .15s; flex-shrink:0; padding:7px 13px; font-family:inherit; font-size:13px; font-weight:500 }
.item-ed-tog:hover { border-color:var(--b2); background:var(--gg) }
.item-ed-tog.tog-active { border-color:var(--c-btn); color:var(--c-btn); background:var(--c-btnp) }
.item-ed-tog.tog-danger.tog-active { border-color:var(--re); color:var(--re); background:var(--rp) }
.item-ed-hidden { opacity:0.5 }

.tbl-w { overflow-x:scroll; -webkit-overflow-scrolling:touch; max-width:100%; display:block; scrollbar-width:thin; scrollbar-color:var(--bd) transparent }
.tbl-w::-webkit-scrollbar { height:6px }
.tbl-w::-webkit-scrollbar-track { background:transparent }
.tbl-w::-webkit-scrollbar-thumb { background:var(--bd); border-radius:3px }@media(min-width:1600px){
  .tbl-w { overflow-x:auto }}

.card:has(.tbl-w) { padding:0; overflow:hidden }

.s-adm, #adm-dash { max-width:100%; overflow-x:clip }
#adm-dash hr { opacity:1 }
#s-adm { overflow-x:clip }

.tab-card-title { font-size:22px; font-weight:700; color:var(--c-title); margin-bottom:16px; padding-bottom:0 }

.item-ed-soon-badge { display:inline-block; font-size:12px; font-weight:600; color:#f17100; background:#FEF6EC; padding:2px 10px; border:1px solid; border-radius:20px; margin-left:8px }

.adm-empty{color:var(--t3);font-size:14px;padding:24px 0;text-align:center}
.adm-note{font-size:12px;color:var(--t3);line-height:1.6}
.rphoto-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:6px;margin-top:8px}
.rphoto{position:relative;width:100%;aspect-ratio:4/3;height:auto;border-radius:8px;overflow:hidden;border:1px solid var(--bd);cursor:grab;touch-action:none}
.rphoto:active{cursor:grabbing}
.rphoto img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.rphoto-x{position:absolute;top:2px;right:2px;width:20px;height:20px;border:none;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;cursor:pointer;font-size:13px;line-height:1;display:flex;align-items:center;justify-content:center;z-index:2}
.rphoto.drag-source{border-style:dashed;opacity:.35}
.rphoto.drag-source img,.rphoto.drag-source .rphoto-x{visibility:hidden}
.rphoto-ghost{position:fixed;z-index:9999;pointer-events:none;width:84px;height:64px;border-radius:8px;overflow:hidden;border:1.5px solid var(--c-btn);box-shadow:0 4px 20px rgba(0,0,0,.22);opacity:.92}
.rphoto-ghost img{width:100%;height:100%;object-fit:cover;display:block}


.dropzone{border:2px dashed var(--bd);border-radius:var(--r2);padding:22px 18px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;background:var(--gg);margin-top:10px;margin-bottom:20px}
.dropzone:hover{border-color:var(--c-btn);background:var(--c-bg)}

.gal-upprog{display:flex;align-items:center;gap:10px;margin-top:12px;padding:11px 14px;border:1px solid var(--bd);border-radius:10px;background:var(--c-btnp,#eef4ff);font-size:14px;font-weight:600;color:var(--c-title)}
.gal-up-spin{width:16px;height:16px;border:2px solid var(--bd);border-top-color:var(--c-btn);border-radius:50%;animation:galspin .7s linear infinite;flex-shrink:0}
.dropzone.drag{border-color:var(--c-btn);background:var(--c-btnp)}
.dropzone i{font-size:30px;color:var(--c-btn);display:block;margin-bottom:8px}
.dropzone .dz-main{font-size:14px;color:var(--tx);font-weight:500}
.dropzone .dz-main u{color:var(--c-btn);text-decoration:underline}
.dropzone .dz-sub{font-size:12px;color:var(--t3);margin-top:5px}
body.adm-view #social-links-front{display:none!important}@media(max-width:640px){

  .ard-ex-qty{order:4}}



.adm-rez-ovl{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:200;opacity:0;pointer-events:none;transition:opacity .25s}
.adm-rez-ovl.open{opacity:1;pointer-events:auto}
.adm-rez-drawer{position:fixed;top:0;right:0;bottom:0;width:560px;max-width:100vw;background:var(--bg);z-index:201;transform:translateX(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);overflow-y:auto;box-shadow:-4px 0 28px rgba(0,0,0,.15);display:flex;flex-direction:column}
.adm-rez-drawer.open{transform:translateX(0)}
.ard-hdr{padding:18px 20px 15px;border-bottom:1px solid var(--bd);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;background:var(--bg)}
.ard-hdr-title{font-size:17px;font-weight:700;color:var(--tx)}
.ard-close{background:none;border:none;cursor:pointer;padding:5px 7px;color:var(--t3);font-size:20px;line-height:1;border-radius:6px;display:flex;align-items:center}
.ard-close:hover{background:var(--bg2);color:var(--t1)}
.ard-body{padding:18px 20px 28px;flex:1;display:flex;flex-direction:column;gap:14px}
.ard-persons{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ard-ages{display:flex;flex-wrap:wrap;gap:8px;margin-top:-4px}
.ard-ages label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--t3)}
.ard-ages input{width:68px}
.ard-pr-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:5px 0;border-bottom:1px solid var(--bd)}
.ard-pr-row:last-child{border:none;font-size:15px;font-weight:600;padding-top:9px;margin-top:3px}
.ard-pr-incl{color:var(--c-btn);font-weight:600}

.ard-ex-qty{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:13px;color:var(--t3)}
.ard-ex-qty-lbl{font-size:13px}
.lang-flag-badge{display:inline-flex;width:12px;height:12px;border-radius:50%;overflow:hidden;vertical-align:middle;margin-left:5px;box-shadow:0 0 0 1px rgba(0,0,0,.12);flex-shrink:0}
.lang-flag-badge svg{width:12px;height:12px;display:block}

/* Ztmavení obrázku + barva ztmavení vedle sebe (desktop 50/25/25), na mobilu pod sebou */
.hero-dim-row { display:flex; gap:12px }
.hero-dim-row > div { flex:1; min-width:0 }
@media (max-width:640px){ .hero-dim-row { flex-direction:column } }

/* Jednotná výška všech formulářových polí v adminu. Nativní date/time/select si určují vnitřní
   výšku samy a .si (15px/9px) vs .date-input (16px/10px) se lišily - fixní height to srovná.
   Textarea schválně vynechaná (roste s obsahem). */
input.si, select.si, input.date-input, select.date-input { height:42px; box-sizing:border-box }

/* --- editace ciziho jazyka: vystrazny pruh + neprelozena pole --- */
.adm-lang-bar { position:fixed; top:0; left:0; right:0; z-index:120; display:flex; align-items:center; justify-content:center; gap:10px; height:34px; padding:0 14px; background:var(--c-btn); color:#fff; font-size:13px; line-height:1 }
body.langbar-on { padding-top:34px }
.adm-lang-bar .flag { width:15px; height:15px; border-radius:50%; overflow:hidden; display:block; flex-shrink:0; box-shadow:0 0 0 1px rgba(255,255,255,.45) }
.adm-lang-bar .flag svg { width:100%; height:100%; display:block }
.adm-lang-bar-tx { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.adm-lang-bar-btn { flex-shrink:0; padding:0; border:0; background:none; color:#fff; font-family:inherit; font-size:13px; font-weight:600; text-decoration:underline; cursor:pointer }
.adm-lang-bar-btn:hover { text-decoration:none }
.el-lang.is-alt > summary { border-color:var(--c-btn); background:var(--c-btnp); color:var(--c-btn) }
.el-lang.is-alt > summary:hover { border-color:var(--c-btn); background:var(--c-btnm) }
.si.needs-tr { background:#FEF6EC; border-color:#f0bd80 }
.si.needs-tr:focus { background:var(--wh) }

/* --- sbalitelne skupiny poli (zalozka Texty) --- */
.grp { border:1px solid var(--bd); border-radius:var(--r2); margin:0 0 12px; background:var(--wh) }
.grp:last-of-type { margin-bottom:0 }
.grp > summary { list-style:none; cursor:pointer; display:flex; align-items:center; gap:10px; padding:15px 18px; border-radius:var(--r2); font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--c-btn); -webkit-user-select:none; user-select:none; transition:background .15s }
.grp > summary::-webkit-details-marker { display:none }
.grp > summary::marker { content:"" }
.grp > summary:hover { background:var(--c-bg) }
.grp[open] > summary { border-bottom:1px solid var(--bd); border-radius:var(--r2) var(--r2) 0 0 }
.grp-chev { width:12px; height:12px; margin-left:auto; flex-shrink:0; opacity:.5; transition:transform .18s }
.grp[open] .grp-chev { transform:rotate(180deg) }
.grp-b { padding:18px }
.grp-b > .ss:first-child, .grp-b > .sg:first-child { margin-top:0 }
.grp-b > .sr:last-child, .grp-b > .sg:last-child { margin-bottom:0 }

@media (max-width:640px){
  .adm-lang-bar, .adm-lang-bar-btn { font-size:12px }
  .adm-lang-bar { gap:8px; padding:0 10px }
}
@media (max-width:640px){
  .grp > summary { padding:14px }
  .grp-b { padding:14px }
}
