/*
Theme Name: Pod Modřínem
Theme URI: https://podmodrinem.cz
Author: Restaurace Pod Modřínem
Description: Šablona pro Restauraci Pod Modřínem – denní menu, jídelní a nápojový lístek, kalendář akcí, oslavy a kontakty. Vše se spravuje v administraci.
Version: 2.5
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: pod-modrinem
*/


:root{
  --green:#143B2F;   /* hlavní zelená ze značky */
  --green-2:#1D5242; /* zelená pro najetí myší */
  --brown:#A46A3C;   /* značka „teď“ – jen plné proužky, nikdy text */
  --bg:#F1E6D2;      /* podklad = béžová ze značky */
  --paper:#EADDC3;   /* plochy: dlaždice, karty, řádky, lišty */
  --beige:#EADDC3;   /* starší název pro totéž */
  --ph:#E2D3B4;      /* podklad pod chybějícím obrázkem */
  --ink:#1E2A24; --muted:#44514A; --on-green:#F1E6D2; --line:#D9C8A9;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Lato,"Segoe UI",system-ui,sans-serif;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{color:var(--green);font-family:Fraunces,Georgia,serif;margin:0;line-height:1.15;text-wrap:balance}
h1{font-size:clamp(1.8rem,5vw,2.6rem);font-weight:600}
h2{font-size:clamp(1.5rem,4vw,2.1rem);font-weight:600}
h3{font-size:1.3rem;font-weight:600}
p{margin:0}
a{color:inherit}
img{max-width:100%;display:block}
.wrap{max-width:1000px;margin:0 auto;padding:0 20px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.3rem;border-radius:999px;font-weight:700;text-decoration:none;border:2px solid var(--green);cursor:pointer;font-size:1rem;line-height:1;background:var(--green);color:var(--on-green);font-family:Lato,sans-serif}
.btn:hover{background:var(--green-2)}
.btn.o{background:transparent;color:var(--green)}
.btn.o:hover{background:rgba(20,59,47,.06)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--brown);outline-offset:3px}
.todo{background:#fff3c4;color:#6b4d00;padding:0 6px;border-radius:4px;font-weight:700;font-size:.85em}
.muted{color:var(--muted)}

/* header */
.top{position:sticky;top:0;z-index:20;background:var(--beige);border-bottom:2px solid var(--green)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;height:86px}
.top .brand{flex:0 0 auto;display:block}
.top img{height:64px;width:auto;max-width:none}
@media(max-width:640px){.top .langs{display:none}}
@media(max-width:700px){.top .wrap{height:72px}.top img{height:52px}}
@media(max-width:420px){.top .wrap{height:64px}.top img{height:42px}.top .btn{padding:.6rem .9rem;font-size:.9rem}}
.top nav{display:none;gap:26px;font-size:1.08rem;font-weight:700;color:var(--green)}
.top nav a{text-decoration:none;padding:6px 0;border-bottom:3px solid transparent;white-space:nowrap}
.top nav a.on{border-color:var(--brown)}
.langs{display:flex;gap:4px}
.langs button{background:var(--paper);border:0;color:var(--green);border-radius:6px;padding:6px 10px;font-size:.82rem;font-weight:700;cursor:pointer}
.langs button[aria-current="true"]{background:var(--green);color:var(--on-green)}
.langs button[disabled]{opacity:.45;cursor:not-allowed}
.top .btn{padding:.7rem 1.25rem;font-size:1rem}
.burger{display:inline-flex;flex-direction:column;gap:5px;background:none;border:0;padding:8px;cursor:pointer}
.burger span{width:24px;height:2px;background:var(--green);display:block}
.drawer{display:none;background:var(--beige);border-bottom:2px solid var(--green)}
.drawer.open{display:block}
.drawer .dl-langs{padding:14px 20px;background:var(--paper);margin-top:2px}
.drawer a{display:block;padding:15px 20px;text-decoration:none;font-weight:700;color:var(--green);background:var(--paper);margin-top:2px}
@media(min-width:1240px){.top nav{display:flex}.burger{display:none}.drawer{display:none!important}}

/* page */
.pmpage{display:block;padding:0 0 60px}
.page.on{display:block}/* zpětná kompatibilita */
.ph{padding:40px 0 22px;text-align:center}
.ph p{max-width:56ch;margin:10px auto 0;color:var(--muted)}
.crumb{font-size:.85rem;color:var(--muted);text-align:center;padding-top:20px}
.crumb a{text-decoration:none}

/* home – úvodní sekce s fotografií */
.hero{position:relative;width:100%;overflow:hidden;background:var(--green);isolation:isolate;
      min-height:390px;aspect-ratio:4/3;max-height:66vh;display:flex;align-items:center}
@media(min-width:700px){.hero{aspect-ratio:21/9;min-height:420px;max-height:74vh}}
.hero .shot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% 50%;z-index:0;transform:scale(1);transform-origin:58% 50%}
@media(min-width:700px){.hero .shot{object-position:62% 50%;transform-origin:70% 50%}}
.hero.zoom .shot{animation:heroZoom 3s cubic-bezier(.22,.61,.36,1) both}
@keyframes heroZoom{from{transform:scale(1)}to{transform:scale(1.03)}}
@media(prefers-reduced-motion:reduce){.hero.zoom .shot{animation:none;transform:scale(1)}}
.hero::after{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(20,59,47,.72) 0%,rgba(20,59,47,.60) 55%,rgba(20,59,47,.30) 100%)} /* taste-skill-ignore: clona pod textem na fotografii */
@media(min-width:700px){.hero::after{background:linear-gradient(90deg,rgba(20,59,47,.94) 0%,rgba(20,59,47,.84) 38%,rgba(20,59,47,.44) 64%,rgba(20,59,47,.10) 86%,rgba(20,59,47,0) 100%)}} /* taste-skill-ignore: clona pod textem na fotografii */
.hero .wrap{position:relative;z-index:2;width:100%;text-align:center;padding-top:28px;padding-bottom:28px}
@media(min-width:700px){.hero .wrap{text-align:left}}
.hero .mark{width:min(330px,78vw);height:auto;margin:0 auto 18px}
@media(min-width:700px){.hero .mark{width:min(560px,46vw);margin:0 0 26px}}
@media(min-width:1400px){.hero .mark{width:min(660px,44vw)}}
.hero h1{color:#fff;font-size:clamp(1.75rem,4.9vw,3.1rem);font-weight:600;margin:0 0 12px;max-width:19ch}
.hero p{color:#fff;font-size:clamp(1.05rem,1.7vw,1.3rem);max-width:46ch;margin:0 auto}
@media(min-width:700px){.hero p{margin:0;max-width:none;white-space:nowrap}}

/* informační pruh */
.infobar{background:var(--beige)}
.infobar .wrap{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 30px;padding-top:14px;padding-bottom:14px;font-size:.95rem}
.infobar .i{display:flex;align-items:flex-start;gap:8px;color:var(--ink)}
.infobar .i>span{white-space:nowrap}
@media(max-width:420px){.infobar .i>span{white-space:normal}}
.infobar .i svg{width:18px;height:18px;flex:0 0 auto;margin-top:2px;fill:none;stroke:var(--green);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.infobar b{font-weight:700}
.infobar a{text-decoration:none;font-weight:700}
.infobar .last{flex-basis:100%;text-align:center;color:var(--ink);font-size:.95rem;margin-top:2px}
@media(min-width:900px){.infobar .last{flex-basis:auto;margin-top:0}}
.tiles{display:grid;grid-template-columns:1fr;gap:10px;padding:30px 0 40px}
@media(min-width:620px){.tiles{grid-template-columns:1fr 1fr}}
@media(min-width:980px){
  .tiles{grid-template-columns:repeat(3,1fr)}
  .tile:nth-child(4){grid-column:span 2}
}
.tile{display:flex;flex-direction:column;justify-content:flex-end;gap:4px;min-height:118px;padding:20px 22px;
  background:var(--paper);color:var(--green);text-decoration:none;border-radius:14px;
  font-size:1rem;line-height:1.1;
  transition:background .15s ease,color .15s ease,transform .15s ease}
.tile .t{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:1.45rem;line-height:1.1;color:inherit;margin:0}
@media(min-width:980px){.tile{min-height:140px}.tile .t{font-size:1.7rem}}
.tile .s{font-family:Lato,sans-serif;font-weight:400;font-size:1rem;color:var(--muted);display:block;line-height:1.35;margin:0}
.tile.hot{background:var(--green);color:var(--on-green)}
.tile.hot .s{color:rgba(241,230,210,.88)}
.tile:hover,.tile:focus-visible{background:var(--green);color:var(--on-green);transform:translateY(-2px)}
.tile:hover .s,.tile:focus-visible .s{color:rgba(241,230,210,.88)}
.tile:active{transform:translateY(0)}
/* blok nejbližší akce na úvodní stránce */
.akce-now{padding:54px 0 10px}
.akce-now h2{font-size:clamp(1.7rem,3vw,2.3rem);margin-bottom:18px}
.akce-now .ev{display:grid;gap:18px;background:var(--paper);border-radius:18px;padding:22px}
@media(min-width:860px){.akce-now .ev{grid-template-columns:minmax(0,.62fr) minmax(0,1fr);padding:26px;gap:28px;align-items:center}}
.akce-now .poster{display:block;border-radius:12px;overflow:hidden;background:var(--ph)}
.akce-now .poster img{width:100%;height:auto;display:block;transition:transform .4s ease}
.akce-now .poster:hover img{transform:scale(1.02)}
.akce-now .txt.wide{grid-column:1/-1}
.akce-now .kdy{color:var(--green);font-weight:700;font-size:1.05rem;margin-top:8px}
.akce-now h3{font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.1}
.akce-now .popis{margin-top:12px;font-size:1.05rem;max-width:56ch}
.akce-now .ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
@media(prefers-reduced-motion:reduce){.akce-now .poster:hover img{transform:none}}
.strip{background:var(--green);color:var(--on-green);margin-top:60px}
.strip .wrap{display:grid;gap:24px;padding-top:40px;padding-bottom:40px}
@media(min-width:760px){.strip .wrap{grid-template-columns:1fr 1fr 1fr}}
.strip div{font-size:1.02rem}
.strip b{display:block;font-family:Fraunces,Georgia,serif;color:var(--on-green);font-size:1.35rem;margin-bottom:6px}

/* daily menu */
.week{max-width:760px;margin:0 auto}
.week-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:18px 22px;background:var(--green);color:var(--on-green);border-radius:14px;margin-bottom:6px;flex-wrap:wrap}
.week-head span{color:rgba(241,230,210,.85);font-size:.95rem}
.week-head h3{color:var(--on-green);font-size:1.4rem}
.day{padding:16px 22px;background:var(--paper);border-radius:14px;margin-bottom:6px}
.day:last-of-type{margin-bottom:6px}
.day.today{background:var(--beige);box-shadow:inset 4px 0 0 var(--brown)} /* taste-skill-ignore: plný pruh, ne stín */
.day h4{margin:0 0 6px;font-size:1.05rem;display:flex;gap:10px;align-items:baseline}
.day h4 .tag{font-family:Lato,sans-serif;font-size:.95rem;letter-spacing:.08em;text-transform:uppercase;color:var(--green)}
.line{display:grid;grid-template-columns:auto 1fr auto;gap:10px;font-size:1.02rem;padding:3px 0;align-items:baseline}
.line .k{color:var(--muted);font-size:.95rem;white-space:nowrap}
.line .p{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}
.notice{margin:0 0 6px;padding:14px 22px;background:var(--paper);color:var(--ink);font-size:1rem;border-radius:14px;box-shadow:inset 6px 0 0 var(--brown)} /* taste-skill-ignore: plný proužek, ne stín */
.week-foot{padding:16px 22px;font-size:.95rem;color:var(--ink);background:var(--beige);border-radius:14px;display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:center}
.poster-link{text-align:center;margin-top:18px;font-size:.9rem}

/* menu list */
details.cat{margin-bottom:6px}
details.cat[open]{margin-bottom:18px}
details.cat summary{list-style:none;cursor:pointer;display:flex;justify-content:flex-start;gap:10px;align-items:center;padding:18px 20px;background:var(--beige);border-radius:12px;font-family:Fraunces,Georgia,serif;font-size:1.4rem;font-weight:600;color:var(--green)}
details.cat summary::-webkit-details-marker{display:none}
details.cat summary .n{font-family:Lato,sans-serif;font-size:.92rem;color:var(--muted);font-weight:400;margin-left:auto;min-width:6.5em;text-align:right;white-space:nowrap}
details.cat summary::after{content:"+";font-size:1.5rem;line-height:1;color:var(--green);margin-left:12px;width:1em;text-align:center;flex:0 0 auto}
details.cat[open] summary::after{content:"–"}
.item{display:grid;grid-template-columns:56px 1fr auto;gap:2px 14px;padding:14px 18px;background:var(--paper);border-radius:12px;margin-top:4px;align-items:start}
.item.click{cursor:pointer}
.item.click:hover{background:var(--beige)}
.item .th{grid-row:1/3;width:56px;height:56px;border-radius:10px;background:var(--ph);display:grid;place-items:center;overflow:hidden}
.item .th img{width:100%;height:100%;object-fit:cover}
.item .th img.cone{width:30px;height:auto;object-fit:contain;opacity:.35}
.item .nm{font-weight:700;padding-top:2px}
.item .nm small{font-weight:400;color:var(--muted);margin-right:.35em}
.item .nm .al{font-weight:400;color:var(--muted);font-size:.78rem;margin-left:.4em;white-space:nowrap}
.item .pr{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap;padding-top:2px}
.item .pr.t{color:var(--green);font-size:.95rem}
.item .d{grid-column:2/4;color:var(--ink);font-size:.97rem;max-width:68ch}
.item .more{grid-column:2/4;font-size:.95rem;color:var(--green);font-weight:700}
.item.click:focus-visible,.dl.click:focus-visible{outline:3px solid var(--brown);outline-offset:2px;border-radius:8px}
.ua{display:inline-block;background:var(--green);color:#fff;font-size:.65rem;padding:2px 7px;border-radius:999px;letter-spacing:.06em;vertical-align:middle;margin-left:6px}
/* item card (modal) */
.ov{position:fixed;inset:0;background:rgba(20,30,25,.55);z-index:50;display:none;align-items:flex-end;justify-content:center;padding:0}
.ov.on{display:flex}
@media(min-width:700px){.ov{align-items:center;padding:20px}}
.cardm{background:var(--paper);width:100%;max-width:560px;max-height:92vh;overflow:auto;border-radius:20px 20px 0 0;position:relative}
@media(min-width:700px){.cardm{border-radius:20px}}
.cardm .x{position:absolute;top:12px;right:12px;width:38px;height:38px;border-radius:50%;border:0;background:var(--beige);color:var(--green);font-size:1.3rem;cursor:pointer;z-index:2}
.cardm .pic{aspect-ratio:4/3;background:var(--ph);display:grid;place-items:center;color:var(--muted);font-size:.85rem;letter-spacing:.06em;text-transform:uppercase}
.cardm .pic.none{aspect-ratio:auto;padding:14px;background:var(--beige)}
.cardm .pic.none .in{flex-direction:row;gap:10px}
.cardm .pic.none img.cone{width:26px;margin:0}
#cardm .poster{display:block;background:var(--ph)!important}
#cardm .poster img{max-height:44vh;width:auto!important;max-width:100%;margin:0 auto;object-fit:contain}
.cardm .pic img{width:100%;height:100%;object-fit:cover;display:block}
/* lahve na výšku – nechat celé, na béžovém podkladu */
.cardm .pic.bottle{aspect-ratio:3/4;max-height:52vh;background:var(--beige)}
.cardm .pic.bottle img{object-fit:contain;padding:14px}
.cardm .pic img.cone{width:64px;height:auto;object-fit:contain;opacity:.35;margin-bottom:8px}
.cardm .pic .in{display:flex;flex-direction:column;align-items:center}
.cardm .bd{padding:20px 22px 26px}
.cardm .r{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.cardm h3{font-size:1.4rem}
.cardm .pr{font-weight:700;font-size:1.15rem;white-space:nowrap}
.cardm .w{color:var(--muted);font-size:.9rem;margin-top:2px}
.cardm .short{margin-top:12px;font-size:1rem}
.cardm .long{margin-top:12px;font-size:1rem;color:var(--ink)}
.cardm .how{margin-top:12px;background:var(--beige);border-radius:10px;padding:10px 14px;font-size:.93rem}
.cardm .how b{color:var(--green)}
.cardm .alg{margin-top:16px;font-size:.92rem;color:var(--ink);background:var(--beige);border-radius:10px;padding:12px 14px}
.cardm .alg b{color:var(--ink)}
.dl{display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;font-size:.95rem;padding:5px 0}
.dl.click{cursor:pointer}
.dl.click:hover{background:rgba(20,59,47,.04)}
.dl .th{width:44px;height:44px;border-radius:8px;background:var(--ph);display:grid;place-items:center;overflow:hidden}
.dl .th img{width:100%;height:100%;object-fit:cover}
.dl .th img.cone{width:26px;height:auto;object-fit:contain;opacity:.35}
.dl .pr{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}
.dl .vars{display:flex;gap:14px;justify-content:flex-end;white-space:nowrap}
.dl .vars i{font-style:normal;font-variant-numeric:tabular-nums}
.dl .vars i em{font-style:normal;color:var(--muted);font-weight:400;font-size:.82em;margin-right:.35em}
.dl .more{display:block;font-size:.95rem;color:var(--green);font-weight:700}
.legal{font-size:.82rem;color:var(--muted);margin-top:22px;text-align:center}
.dblock{display:grid;grid-template-columns:1fr;gap:0}
@media(min-width:820px){.dblock{grid-template-columns:1fr 1fr;gap:0 40px;align-items:start}}
.dcol{display:flex;flex-direction:column;gap:30px}
.dblock+.dblock{margin-top:30px}
.dcol>div+div,.dblock+.dblock .dcol>div:first-child{position:relative}
.dcol>div+div{margin-top:12px}
@media(max-width:819px){.dblock+.dblock{margin-top:30px}}
.dcol h3{margin:0 0 8px;font-size:1.15rem;border-bottom:2px solid var(--green);padding-bottom:6px}

/* akce */
.feat{display:grid;gap:20px;margin-bottom:34px}
@media(min-width:760px){.feat.withposter{grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:28px;align-items:start}}
.feat.noposter{background:var(--paper);border:0;border-radius:16px;padding:26px}
.feat .slim{display:flex;align-items:center;gap:10px;font-size:.92rem;color:var(--ink);margin-top:16px;padding:12px 14px;background:var(--beige);border-radius:10px}
.feat .slim img{width:22px;height:auto;opacity:.35}
.feat .poster{width:100%;border-radius:14px;overflow:hidden;border:0;background:var(--ph);cursor:zoom-in;display:block;padding:0}
.feat .poster img{width:100%;height:auto;display:block}
.feat .poster.none{aspect-ratio:2/3;display:grid;place-items:center;text-align:center;color:var(--muted);font-size:.85rem;padding:20px;cursor:default}
.feat .poster.none img{width:60px;height:auto;opacity:.35;margin:0 auto 10px}
.feat .kind{display:inline-block;font-size:.95rem;color:var(--green);font-weight:700;margin-bottom:6px}
.feat .when{font-size:1.05rem;font-weight:700;margin-bottom:10px}
.feat h2{margin-bottom:10px}
.feat p{color:var(--muted)}
.feat .btn{margin-top:0}
.feat .hint{font-size:.8rem;color:var(--muted);margin-top:8px}
.empty-ev{background:var(--paper);border:0;border-radius:14px;padding:26px;text-align:center;color:var(--ink);margin-bottom:34px}

.months{display:flex;gap:6px;overflow-x:auto;padding:4px 0 14px;scrollbar-width:none;margin-bottom:6px}
.months::-webkit-scrollbar{display:none}
.months button{flex:0 0 auto;background:var(--paper);border:0;border-radius:999px;padding:.5rem 1rem;font-size:.95rem;font-weight:700;color:var(--ink);cursor:pointer;white-space:nowrap;font-family:Lato,sans-serif}
.months button[aria-current="true"]{background:var(--green);color:var(--on-green);border-color:var(--green)}
.months button .y{opacity:.6;font-weight:400;margin-left:.3em}

.evrow{display:grid;grid-template-columns:1fr;gap:4px;padding:16px 18px;background:var(--paper);border-radius:12px;margin-bottom:4px;align-items:start}
.evrow .dt{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline}
@media(min-width:600px){.evrow{grid-template-columns:96px 64px 1fr;gap:12px}.evrow .dt{display:block}}
.evrow .dt{font-family:Fraunces,Georgia,serif;color:var(--green);line-height:1.1;font-weight:600}
.evrow .dt b{font-size:1rem;white-space:nowrap}
@media(min-width:600px){.evrow .dt b{display:block}}
.evrow .dt small{font-family:Lato,sans-serif;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.evrow .th{display:none;width:64px;border-radius:8px;overflow:hidden;background:var(--ph)}
@media(min-width:600px){.evrow .th{display:block}}
.evrow .th img{width:100%;height:auto;display:block}
.evrow .th.none{aspect-ratio:2/3;display:grid;place-items:center}
@media(max-width:599px){.evrow .th,.evrow .th.none{display:none}}
.evrow .th.none img{width:22px;opacity:.35}
.evrow h3{font-size:1.08rem;margin-bottom:3px}
.evrow .kind{font-size:.95rem;font-weight:700;color:var(--green)}
.evrow.menu .kind{color:var(--muted)}
.evrow.menu h3{font-weight:500;color:var(--ink);font-family:Lato,sans-serif;font-size:1rem}
.evrow p{font-size:.92rem;color:var(--muted);margin-top:3px}
.evrow.now{background:var(--beige);box-shadow:inset 4px 0 0 var(--brown);border-radius:8px} /* taste-skill-ignore: plný pruh, ne stín */
.evrow.click{cursor:pointer}
.evrow.click:hover{background:rgba(20,59,47,.04)}
.evrow.click:focus-visible{outline:3px solid var(--brown);outline-offset:2px;border-radius:8px}
.evrow .det{display:inline-block;margin-top:6px;font-size:.95rem;color:var(--green);font-weight:700}
.evnone{padding:22px 4px;color:var(--muted);text-align:center}

.lightbox{position:fixed;inset:0;z-index:70;background:rgba(12,20,16,.9);display:none;align-items:center;justify-content:center;padding:20px}
.lightbox.on{display:flex}
.lightbox img{max-width:100%;max-height:92vh;width:auto;height:auto;border-radius:8px}
.lightbox .x{position:absolute;top:14px;right:14px;width:42px;height:42px;border-radius:50%;border:0;background:var(--beige);color:var(--green);font-size:1.4rem;cursor:pointer}

/* oslavy */
.cols{display:grid;gap:18px}
@media(min-width:760px){.cols{grid-template-columns:1fr 1fr}}
.box{background:var(--paper);border:0;border-radius:16px;padding:26px}
.box h3{margin-bottom:8px}
.box p{color:var(--muted);font-size:.95rem}
.box p+p{margin-top:8px}
.box .btn{margin-top:14px}
.note{box-shadow:inset 6px 0 0 var(--brown);background:var(--paper);border-radius:10px;padding:14px 18px;margin-top:20px;font-size:1rem} /* taste-skill-ignore: plný proužek, ne stín */

/* kontakt */
.contact{display:grid;gap:20px}
.contact>*{min-width:0}
@media(min-width:800px){.contact{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:32px;align-items:start}}
.contact dl{margin:0;display:grid;grid-template-columns:minmax(0,max-content) minmax(0,1fr);gap:12px 18px}
.contact dd,.contact dd a{overflow-wrap:anywhere}
.contact dt{color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;padding-top:4px}
.contact dd{margin:0}
.contact dd a{text-decoration:none;font-weight:700}
.hours{display:grid;grid-template-columns:max-content auto;gap:4px 18px}
.hours span:nth-child(odd){white-space:nowrap}
@media(max-width:430px){.hours span:nth-child(odd){white-space:normal}.contact dl{grid-template-columns:1fr;gap:4px 0}.contact dt{padding-top:10px}}
.hours span:nth-child(even){font-variant-numeric:tabular-nums;text-align:right;font-weight:700}
.kitchen{margin-top:10px;padding:10px 12px;background:var(--beige);border-radius:8px;font-size:.93rem}
.kitchen b{color:var(--green)}
.map{width:100%;max-width:440px;aspect-ratio:4/3;border-radius:16px;border:2px dashed var(--line);display:grid;place-items:center;text-align:center;color:var(--muted);padding:20px;font-size:.9rem;justify-self:end}
.ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}

footer{border-top:6px solid var(--bg);background:var(--green);color:var(--on-green);padding:40px 0 100px;font-size:.95rem}
footer .wrap{display:grid;gap:12px}
footer p{max-width:80ch;color:rgba(241,230,210,.88)}
footer img{height:56px;width:auto}
footer .soc a{margin-right:18px;text-decoration:none;font-weight:700;color:var(--on-green)}
@media(min-width:1040px){footer{padding-bottom:40px}}
.bar{position:fixed;bottom:0;left:0;right:0;z-index:30;transition:transform .25s ease;will-change:transform;display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--beige);border-top:2px solid var(--green)}
.bar a{text-decoration:none;text-align:center;font-weight:700;font-size:.95rem;padding:.7rem .4rem;border-radius:10px;border:2px solid var(--green);color:var(--green)}
.bar a.c{background:var(--green);color:var(--on-green)}
/* při posouvání dolů lišta uhne, ať nezakrývá obsah; po posunu nahoru se vrátí */
.bar.away{transform:translateY(130%)}
@media(prefers-reduced-motion:reduce){.bar{transition:none}}
@media(min-width:1040px){.bar{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ---------- doplňky pro WordPress ---------- */
[hidden]{display:none!important}
body.admin-bar .top{top:32px}
@media(max-width:782px){body.admin-bar .top{top:46px}}
.mapbox{width:100%;max-width:440px;justify-self:end;border-radius:16px;overflow:hidden;aspect-ratio:4/3;background:var(--ph)}
.mapbox iframe{width:100%;height:100%;border:0;display:block}
.box .wp-block-image img{border-radius:10px}
.evrow .th img.cone{width:22px;height:auto;object-fit:contain;opacity:.35;margin:0 auto}
.evrow .th{overflow:hidden}
.evrow .th.none{display:grid;place-items:center}
@media(max-width:599px){.evrow .th,.evrow .th.none{display:none}}

/* ------------------------------------------------------------------ *
 * Pohyb – nástup sekcí, odezva ovládacích prvků, klidný pohyb fotky
 * Obsah je vidět i bez JavaScriptu: skrývá se jen ve třídě .js
 * ------------------------------------------------------------------ */
.js .rise{opacity:0;transform:translateY(22px)}
.js .rise.in{opacity:1;transform:none;transition:opacity .55s ease,transform .55s cubic-bezier(.22,.61,.36,1)}
.btn,.tile,.akce-now .ev,.item,.dl,.months button{transition:background .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn:active,.tile:active{transform:translateY(0)}
.hero .shot{will-change:transform}
.hero.drift .shot{animation:heroDrift 26s ease-in-out infinite alternate}
@keyframes heroDrift{from{transform:scale(1.02)}to{transform:scale(1.07)}}
.top .btn:hover{transform:translateY(-1px)}
@media(prefers-reduced-motion:reduce){
  .js .rise{opacity:1;transform:none}
  .hero.drift .shot{animation:none;transform:scale(1)}
  .btn:hover,.tile:hover{transform:none}
}





/* ------------------------------------------------------------------ *
 * Dnešní (po 14:00 zítřejší) denní menu – jeden blok přes celou šířku
 * ------------------------------------------------------------------ */
.today{margin:60px 0 14px;background:var(--green);color:var(--on-green);border-radius:18px;padding:34px 32px 30px}
@media(min-width:760px){.today{padding:42px 44px 38px}}
.today h2{color:var(--on-green);font-family:Fraunces,Georgia,serif;font-size:clamp(2.1rem,5vw,3.4rem);line-height:1;margin:0}
.today .when{color:rgba(241,230,210,.82);font-size:clamp(1rem,1.5vw,1.15rem);margin:10px 0 26px}
.today ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.today li{display:grid;grid-template-columns:7.5rem 1fr auto;gap:8px 18px;align-items:baseline;
  padding:14px 16px;border-radius:10px;font-size:clamp(1.05rem,1.6vw,1.35rem)}
.today li:nth-child(odd){background:rgba(241,230,210,.07)}
.today li .k{color:rgba(241,230,210,.65);font-size:.95rem;white-space:nowrap}
.today li .p{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}
@media(max-width:560px){
  .today li{grid-template-columns:1fr auto}
  .today li .k{grid-column:1/-1;font-size:.88rem}
}
.today .stale{margin-top:26px;background:rgba(241,230,210,.10);border-radius:12px;padding:20px 22px;display:grid;gap:12px}
@media(min-width:860px){.today .stale{grid-template-columns:repeat(4,1fr);gap:14px 22px}}
.today .stale b{grid-column:1/-1;font-family:Fraunces,Georgia,serif;font-size:1.2rem;color:var(--on-green)}
.today .stale div{display:grid;gap:2px;font-size:1rem;color:rgba(241,230,210,.92)}
.today .stale .p{font-variant-numeric:tabular-nums;font-weight:700;color:var(--on-green)}
.today .go{margin-top:26px}
.today .go .btn{background:var(--beige);color:var(--green);border-color:var(--beige)}
.today .go .btn:hover{background:#fff;border-color:#fff}


.printbar{text-align:center;margin-top:26px}

/* ------------------------------------------------------------------ *
 * Tisk – stránka Denní menu se vejde na jeden list A4
 * ------------------------------------------------------------------ */
@media print{
  @page{size:A4 portrait;margin:14mm}
  html,body{background:#fff!important;color:#000!important;font-size:11pt}
  .top,.drawer,.bar,.strip,footer,.printbar,.poster-link,.crumb,.ov,.lightbox,#wpadminbar{display:none!important}
  .pmpage{padding:0}
  .wrap{max-width:none;padding:0}
  .ph{padding:0 0 5mm;text-align:left}
  .ph h1{font-size:19pt;color:#000}
  .ph p{display:none}
  .week{max-width:none}
  .week-head{background:none!important;color:#000!important;padding:0 0 4mm;margin:0;border-radius:0}
  .week-head h3{color:#000!important;font-size:15pt}
  .week-head span{color:#000!important}
  .day{background:none!important;border-radius:0;padding:1.8mm 0;break-inside:avoid;page-break-inside:avoid}
  .day.today{box-shadow:none!important}
  .day h4{font-size:11.5pt;margin-bottom:1mm}
  .day h4 .tag{display:none}
  .line{font-size:10pt;padding:0.3mm 0}
  .line .k{color:#000}
  .week-foot{background:none!important;color:#000!important;padding:4mm 0 0;justify-content:flex-start;gap:6mm}
  .notice{box-shadow:none!important;background:none!important;padding:0 0 3mm}
  a[href]::after{content:""}
}
