/* Rozcestník má vlastní styly; nemění sdílené styly vydaných kalkulátorů. */
body.gallery { background:#f4f7fa; }
.gallery { --hub-gap:24px; --hub-muted:#4e6579; }
.gallery .site-header { max-width:1200px; }
.gallery .site-header a { min-height:44px; display:inline-flex; align-items:center; }
.gallery .site-header .brand img { height:auto; }
.gallery .header-contact { font-size:13px; overflow-wrap:anywhere; text-align:right; }
.gallery-main { max-width:1200px; margin:auto; padding:22px 24px 48px; }
.gallery-heading { margin:0 0 24px; }
.gallery-heading .eyebrow { font-size:13px; color:var(--navy); font-weight:650; margin:0 0 5px; }
.gallery-heading h1 { font-size:32px; line-height:1.2; margin:0 0 12px; color:var(--navy); }
.gallery-heading > p:not(.eyebrow) { font-size:14px; color:var(--hub-muted); margin:0; max-width:820px; }
.gallery-nav { display:flex; gap:8px; flex-wrap:wrap; margin:20px 0 16px; }
.gallery-nav a { display:inline-flex; align-items:center; min-height:44px; padding:10px 16px; border:1px solid #bccfdf; background:white; color:var(--navy); border-radius:10px; font-size:13px; font-weight:650; }
.gallery-nav a:hover { background:#e6eff7; border-color:var(--navy); }
.gallery-heading .opening-note { font-size:12px!important; line-height:1.6; }
.opening-note > span { font-size:17px; margin-right:3px; color:var(--navy); }
.gallery a:focus-visible, .gallery summary:focus-visible { outline:3px solid var(--navy); outline-offset:4px; }
.gallery .skip-link { position:absolute; left:16px; top:0; z-index:10; padding:12px 16px; background:white; border:2px solid var(--navy); border-radius:8px; transform:translateY(-150%); }
.gallery .skip-link:focus { transform:translateY(8px); }
.gallery section, .gallery details { scroll-margin-top:24px; }
.latest-release { display:grid; grid-template-columns:minmax(0,1fr) 225px; gap:32px; align-items:center; padding:28px 32px; background:#e8f1f9; border:1px solid #c5d8e9; border-left:4px solid var(--navy); border-radius:16px; }
.release-meta { display:flex; align-items:center; gap:14px; flex-wrap:wrap; font-size:12px; color:var(--hub-muted); }
.latest-badge { background:white; color:var(--navy); padding:5px 10px; border-radius:6px; font-weight:700; }
.latest-release h2 { font-size:34px; line-height:1.2; margin:16px 0 8px; color:var(--navy); }
.latest-release h3 { font-size:18px; line-height:1.4; margin:0 0 8px; }
.latest-release p { font-size:14px; color:var(--hub-muted); margin:0; max-width:640px; }
.launch-actions { display:flex; gap:8px; align-items:stretch; }
.gallery .launch-actions .button { min-height:44px; font-size:12px; padding:11px 13px; border-radius:9px; white-space:nowrap; }
.gallery .launch-actions .button:hover { background:#002e59; border-color:#002e59; color:white; }
.gallery .launch-actions .button.secondary:hover { background:#e8f1f9; border-color:var(--navy); color:var(--navy); }
.launch-icon { font-size:15px; line-height:1; }
.latest-release .launch-actions { flex-direction:column; }
.latest-release .launch-actions .button { font-size:14px; min-height:48px; }
.history-section, .drafts-section { margin-top:40px; }
.gallery .section-heading { display:block; margin-bottom:18px; }
.section-heading h2 { display:flex; gap:12px; flex-wrap:wrap; align-items:center; font-size:23px; line-height:1.35; color:var(--navy); margin:0 0 7px; }
.section-count { font-size:12px; font-weight:500; color:var(--hub-muted); }
.section-heading p { color:var(--hub-muted); font-size:13px; margin:0; }
.release-list { list-style:none; padding:0; margin:0; background:white; border:1px solid var(--line); border-radius:14px; }
.release-row { display:grid; grid-template-columns:112px minmax(0,1fr) auto; align-items:center; column-gap:20px; padding:20px 24px; }
.release-row + .release-row { border-top:1px solid var(--line); }
.release-id { align-self:start; }
.release-id strong { display:block; font-size:18px; color:var(--navy); font-weight:750; line-height:1.4; }
.release-id time { display:block; margin-top:5px; font-size:11px; color:var(--hub-muted); white-space:nowrap; }
.release-description h3 { font-size:14px; line-height:1.45; margin:0 0 5px; }
.release-description p { color:var(--hub-muted); font-size:12px; line-height:1.6; margin:0; }
.concept-set { background:white; border:1px solid var(--line); border-radius:14px; margin:0 0 12px; }
.concept-set > summary { display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer; padding:20px 24px; list-style:none; border-radius:14px; min-height:76px; }
.concept-set > summary::-webkit-details-marker { display:none; }
.concept-set > summary::after { display:none; }
.concept-set > summary:hover { background:#edf4fa; }
.set-title { display:block; font-size:16px; font-weight:700; color:var(--navy); }
.set-meta { display:block; margin-top:4px; font-size:12px; color:var(--hub-muted); }
.set-chevron { font-family:Arial,sans-serif; font-size:24px; width:24px; flex-shrink:0; text-align:center; color:var(--navy); }
.concept-set[open] .set-chevron { transform:rotate(180deg); }
.set-description { margin:0; padding:0 24px 20px; font-size:13px; color:var(--hub-muted); }
.concept-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); gap:16px; padding:0 24px 24px; }
.concept-card { display:flex; flex-direction:column; min-width:0; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:white; }
.concept-preview { position:relative; height:156px; overflow:hidden; background:#e7eff7; padding:20px 12px 0; }
.mini-screen { position:relative; width:120px; min-height:190px; margin:auto; background:white; border:3px solid white; border-radius:12px 12px 0 0; box-shadow:0 8px 25px #16395613; padding:22px 10px; color:var(--navy); font-size:8px; }
.mini-lines { padding-top:10px; }
.mini-lines i { display:block; height:20px; background:#eff4f8; border:1px solid #cfdeeb; border-radius:4px; margin-bottom:10px; }
.mini-rail { position:absolute; left:0; top:20px; width:28px; background:var(--navy); color:white; text-align:center; font-size:19px; line-height:2; }
.preview-rail .mini-lines { margin-left:27px; }
.mini-tiles { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.mini-tiles b { background:#f1f6fb; border:1px solid #bdd0e0; border-radius:5px; text-align:center; padding:8px; font-size:19px; }
.mini-sheet { position:absolute; bottom:0; left:0; width:100%; height:38px; border-radius:12px 12px 0 0; background:#d2e3f0; border-top:1px solid #b6ccdd; }
.mini-steps { display:flex; gap:6px; }
.mini-steps > * { border-radius:4px; padding:3px 8px; background:#e8f0f6; }
.mini-steps > b { color:white; background:var(--navy); }
.mini-accordion { padding:10px 4px; border-bottom:1px solid #cbdce9; }
.mini-accordion > b { float:right; }
.mini-accordion > i { display:block; height:22px; background:#edf4f9; margin-top:9px; }
.mini-back { font-size:8px; }
.mini-title { display:block; font-size:11px; font-weight:700; margin-top:15px; }
.mini-tabs { position:absolute; bottom:0; left:0; display:flex; justify-content:space-around; width:100%; background:#e6eff7; padding:8px; font-size:17px; }
.mini-tabs b { color:var(--red); }
.mini-columns { display:flex; gap:5px; }
.mini-columns > div { flex:1; min-width:0; border:1px solid #c9dbe9; padding:6px; text-align:center; }
.mini-columns b { font-size:15px; }
.mini-columns i { height:18px; background:#e9f0f6; display:block; margin-top:10px; }
.mini-risk-row { padding:10px 4px; background:#eef4f9; margin-bottom:12px; }
.mini-risk-row i { display:inline-block; height:15px; width:35px; background:white; border:1px solid #cbddeb; margin:8px 2px 0; }
.concept-body { padding:16px; display:flex; flex-direction:column; flex:1; min-width:0; }
.concept-body h3 { font-size:14px; line-height:1.45; margin:0 0 8px; }
.concept-body p { font-size:12px; line-height:1.6; color:var(--hub-muted); margin:0 0 16px; flex:1; }
.concept-body .launch-actions { flex-direction:column; }
.gallery .concept-body .button { white-space:normal; }
.noscript-note { padding:20px; background:white; border:1px solid var(--line); border-radius:12px; }
@media (max-width:1050px) {
  .release-row { grid-template-columns:104px minmax(0,1fr); row-gap:14px; }
  .release-row > .launch-actions { grid-column:2; }
}
@media (max-width:600px) {
  .gallery .site-header { gap:10px; padding:14px 16px; }
  .gallery .brand img { width:137px; }
  .gallery .header-contact { font-size:11px; max-width:150px; }
  .gallery-main { padding:16px 16px 32px; }
  .gallery-heading h1 { font-size:27px; }
  .gallery-heading > p:not(.eyebrow) { font-size:13px; }
  .gallery-nav { gap:6px; margin:18px 0 14px; }
  .gallery-nav a { font-size:12px; padding:10px 12px; }
  .latest-release { grid-template-columns:minmax(0,1fr); gap:20px; padding:22px 20px; }
  .latest-release h2 { font-size:30px; }
  .latest-release h3 { font-size:17px; }
  .latest-release p { font-size:13px; }
  .latest-release .launch-actions { gap:8px; }
  .history-section, .drafts-section { margin-top:32px; }
  .section-heading h2 { font-size:21px; gap:8px; }
  .section-heading p { font-size:12px; }
  .release-row { grid-template-columns:minmax(0,1fr); gap:12px; padding:18px 16px; }
  .release-id { display:flex; align-items:center; justify-content:space-between; gap:8px; }
  .release-id time { margin:0; }
  .release-row > .launch-actions { grid-column:1; }
  .release-row .launch-actions { flex-wrap:wrap; }
  .release-row .launch-actions .button { flex:1; }
  .gallery .launch-actions .button { font-size:12px; padding:11px 10px; gap:6px; }
  .release-row .launch-icon { display:none; }
  .concept-set > summary { padding:18px 16px; }
  .set-title { font-size:15px; }
  .set-description { padding:0 16px 16px; font-size:12px; }
  .concept-grid { grid-template-columns:minmax(0,1fr); padding:0 16px 16px; gap:12px; }
  .concept-card { display:grid; grid-template-columns:80px minmax(0,1fr); }
  .concept-preview { height:100%; padding:18px 0 0 10px; }
  .mini-screen { margin:0; transform:scale(.55); transform-origin:top left; margin-bottom:-72px; }
  .concept-body { padding:16px 12px; }
}
@media (prefers-reduced-motion:reduce) {
  .gallery *, .gallery *::before, .gallery *::after { scroll-behavior:auto!important; transition:none!important; }
}
@media print {
  .gallery .launch-actions, .gallery-nav, .opening-note { display:none; }
  .latest-release, .release-row { break-inside:avoid; }
}
