/*
Theme Name: Jirka a Luboš na cestách
Author: Jirka a Luboš
Description: Moderní responzivní cestovatelská šablona pro galerie Zonerama.
Version: 30.0
Text Domain: jirka-lubos
*/
:root{--ink:#142e38;--muted:#61737a;--sea:#087d84;--sand:#faf7f0;--line:#e2e9e8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}a{color:var(--sea)}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #f2ad4d;outline-offset:3px}.site{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px max(24px,calc((100vw - 1180px)/2));background:#fff;position:relative;z-index:2}.brand{font-weight:850;text-decoration:none;color:var(--ink);font-size:1.06rem;letter-spacing:-.03em}.brand-mark{color:var(--sea);margin-right:8px}.site nav ul{display:flex;list-style:none;gap:22px;margin:0;padding:0}.site nav a{text-decoration:none;color:var(--ink);font-weight:650}.hero{position:relative;overflow:hidden;background:linear-gradient(125deg,#064a59 0%,#0b7b83 60%,#1c9690 100%);color:white;padding:105px 24px 112px}.hero:before{content:"";position:absolute;inset:0;opacity:.2;background:radial-gradient(circle at 82% 15%,#e3c590 0,transparent 30%),radial-gradient(circle at 12% 80%,#a5dfd2 0,transparent 38%)}.hero-inner{max-width:1180px;margin:auto;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-weight:800;font-size:.75rem;color:#bfe9df}.hero h1{font-size:clamp(2.7rem,7vw,5.8rem);line-height:1.04;letter-spacing:-.055em;max-width:830px;margin:19px 0 22px}.hero p{font-size:clamp(1.06rem,2.5vw,1.45rem);color:#e6f7f5;max-width:590px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.pill{border-radius:100px;padding:12px 22px;font-weight:750;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.pill-light{background:white;color:#075b65}.pill-outline{border:1px solid #a5d9d5;color:white}.wrap{max-width:1180px;margin:auto;padding:70px 24px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:25px}.section-head h2{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.05em;line-height:1.1;margin:6px 0}.section-head p{margin:0;color:var(--muted)}.filter{width:100%;max-width:285px;padding:12px 15px;border:1px solid #ccd9d8;border-radius:14px;font:inherit;background:white}.trip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.journey{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:white;box-shadow:0 9px 26px rgba(13,60,69,.055);transition:transform .2s,box-shadow .2s}.journey:hover{transform:translateY(-3px);box-shadow:0 18px 34px rgba(13,60,69,.11)}.journey-visual{height:190px;position:relative;background:linear-gradient(145deg,#0c6a75,#65a9a0);display:flex;align-items:end;padding:18px;color:#fff}.journey:nth-child(5n+2) .journey-visual{background:linear-gradient(145deg,#a35b49,#e6ac78)}.journey:nth-child(5n+3) .journey-visual{background:linear-gradient(145deg,#244d77,#8da9bb)}.journey:nth-child(5n+4) .journey-visual{background:linear-gradient(145deg,#51785e,#acc9a1)}.journey:nth-child(5n+5) .journey-visual{background:linear-gradient(145deg,#685b8b,#c1a4be)}.journey-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.journey-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(0,0,0,.36))}.journey-visual span{position:relative;z-index:1;font-size:.79rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.journey-body{padding:22px}.journey-date{color:var(--sea);font-weight:800;font-size:.81rem}.journey h3{font-size:1.25rem;letter-spacing:-.035em;line-height:1.28;margin:9px 0 15px;overflow-wrap:anywhere}.journey a{font-weight:800;text-decoration:none}.journey a:hover{text-decoration:underline}.empty{background:var(--sand);border-radius:18px;padding:28px;color:var(--muted)}.about{background:var(--sand);padding:60px 24px}.about-inner{max-width:1180px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.about h2{font-size:2rem;letter-spacing:-.04em;margin:0}.about p{color:var(--muted);max-width:600px}.footer{background:#102e38;color:#c6dadc;padding:34px 24px;text-align:center}.footer a{color:white}.content{max-width:850px;margin:65px auto;padding:0 24px}.content h1{line-height:1.15;letter-spacing:-.04em}.content img{max-width:100%;height:auto}@media(max-width:900px){.trip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.site{padding:15px 20px}.site nav ul{gap:10px;font-size:.83rem}.hero{padding:74px 22px 80px}.wrap{padding:48px 20px}.section-head{align-items:stretch;flex-direction:column}.filter{max-width:none}.trip-grid{grid-template-columns:1fr}.journey-visual{height:205px}.about-inner{display:block}.hero-actions .pill{width:100%}}

/* v2.2: dynamic hero photograph with accessible text contrast */
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.hero.hero-has-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,32,40,.85) 0%,rgba(4,42,49,.67) 48%,rgba(4,42,49,.35) 100%);opacity:1;z-index:1}
.hero.hero-has-photo .hero-inner{z-index:2}
.hero.hero-has-photo .hero-inner p{color:#fff}
@media(max-width:620px){.hero.hero-has-photo:before{background:linear-gradient(180deg,rgba(3,30,39,.75),rgba(3,38,44,.68))}.hero-photo{object-position:center}}

/* v2.3: dedicated About page and user-selected single hero photograph */
.about-page{max-width:1180px;margin:0 auto;padding:75px 24px 100px}.about-page>.eyebrow{color:var(--sea)}.about-page h1{font-size:clamp(2.5rem,6vw,5rem);letter-spacing:-.055em;line-height:1.08;margin:15px 0}.about-lead{font-size:clamp(1.25rem,3vw,1.7rem);color:var(--muted);margin:0 0 55px}.about-page-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:70px}.about-page-grid h2{font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.2;letter-spacing:-.04em}.about-page-grid p{font-size:1.08rem;line-height:1.8}.about-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.pill-dark{background:#075b65;color:white}.pill-border{border:1px solid #a4c6c6;color:#075b65}.about-side{border-radius:26px;background:linear-gradient(145deg,#075565,#0b8d88);color:white;padding:35px;align-self:start;min-height:290px}.about-side-label{text-transform:uppercase;letter-spacing:.17em;font-weight:750;font-size:.8rem;color:#c4f0e8}.about-side strong{font-size:clamp(2rem,4vw,3rem);display:block;margin:25px 0 10px;line-height:1.15}.about-side strong span{color:#b9e8db}.about-side p{color:#e7f5f2}.hero-photo{object-position:center center}@media(max-width:700px){.about-page{padding:50px 20px 70px}.about-page-grid{grid-template-columns:1fr;gap:30px}.about-lead{margin-bottom:35px}.about-links .pill{width:100%}}

/* Flighty flight archive */
.flight-hero{background:linear-gradient(125deg,#073f50,#087d84);color:#fff;padding:65px 24px}.flight-hero-inner{max-width:1180px;margin:auto}.flight-hero h1{font-size:clamp(2.5rem,6vw,4.7rem);letter-spacing:-.05em;margin:8px 0}.flight-hero p{color:#d9f1ed;max-width:680px}.flight-dashboard{max-width:1180px;margin:auto;padding:40px 24px 90px}.flight-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.flight-stat{background:#f3f8f7;border:1px solid #deece9;border-radius:20px;padding:22px}.flight-stat strong{display:block;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.2;color:#086c75}.flight-stat span{font-size:.9rem;color:#526970}.flight-panels{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.flight-panel{border:1px solid #e2e9e8;border-radius:22px;padding:25px;min-width:0}.flight-panel h2,.flight-history h2{margin-top:0;letter-spacing:-.04em}.flight-bar{display:grid;grid-template-columns:110px 1fr 35px;gap:12px;align-items:center;margin:12px 0;font-size:.9rem}.flight-bar-track{height:11px;border-radius:15px;background:#e7f0ee;overflow:hidden}.flight-bar-fill{height:100%;background:#087d84;border-radius:15px}.flight-history{margin-top:42px}.flight-controls{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.flight-controls input,.flight-controls select{padding:12px 14px;border:1px solid #cbdcda;border-radius:12px;background:#fff;font:inherit;max-width:100%}.flight-table-wrap{overflow:auto;border:1px solid #e2e9e8;border-radius:18px}.flight-table{width:100%;border-collapse:collapse;text-align:left}.flight-table th,.flight-table td{padding:13px 15px;border-bottom:1px solid #e7eeec;white-space:nowrap}.flight-table th{background:#f4f8f7}.flight-table tr:last-child td{border-bottom:0}.flight-chip{font-size:.75rem;background:#e4f2ef;padding:5px 9px;border-radius:20px;color:#075e65}.flight-chip.future{background:#fff1d8;color:#84530a}.flight-note{font-size:.88rem;color:#61737a}.flight-more{margin-top:18px;border:0;border-radius:30px;background:#075b65;color:#fff;padding:12px 24px;font-weight:750;cursor:pointer}@media(max-width:800px){.flight-stats{grid-template-columns:repeat(2,1fr)}.flight-panels{grid-template-columns:1fr}}@media(max-width:620px){.site{flex-wrap:wrap}.site nav ul{flex-wrap:wrap}.flight-dashboard{padding:30px 18px}.flight-stat{padding:15px}.flight-panel{padding:18px}.flight-bar{grid-template-columns:90px 1fr 30px;gap:7px}}

/* v2.7 colorful aviation dashboard; scoped to flights only */
.flight-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 15%,#2962a5 0,transparent 37%),radial-gradient(circle at 8% 90%,#087d84 0,transparent 45%),linear-gradient(115deg,#101b39,#173458 65%,#11223c);padding:88px 24px 100px}.flight-hero:after{content:'✈';position:absolute;right:9%;top:2%;font-size:clamp(9rem,24vw,22rem);line-height:1;color:#fff;opacity:.065;transform:rotate(-22deg);pointer-events:none}.flight-hero-inner{position:relative;z-index:1}.flight-hero .eyebrow{color:#79e6d4}.flight-hero h1{font-size:clamp(3.2rem,7vw,6rem);text-shadow:0 6px 28px #0003}.flight-dashboard{max-width:1240px;margin-top:-40px;position:relative;z-index:1}.flight-stats{gap:16px}.flight-stat{background:#fff;border:1px solid #e6eaf1;border-radius:24px;padding:27px 24px;box-shadow:0 12px 38px #11284816;position:relative;overflow:hidden}.flight-stat:before{content:'';position:absolute;left:0;top:0;right:0;height:5px;background:linear-gradient(90deg,#1ecdb5,#48a7ff)}.flight-stat:nth-child(2):before{background:linear-gradient(90deg,#ff9c6d,#ffcd5c)}.flight-stat:nth-child(3):before{background:linear-gradient(90deg,#8e7aff,#c69cff)}.flight-stat:nth-child(4):before{background:linear-gradient(90deg,#ff6f91,#ffb2ad)}.flight-stat strong{color:#172e51;font-size:clamp(2.2rem,4vw,3.3rem);letter-spacing:-.06em}.flight-stat span{font-weight:650}.flight-insights{display:grid;grid-template-columns:1.2fr 1fr;gap:22px;margin-top:30px}.flight-insight-main,.flight-insight-side{background:#142440;color:#fff;border-radius:28px;padding:32px;min-width:0;overflow:hidden}.flight-insight-main{background:radial-gradient(circle at 95% 0%,#28577e,transparent 48%),#142440}.flight-insight-side{background:radial-gradient(circle at 100% 100%,#443b7b,transparent 58%),#202442}.flight-section-kicker{color:#71e3d0;font-size:.72rem;font-weight:850;letter-spacing:.18em}.flight-insights h2{color:white;font-size:clamp(1.45rem,3vw,2.15rem);letter-spacing:-.045em;margin:8px 0}.flight-insights p{color:#b9c8db;font-size:.9rem;margin:0 0 22px}.flight-donut-wrap{display:flex;align-items:center;gap:30px}.flight-donut{width:210px;aspect-ratio:1;border-radius:50%;flex-shrink:0;display:grid;place-items:center;box-shadow:0 0 30px #0002}.flight-donut-hole{width:67%;height:67%;background:#142440;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center}.flight-donut-hole span{font-size:.62rem;letter-spacing:.14em;color:#a8c6dc;font-weight:800}.flight-donut-hole strong{font-size:2.7rem;line-height:1.2;color:#fff}.flight-donut-legend{flex:1;min-width:0}.flight-legend-row{display:flex;align-items:center;gap:9px;font-size:.78rem;margin:10px 0;color:#e2eaf5}.flight-legend-row span:nth-child(2){flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flight-legend-row strong{white-space:nowrap}.flight-legend-swatch{width:10px;height:10px;border-radius:50%;flex-shrink:0}.flight-year-visual{height:230px;display:flex;align-items:end;gap:10px;overflow-x:auto;padding:12px 0 2px}.flight-year-item{height:100%;min-width:32px;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;color:#cbd6ed;font-size:.73rem}.flight-year-item strong{font-size:.7rem;color:white}.flight-year-column{width:100%;max-width:44px;min-height:5px;border-radius:8px 8px 3px 3px;background:linear-gradient(0deg,#7e7bff,#48d5d2);box-shadow:0 0 20px #57baf52b}.flight-panels{gap:22px}.flight-panel{background:#fff;border:1px solid #e6eaf1;border-radius:24px;box-shadow:0 10px 30px #132a4410}.flight-panel h2{color:#172e51}.flight-bar-fill{background:linear-gradient(90deg,#23cdb7,#478ff4)}.flight-panel:nth-child(2) .flight-bar-fill{background:linear-gradient(90deg,#ffad68,#ff6d91)}.flight-panel:nth-child(3) .flight-bar-fill{background:linear-gradient(90deg,#7b8cff,#ba83e9)}.flight-panel:nth-child(4) .flight-bar-fill{background:linear-gradient(90deg,#30bdc9,#7dcf81)}.flight-history{background:#f5f8fc;border-radius:28px;padding:28px}.flight-history h2{color:#172e51}.flight-table-wrap{background:white}.flight-table th{background:#e8eef7;color:#223955}.flight-table tbody tr:hover{background:#f2fbfa}.flight-more{background:linear-gradient(110deg,#087d84,#355fc7)}@media(max-width:960px){.flight-insights{grid-template-columns:1fr}}@media(max-width:620px){.flight-hero{padding:66px 20px 90px}.flight-dashboard{margin-top:-32px}.flight-stat{padding:18px 14px}.flight-insight-main,.flight-insight-side{padding:22px 18px}.flight-donut-wrap{flex-direction:column;align-items:stretch}.flight-donut{width:190px;align-self:center}.flight-history{padding:19px 12px}.flight-year-visual{gap:7px}.flight-year-item{min-width:27px}}

/* v28: cache-safe, mobile-first flight dashboard */
.flight-dashboard,.flight-dashboard *{box-sizing:border-box}
.flight-hero{background:radial-gradient(circle at 90% 5%,#355cbd 0%,transparent 48%),linear-gradient(120deg,#101c3b,#095c78)!important;color:#fff!important}
.flight-hero .eyebrow{color:#8ce9e1!important}
.flight-stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
.flight-stat{background:#fff!important;border:1px solid #e4eaf2!important;box-shadow:0 10px 30px #10284916!important;border-radius:22px!important;min-width:0!important}
.flight-stat strong{color:#172e51!important}
.flight-insights{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)!important;gap:20px!important;margin-top:28px!important}
.flight-insight-main,.flight-insight-side{background:#152540!important;color:#fff!important;padding:28px!important;border-radius:26px!important;min-width:0!important;overflow:hidden!important}
.flight-insight-side{background:linear-gradient(145deg,#24274e,#172c49)!important}
.flight-insights h2{color:#fff!important;font-size:clamp(1.5rem,3vw,2rem)!important;line-height:1.2!important}
.flight-insights p{color:#c4d2e5!important}
.flight-section-kicker{display:block!important;color:#72e2d4!important;font-size:11px!important;letter-spacing:.16em!important;font-weight:800!important}
.flight-donut-wrap{display:flex!important;align-items:center!important;gap:24px!important;min-width:0!important}
.flight-donut{width:190px!important;height:190px!important;min-width:190px!important;flex:0 0 190px!important;border-radius:50%!important;display:grid!important;place-items:center!important;overflow:hidden!important}
.flight-donut-hole{width:66%!important;height:66%!important;background:#152540!important;border-radius:50%!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;text-align:center!important}
.flight-donut-hole span{color:#a7c7dd!important;font-size:10px!important;letter-spacing:.1em!important}
.flight-donut-hole strong{color:white!important;font-size:42px!important;line-height:1.2!important}
.flight-donut-legend{flex:1!important;min-width:0!important}
.flight-legend-row{display:grid!important;grid-template-columns:11px minmax(0,1fr) auto!important;gap:9px!important;align-items:center!important;color:#e7f0fa!important;margin:10px 0!important;font-size:13px!important}
.flight-legend-row span:nth-child(2){overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.flight-legend-row strong{color:white!important;white-space:nowrap!important}
.flight-legend-swatch{display:block!important;width:11px!important;height:11px!important;border-radius:50%!important}
.flight-year-visual{display:flex!important;align-items:end!important;height:210px!important;gap:9px!important;overflow-x:auto!important;padding:12px 0 4px!important}
.flight-year-item{height:100%!important;min-width:30px!important;flex:1!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;color:#d5e0f4!important;font-size:11px!important}
.flight-year-item strong{color:#fff!important;font-size:12px!important}
.flight-year-column{width:100%!important;max-width:40px!important;min-height:5px!important;background:linear-gradient(0deg,#8179ff,#35d4ca)!important;border-radius:7px 7px 2px 2px!important}
.flight-panels{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
.flight-panel{min-width:0!important;background:white!important}
.flight-bar{display:grid!important;grid-template-columns:minmax(75px,110px) minmax(0,1fr) 34px!important;gap:9px!important;align-items:center!important}
.flight-bar>span{overflow-wrap:anywhere!important;font-size:13px!important}
.flight-bar-track{height:11px!important;background:#eaf0f5!important;border-radius:10px!important;overflow:hidden!important}
.flight-bar-fill{height:100%!important;background:linear-gradient(90deg,#24cdb8,#528dff)!important;border-radius:10px!important}
.flight-bar strong{text-align:right!important;font-size:13px!important}
@media(max-width:900px){.flight-insights{grid-template-columns:minmax(0,1fr)!important}.flight-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){.flight-hero{padding:60px 20px 78px!important}.flight-hero h1{font-size:clamp(2.5rem,10vw,4rem)!important}.flight-dashboard{padding:28px 16px 70px!important}.flight-stats{gap:12px!important}.flight-stat{padding:17px 14px!important}.flight-stat strong{font-size:2.1rem!important}.flight-stat span{font-size:.82rem!important}.flight-insight-main,.flight-insight-side{padding:22px 18px!important;border-radius:22px!important}.flight-donut-wrap{flex-direction:column!important;align-items:stretch!important;gap:15px!important}.flight-donut{align-self:center!important}.flight-legend-row{font-size:13px!important}.flight-panels{grid-template-columns:minmax(0,1fr)!important;gap:15px!important}.flight-panel{padding:20px 16px!important}.flight-history{padding:20px 13px!important}.flight-controls input,.flight-controls select{width:100%!important}.flight-year-visual{height:180px!important}}

/* v29: nenápadný vstup pro správce */
.site nav .admin-nav a{display:inline-flex;align-items:center;gap:5px;color:#087d84}.admin-nav-label{font-size:.84em}@media(max-width:620px){.admin-nav-label{display:none}.site nav .admin-nav a{font-size:1.12rem;padding:0 3px}}

/* v32 – letecký západ slunce na úvodní stránce */
.hero.hero-has-photo:before{background:linear-gradient(90deg,rgba(7,26,47,.66),rgba(7,26,47,.27) 72%,rgba(7,26,47,.12))!important}
.hero.hero-has-photo .hero-photo{object-position:center 52%}
.hero.hero-has-photo .eyebrow{color:#eaf7ff}
.hero.hero-has-photo h1,.hero.hero-has-photo p{text-shadow:0 2px 15px rgba(0,0,0,.35)}
@media(max-width:620px){.hero.hero-has-photo:before{background:linear-gradient(180deg,rgba(8,28,52,.40),rgba(8,28,52,.42) 55%,rgba(8,28,52,.66))!important}.hero.hero-has-photo .hero-photo{object-position:57% center}}
