/* Hledani a ulety — graf formativnich let + orbity poutniku.
   Vsechno v tomhle souboru slouzi JEN strance /hledani-a-ulety/ (viz models/HledaniUlety.php).
   Barvy jsou jasnejsi infograficka paleta webu (#d9294c / #1659d8 / #7527c9 / #0f7345 / #eab43b),
   NE globalni barvy Elementor kitu — viz CLAUDE.md, sekce Quote colour system. */

.mh-hu-graf, .mh-hu-orbity { position: relative; background: #fff; }

/* --- chipy se jmeny ------------------------------------------------------ */
.mh-hu-graf .hu-chipy { display: flex; flex-wrap: wrap; gap: 8px; padding-left: 2px; }
.mh-hu-graf .hu-chip {
    cursor: pointer; display: inline-flex; align-items: center; gap: 7px;
    padding: 5px 13px; border-radius: 999px; border: 0.8px solid #161513;
    background: #fff; color: #161513;
    font-family: 'Urban Grotesk', sans-serif; font-weight: 400; font-size: 12.5px; line-height: 1.4;
    /* kit zmensuje pismena vsech buttonu (zamer webu) — tady jsou ale VLASTNI JMENA
       poutniku a "john newton" je fakticky spatne; vyjimka jen pro tyhle chipy */
    text-transform: none;
}
.mh-hu-graf .hu-chip.je-aktiv { background: #161513; color: #fff; font-weight: 700; }
.mh-hu-graf .hu-tecka { width: 9px; height: 9px; border-radius: 50%; flex: none; }

/* --- platno s vodorovnym scrollovanim na uzkych displejich ---------------- */
.hu-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.mh-hu-graf .hu-scroll { margin-top: 18px; }
.hu-scroll .hu-platno { min-width: 1000px; }
.hu-platno svg { display: block; width: 100%; height: auto; }

/* --- texty v SVG ---------------------------------------------------------- */
.hu-platno .hu-pasmo { font: 700 10px 'Urban Grotesk', sans-serif; letter-spacing: 0.14em; }
.hu-platno .hu-okno  { font: 700 10.5px 'Urban Grotesk', sans-serif; letter-spacing: 0.14em; fill: #d9294c; }
.hu-platno .hu-tik   { font: 400 12px 'Urban Grotesk', sans-serif; fill: #8a857c; }
.hu-platno .hu-osa   { font: 700 10.5px 'Urban Grotesk', sans-serif; letter-spacing: 0.1em; fill: #8a857c; }
.hu-platno .hu-vek   { font: 400 11.5px 'Urban Grotesk', sans-serif; fill: #8a857c; cursor: pointer; }
.hu-platno .hu-stred { font: 900 19px 'Novela Poster', Georgia, serif; fill: #fff; }
.hu-platno .hu-jmeno { font: 400 12.5px 'Urban Grotesk', sans-serif; fill: #8a857c; cursor: pointer; }
.hu-platno .hu-halo  { paint-order: stroke; stroke: #fff; stroke-width: 4px; }

/* --- krivky a body: graf -------------------------------------------------- */
.hu-platno .hu-krivka { stroke: #dcd8d0; stroke-width: 1.3; cursor: pointer; }
.hu-platno .hu-krivka.je-aktiv,
.hu-platno .hu-draha.je-aktiv .hu-krivka { stroke: currentColor; stroke-width: 2.6; }
.hu-platno .hu-klik { fill: transparent; cursor: pointer; }

.mh-hu-graf .hu-body { display: none; }
.mh-hu-graf .hu-body.je-aktiv { display: block; }
.mh-hu-graf .hu-punt { fill: #fff; stroke: currentColor; stroke-width: 2; cursor: pointer; }
.mh-hu-graf .hu-bod.je-bod .hu-punt { fill: currentColor; r: 8px; }
.mh-hu-graf .hu-bod.je-bod .hu-vek { font-weight: 700; fill: currentColor; }

/* --- krivky a body: orbity ------------------------------------------------ */
.mh-hu-orbity .hu-punt { fill: #dcd8d0; cursor: pointer; }
.mh-hu-orbity .hu-draha.je-aktiv .hu-punt { fill: #fff; stroke: currentColor; stroke-width: 1.8; r: 5px; }
.mh-hu-orbity .hu-draha.je-aktiv .hu-bod.je-bod .hu-punt { fill: currentColor; r: 7px; }
.mh-hu-orbity .hu-vek { display: none; }
.mh-hu-orbity .hu-draha.je-aktiv .hu-vek {
    display: block; font-size: 10.5px; paint-order: stroke; stroke: #fff; stroke-width: 3px;
}
.mh-hu-orbity .hu-draha.je-aktiv .hu-bod.je-bod .hu-vek { font-weight: 700; fill: currentColor; }
.mh-hu-orbity .hu-draha.je-aktiv .hu-jmeno { font-weight: 700; fill: #161513; }
.mh-hu-orbity .hu-pasmo { font-size: 9.5px; letter-spacing: 0.12em; }

/* --- poznamka pod/nad platnem --------------------------------------------- */
.hu-note {
    margin: 10px 0 0; font-family: 'Urban Grotesk', sans-serif; font-size: 11.5px;
    line-height: 1.5; color: #8a857c;
}
.hu-note-orbity { margin: 0 0 6px; max-width: 340px; }

/* --- panel s detailem ------------------------------------------------------ */
.hu-panel {
    margin-top: 16px; border: 1.4px solid #161513; background: #fff; padding: 20px 24px;
    display: grid; grid-template-columns: 300px 1fr; gap: 0 32px;
    font-family: 'Urban Grotesk', sans-serif; color: #161513;
}
.hu-panel-kdo { border-right: 1px solid #b3b3b3; padding-right: 26px; }
.hu-panel-jmeno { font-family: 'Novela Poster', Georgia, serif; font-weight: 900; font-size: 26px; line-height: 1.05; }
.hu-panel-roky { margin-top: 3px; font-size: 12px; color: #8a857c; }
.hu-panel-pozn { margin-top: 10px; font-size: 13px; line-height: 1.45; color: #33312d; }
.hu-panel-zpet { margin-top: 12px; padding-top: 10px; border-top: 1px solid #b3b3b3; font-size: 12.5px; line-height: 1.45; }
.hu-panel-zpet b { color: var(--hu-barva, #d9294c); }
.hu-panel-radek { display: flex; align-items: center; gap: 14px; }
.hu-sipka {
    cursor: pointer; width: 30px; height: 30px; border-radius: 50%;
    border: 0.8px solid #161513; background: #fff; color: #161513;
    font-family: 'Urban Grotesk', sans-serif; font-size: 15px; line-height: 1; padding: 0;
}
.hu-sipka:hover { background: #161513; color: #fff; }
.hu-panel-poradi { font-weight: 700; font-size: 12px; letter-spacing: 0.1em; color: #8a857c; }
.hu-panel-vek { margin-left: auto; font-weight: 700; font-size: 13px; color: var(--hu-barva, #d9294c); }
.hu-panel-titul { margin-top: 12px; font-family: 'Novela Poster', Georgia, serif; font-weight: 900; font-size: 21px; line-height: 1.05; }
.hu-panel-popis { margin: 10px 0 0; font-size: 14.5px; line-height: 1.5; color: #33312d; }

/* orbity: tri sloupce */
.hu-panel-orbity { grid-template-columns: 250px 1fr 1fr; gap: 0 30px; padding: 18px 24px; }
.hu-panel-orbity .hu-panel-jmeno { font-size: 24px; }
.hu-panel-vrchol { margin-top: 8px; font-weight: 700; font-size: 11.5px; color: var(--hu-barva, #d9294c); }
.hu-panel-ted, .hu-panel-orbity .hu-panel-zpet {
    border-left: 1px solid #b3b3b3; padding-left: 26px;
    margin-top: 0; padding-top: 0; border-top: 0; border-right: 0;
    font-size: 13.5px; line-height: 1.5;
}
.hu-panel-ted b { color: var(--hu-barva, #d9294c); }
.hu-panel-ted-popis, .hu-panel-orbity .hu-panel-zpet i { color: #33312d; }
.hu-panel-orbity .hu-panel-kdo { border-right: 0; padding-right: 0; }

/* --- uzke displeje --------------------------------------------------------- */
@media (max-width: 860px) {
    .hu-panel, .hu-panel-orbity { grid-template-columns: 1fr; gap: 14px 0; }
    .hu-panel-kdo { border-right: 0; padding-right: 0; padding-bottom: 12px; border-bottom: 1px solid #b3b3b3; }
    .hu-panel-ted, .hu-panel-orbity .hu-panel-zpet { border-left: 0; padding-left: 0; }
    .hu-note-orbity { max-width: none; }
}

/* --- kostra sekci stranky (hlavicka s kickerem, uvodni kurziva) ------------ */
.mh-hu .hu-sekce-hlava { display: flex; gap: 56px; align-items: flex-start; }
.mh-hu .hu-sekce-titulek { width: 300px; flex: none; }
.mh-hu .hu-kicker {
    font-family: 'Urban Grotesk', sans-serif; font-weight: 700; font-size: 11px;
    letter-spacing: 0.14em; color: #8a857c;
}
.mh-hu .hu-titul {
    margin-top: 8px; font-family: 'Novela Poster', Georgia, serif; font-weight: 900;
    font-size: 64px; line-height: 1; color: #161513;
}
.mh-hu .hu-uvod {
    flex: 1; margin: 6px 0 0; font-family: 'Urban Grotesk', sans-serif;
    font-size: 17px; font-style: italic; line-height: 1.45; color: #161513;
}
.mh-hu .hu-uvod a { color: #161513; text-decoration: underline; }
.mh-hu .hu-uvod a:hover { color: #d9294c; }

/* dve zjisteni pod grafem */
.mh-hu .hu-zjisteni {
    margin-top: 30px; display: grid; grid-template-columns: 1fr 1fr; gap: 0 56px;
    font-family: 'Urban Grotesk', sans-serif; font-size: 14.5px; line-height: 1.5; color: #161513;
}
.mh-hu .hu-zjisteni p { margin: 0; }

/* karty vzorcu navratu (03) a tipu (04) */
.mh-hu .hu-karty { margin-top: 34px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.mh-hu .hu-tipy  { margin-top: 34px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.mh-hu .hu-karta { border: 0.75px solid #161513; background: #fff; padding: 20px 18px; }
.mh-hu .hu-karta-kicker {
    font-family: 'Urban Grotesk', sans-serif; font-weight: 700; font-size: 11px; letter-spacing: 0.12em;
}
.mh-hu .hu-karta-titul {
    margin-top: 8px; font-family: 'Novela Poster', Georgia, serif; font-weight: 900;
    font-size: 24px; line-height: 1.05; color: #161513;
}
.mh-hu .hu-karta p {
    margin: 10px 0 0; font-family: 'Urban Grotesk', sans-serif;
    font-size: 13.5px; line-height: 1.5; color: #161513;
}
.mh-hu .hu-tip-hlava { display: flex; gap: 10px; align-items: baseline; }
.mh-hu .hu-tip-cislo { font-family: 'Novela Poster', Georgia, serif; font-weight: 900; font-size: 27px; color: #d9294c; }
.mh-hu .hu-tip-titul {
    font-family: 'Novela Poster', Georgia, serif; font-weight: 900;
    font-size: 19px; line-height: 1.1; color: #161513;
}

@media (max-width: 900px) {
    .mh-hu .hu-sekce-hlava { flex-direction: column; gap: 14px; }
    .mh-hu .hu-sekce-titulek { width: auto; }
    .mh-hu .hu-titul { font-size: 40px; }
    .mh-hu .hu-zjisteni { grid-template-columns: 1fr; gap: 14px 0; }
    .mh-hu .hu-karty { grid-template-columns: 1fr 1fr; }
    .mh-hu .hu-tipy { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
    .mh-hu .hu-karty { grid-template-columns: 1fr; }
}
