/* tomzahradka — vzhled tématu. Žádné webfonty, žádné externí požadavky. */

:root{
  --papir:#fff; --text:#111; --seda:#6f6f6f; --linka:#e2e2e2; --tlum:#f6f6f6; --modra:#0000ff;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  /* Přechodová antikva ze systému: Charter na macOS, Sitka/Cambria na Windows, Georgia jako záloha.
     Čitelná na obrazovce, žádný stahovaný font. */
  --serif:Charter,"Bitstream Charter","Sitka Text",Cambria,Georgia,"Times New Roman",serif;
  --mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;
  --sloupec:200px; --mezera:34px;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme=light]){
    --papir:#0c0c0c; --text:#f0f0f0; --seda:#9b9b9b; --linka:#2b2b2b; --tlum:#161616; --modra:#7a7aff;
  }
}

body{background:var(--papir);color:var(--text);font-family:var(--serif);font-size:16px;line-height:1.6}
:focus-visible{outline:2px solid var(--modra);outline-offset:2px}
img{max-width:100%;height:auto}

/* ---- rozvržení: pevný postranní index, obsah vedle ---- */
.wp-site-blocks{display:grid;grid-template-columns:var(--sloupec) minmax(0,1fr);gap:var(--mezera);
                max-width:1200px;margin:0 auto;padding:var(--mezera)}
.wp-site-blocks > header{grid-column:1;grid-row:1}
.wp-site-blocks > main{grid-column:2;grid-row:1;min-width:0}
.wp-site-blocks > footer{grid-column:2;grid-row:2}

header.wp-block-template-part{position:sticky;top:var(--mezera);align-self:start;font-size:14px}
.znacka{display:block;color:var(--text);text-decoration:none;margin-bottom:10px;line-height:0}
.znacka svg{width:112px;height:auto;display:block}

.podtitul{font-family:var(--serif);color:var(--seda);font-size:14px;font-style:italic;margin-bottom:24px}
.skupina{margin-bottom:20px}
.stitek{font:500 11px/1 var(--mono)!important;text-transform:uppercase;letter-spacing:.09em;
        color:var(--seda);margin:0 0 8px}
.filtry,.odkazy{list-style:none;margin:0;padding:0}
.filtry li,.odkazy li{margin:0 0 2px}
.filtr{font-family:var(--serif);font-size:15px;color:var(--text);display:flex;
        justify-content:space-between;gap:8px;padding:3px 0;text-decoration:none}

.filtr[aria-current=page],.filtr[aria-pressed=true]{color:var(--modra);font-weight:600}
.filtr[aria-current=page] .pocet,.filtr[aria-pressed=true] .pocet{color:var(--modra)}
.pocet{font:400 12px/1.5 var(--mono);color:var(--seda)}
.odkazy a{font-family:var(--serif);font-size:15px;color:var(--text);text-decoration:none}
.odkazy a[aria-current=page]{color:var(--modra)}
.jazyky{display:flex;gap:8px;font:400 12px/1 var(--mono)}
.jazyky .ted{color:var(--seda)}

/* ---- úvod ---- */
.uvod{max-width:36em;margin:0 0 34px}
.uvod p{margin:0 0 .8em}
.uvod .prvni{font-size:21px;line-height:1.4;letter-spacing:0}
.uvod .vyzva{font-size:15px;color:var(--seda);margin-top:1.2em}
.hero img{width:100%;aspect-ratio:3/2;object-fit:cover;background:var(--tlum)}
body.filtrovano .hero,body.filtrovano .uvod{display:none}
.hero,main > .wp-block-image:first-child{margin:0 0 40px}
.hero img{display:block}

/* ---- seznam prací i životopis: jedna tabulka ---- */
.hlava-seznamu{display:flex;justify-content:space-between;align-items:baseline;gap:16px;
               border-bottom:1px solid var(--text);padding-bottom:7px}
.zruseni{font:400 12px/1 var(--mono);color:var(--modra);background:none;border:0;cursor:pointer;
         padding:0;display:none;text-decoration:none}
.zruseni.vidi{display:inline}
.polozka,.cv-radek{display:grid;grid-template-columns:52px 1fr auto;gap:18px;align-items:baseline;
                   padding:10px 0;border-bottom:1px solid var(--linka);color:var(--text);text-decoration:none}
.cv-radek{grid-template-columns:78px 1fr auto}
.polozka{text-decoration:none}
.polozka[hidden]{display:none}
.rok{font:400 12px/1.7 var(--mono);color:var(--seda);white-space:nowrap}
.titul{font-family:var(--serif);font-size:16px;letter-spacing:0;transition:color .12s}
.meta{font:400 12px/1.7 var(--mono);color:var(--seda);white-space:nowrap}
.cv-kde{display:block;font-family:var(--serif);color:var(--seda);font-size:14px}
.cv{border-top:1px solid var(--text)}
.miniatura{display:none}
.prazdno{padding:22px 0;color:var(--seda);display:none}
.prazdno.vidi{display:block}

/* náhled při přejetí — jen s opravdovým kurzorem */
@media (hover:hover) and (min-width:900px){
  .nahledovac{position:fixed;top:50%;right:34px;transform:translateY(-50%);width:280px;aspect-ratio:3/2;
              pointer-events:none;opacity:0;transition:opacity .13s;z-index:5;background:var(--papir)}
  .nahledovac img{width:100%;height:100%;object-fit:cover}
  .nahledovac.vidi{opacity:1}
}

/* ---- text stránek a článků ---- */
.dopis,.obsah-clanku{max-width:34em}
.claim{font-family:var(--serif);font-size:clamp(24px,2.5vw,29px);line-height:1.25;
        letter-spacing:-.01em;font-weight:600;margin:0 0 18px}
.lead{font-size:19px;line-height:1.5;letter-spacing:0}
.obsah-clanku p,.dopis p{margin:0 0 1.05em;font-size:16px;line-height:1.65}
.obsah-clanku h1,.obsah-clanku h2,.obsah-clanku h3,.dopis h1{font-family:var(--serif);letter-spacing:-.01em}

/* ---- formulář ---- */
.pole{margin-bottom:14px}
.pole label{display:block;font:500 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.09em;
            color:var(--seda);margin-bottom:6px}
input[type=text],input[type=email],textarea{width:100%;font:inherit;color:var(--text);
       background:var(--papir);border:1px solid var(--linka);padding:9px 11px;border-radius:0}
input:focus,textarea:focus{border-color:var(--modra);outline:none}
textarea{min-height:120px;resize:vertical}

/* ---- mobil ---- */
@media (max-width:860px){
  :root{--mezera:20px}
  .wp-site-blocks{grid-template-columns:1fr;gap:24px;padding:20px 18px 44px}
  .wp-site-blocks > header,.wp-site-blocks > main,.wp-site-blocks > footer{grid-column:1}
  .wp-site-blocks > header{grid-row:1} .wp-site-blocks > main{grid-row:2} .wp-site-blocks > footer{grid-row:3}
  header.wp-block-template-part{position:static}
  .podtitul{margin-bottom:16px}
  .skupina{margin-bottom:14px}
  .filtry,.odkazy{display:flex;flex-wrap:wrap;gap:5px 8px}
  .filtry li,.odkazy li{margin:0}
  .filtr{display:inline-flex;gap:5px;border:1px solid var(--linka);padding:5px 10px;border-radius:999px}
  .filtr[aria-current=page],.filtr[aria-pressed=true]{border-color:var(--modra)}
  .uvod .prvni{font-size:19px}
  .polozka{grid-template-columns:46px 1fr;gap:10px 14px;padding:11px 0}
  .miniatura{display:block;grid-column:1;grid-row:1/4;width:46px;aspect-ratio:1;object-fit:cover;
             background:var(--tlum);align-self:center}
  .polozka .rok{grid-column:2;grid-row:1}
  .polozka .titul{grid-column:2;grid-row:2}
  .polozka .meta{grid-column:2;grid-row:3;font-size:11px}
  .cv-radek{grid-template-columns:1fr;gap:2px;padding:12px 0}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* přepínač jazyka od Polylangu */
.jazyky-blok ul,.wp-block-polylang-language-switcher ul{list-style:none;margin:0;padding:0;
       display:flex;gap:10px;font:400 12px/1 var(--mono);text-transform:uppercase}
.jazyky-blok li{margin:0}
.jazyky-blok a{color:var(--text);text-decoration:none}
.jazyky-blok a:hover{color:var(--modra)}
.jazyky-blok .current-lang a,.jazyky-blok .current-lang{color:var(--seda)}

/* galerie „shot on" */
.galerie-mrizka{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;margin:14px 0 0}
.galerie-polozka{text-decoration:none;color:var(--text)}
.galerie-polozka img{width:100%;aspect-ratio:1;object-fit:cover;background:var(--tlum)}
.galerie-jmeno{display:block;font:400 12px/1.5 var(--mono);color:var(--seda);margin-top:5px}

.galerie-snimky{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.galerie-snimky img{width:100%;height:auto;background:var(--tlum)}

/* produkty v tabulce indexu */
.seznam-produktu{border-top:1px solid var(--text)}
.polozka-produkt .rok{width:auto;min-width:52px}
.polozka-produkt .rok .amount,.polozka-produkt .rok bdi{font:400 12px/1.7 var(--mono);color:var(--seda)}
.polozka-produkt.vyprodano .titul{color:var(--seda)}
.polozka-produkt.vyprodano .meta{color:var(--text);opacity:.55}
.polozka-produkt del{opacity:.5}

/* nadpisek sekce nad tabulkou: dýchá nad i pod, linku dělá až tabulka */
.dopis .stitek{margin:48px 0 14px}
.dopis .stitek:first-child{margin-top:0}
.dopis .cv{margin-top:0}

/* hlavička článku: rok, název, druh — a pod nimi až obrázek */
.hlava-prace{margin:0 0 26px}
.hlava-prace .wp-block-post-date{margin:0 0 6px}
.hlava-prace h1,.hlava-prace .wp-block-post-title{margin:0 0 8px}
.hlava-prace .wp-block-post-terms{display:block;margin:0}
.hlava-prace + .hero,.hlava-prace + .wp-block-post-featured-image{margin-top:0}
main > .wp-block-post-featured-image{margin:0 0 34px}

/* ---- lightbox: aktivní jen u galerie s třídou „lightbox" ---- */
.wp-block-gallery.lightbox .lb-spoust{position:relative;display:block;cursor:zoom-in}
.wp-block-gallery.lightbox img{display:block}
/* jemné ztmavení a malé plus, nic víc */
.wp-block-gallery.lightbox .lb-spoust::after{content:"";position:absolute;inset:0;
       background:rgba(0,0,0,.16);opacity:0;transition:opacity .13s;pointer-events:none}
.wp-block-gallery.lightbox .lb-spoust::before{content:"";position:absolute;right:9px;bottom:9px;
       width:15px;height:15px;opacity:0;transition:opacity .13s;pointer-events:none;z-index:1;
       background:
         linear-gradient(#fff,#fff) center/11px 1.5px no-repeat,
         linear-gradient(#fff,#fff) center/1.5px 11px no-repeat;
       filter:drop-shadow(0 0 2px rgba(0,0,0,.5))}
.wp-block-gallery.lightbox .lb-spoust:hover::after,
.wp-block-gallery.lightbox .lb-spoust:hover::before,
.wp-block-gallery.lightbox .lb-spoust:focus-visible::after,
.wp-block-gallery.lightbox .lb-spoust:focus-visible::before{opacity:1}

body.lightbox-otevren{overflow:hidden}
.tomz-lightbox{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;
       background:rgba(12,12,12,.94);padding:56px 64px}
.tomz-lightbox[hidden]{display:none}
.lb-ramec{margin:0;max-width:100%;max-height:100%;display:flex;flex-direction:column;
       align-items:center;justify-content:center;gap:12px}
.lb-obraz{max-width:100%;max-height:calc(100vh - 130px);width:auto;height:auto;object-fit:contain}
.lb-popis{font:400 13px/1.5 var(--mono);color:#c9c9c9;text-align:center;margin:0;max-width:60ch}
.lb-popis[hidden]{display:none}
.lb-pocet{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);
       font:400 12px/1 var(--mono);color:#8f8f8f;margin:0}
.lb-zavrit,.lb-sip{position:absolute;background:none;border:0;color:#fff;cursor:pointer;
       line-height:1;padding:10px;opacity:.65;transition:opacity .13s}
.lb-zavrit:hover,.lb-sip:hover,.lb-zavrit:focus-visible,.lb-sip:focus-visible{opacity:1}
.lb-zavrit{top:12px;right:16px;font-size:30px}
.lb-sip{top:50%;transform:translateY(-50%);font-size:44px}
.lb-vlevo{left:10px}
.lb-vpravo{right:10px}
.lb-sip[hidden],.lb-pocet[hidden]{display:none}

@media (max-width:700px){
  .tomz-lightbox{padding:44px 12px 56px}
  .lb-obraz{max-height:calc(100vh - 120px)}
  .lb-sip{font-size:34px;padding:8px}
  .lb-vlevo{left:0} .lb-vpravo{right:0}
}
@media (prefers-reduced-motion:reduce){
  .wp-block-gallery.lightbox .lb-spoust::after,.wp-block-gallery.lightbox .lb-spoust::before,
  .lb-zavrit,.lb-sip{transition:none}
}

/* prodej v detailu projektu */
.prodej{margin-top:40px}
.prodej:empty,.prodej .wp-block-group:empty{display:none}
.prodej .stitek{margin:0 0 10px}
.stav-prodeje{display:inline-block;font:400 11px/1 var(--mono);text-transform:uppercase;
       letter-spacing:.09em;color:var(--seda);border:1px solid var(--linka);
       padding:6px 10px;border-radius:3px;margin:0}

/* koupit rovnou ze seznamu, bez zajížďky na stránku produktu */
.seznam-produktu .do-kosiku{margin:0;padding:0 0 10px;border-bottom:1px solid var(--linka)}
.seznam-produktu .polozka-produkt:has(+ .do-kosiku){border-bottom:0;padding-bottom:4px}
.tlacitko-kosik{font:400 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;
       background:none;color:var(--modra);border:1px solid var(--modra);border-radius:3px;
       padding:6px 11px;cursor:pointer;margin-left:70px}
.tlacitko-kosik:hover{background:var(--modra);color:var(--papir)}
@media (max-width:860px){.tlacitko-kosik{margin-left:60px}}

.galerie-projektu{margin-top:44px}
.galerie-projektu:has(> :empty),.galerie-projektu:empty{display:none}

/* ilustrace: obrázek je obsah, ať dostane šířku i vzduch */
.obsah-ilustrace{max-width:none}
.obsah-ilustrace p{max-width:34em}
.lightbox-obsah .wp-block-image{margin:0 0 18px}
.lightbox-obsah img{width:100%;height:auto}

/* rámec vloženého nástroje: drží si vlastní vzhled, ven nesahá */
.nastroj-ramec{margin:34px 0;isolation:isolate;contain:layout style}
.nastroj-ramec img{max-width:100%;height:auto}
/* nástroj potřebuje víc místa než sloupec textu */
.nastroj-ramec,.obsah-clanku .nastroj-ramec{max-width:none;width:100%}
.nastroj-ramec iframe{display:block;width:100%;max-width:none;border:0}
.obsah-clanku:has(.nastroj-ramec){max-width:none}
.obsah-clanku:has(.nastroj-ramec) > p,.obsah-clanku:has(.nastroj-ramec) > ul,
.obsah-clanku:has(.nastroj-ramec) > ol,.obsah-clanku:has(.nastroj-ramec) > h2,
.obsah-clanku:has(.nastroj-ramec) > h3{max-width:34em;margin-left:0;margin-right:auto}


/* --- zarovnání a šířky ---------------------------------------------
   WordPress u omezené šířky nastavuje margin-left:auto a text se tím
   posune do středu. Tady drží všechno levý okraj. */
.obsah-clanku > *,
.obsah-clanku > .wp-block-group > *,
.dopis > *,
main .wp-block-post-content > *{margin-left:0!important;margin-right:auto!important}

/* About má být široký jako ostatní stránky; čte se ale pořád v úzkém sloupci,
   jen tabulka životopisu jde přes celou šířku */
.dopis{max-width:none}
.dopis > p,.dopis > h1,.dopis > h2,.dopis > ul,.dopis > ol,.dopis .formular{max-width:34em}
.dopis .cv,.dopis .cv-radek{max-width:none}

/* π v patičce: nenápadné, ale klikatelné */
.paticka{position:relative}
.pi{position:absolute;right:0;bottom:0;font-size:15px;line-height:1;color:var(--linka);
    text-decoration:none;padding:6px;transition:color .15s}
.pi:hover,.pi:focus-visible{color:var(--modra);text-decoration:none}
@media (max-width:860px){.pi{position:static;display:inline-block;margin-top:10px;color:var(--seda)}}

/* Zvýraznění při najetí patří jen zařízením s kurzorem. Na dotykovém displeji
   zůstává :hover po klepnutí aktivní a filtr by svítil modře i po zrušení. */
@media (hover:hover) and (pointer:fine){
  .znacka:hover{color:var(--modra);text-decoration:none}
  .filtr:hover{color:var(--modra);text-decoration:none}
  .odkazy a:hover{color:var(--modra)}
  .polozka:hover .titul{color:var(--modra)}
  .galerie-polozka:hover .galerie-jmeno{color:var(--modra)}
}

/* právní odkazy v patičce */
.paticka .pravni{margin:14px 0 0;display:flex;flex-wrap:wrap;gap:4px 16px}
.paticka .pravni a{font-size:13px;color:var(--seda)}
@media (hover:hover) and (pointer:fine){.paticka .pravni a:hover{color:var(--modra)}}
