/* © BDC Ideea SRL (Buticul de Călătorii). Toate drepturile rezervate; copierea fără acordul scris este interzisă. */
/* /planifica — stilurile paginii, din macheta 4.12 aprobată pe 19 septembrie 2026.
   Totul stă sub .bdc-planifica: pagina e în tema BDC și nu trebuie să atingă
   restul site-ului. Fonturile Meridian (Fraunces, IBM Plex Mono), culorile temei.
   Albastrul apare doar în atmosfera globului. */
@font-face { font-family: "Fraunces"; font-style: normal; font-weight: 300 800; font-display: swap;
  src: url(fonturi/fraunces-latin-wght-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122; }
@font-face { font-family: "Fraunces"; font-style: normal; font-weight: 300 800; font-display: swap;
  src: url(fonturi/fraunces-latin-ext-wght-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+1E00-1E9F, U+20A0-20AB, U+20AD-20C0; }
@font-face { font-family: "Fraunces"; font-style: italic; font-weight: 300 800; font-display: swap;
  src: url(fonturi/fraunces-latin-wght-italic.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122; }
@font-face { font-family: "Fraunces"; font-style: italic; font-weight: 300 800; font-display: swap;
  src: url(fonturi/fraunces-latin-ext-wght-italic.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+1E00-1E9F, U+20A0-20AB, U+20AD-20C0; }
@font-face { font-family: "IBM Plex Mono"; font-weight: 400; font-display: swap;
  src: url(fonturi/ibm-plex-mono-latin-400-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122; }
@font-face { font-family: "IBM Plex Mono"; font-weight: 400; font-display: swap;
  src: url(fonturi/ibm-plex-mono-latin-ext-400-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+1E00-1E9F, U+20A0-20AB, U+20AD-20C0; }
@font-face { font-family: "IBM Plex Mono"; font-weight: 500; font-display: swap;
  src: url(fonturi/ibm-plex-mono-latin-500-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122; }
@font-face { font-family: "IBM Plex Mono"; font-weight: 500; font-display: swap;
  src: url(fonturi/ibm-plex-mono-latin-ext-500-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+1E00-1E9F, U+20A0-20AB, U+20AD-20C0; }
@font-face { font-family: "IBM Plex Mono"; font-weight: 600; font-display: swap;
  src: url(fonturi/ibm-plex-mono-latin-600-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122; }
@font-face { font-family: "IBM Plex Mono"; font-weight: 600; font-display: swap;
  src: url(fonturi/ibm-plex-mono-latin-ext-600-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+1E00-1E9F, U+20A0-20AB, U+20AD-20C0; }
/* Paleta e fixă: e paleta site-ului, nu urmează tema cititorului. */
.bdc-planifica {
  --fundal: #0D1512;
  --fundal-adanc: #070D0B;
  --panou: rgba(19, 30, 25, .80);
  --panou-plin: #16211C;
  --linie: rgba(239, 233, 220, .12);
  --linie-tare: rgba(239, 233, 220, .26);
  --text: #EFE9DC;
  --text-sec: #CBD4CD;
  --text-slab: #A9B6AE;
  --eticheta: #F4F0E6;
  --auriu: #F5C451;
  --accent: #E0A44A;
  --accent-slab: rgba(224, 164, 74, .14);
  --pe-accent: #1B1307;
  --jad: #86B9A4;
  --creste: #FF5C5C;
  --scade: #3DF5A0;
  --serif: "Fraunces", Georgia, "Times New Roman", serif;
  --mono: "IBM Plex Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;
  --bara: 60px;
  --gutter: 24px;
  color-scheme: dark;
}
.bdc-planifica *, .bdc-planifica *::before, .bdc-planifica *::after { box-sizing: border-box; }
.bdc-planifica {
  margin: 0; background: var(--fundal); color: var(--text);
  font: 400 14px/1.5 var(--mono);
  -webkit-font-smoothing: antialiased;
}
.bdc-planifica [hidden] { display: none !important; }
.bdc-planifica .vizual-ascuns { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.bdc-planifica img { max-width: 100%; }
.bdc-planifica a { color: inherit; }
.bdc-planifica button, .bdc-planifica input, .bdc-planifica select, .bdc-planifica textarea { font: inherit; color: inherit; }
.bdc-planifica :focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.bdc-planifica h1, .bdc-planifica h2, .bdc-planifica h3, .bdc-planifica p, .bdc-planifica ol, .bdc-planifica ul { margin: 0; }
.bdc-planifica ol, .bdc-planifica ul { padding: 0; list-style: none; }
.bdc-planifica .mic-titlu {
  font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--text-slab);
}
.bdc-planifica .titlu-sectiune {
  font: italic 500 22px/1.2 var(--serif); letter-spacing: -.005em; text-wrap: balance;
}
.bdc-planifica .valoare { font: 400 28px/1.1 var(--serif); font-variant-numeric: tabular-nums; }
.bdc-planifica .valoare small { font: 400 12px var(--mono); color: var(--text-sec); margin-left: 3px; }
.bdc-planifica .valoare.mica { font-size: 19px; }
.bdc-planifica .fisa-mic { font-size: 12.5px; color: var(--text-sec); line-height: 1.5; }
/* ---------- bara de sus ---------- */
/* ---------- scena: globul sau harta ---------- */
.bdc-planifica .scena {
  position: relative; overflow: hidden;
  height: clamp(640px, calc(100svh - var(--bara)), 920px);
  background: radial-gradient(120% 90% at 55% 60%, #10201B 0%, var(--fundal-adanc) 62%);
  isolation: isolate;
}
.bdc-planifica .fereastra, .bdc-planifica .stele, .bdc-planifica .poster, .bdc-planifica .glob, .bdc-planifica .harta { position: absolute; inset: 0; width: 100%; height: 100%; }
.bdc-planifica .stele { z-index: 0; }
.bdc-planifica .poster {
  z-index: 1; object-fit: cover; object-position: 55% 62%;
  transition: opacity .8s ease; pointer-events: none;
}
.bdc-planifica.gata-glob .poster { opacity: 0; }
.bdc-planifica .glob { z-index: 2; opacity: 0; transition: opacity .8s ease; }
.bdc-planifica.gata-glob .glob { opacity: 1; }
.bdc-planifica .harta { z-index: 3; background: transparent; }
.bdc-planifica .fara-3d-nota {
  position: absolute; z-index: 12; left: 50%; bottom: 64px; transform: translateX(-50%);
  background: var(--panou-plin); border: 1px solid var(--linie-tare); padding: 10px 14px;
  font-size: 12px; color: var(--text-sec); max-width: calc(100% - 32px);
}
/* ---------- căutarea ---------- */
.bdc-planifica .cautare {
  position: absolute; z-index: 20; top: 18px; left: var(--gutter); right: var(--gutter);
  background: var(--panou); border: 1px solid var(--linie); backdrop-filter: blur(14px);
}
.bdc-planifica .rezumat { display: none; }
.bdc-planifica .file { display: flex; border-bottom: 1px solid var(--linie); }
.bdc-planifica .fila {
  background: none; border: 0; border-right: 1px solid var(--linie); cursor: pointer;
  padding: 13px 26px; font-size: 13px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase;
  color: rgba(244, 240, 230, .72); position: relative;
}
.bdc-planifica .fila:hover { color: var(--eticheta); }
.bdc-planifica .fila[aria-selected="true"] { color: #FFFFFF; font-weight: 600; background: var(--accent-slab); }
.bdc-planifica .fila[aria-selected="true"]::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; background: var(--accent);
}
.bdc-planifica .panou-fila { padding: 14px 16px 16px; }
.bdc-planifica .tip-calatorie { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; margin-bottom: 12px; font-size: 13.5px; color: var(--eticheta); }
.bdc-planifica .tip-calatorie label { display: inline-flex; align-items: center; gap: 6px; cursor: pointer; }
.bdc-planifica .tip-calatorie input { accent-color: var(--accent); margin: 0; }
.bdc-planifica .escale { margin: 0 0 0 auto; padding: 0; border: 0; min-width: 0; display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px 14px; }
.bdc-planifica .escale legend { float: left; padding: 0; margin-right: 2px; font-size: 11.5px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--eticheta); }
.bdc-planifica .rand-campuri { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px; }
.bdc-planifica .camp { position: relative; display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.bdc-planifica .camp > label { font-size: 11.5px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--eticheta); }
.bdc-planifica .camp input, .bdc-planifica .camp select, .bdc-planifica .control, .bdc-planifica .escale select {
  height: 42px; padding: 0 11px; min-width: 0;
  background: rgba(239, 233, 220, .06); border: 1px solid rgba(239, 233, 220, .34); border-radius: 0;
  font-size: 15px; font-weight: 600; color: #FFFFFF;
}
.bdc-planifica .camp select option, .bdc-planifica .escale select option { background: var(--panou-plin); }
.bdc-planifica .camp input:focus, .bdc-planifica .camp select:focus, .bdc-planifica .control:focus { outline: none; border-color: var(--accent); }
.bdc-planifica .camp input[type="date"], .bdc-planifica .camp input[type="time"] { color-scheme: dark; }
.bdc-planifica .loc { width: 180px; }
.bdc-planifica .loc.lat { width: 240px; }
.bdc-planifica .data { width: 146px; }
.bdc-planifica .ora { width: 132px; }
.bdc-planifica .pasageri { width: 128px; }
.bdc-planifica .clasa { width: 150px; }
.bdc-planifica .control { text-align: left; cursor: pointer; }
.bdc-planifica .inverseaza {
  width: 42px; height: 42px; background: none; border: 1px solid var(--linie-tare);
  color: var(--text-sec); cursor: pointer;
}
.bdc-planifica .inverseaza:hover { color: var(--text); border-color: var(--accent); }
.bdc-planifica .cauta {
  margin-left: auto; height: 42px; padding: 0 24px; border: 0; cursor: pointer;
  background: var(--accent); color: var(--pe-accent);
  font-weight: 600; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; white-space: nowrap;
}
.bdc-planifica .cauta:hover { background: #EAB564; }
.bdc-planifica .sugestii, .bdc-planifica .pop {
  position: absolute; top: 100%; left: 0; z-index: 30; margin-top: 4px;
  background: var(--panou-plin); border: 1px solid var(--linie-tare);
  box-shadow: 0 12px 30px rgba(0, 0, 0, .45);
}
.bdc-planifica .sugestii { right: -60px; max-height: 240px; overflow-y: auto; }
.bdc-planifica .sugestii li { display: flex; gap: 10px; align-items: baseline; padding: 8px 10px; cursor: pointer; font-size: 12.5px; }
.bdc-planifica .sugestii li b { color: var(--accent); font-weight: 500; width: 32px; }
.bdc-planifica .sugestii li small { margin-left: auto; color: var(--text-slab); }
.bdc-planifica .sugestii li:hover, .bdc-planifica .sugestii li[aria-selected="true"] { background: var(--accent-slab); }
.bdc-planifica .pop { width: 300px; max-width: calc(100vw - 32px); padding: 8px 14px 12px; }
.bdc-planifica .pop-rand { display: flex; align-items: center; justify-content: space-between; padding: 8px 0; font-size: 12.5px; }
.bdc-planifica .pop-rand + .pop-rand { border-top: 1px solid var(--linie); }
.bdc-planifica .pop-rand small { display: block; font-size: 10.5px; color: var(--text-slab); }
.bdc-planifica .pas { display: flex; align-items: center; gap: 10px; }
.bdc-planifica .pas b { width: 16px; text-align: center; font-weight: 500; }
.bdc-planifica .pas button { width: 28px; height: 28px; background: none; border: 1px solid var(--linie-tare); cursor: pointer; }
.bdc-planifica .pas button:hover { border-color: var(--accent); }
/* copiii: câte un rând cu vârsta, și „Adaugă un copil” */
.bdc-planifica .pop-copii { padding: 10px 0 2px; border-top: 1px solid var(--linie); font-size: 12.5px; }
.bdc-planifica .pop-copii-titlu { margin: 0; }
.bdc-planifica .pop-copii-titlu small { display: block; font-size: 10.5px; color: var(--text-slab); }
.bdc-planifica .pop-copii-lista, .bdc-planifica .pop-varste { list-style: none; margin: 0; padding: 0; }
.bdc-planifica .pop-copii-lista { display: grid; gap: 6px; margin-top: 10px; }
.bdc-planifica .pop-copii-lista:empty { margin: 0; }
.bdc-planifica .pop-copil { display: flex; align-items: center; gap: 8px; padding: 4px 4px 4px 10px; border: 1px solid var(--linie-tare); }
.bdc-planifica .pop-copil.lipsa { border-color: #FF8A7A; }
.bdc-planifica .pop-copil label { color: var(--text-sec); white-space: nowrap; }
.bdc-planifica .pop-copil select { margin-left: auto; min-width: 0; max-width: 150px; height: 32px; padding: 0 6px; background: transparent; border: 0; color: var(--text); font: inherit; font-weight: 600; text-align: right; cursor: pointer; }
.bdc-planifica .pop-copil select:focus-visible { outline: 1px solid var(--accent); }
.bdc-planifica .pop-copil select option { background: var(--panou-plin); }
.bdc-planifica .pop-copil button { width: 28px; height: 28px; flex: none; background: none; border: 0; color: var(--text-sec); font-size: 16px; cursor: pointer; }
.bdc-planifica .pop-copil button:hover { color: var(--text); }
.bdc-planifica .pop-adauga { margin-top: 10px; }
.bdc-planifica .pop-adauga-btn { width: 100%; height: 36px; background: none; border: 1px dashed var(--accent); color: var(--accent); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.bdc-planifica .pop-adauga-btn[aria-expanded="true"] { border-style: solid; }
.bdc-planifica .pop-varste { max-height: 200px; overflow-y: auto; margin-top: 4px; padding: 4px 0; border: 1px solid var(--linie-tare); }
.bdc-planifica .pop-varste button { display: block; width: 100%; padding: 7px 12px; background: none; border: 0; color: var(--text); font-size: 13px; text-align: left; cursor: pointer; }
.bdc-planifica .pop-varste button:hover, .bdc-planifica .pop-varste button:focus-visible { background: var(--accent-slab); outline: none; }
.bdc-planifica .pop-nota { margin: 8px 0 0; font-size: 11px; color: var(--text-slab); line-height: 1.45; }
.bdc-planifica .pop-nota:empty { display: none; }
.bdc-planifica .pop-gata { display: block; width: 100%; height: 36px; margin-top: 12px; background: var(--accent); color: var(--pe-accent); border: 0; font-weight: 600; font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; cursor: pointer; }
.bdc-planifica .pop-gata:hover { background: #EAB564; }
/* ---------- panourile plutitoare ---------- */
.bdc-planifica .plutitor {
  position: absolute; z-index: 10; top: var(--sub-cautare, 190px); bottom: 58px;
  background: var(--panou); border: 1px solid var(--linie); backdrop-filter: blur(14px);
  overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: var(--linie-tare) transparent;
}
.bdc-planifica .plutitor.stanga { left: var(--gutter); width: 232px; padding: 16px; bottom: auto; max-height: calc(100% - var(--sub-cautare, 190px) - 58px); }
.bdc-planifica .plutitor.dreapta { right: var(--gutter); width: 330px; padding: 18px; }
.bdc-planifica .plutitor-cap { padding: 16px 18px 12px; border-bottom: 1px solid var(--linie); display: grid; gap: 6px; }
.bdc-planifica .rute li + li { border-top: 1px solid var(--linie); }
.bdc-planifica .rute button {
  width: 100%; display: grid; grid-template-columns: 34px 1fr auto; align-items: baseline; gap: 8px;
  padding: 9px 0; background: none; border: 0; cursor: pointer; text-align: left;
}
.bdc-planifica .rute button:hover .ruta-oras { color: var(--accent); }
.bdc-planifica .ruta-cod { font-size: 11.5px; color: var(--text-sec); }
.bdc-planifica .ruta-oras { font-size: 14.5px; font-weight: 500; color: #FFFFFF; }
.bdc-planifica .rute button[aria-current="true"] .ruta-oras { color: var(--accent); }
.bdc-planifica .oras { font: italic 500 38px/1 var(--serif); margin-top: 6px; letter-spacing: -.01em; }
.bdc-planifica .fisa-sub { font-size: 13px; color: var(--text-sec); margin-top: 6px; }
.bdc-planifica .nota-ruta { font-size: 11.5px; color: var(--text-slab); margin-top: 10px; line-height: 1.5; }
.bdc-planifica .fisa-butoane { display: flex; gap: 8px; margin-top: 16px; }
.bdc-planifica .buton {
  flex: 1; display: inline-flex; align-items: center; justify-content: center; text-align: center;
  min-height: 40px; padding: 8px 10px; background: none; border: 1px solid var(--linie-tare); cursor: pointer;
  font-size: 11px; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; color: var(--text);
}
.bdc-planifica .buton:hover { border-color: var(--accent); }
.bdc-planifica .buton.plin { background: var(--accent); border-color: var(--accent); color: var(--pe-accent); font-weight: 600; }
.bdc-planifica .buton.plin:hover { background: #EAB564; }
.bdc-planifica .buton.lat { width: 100%; }
.bdc-planifica .linie-stare {
  position: absolute; z-index: 9; left: 0; right: 0; bottom: 0; min-height: 44px;
  padding: 12px var(--gutter); display: flex; flex-wrap: wrap; gap: 6px 22px; align-items: center;
  font-size: 12px; color: var(--text-sec);
  background: linear-gradient(180deg, transparent, rgba(7, 13, 11, .85));
  border-top: 1px solid var(--linie);
}
.bdc-planifica .linie-stare b { color: #FFFFFF; font-weight: 500; }
.bdc-planifica .scena:not([data-fila="zbor"]) .linie-stare { background: rgba(10, 17, 14, .88); }
.bdc-planifica .scena:not([data-fila="zbor"]) :is(.cautare, .bdc-planifica .plutitor) { background: rgba(13, 21, 18, .95); }
/* etichetele de pe glob */
.bdc-planifica .eticheta-glob {
  transform: translate(-50%, -140%); pointer-events: none; white-space: nowrap;
  font: 500 11px var(--mono); letter-spacing: .08em; color: var(--text);
  background: rgba(13, 21, 18, .82); border: 1px solid var(--linie-tare); padding: 3px 7px;
}
.bdc-planifica .eticheta-glob.dest { border-color: var(--accent); color: var(--accent); }
.bdc-planifica .eticheta-glob.escala { color: var(--auriu); border-color: rgba(245, 196, 81, .6); font-size: 10.5px; }
.bdc-planifica .eticheta-glob.dest { border-color: var(--auriu); color: var(--auriu); font-size: 12px; font-weight: 600; }
.bdc-planifica .eticheta-glob.plecare { font-size: 12px; font-weight: 600; }
.bdc-planifica .eticheta-glob.alt { font-size: 10.5px; font-weight: 500; color: #FFFFFF; background: rgba(13, 21, 18, .6); border-color: rgba(255, 255, 255, .28); padding: 2px 6px; }
.bdc-planifica .eticheta-glob.oras {
  display: inline-flex; align-items: center; gap: 4px; background: none; border: 0; padding: 0;
  font-size: 10px; font-weight: 400; letter-spacing: .04em; color: rgba(244, 240, 230, .75);
  text-shadow: 0 1px 3px #000, 0 0 6px #000;
}
.bdc-planifica .eticheta-glob.oras::before { content: ""; width: 4px; height: 4px; border-radius: 50%; background: rgba(244, 240, 230, .85); }
.bdc-planifica .punct-glob:has(.oras) { transform: translate(-4px, -50%); }
.bdc-planifica .punct-glob:has(.alt) { transform: translate(-50%, calc(-100% - 5px)); }
.bdc-planifica .avion {
  position: absolute; left: 0; top: 0; z-index: 4; width: 32px; height: 32px; pointer-events: none;
  filter: drop-shadow(0 0 6px rgba(245, 196, 81, .9)) drop-shadow(0 2px 3px rgba(0, 0, 0, .6));
  will-change: transform;
}
.bdc-planifica .avion svg { display: block; width: 100%; height: 100%; fill: #F5C451; stroke: #FFF3C8; stroke-width: .6; }
/* de aproape: numele complete ale aeroporturilor */
.bdc-planifica .eticheta-glob .detaliu { display: none; }
.bdc-planifica .aproape .eticheta-glob .detaliu { display: inline; font-weight: 400; }
.bdc-planifica .aproape .eticheta-glob.oras { font-size: 11.5px; }
.bdc-planifica .buton-harta {
  position: absolute; z-index: 12; left: 50%; bottom: 64px; transform: translateX(-50%);
  max-width: calc(100% - 32px); padding: 11px 18px; cursor: pointer;
  background: var(--accent); color: var(--pe-accent); border: 0;
  font: 600 12.5px var(--mono); letter-spacing: .06em;
  box-shadow: 0 6px 20px rgba(0, 0, 0, .45);
}
.bdc-planifica .buton-harta:hover { background: #EAB564; }
.bdc-planifica #btnGlob { left: auto; right: var(--gutter); transform: none; bottom: 60px; background: var(--panou-plin); color: #FFFFFF; border: 1px solid var(--eticheta); }
.bdc-planifica .scena[data-mod="aeroport"] #rute, .bdc-planifica .scena[data-mod="aeroport"] #fisa { display: none; }
.bdc-planifica .scena[data-mod="aeroport"] .linie-stare { background: rgba(10, 17, 14, .88); }
/* calendarul */
.bdc-planifica .calendar {
  position: absolute; top: 100%; left: 0; z-index: 35; margin-top: 4px; width: 290px; padding: 10px;
  background: var(--panou-plin); border: 1px solid var(--linie-tare); box-shadow: 0 14px 34px rgba(0, 0, 0, .5);
}
.bdc-planifica .cal-cap { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.bdc-planifica .cal-cap b { font: italic 500 17px var(--serif); }
.bdc-planifica .cal-cap button { width: 34px; height: 34px; background: none; border: 1px solid var(--linie-tare); color: var(--text); font-size: 18px; cursor: pointer; }
.bdc-planifica .cal-cap button:hover { border-color: var(--accent); }
.bdc-planifica .cal-grila { display: grid; grid-template-columns: repeat(7, 1fr); gap: 3px; }
.bdc-planifica .cal-sapt { text-align: center; font-size: 11px; color: var(--text-slab); padding: 4px 0; }
.bdc-planifica .cal-grila button {
  height: 34px; background: none; border: 1px solid transparent; cursor: pointer;
  font: 500 13.5px var(--mono); color: var(--text); font-variant-numeric: tabular-nums;
}
.bdc-planifica .cal-grila button:hover:not(:disabled) { border-color: var(--accent); }
.bdc-planifica .cal-grila button:disabled { color: rgba(244, 240, 230, .22); cursor: default; }
.bdc-planifica .cal-grila button.azi { border-color: var(--linie-tare); }
.bdc-planifica .cal-grila button[aria-pressed="true"] { background: var(--accent); color: var(--pe-accent); font-weight: 700; }
/* transportul public, peste hartă */
.bdc-planifica .transport {
  position: absolute; z-index: 8; left: var(--gutter); bottom: 60px;
  display: flex; flex-wrap: wrap; align-items: center; gap: 6px; padding: 6px 8px;
  background: rgba(13, 21, 18, .88); border: 1px solid var(--linie-tare); backdrop-filter: blur(8px);
  max-width: calc(100% - 2 * var(--gutter));
}
.bdc-planifica .transport-titlu { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--eticheta); margin-right: 4px; }
.bdc-planifica .transport button {
  display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px 5px 5px; cursor: pointer;
  background: none; border: 1px solid var(--linie-tare); color: var(--text-sec); font-size: 12.5px;
}
.bdc-planifica .transport button[aria-pressed="true"] { color: #FFFFFF; border-color: var(--eticheta); background: rgba(244, 240, 230, .1); }
.bdc-planifica .transport button[aria-pressed="false"] .ic { opacity: .45; }
.bdc-planifica .ic {
  display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 50%;
  font: 700 11px var(--mono); font-style: normal; color: #FFFFFF; border: 1.5px solid #FFFFFF;
}
.bdc-planifica .ic-metrou { background: #D7263D; border-radius: 4px; }
.bdc-planifica .ic-tramvai { background: #E07B00; }
.bdc-planifica .ic-autobuz { background: #1F6FD1; }
.bdc-planifica .ic-gara { background: #1E8A5A; border-radius: 4px; }
/* ---------- vremea: pe glob și în fișă ---------- */
.bdc-planifica .fisa-vreme { margin: 14px 0 18px; padding: 12px 0 2px; border-block: 1px solid var(--linie); }
.bdc-planifica .vreme-randuri li { display: grid; grid-template-columns: 44px 1fr; gap: 10px; align-items: center; padding: 8px 0; }
.bdc-planifica .vreme-randuri li + li { border-top: 1px solid var(--linie); }
.bdc-planifica .vreme-randuri p { font-size: 13px; color: var(--text-sec); line-height: 1.45; }
.bdc-planifica .vreme-randuri b { font: 400 18px var(--serif); color: var(--text); margin-right: 6px; }
.bdc-planifica .vreme-randuri .mic-titlu { font-size: 10px; margin-bottom: 1px; }
.bdc-planifica .vr-mini { position: relative; width: 44px; height: 36px; overflow: hidden; }
.bdc-planifica .vr-mini .vr { transform: scale(.66); transform-origin: 0 0; }
.bdc-planifica .vr-mini.clima { display: grid; place-items: center; border: 1px dashed var(--linie-tare); font-size: 10px; color: var(--text-slab); }
.bdc-planifica .punct-glob {
  display: flex; flex-direction: column; align-items: center; gap: 2px;
  transform: translate(-50%, calc(-100% - 6px)); pointer-events: none; transition: opacity .3s;
}
.bdc-planifica .punct-glob .eticheta-glob { transform: none; }
.bdc-planifica .punct-glob .vr { zoom: 1.3; }
.bdc-planifica .ascuns-glob { opacity: 0; }
.bdc-planifica .vr { position: relative; display: block; width: 64px; height: 52px; }
.bdc-planifica .vr b, .bdc-planifica .vr i, .bdc-planifica .vr em { position: absolute; display: block; }
.bdc-planifica .vr .soare {
  left: 21px; top: 14px; width: 22px; height: 22px; border-radius: 50%;
  background: radial-gradient(circle at 40% 40%, #FFF1C9, #F2BE5C 55%, #E0A44A);
  box-shadow: 0 0 10px 3px rgba(242, 190, 92, .55), 0 0 26px 8px rgba(224, 164, 74, .25);
  animation: puls-soare 3.2s ease-in-out infinite;
}
.bdc-planifica .vr .soare::before {
  content: ""; position: absolute; inset: -9px; border-radius: 50%;
  background: repeating-conic-gradient(rgba(242, 190, 92, .75) 0 6deg, transparent 6deg 30deg);
  -webkit-mask: radial-gradient(circle, transparent 13px, #000 14px, #000 19px, transparent 20px);
  mask: radial-gradient(circle, transparent 13px, #000 14px, #000 19px, transparent 20px);
  animation: roteste 24s linear infinite;
}
@keyframes puls-soare { 50% { box-shadow: 0 0 14px 5px rgba(242, 190, 92, .7), 0 0 34px 12px rgba(224, 164, 74, .32); } }
@keyframes roteste { to { transform: rotate(360deg); } }
.bdc-planifica .vr .luna {
  left: 23px; top: 14px; width: 20px; height: 20px; border-radius: 50%;
  box-shadow: inset -6px 3px 0 0 #E8E2D0; transform: rotate(-20deg);
  filter: drop-shadow(0 0 6px rgba(232, 226, 208, .55));
  animation: puls-luna 4s ease-in-out infinite;
}
@keyframes puls-luna { 50% { filter: drop-shadow(0 0 10px rgba(232, 226, 208, .8)); } }
.bdc-planifica .vr .nor {
  left: 16px; top: 24px; width: 32px; height: 12px; border-radius: 12px; background: #E6ECEE;
  box-shadow: 0 2px 6px rgba(0, 0, 0, .35); animation: pluteste 6s ease-in-out infinite alternate;
}
.bdc-planifica .vr .nor::before, .bdc-planifica .vr .nor::after { content: ""; position: absolute; border-radius: 50%; background: inherit; }
.bdc-planifica .vr .nor::before { left: 5px; top: -7px; width: 14px; height: 14px; }
.bdc-planifica .vr .nor::after { left: 13px; top: -11px; width: 18px; height: 18px; }
.bdc-planifica .vr .nor.n2 { left: 30px; top: 14px; transform: scale(.7); opacity: .8; animation-duration: 8s; animation-direction: alternate-reverse; }
@keyframes pluteste { from { translate: -4px 0; } to { translate: 4px 0; } }
.bdc-planifica .vr-ploaie .nor { background: #B7C3CB; }
.bdc-planifica .vr-furtuna .nor { background: #7E8B95; }
.bdc-planifica .vr-ninsoare .nor { background: #F1F4F5; }
.bdc-planifica .vr .picatura {
  top: 37px; width: 1.6px; height: 7px; border-radius: 1px; background: #A8CBFF;
  animation: cade .9s linear infinite;
}
.bdc-planifica .vr .picatura:nth-of-type(1) { left: 20px; animation-delay: -.1s; }
.bdc-planifica .vr .picatura:nth-of-type(2) { left: 26px; animation-delay: -.55s; }
.bdc-planifica .vr .picatura:nth-of-type(3) { left: 32px; animation-delay: -.3s; }
.bdc-planifica .vr .picatura:nth-of-type(4) { left: 38px; animation-delay: -.75s; }
.bdc-planifica .vr .picatura:nth-of-type(5) { left: 44px; animation-delay: -.2s; }
@keyframes cade { from { translate: 0 -2px; opacity: .95; } to { translate: -2px 12px; opacity: 0; } }
.bdc-planifica .vr .fulger {
  left: 29px; top: 33px; width: 9px; height: 15px; background: #F6D26B;
  clip-path: polygon(45% 0, 100% 0, 62% 42%, 100% 42%, 20% 100%, 42% 52%, 0 52%);
  opacity: 0; animation: fulgera 3.4s steps(1) infinite;
}
@keyframes fulgera { 0%, 88%, 94%, 100% { opacity: 0; } 90%, 96% { opacity: 1; } }
.bdc-planifica .vr .alerta {
  right: 2px; top: 2px; width: 15px; height: 13px; background: var(--accent); color: var(--pe-accent);
  clip-path: polygon(50% 0, 100% 100%, 0 100%); font: 700 9px/15px var(--mono); font-style: normal; text-align: center;
}
.bdc-planifica .vr .fulg {
  top: 36px; width: 3.5px; height: 3.5px; border-radius: 50%; background: #FFFFFF;
  box-shadow: 0 0 3px rgba(255, 255, 255, .8); animation: ninge 3.2s linear infinite;
}
.bdc-planifica .vr .fulg:nth-of-type(1) { left: 19px; animation-delay: -.4s; }
.bdc-planifica .vr .fulg:nth-of-type(2) { left: 25px; animation-delay: -2.1s; }
.bdc-planifica .vr .fulg:nth-of-type(3) { left: 31px; animation-delay: -1.2s; }
.bdc-planifica .vr .fulg:nth-of-type(4) { left: 37px; animation-delay: -2.8s; }
.bdc-planifica .vr .fulg:nth-of-type(5) { left: 43px; animation-delay: -.9s; }
.bdc-planifica .vr .fulg:nth-of-type(6) { left: 28px; animation-delay: -1.7s; top: 40px; }
@keyframes ninge {
  0% { translate: 0 -2px; opacity: 0; }
  15% { opacity: 1; }
  50% { translate: 3px 6px; }
  100% { translate: -2px 14px; opacity: 0; }
}
.bdc-planifica .vr-vant .nor { animation: sufla 2.4s linear infinite; }
.bdc-planifica .vr-vant .nor.n2 { animation-duration: 3.1s; animation-delay: -1.2s; animation-direction: normal; }
@keyframes sufla {
  0% { translate: -12px 0; opacity: 0; }
  20%, 70% { opacity: 1; }
  100% { translate: 14px 0; opacity: 0; }
}
.bdc-planifica .vr .dara {
  height: 1.5px; border-radius: 1px; background: linear-gradient(90deg, transparent, rgba(239, 233, 220, .85));
  animation: dara 1.6s linear infinite;
}
.bdc-planifica .vr .dara:nth-of-type(1) { left: 8px; top: 38px; width: 20px; }
.bdc-planifica .vr .dara:nth-of-type(2) { left: 22px; top: 44px; width: 26px; animation-delay: -.6s; }
.bdc-planifica .vr .dara:nth-of-type(3) { left: 14px; top: 10px; width: 16px; animation-delay: -1.1s; }
@keyframes dara { from { translate: -10px 0; opacity: 0; } 40% { opacity: 1; } to { translate: 16px 0; opacity: 0; } }
/* ---------- cazare: lista și etichetele de preț ---------- */
.bdc-planifica .marcaj-loc {
  font: 600 11px var(--mono); letter-spacing: .1em; padding: 4px 8px;
  background: var(--accent); color: var(--pe-accent); box-shadow: 0 4px 12px rgba(0, 0, 0, .5);
}
.bdc-planifica .maplibregl-ctrl-attrib { font: 10px var(--mono) !important; }
.bdc-planifica .maplibregl-ctrl-attrib.maplibregl-compact { background: rgba(13, 21, 18, .8) !important; color: var(--text-sec) !important; }
.bdc-planifica .maplibregl-ctrl-attrib a { color: var(--text-sec) !important; }
.bdc-planifica .maplibregl-ctrl-group { background: var(--panou-plin) !important; border-radius: 0 !important; }
.bdc-planifica .maplibregl-ctrl-group button + button { border-top-color: var(--linie) !important; }
.bdc-planifica .maplibregl-ctrl-group button .maplibregl-ctrl-icon { filter: invert(.9); }
.bdc-planifica .harta .maplibregl-ctrl-top-left { top: var(--sub-cautare, 190px); left: calc(var(--gutter) - 10px); }
/* ---------- transfer ---------- */
.bdc-planifica .formular { display: grid; gap: 10px; }
.bdc-planifica .formular label { display: grid; gap: 4px; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--text-slab); }
.bdc-planifica .formular input:not([type="radio"]):not([type="checkbox"]), .bdc-planifica .formular select, .bdc-planifica .formular textarea {
  width: 100%; min-height: 38px; padding: 8px 10px; border: 1px solid var(--linie-tare); border-radius: 0;
  background: rgba(239, 233, 220, .04); font-size: 13px; letter-spacing: 0; text-transform: none;
}
.bdc-planifica .formular textarea { resize: vertical; }
.bdc-planifica .formular select option { background: var(--panou-plin); }
.bdc-planifica .formular :is(input, .bdc-planifica select, .bdc-planifica textarea):focus { outline: none; border-color: var(--accent); }
.bdc-planifica .formular .doua { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.bdc-planifica .vehicul { border: 0; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.bdc-planifica .vehicul legend { margin-bottom: 6px; }
.bdc-planifica .vehicul label {
  display: grid; gap: 2px; padding: 8px; border: 1px solid var(--linie-tare); cursor: pointer;
  font-size: 12px; letter-spacing: 0; text-transform: none; color: var(--text);
}
.bdc-planifica .vehicul label small { font-size: 10px; color: var(--text-slab); }
.bdc-planifica .vehicul input { position: absolute; opacity: 0; pointer-events: none; }
.bdc-planifica .vehicul label:has(input:checked) { border-color: var(--accent); background: var(--accent-slab); }
.bdc-planifica .vehicul label:has(input:focus-visible) { outline: 2px solid var(--accent); }
.bdc-planifica .formular .acord { display: flex; gap: 8px; align-items: flex-start; font-size: 11.5px; letter-spacing: 0; text-transform: none; color: var(--text-sec); }
.bdc-planifica .formular .acord input { accent-color: var(--accent); margin-top: 2px; }
.bdc-planifica .formular .invalid { border-color: var(--creste) !important; }
/* ---------- rezultatele de sub scenă ---------- */
@keyframes puls { 50% { opacity: .25; } }
/* subsolul: același ca în tema BDC (patterns/subsol.php, assets/bdc.css), cu fonturile site-ului principal */
/* abonarea */
/* datele firmei */
/* fâșia chihlimbar */
.bdc-planifica .toast {
  position: fixed; z-index: 60; left: 50%; bottom: calc(22px + env(safe-area-inset-bottom, 0px));
  transform: translate(-50%, 12px); opacity: 0; pointer-events: none; transition: opacity .25s, transform .25s;
  max-width: min(440px, calc(100% - 32px)); padding: 12px 16px; text-align: center;
  background: var(--panou-plin); border: 1px solid var(--accent); font-size: 12.5px;
}
.bdc-planifica .toast.vizibil { opacity: 1; transform: translate(-50%, 0); }
/* ---------- ecrane medii ---------- */
@media (max-width: 1280px) {
  .bdc-planifica .loc { width: 150px; }
  .bdc-planifica .data { width: 132px; }
}
@media (max-width: 1100px) {
  .bdc-planifica .plutitor.stanga { display: none; }
  .bdc-planifica .clasa { width: 130px; }
  .bdc-planifica .cauta { margin-left: 0; }
}
/* ---------- telefon și tabletă îngustă ---------- */
@media (max-width: 860px) {
  .bdc-planifica { --bara: 54px; --gutter: 16px; }
  .bdc-planifica .scena { height: auto; overflow: visible; display: flex; flex-direction: column; background: var(--fundal); }
  .bdc-planifica .fereastra { position: relative; inset: auto; order: 2; height: 46svh; min-height: 280px; max-height: 460px; margin-top: 12px; }
  .bdc-planifica .fara-3d-nota { bottom: 12px; }
  .bdc-planifica .cautare { position: relative; order: 1; top: auto; left: auto; right: auto; margin: 12px 16px 0; background: var(--panou-plin); }
  .bdc-planifica .rezumat {
    display: flex; width: 100%; align-items: center; gap: 10px; padding: 12px 14px;
    background: none; border: 0; cursor: pointer; text-align: left;
  }
  .bdc-planifica .rezumat-text { flex: 1; font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .bdc-planifica .rezumat-buton { font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--accent); }
  .bdc-planifica .cautare:not(.deschisa) .campuri { display: none; }
  .bdc-planifica .cautare.deschisa .rezumat { border-bottom: 1px solid var(--linie); }
  .bdc-planifica .fila { flex: 1; padding: 12px 6px; }
  .bdc-planifica .panou-fila { padding: 12px 14px 14px; }
  .bdc-planifica .escale { margin-left: 0; }
  .bdc-planifica .rand-campuri { display: grid; grid-template-columns: 1fr 1fr; }
  .bdc-planifica .rand-campuri .loc, .bdc-planifica .rand-campuri .cauta { grid-column: 1 / -1; }
  .bdc-planifica .loc, .bdc-planifica .loc.lat, .bdc-planifica .data, .bdc-planifica .ora, .bdc-planifica .pasageri, .bdc-planifica .clasa { width: auto; }
  .bdc-planifica .inverseaza { display: none; }
  .bdc-planifica .cauta { width: 100%; height: 44px; }
  .bdc-planifica .camp input, .bdc-planifica .camp select, .bdc-planifica .control { height: 42px; font-size: 16px; }
  .bdc-planifica .sugestii { right: 0; }
  .bdc-planifica .plutitor, .bdc-planifica .plutitor.dreapta {
    position: relative; order: 3; top: auto; bottom: auto; left: auto; right: auto;
    width: auto !important; max-height: none; overflow: visible; margin: 0 16px;
    background: var(--panou-plin); backdrop-filter: none;
  }
  .bdc-planifica .plutitor.dreapta { padding: 16px; }
  .bdc-planifica .oras { font-size: 32px; }
  .bdc-planifica .linie-stare { position: relative; order: 2; background: none; padding: 10px 16px; border-top: 0; font-size: 10.5px; }
  .bdc-planifica .harta .maplibregl-ctrl-top-left { top: 0; left: 0; }
  .bdc-planifica .punct-glob .vr { zoom: .9; }
  .bdc-planifica .transport { left: 8px; bottom: 8px; max-width: calc(100% - 16px); padding: 5px 6px; gap: 4px; }
  .bdc-planifica .transport-titlu { display: none; }
  .bdc-planifica .transport button { font-size: 11.5px; padding: 3px 7px 3px 3px; }
  .bdc-planifica .calendar { width: min(300px, calc(100vw - 32px)); }
  .bdc-planifica .fila { font-size: 12px; letter-spacing: .1em; }
  .bdc-planifica .buton-harta { bottom: 12px; font-size: 11.5px; padding: 10px 12px; }
  .bdc-planifica #btnGlob { right: 8px; bottom: auto; top: 8px; }
  .bdc-planifica .formular .doua { grid-template-columns: 1fr; }
}
@media (max-width: 400px) {
  .bdc-planifica .vehicul { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .bdc-planifica *, .bdc-planifica *::before, .bdc-planifica *::after { transition-duration: .01ms !important; animation: none !important; }
  .bdc-planifica .vr .fulger { opacity: 1; }
  .bdc-planifica .avion { filter: none; }
}
/* ---------- modul „Oriunde” ---------- */
/* ce se vede în mod „Oriunde” */
.bdc-planifica #fisa) { display: none; }
/* prețurile de pe glob, care se pot atinge */
/* prețurile acoperite de altele: puncte care se pot atinge */
.bdc-planifica .punct-glob:has(.punct) { transform: translate(-50%, -50%); }
/* cursorul de zile nu e un câmp obișnuit */
/* ---------- revizia 4.1: „Oriunde” mai mic și auriu, panouri opace, „Mai multe” ---------- */
/* butonul „Oriunde”: circa 60% mai mic, auriu, cu o lumină care trece peste el */
/* panourile de pe scenă: opace, ca să nu se vadă prin ele etichetele globului,
   și același chenar auriu subțire, stânga și dreapta */
.bdc-planifica .plutitor {
  background: rgba(15, 25, 21, .97) !important;
  backdrop-filter: none !important;
  border-color: rgba(245, 196, 81, .42) !important;
}
/* „Mai multe”, sub liste */
/* revizia 4.2: „Oriunde” rotund — globul în mijloc, scrisul mic dedesubt, auriu cu lumină */
/* revizia 4.3: ca în schița agenției — un cerc mic, doar cuvântul „Oriunde”, fără glob */
/* ======================================================================
   revizia 4.4, 19 septembrie — după observațiile agenției
   ====================================================================== */
/* avionul, cu un sfert mai mic (era 32 px) */
.bdc-planifica .avion { width: 24px; height: 24px; filter: drop-shadow(0 0 5px rgba(245, 196, 81, .85)) drop-shadow(0 2px 3px rgba(0, 0, 0, .6)); }
/* steluța de pe arcele albe: miez alb, raze fine în cruce, o coadă scurtă în urmă.
   Elementul e rotit în sensul mersului: +x e direcția, coada stă spre -x. */
.bdc-planifica .stea-ruta {
  position: absolute; left: 0; top: 0; z-index: 4; width: 0; height: 0;
  pointer-events: none; will-change: transform, opacity;
}
.bdc-planifica .stea-ruta .miez {
  position: absolute; left: -2px; top: -2px; width: 4px; height: 4px; border-radius: 50%;
  background: #FFFFFF;
  box-shadow: 0 0 3px 1px rgba(255, 255, 255, .95), 0 0 9px 3px rgba(214, 232, 255, .5), 0 0 16px 5px rgba(255, 255, 255, .16);
  animation: sclipire 2.4s ease-in-out infinite;
}
.bdc-planifica .stea-ruta .miez::before, .bdc-planifica .stea-ruta .miez::after {
  content: ""; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
}
.bdc-planifica .stea-ruta .miez::before { width: 15px; height: 1px; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .95), transparent); }
.bdc-planifica .stea-ruta .miez::after { width: 1px; height: 15px; background: linear-gradient(180deg, transparent, rgba(255, 255, 255, .95), transparent); }
.bdc-planifica .stea-ruta .coada {
  position: absolute; right: 0; top: -.75px; width: 22px; height: 1.5px; border-radius: 1px;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, .55));
}
@keyframes sclipire {
  0%, 100% { transform: scale(.8); opacity: .8; }
  50% { transform: scale(1.18); opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .bdc-planifica .stea-ruta { display: none; }
}
/* Bara de căutare și panourile din stânga și din dreapta: fără contur, translucide.
   DOAR pe fila Zbor și DOAR pe ecran lat.
   - Pe Cazare și Transfer, sub panouri e harta orașului, deschisă la culoare:
     translucența n-ar aduce nimic și ar strica citirea. Acolo rămân opace, cu
     chenarul auriu din revizia 4.1. Decizia agenției, 19 septembrie.
   - Pe telefon, bara și panourile nu stau peste glob, ci una sub alta.
   Revizia 4.1 le făcuse opace (.97) ca etichetele globului să nu se amestece cu
   textul panoului. Aici sunt cu vreo 25% mai translucide (.72), dar cu estompare
   puternică în spate: globul se vede prin ele, iar etichetele de dedesubt devin
   pete moi, nu text care concurează. Umbra ține marginea fără linie. */
@media (min-width: 861px) {
  .bdc-planifica .scena[data-fila="zbor"] :is(.cautare, .bdc-planifica .plutitor) {
    /* .35, după .72, .55 și .45, la cererea agenției. Estomparea urcă la 36 px, ca
       etichetele globului de dedesubt să rămână pete, nu text. Contrastul a fost
       măsurat pe fiecare text: toate trec de 4,5:1, cu nuanța de mai jos. */
    background: rgba(15, 25, 21, .35) !important;
    -webkit-backdrop-filter: blur(36px) saturate(1.2) !important;
    backdrop-filter: blur(36px) saturate(1.2) !important;
    border: 0 !important;
    box-shadow: 0 18px 44px rgba(0, 0, 0, .34);
  }
  .bdc-planifica .scena[data-fila="zbor"] :is(.cautare, .bdc-planifica .plutitor) .mic-titlu { color: var(--text-sec); }
}
/* Jos, lista de zboruri: la fel, fără contur, ca un panou. Aici nu e globul în
   spate, deci „translucid” înseamnă aceeași nuanță ca sus. Lista de hoteluri,
   de pe fila Cazare, rămâne cum era. */
/* revizia 4.7: soarele și luna de pe glob, cu 70% mai mici (era zoom 1.3).
   Doar „senin”, adică soarele și luna; norii, ploaia și ninsoarea au detalii care
   la o treime din mărime n-ar mai fi recognoscibile. În fișa din dreapta rămân cum erau. */
.bdc-planifica .punct-glob .vr-senin { zoom: .39; }
/* revizia 4.9: steluța de pe arcul galben — aceeași formă ca cele albe, în auriu */
.bdc-planifica .stea-ruta.galbena .miez {
  background: #FFF3C8;
  box-shadow: 0 0 3px 1px rgba(255, 243, 200, .95), 0 0 9px 3px rgba(245, 196, 81, .6), 0 0 16px 5px rgba(245, 196, 81, .2);
}
.bdc-planifica .stea-ruta.galbena .miez::before { background: linear-gradient(90deg, transparent, rgba(255, 233, 168, .95), transparent); }
.bdc-planifica .stea-ruta.galbena .miez::after { background: linear-gradient(180deg, transparent, rgba(255, 233, 168, .95), transparent); }
.bdc-planifica .stea-ruta.galbena .coada { background: linear-gradient(90deg, rgba(245, 196, 81, 0), rgba(245, 196, 81, .6)); }
/* revizia 4.10: avionul încă cu 10% mai mic (24 → 21,6 px) */
.bdc-planifica .avion { width: 21.6px; height: 21.6px; }

/* ======================================================================
   Pagina din WordPress, 21 septembrie 2026
   ====================================================================== */

/* Antetul temei are circa 69 px și stă lipit sus; scena ocupă restul ecranului. */
.bdc-planifica { --bara: 69px; font: 400 14px/1.5 var(--mono); }
.bdc-planifica .scena { height: clamp(640px, calc(100svh - var(--bara)), 920px); }

/* Ideile de drum: codul, orașul și țara, fără prețuri */
.bdc-planifica .rute button { grid-template-columns: 34px 1fr; row-gap: 1px; }
.bdc-planifica .ruta-tara { grid-column: 2; font-size: 11px; color: var(--text-sec); }
.bdc-planifica .rute button.cu-pret { grid-template-columns: 34px 1fr auto; }
.bdc-planifica .ruta-pret { grid-column: 3; grid-row: 1 / span 2; align-self: center; font-size: 14px; font-weight: 500; color: var(--accent); white-space: nowrap; margin-right: 10px; }
.bdc-planifica .ruta-pret small { font-size: 10.5px; font-weight: 400; color: var(--text-sec); }
.bdc-planifica .rute-mod { display: flex; gap: 6px; margin: 0 0 10px; }
.bdc-planifica .rute-mod button { padding: 5px 12px; font: inherit; font-size: 12px; color: var(--text-sec); background: transparent; border: 1px solid var(--linie); border-radius: 999px; cursor: pointer; }
.bdc-planifica .rute-mod button[aria-pressed="true"] { color: var(--accent); border-color: var(--accent); background: var(--accent-slab); }
.bdc-planifica .segmente .ap-nume { display: block; margin-top: 2px; font-size: 11.5px; color: var(--text-sec); }
.bdc-planifica .rute-nota { margin: 0 0 8px; font-size: 11px; line-height: 1.4; color: var(--text-sec); }
.bdc-planifica .rute button[aria-current="true"] { background: var(--accent-slab); }

/* Etichetele ideilor de pe glob se pot atinge */
.bdc-planifica .punct-glob.clic:hover .eticheta-glob.alt { border-color: var(--accent); color: var(--accent); }

/* Câmpurile căutării cu o greșeală, după trimiterea cererii */
.bdc-planifica .cautare [aria-invalid="true"] { border-color: #FF8A7A !important; box-shadow: 0 0 0 1px #FF8A7A; }
/* „2 adulți, 1 copil” pe un rând; la cazare, „4 oaspeți · 1 cameră” */
@media (min-width: 861px) {
  .bdc-planifica .pasageri { width: 190px; }
  .bdc-planifica #panou-cazare .pasageri { width: 226px; }
  .bdc-planifica #panou-cazare .loc.lat { width: 170px; }
  .bdc-planifica #panou-cazare .loc.punct { width: 150px; }
  .bdc-planifica #panou-cazare .loc.nume-hotel { width: 140px; }
  .bdc-planifica #panou-cazare .data { width: 122px; }
  .bdc-planifica #panou-cazare .cauta { padding: 0 18px; }
  .bdc-planifica .sugestii { min-width: 100%; }
  .bdc-planifica #panou-cazare .loc.nume-hotel .sugestii { right: auto; width: 380px; }
}
.bdc-planifica .sugestii small { white-space: nowrap; }
.bdc-planifica .sugestii .sugestie-nota { font-size: 11px; color: var(--text-slab); cursor: default; }
.bdc-planifica .pasageri .control { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bdc-planifica .camp input::placeholder { color: rgba(239, 233, 220, .5); font-weight: 400; }

/* Transferul: mașina, în panoul din dreapta */
.bdc-planifica #fisaTransfer .vehicul { margin-top: 18px; }

/* ---------- cererea, sub scenă ---------- */
.bdc-planifica .cerere-sectiune {
  max-width: 1240px; margin-inline: auto; padding: 44px var(--gutter) 64px;
  scroll-margin-top: calc(var(--bara) + 12px);
}
.bdc-planifica .cerere-cap { display: grid; gap: 8px; margin-bottom: 18px; max-width: 78ch; }
.bdc-planifica .cerere-cap .titlu-sectiune { font-size: 28px; }
.bdc-planifica .cerere-rezumat {
  font: 600 15px/1.45 var(--mono); color: var(--auriu);
  padding: 10px 14px; border-left: 2px solid var(--accent); background: var(--accent-slab);
}
.bdc-planifica .cerere-cap .fisa-mic { font-size: 13px; }
.bdc-planifica .cerere-cap .fisa-mic b { color: var(--text); font-weight: 600; }
.bdc-planifica .cerere-cap a { color: var(--accent); }

.bdc-planifica .cerere-grila {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px;
  background: var(--linie); border: 1px solid var(--linie);
}
.bdc-planifica .cerere-grila > .cerere-lat,
.bdc-planifica .cerere-grila > .cerere-transfer,
.bdc-planifica .cerere-grila > .cerere-varste { grid-column: 1 / -1; }
.bdc-planifica .cerere-transfer { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; }
.bdc-planifica .cerere-grila [hidden] { display: none; }
.bdc-planifica .cerere-form .bdc-c-f { background: #101A16; padding: 11px 14px 10px; min-width: 0; }
.bdc-planifica .cerere-form .bdc-c-f > label {
  display: block; margin-bottom: 6px;
  font: 600 10.5px/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--eticheta);
}
.bdc-planifica .cerere-form .bdc-c-f :is(input, select, textarea) {
  width: 100%; background: transparent; border: 0; padding: 3px 0; border-radius: 0;
  font: 500 15px/1.35 var(--mono); color: #FFFFFF; color-scheme: dark;
}
.bdc-planifica .cerere-form .bdc-c-f textarea { resize: vertical; min-height: 62px; }
.bdc-planifica .cerere-form .bdc-c-f select option { background: var(--panou-plin); }
.bdc-planifica .cerere-form .bdc-c-f :is(input, textarea)::placeholder { color: rgba(239, 233, 220, .45); font-weight: 400; }
.bdc-planifica .cerere-form .bdc-c-f :is(input, select, textarea):focus { outline: none; }
.bdc-planifica .cerere-form .bdc-c-f:focus-within { box-shadow: inset 0 -2px 0 var(--accent); }
.bdc-planifica .cerere-form .bdc-c-f [aria-invalid="true"] { color: #FF8A7A; }
.bdc-planifica .bdc-c-eroare { margin: 5px 0 0; font-size: 12px; line-height: 1.35; color: #FF8A7A; }
.bdc-planifica .bdc-f-capcana { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }

.bdc-planifica .cerere-jos { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; margin-top: 14px; }
/* acordul e tot un .bdc-c-f (pentru eroare), dar nu arată ca un câmp */
.bdc-planifica .cerere-jos .acord.bdc-c-f { flex: 1 1 320px; background: none; padding: 0; box-shadow: none; }
.bdc-planifica .cerere-jos .acord.bdc-c-f > label {
  display: flex; gap: 9px; align-items: flex-start; margin: 0; cursor: pointer;
  font: 400 12.5px/1.5 var(--mono); letter-spacing: 0; text-transform: none; color: var(--text-sec);
}
.bdc-planifica .cerere-jos .acord input { width: 15px; height: 15px; flex: none; margin: 2px 0 0; accent-color: var(--accent); }
.bdc-planifica .cerere-jos .acord a { color: var(--accent); }
.bdc-planifica .cerere-trimite { flex: none; min-height: 46px; padding: 12px 34px; font-size: 12px; }
.bdc-planifica .cerere-trimite:disabled { opacity: .6; cursor: wait; }

.bdc-planifica .cerere-stare p { margin: 0 0 14px; padding: 13px 16px; font-size: 14px; line-height: 1.5; }
.bdc-planifica .cerere-stare .bine { background: rgba(134, 185, 164, .14); border-left: 3px solid var(--jad); color: var(--text); }
.bdc-planifica .cerere-stare .rau { background: rgba(255, 138, 122, .1); border-left: 3px solid #FF8A7A; color: var(--text); }

@media (max-width: 1100px) {
  .bdc-planifica .cerere-grila { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
  .bdc-planifica { --bara: 60px; }
  .bdc-planifica .scena { height: auto; }
  .bdc-planifica .pasageri { grid-column: 1 / -1; }
  .bdc-planifica .pasageri .pop { position: relative; top: auto; width: auto; margin-top: 6px; box-shadow: none; }
  .bdc-planifica .pas button { width: 36px; height: 36px; }
  .bdc-planifica .pop-copil { padding: 6px 4px 6px 12px; }
  .bdc-planifica .pop-copil select { height: 40px; font-size: 16px; }
  .bdc-planifica .pop-copil button { width: 40px; height: 40px; }
  .bdc-planifica .pop-adauga-btn, .bdc-planifica .pop-gata { height: 44px; }
  .bdc-planifica .pop-varste button { padding: 11px 12px; font-size: 15px; }
  .bdc-planifica .cerere-sectiune { padding: 32px 16px 48px; }
  .bdc-planifica .cerere-cap .titlu-sectiune { font-size: 24px; }
}
@media (max-width: 560px) {
  .bdc-planifica .cerere-grila, .bdc-planifica .cerere-transfer { grid-template-columns: minmax(0, 1fr); }
  .bdc-planifica .cerere-trimite { width: 100%; }
}

/* ======================================================================
   Cazarea: hotelurile găsite, 21 septembrie 2026
   ====================================================================== */
.bdc-planifica .caz-rezultat { margin-top: 14px; border-top: 1px solid var(--linie); }
.bdc-planifica .caz-stare { display: flex; align-items: center; gap: 9px; padding: 12px 0 10px; font-size: 13px; color: var(--eticheta); }
.bdc-planifica .caz-stare .puls { width: 7px; height: 7px; border-radius: 50%; background: var(--accent); animation: puls 1s ease-in-out infinite; }
@keyframes puls { 50% { opacity: .25; } }
.bdc-planifica .caz-rezultat.vechi .hoteluri { opacity: .45; }
.bdc-planifica .caz-rezultat.vechi .caz-stare { color: var(--auriu); }
.bdc-planifica #fisaCazare .hoteluri { margin: 0 -18px; }

.bdc-planifica .hoteluri li { border-top: 1px solid var(--linie); }
.bdc-planifica .hotel {
  width: 100%; display: grid; grid-template-columns: 64px 1fr auto; gap: 12px; align-items: start;
  padding: 12px 18px; background: none; border: 0; text-align: left; cursor: pointer; color: var(--text);
}
.bdc-planifica .hotel:hover, .bdc-planifica .hotel[aria-current="true"] { background: var(--accent-slab); }
.bdc-planifica .hotel[aria-current="true"] { box-shadow: inset 3px 0 0 var(--accent); }
.bdc-planifica .hotel-poza { width: 64px; height: 64px; object-fit: cover; display: block; background: #1d2a24; }
.bdc-planifica .hotel-poza.gol { background: repeating-linear-gradient(135deg, #1a2621 0 6px, #16211c 6px 12px); }
.bdc-planifica .hotel-text { min-width: 0; }
.bdc-planifica .hotel-nume, .bdc-planifica .hotel-zona { display: block; }
.bdc-planifica .hotel-nume { font: 500 15px/1.25 var(--serif); }
.bdc-planifica .hotel-zona { font-size: 11px; color: var(--text-sec); margin-top: 3px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bdc-planifica .hotel-detalii { display: flex; flex-wrap: wrap; gap: 3px 10px; margin-top: 6px; font-size: 11px; color: var(--text-sec); }
.bdc-planifica .hotel-detalii .bun { color: var(--jad); }
.bdc-planifica .stele-hotel { color: var(--accent); letter-spacing: .08em; }
.bdc-planifica .hotel-pret { text-align: right; font: 400 21px/1 var(--serif); font-variant-numeric: tabular-nums; white-space: nowrap; }
.bdc-planifica .hotel-pret small { display: block; font: 10.5px/1.4 var(--mono); color: var(--text-sec); margin-top: 4px; }
.bdc-planifica .hotel-pret .taxe { color: var(--auriu); white-space: normal; max-width: 120px; margin-left: auto; }

/* restul, sub hartă */
.bdc-planifica .hoteluri-sectiune { max-width: 1240px; margin-inline: auto; padding: 40px var(--gutter) 0; }
.bdc-planifica .hoteluri.jos { border: 1px solid var(--linie); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); background: rgba(22, 34, 29, .6); }
.bdc-planifica .hoteluri.jos li:nth-child(odd) { border-right: 1px solid var(--linie); }
.bdc-planifica .hoteluri.jos li:nth-child(-n+2) { border-top: 0; }
.bdc-planifica .hoteluri.jos .hotel { grid-template-columns: 96px 1fr auto; padding: 16px 18px; }
.bdc-planifica .hoteluri.jos .hotel-poza { width: 96px; height: 72px; }
.bdc-planifica .hoteluri.jos .hotel-nume { font-size: 17px; }
.bdc-planifica .buton-mai-multe {
  display: block; margin: 16px auto 0; padding: 12px 26px; cursor: pointer;
  background: none; border: 1px solid rgba(245, 196, 81, .6); color: var(--eticheta);
  font: 600 13px var(--mono); letter-spacing: .02em;
}
.bdc-planifica .buton-mai-multe:hover { background: var(--accent-slab); border-color: var(--accent); color: #FFFFFF; }

/* prețurile de pe hartă.
   Harta le așază singură, cu position: absolute și transform (clasa maplibregl-marker). Aici nu
   se atinge nici position, nici transform: până pe 23 septembrie, un „position: relative” le
   punea unul sub altul, iar fiecare preț apărea mai jos decât hotelul lui, cu atât mai mult cu
   cât erau mai multe pe hartă; o tranziție pe transform le făcea să rămână în urma hărții la
   mișcare. Mărirea la hover merge pe proprietatea „scale”, care nu se bate cu transform-ul hărții. */
.bdc-planifica .marcaj-pret {
  display: block; cursor: pointer; border: 1px solid rgba(239, 233, 220, .35);
  background: var(--panou-plin); color: var(--text); padding: 3px 7px;
  font: 500 12px var(--mono); font-variant-numeric: tabular-nums; white-space: nowrap;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .35);
  transition: scale .15s ease, background .15s ease;
}
.bdc-planifica .marcaj-pret::after {
  content: ""; position: absolute; left: 50%; bottom: -5px; width: 8px; height: 8px;
  background: inherit; border-right: inherit; border-bottom: inherit; transform: translateX(-50%) rotate(45deg);
}
.bdc-planifica .marcaj-pret:hover, .bdc-planifica .marcaj-pret.activ { background: var(--accent); color: var(--pe-accent); border-color: var(--accent); scale: 1.12; z-index: 2; }

@media (max-width: 860px) {
  .bdc-planifica #fisaCazare .hoteluri { margin: 0 -16px; }
  .bdc-planifica .hotel { grid-template-columns: 52px 1fr auto; padding: 12px 16px; }
  .bdc-planifica .hotel-poza { width: 52px; height: 52px; }
  .bdc-planifica .hoteluri.jos { grid-template-columns: 1fr; }
  .bdc-planifica .hoteluri.jos li:nth-child(odd) { border-right: 0; }
  .bdc-planifica .hoteluri.jos li:nth-child(2) { border-top: 1px solid var(--linie); }
  .bdc-planifica .hoteluri.jos .hotel { grid-template-columns: 64px 1fr auto; padding: 12px 16px; }
  .bdc-planifica .hoteluri.jos .hotel-poza { width: 64px; height: 56px; }
  .bdc-planifica .hoteluri-sectiune { padding: 32px 16px 0; }
}

/* ======================================================================
   Pagina hotelului: panou peste pagină (macheta 5, aprobată pe 23 septembrie 2026)
   ====================================================================== */
html.hd-deschis { overflow: hidden; }
.bdc-planifica .hd-fundal {
  position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; padding: var(--gutter);
  background: rgba(7, 13, 11, .72); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
}
.bdc-planifica .hd-fundal[hidden] { display: none; }
.bdc-planifica .hd {
  position: relative; width: min(880px, 100%); max-height: min(88vh, 940px); padding-bottom: 28px;
  background: var(--panou-plin); border: 1px solid var(--linie-tare); box-shadow: 0 30px 70px rgba(0, 0, 0, .5);
  overflow-y: auto; overscroll-behavior: contain; color: var(--text);
}
/* lipit sus cât se derulează panoul; marginea negativă îl pune peste galerie, fără s-o îngusteze */
.bdc-planifica .hd-inchide {
  position: sticky; top: 12px; margin: 12px 12px -48px auto; z-index: 3;
  width: 36px; height: 36px; display: grid; place-items: center; cursor: pointer; font-size: 14px;
  background: var(--panou); border: 1px solid var(--linie-tare); color: var(--text);
}
.bdc-planifica .hd-inchide:hover { border-color: var(--accent); color: var(--accent); }

.bdc-planifica .hd-galerie {
  display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 1fr 1fr; gap: 2px;
  height: 280px; margin-bottom: 20px; background: #1d2a24;
}
.bdc-planifica .hd-galerie img { width: 100%; height: 100%; object-fit: cover; display: block; min-width: 0; min-height: 0; }
.bdc-planifica .hd-galerie img:first-child { grid-row: 1 / 3; }
.bdc-planifica .hd-galerie img:only-child { grid-column: 1 / -1; }
.bdc-planifica .hd-galerie[hidden] { display: none; }

.bdc-planifica .hd-cap { padding: 18px 28px 18px; border-bottom: 1px solid var(--linie); margin-bottom: 20px; }
.bdc-planifica .hd-nume { font: 500 26px/1.2 var(--serif); margin: 0 0 6px; }
.bdc-planifica .hd-zona { font-size: 12.5px; color: var(--text-sec); margin: 0; }

.bdc-planifica .hd-rand { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; padding: 0 28px; margin-bottom: 26px; }
.bdc-planifica .hd-rand [hidden] { display: none; }
.bdc-planifica .hd-bloc .mic-titlu { margin: 0 0 10px; }
.bdc-planifica .hd-descriere h4 { font: 600 11px/1.4 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--text-slab); margin: 12px 0 4px; }
.bdc-planifica .hd-descriere p { font-size: 13px; line-height: 1.6; color: var(--text-sec); margin: 0 0 8px; }
.bdc-planifica .hd-dotari { list-style: none; margin: 12px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 8px; }
.bdc-planifica .hd-dotari li { font-size: 11px; color: var(--text-sec); border: 1px solid var(--linie-tare); padding: 4px 9px; }
.bdc-planifica .hd-info { margin: 0 0 12px; display: grid; gap: 8px; }
.bdc-planifica .hd-info > div { display: flex; justify-content: space-between; gap: 12px; font-size: 12.5px; }
.bdc-planifica .hd-info dt { color: var(--text-slab); }
.bdc-planifica .hd-info dd { margin: 0; text-align: right; color: var(--text-sec); }
.bdc-planifica .hd-reguli { margin: 0 0 12px; padding-left: 16px; font-size: 12px; line-height: 1.55; color: var(--text-sec); }
.bdc-planifica .hd-extra summary { cursor: pointer; font-size: 12px; color: var(--accent); }
.bdc-planifica .hd-extra > div { margin-top: 8px; font-size: 12px; line-height: 1.55; color: var(--text-sec); }
.bdc-planifica .hd-extra ul { padding-left: 16px; }

.bdc-planifica .hd-tarife-bloc { padding: 0 28px; }
.bdc-planifica .hd-tarife-bloc .buton { margin: 0 0 12px; }
.bdc-planifica .hd-tarife { list-style: none; margin: 0 0 12px; padding: 0; display: grid; gap: 10px; }
.bdc-planifica .hd-tarif {
  border: 1px solid var(--linie-tare); padding: 14px 16px;
  display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 6px 16px; align-items: start;
}
.bdc-planifica .hd-tarif.ales { border-color: var(--accent); background: var(--accent-slab); }
.bdc-planifica .hd-tarif-poza { width: 96px; height: 60px; object-fit: cover; display: block; background: #1d2a24; }
.bdc-planifica .hd-tarif-text { grid-column: 2; min-width: 0; }
.bdc-planifica .hd-tarif:not(:has(.hd-tarif-poza)) .hd-tarif-text { grid-column: 1 / 3; }
.bdc-planifica .hd-tarif-camera { display: block; font: 500 15px/1.3 var(--serif); }
.bdc-planifica .hd-tarif-detalii { display: flex; flex-wrap: wrap; gap: 4px 12px; margin-top: 4px; font-size: 11.5px; color: var(--text-sec); }
.bdc-planifica .hd-tarif-detalii .bun, .bdc-planifica .hd-tarif-anulare .bun { color: var(--jad); }
.bdc-planifica .hd-tarif-pret { grid-column: 3; text-align: right; }
.bdc-planifica .hd-tarif-pret .pret { display: block; font: 400 22px/1 var(--serif); font-variant-numeric: tabular-nums; white-space: nowrap; }
.bdc-planifica .hd-tarif-pret small { display: block; font: 10.5px/1.4 var(--mono); color: var(--text-slab); margin-top: 4px; }
.bdc-planifica .hd-tarif-buton {
  display: inline-block; margin-top: 8px; padding: 8px 14px; border: 0; cursor: pointer; white-space: nowrap;
  background: var(--accent); color: var(--pe-accent); font: 600 11px var(--mono); letter-spacing: .06em; text-transform: uppercase;
}
.bdc-planifica .hd-tarif-buton:hover { background: #EAB564; }
.bdc-planifica .hd-tarif-anulare {
  grid-column: 1 / -1; list-style: none; margin: 4px 0 0; padding: 8px 0 0; border-top: 1px solid var(--linie);
  display: grid; gap: 2px; font-size: 11.5px; color: var(--text-slab);
}

@media (max-width: 860px) {
  .bdc-planifica .hd-fundal { padding: 0; }
  .bdc-planifica .hd { width: 100%; height: 100%; max-height: 100%; border: 0; }
  .bdc-planifica .hd-galerie { height: 200px; grid-template-columns: 2fr 1fr; }
  .bdc-planifica .hd-galerie img:nth-child(n+4) { display: none; }
  .bdc-planifica .hd-cap, .bdc-planifica .hd-rand, .bdc-planifica .hd-tarife-bloc { padding-inline: 16px; }
  .bdc-planifica .hd-rand { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .bdc-planifica .hd-tarif { grid-template-columns: minmax(0, 1fr); }
  .bdc-planifica .hd-tarif-poza { width: 100%; height: 120px; }
  .bdc-planifica .hd-tarif-text, .bdc-planifica .hd-tarif:not(:has(.hd-tarif-poza)) .hd-tarif-text,
  .bdc-planifica .hd-tarif-pret { grid-column: 1; text-align: left; }
}

/* ======================================================================
   Cazarea: „Lângă” (punct de interes) și bifa „zona de pe hartă”, 23 septembrie 2026
   ====================================================================== */
.bdc-planifica #panou-cazare .loc.lat { width: 200px; }
.bdc-planifica .loc.punct { width: 210px; }
.bdc-planifica .loc.punct input::placeholder { font-weight: 400; }
.bdc-planifica .sugestii .sugestie-nota { cursor: default; font-size: 11px; color: var(--text-slab); }
.bdc-planifica .sugestii .sugestie-nota:hover { background: none; }

/* sus, lângă butoanele + / − ale hărții: acolo nu mai stă nimic, la nicio lățime (jos, pe lângă
   „Transport”, se suprapunea când ecranul se îngusta) */
.bdc-planifica .zona-harta {
  position: absolute; z-index: 12; top: calc(var(--sub-cautare, 190px) + 10px); left: calc(var(--gutter) + 38px);
  display: flex; align-items: center; gap: 8px; padding: 7px 12px; cursor: pointer; white-space: nowrap;
  background: var(--panou-plin); border: 1px solid var(--accent); color: #FFFFFF;
  font: 600 12.5px var(--mono); letter-spacing: .04em; box-shadow: 0 10px 26px rgba(0, 0, 0, .45);
}
.bdc-planifica .zona-harta[hidden] { display: none; }
.bdc-planifica .zona-harta input { width: 16px; height: 16px; margin: 0; accent-color: var(--accent); cursor: pointer; }
.bdc-planifica .zona-harta:has(input:checked) { background: var(--accent); color: var(--pe-accent); }
.bdc-planifica .zona-harta:has(input:focus-visible) { outline: 2px solid #FFFFFF; outline-offset: 2px; }

/* distanța până la punctul ales, pe rândul hotelului */
.bdc-planifica .hotel-distanta { display: block; margin-top: 4px; font-size: 11px; color: var(--auriu); }
/* hotelurile fără poze de la furnizor: un chenar discret în locul pozei */
.bdc-planifica .hotel-poza.gol { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; padding: 4px; color: var(--accent); background: #16211C; border: 1px solid rgba(224, 164, 74, .35); }
.bdc-planifica .hotel-poza.gol svg { width: 28px; height: 28px; }
.bdc-planifica .hotel-poza.gol small { font-size: 8.5px; line-height: 1; letter-spacing: .04em; color: var(--text-slab); }
/* punctul ales, pe hartă */
.bdc-planifica .marcaj-punct {
  padding: 5px 10px; background: #FFFFFF; color: #0D1512; border: 2px solid var(--accent);
  font: 600 11.5px var(--mono); white-space: nowrap; box-shadow: 0 6px 16px rgba(0, 0, 0, .45);
}

@media (max-width: 860px) {
  .bdc-planifica #panou-cazare .loc.lat, .bdc-planifica .loc.punct { width: auto; }
  .bdc-planifica .zona-harta { top: 10px; left: 48px; font-size: 11.5px; padding: 6px 10px; }
}
.bdc-planifica .scena:not([data-fila="cazare"]) .zona-harta { display: none; }

/* ======================================================================
   Precomanda: pasul 2 al paginii hotelului, 23 septembrie 2026
   ====================================================================== */
.bdc-planifica .hd.pas-2 :is(.hd-galerie, .hd-rand, .hd-tarife-bloc) { display: none; }
.bdc-planifica .hd-precomanda { padding: 0 28px; }
.bdc-planifica .hd-precomanda[hidden] { display: none; }
.bdc-planifica .hd-inapoi { background: none; border: 0; padding: 0; margin: 0 0 14px; color: var(--accent); cursor: pointer; font: 500 12.5px var(--mono); }
.bdc-planifica .hd-inapoi:hover { text-decoration: underline; }
.bdc-planifica .hd-pc-titlu { font: 500 22px/1.2 var(--serif); margin: 0 0 12px; }
.bdc-planifica .hd-pc-rezumat { border: 1px solid var(--linie-tare); padding: 14px 16px; margin-bottom: 4px; font-size: 12.5px; color: var(--text-sec); }
.bdc-planifica .hd-pc-rezumat p { margin: 0 0 6px; }
.bdc-planifica .hd-pc-camera { font: 500 15px/1.3 var(--serif); color: var(--text) !important; }
.bdc-planifica .hd-pc-pret { font: 400 24px/1 var(--serif); color: var(--text) !important; margin: 10px 0 !important; }
.bdc-planifica .hd-pc-pret small { font: 11px var(--mono); color: var(--text-slab); }
.bdc-planifica #hdPcStare .bun { color: var(--jad); }
.bdc-planifica .hd-pc-form { display: grid; gap: 12px; }
.bdc-planifica .hd-pc-form[hidden] { display: none; }
.bdc-planifica .hd-pc-oaspeti { border: 0; margin: 0; padding: 0; display: grid; gap: 8px; }
.bdc-planifica .hd-pc-cam { display: grid; gap: 8px; }
.bdc-planifica .hd-pc-cam-t { margin: 6px 0 0; font-size: 11.5px; color: var(--eticheta); letter-spacing: .08em; text-transform: uppercase; }
.bdc-planifica .hd-pc-oaspete { display: grid; grid-template-columns: 110px 1fr 1fr; gap: 8px; align-items: center; }
.bdc-planifica .hd-pc-oaspete .hd-pc-eroare { grid-column: 2 / -1; }
.bdc-planifica .hd-pc-cine { font-size: 12px; color: var(--text-sec); }
.bdc-planifica .hd-pc-grila { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 12px; }
.bdc-planifica .hd-pc-camp { display: grid; gap: 4px; min-width: 0; }
.bdc-planifica .hd-pc-camp > label { font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--eticheta); }
.bdc-planifica .hd-pc-camp small { font-size: 11px; color: var(--text-slab); }
.bdc-planifica .hd-pc-form :is(input:not([type="checkbox"]), textarea) {
  width: 100%; min-height: 40px; padding: 8px 10px; border: 1px solid rgba(239, 233, 220, .34); border-radius: 0;
  background: rgba(239, 233, 220, .05); color: #FFFFFF; font: 500 14px var(--mono);
}
.bdc-planifica .hd-pc-form textarea { resize: vertical; }
.bdc-planifica .hd-pc-form :is(input, textarea):focus { outline: none; border-color: var(--accent); }
.bdc-planifica .hd-pc-camp.gresit :is(input, textarea) { border-color: #FF8A7A; }
.bdc-planifica .hd-pc-eroare { margin: 0; font-size: 12px; color: #FF8A7A; }
.bdc-planifica .hd-pc-bifa { display: flex; gap: 9px; align-items: flex-start; font-size: 12.5px; color: var(--text-sec); letter-spacing: 0 !important; text-transform: none !important; cursor: pointer; }
.bdc-planifica .hd-pc-bifa input { width: 15px; height: 15px; margin: 2px 0 0; flex: none; accent-color: var(--accent); }
.bdc-planifica .hd-pc-bifa a { color: var(--accent); }
.bdc-planifica .hd-pc-sub { margin: 8px 0 0; }
.bdc-planifica .hd-pc-trimite { justify-self: start; min-height: 46px; padding: 12px 30px; }
.bdc-planifica .hd-pc-trimite:disabled { opacity: .6; cursor: wait; }
.bdc-planifica .hd-pc-gata .bine { margin: 0 0 10px; padding: 13px 16px; background: rgba(134, 185, 164, .14); border-left: 3px solid var(--jad); color: var(--text); }
.bdc-planifica .hd-pc-gata p { font-size: 13.5px; color: var(--text-sec); }
@media (max-width: 860px) {
  .bdc-planifica .hd-precomanda { padding: 0 16px; }
  .bdc-planifica .hd.pas-2 { padding-top: 56px; }
  .bdc-planifica .hd-pc-oaspete { grid-template-columns: 1fr 1fr; }
  .bdc-planifica .hd-pc-cine { grid-column: 1 / -1; }
  .bdc-planifica .hd-pc-oaspete .hd-pc-eroare { grid-column: 1 / -1; }
  .bdc-planifica .hd-pc-grila { grid-template-columns: 1fr; }
  .bdc-planifica .hd-pc-trimite { justify-self: stretch; }
}

/* ============================================================
   Zborurile live (jalonul 8, 25 septembrie 2026): lista din macheta
   aprobată („Lista de zboruri de jos”), cu dus și întors în același rând,
   detaliile deschise sub rând și precomanda în panoul de peste pagină.
   ============================================================ */
.bdc-planifica .zboruri-sectiune { max-width: 1240px; margin-inline: auto; padding: 40px var(--gutter) 0; }
.bdc-planifica .zboruri-sectiune[hidden] { display: none; }
.bdc-planifica .sectiune-cap { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 16px; margin-bottom: 12px; }
.bdc-planifica .sortare { margin-left: auto; display: flex; gap: 6px; }
.bdc-planifica .cip { background: none; border: 1px solid var(--linie-tare); padding: 6px 12px; cursor: pointer; font: 11px var(--mono); letter-spacing: .08em; color: var(--text-sec); }
.bdc-planifica .cip:hover { color: var(--text); }
.bdc-planifica .cip[aria-pressed="true"] { border-color: var(--accent); color: var(--text); background: var(--accent-slab); }
.bdc-planifica .nota-sursa { font-size: 11px; color: var(--text-slab); margin: 10px 0 0; }
.bdc-planifica .zboruri { list-style: none; margin: 0; padding: 0; background: rgba(22, 34, 29, .72); box-shadow: 0 18px 44px rgba(0, 0, 0, .28); }
.bdc-planifica .zboruri:empty { display: none; }
.bdc-planifica .zboruri > li + li { border-top: 1px solid rgba(239, 233, 220, .07); }
.bdc-planifica .zbor {
  width: 100%; display: grid; align-items: center; gap: 18px;
  grid-template-columns: 150px minmax(260px, 1fr) 170px 130px;
  padding: 14px 18px; background: rgba(239, 233, 220, .015); border: 0; text-align: left; cursor: pointer; color: var(--text); font: inherit;
}
.bdc-planifica .zbor:hover { background: rgba(239, 233, 220, .045); }
.bdc-planifica .zbor:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }
.bdc-planifica .zboruri li.deschis .zbor { background: var(--accent-slab); box-shadow: inset 3px 0 0 var(--accent); }
.bdc-planifica .companie { font-size: 13px; font-weight: 500; }
.bdc-planifica .companie small { display: block; font-size: 11.5px; font-weight: 400; color: var(--text-sec); margin-top: 3px; }
.bdc-planifica .rute { display: grid; gap: 22px; }
.bdc-planifica .ore { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px; position: relative; }
.bdc-planifica .ruta-et { position: absolute; left: 0; top: -15px; font-size: 9.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--text-slab); }
.bdc-planifica .ora-mare { font: 400 21px/1 var(--serif); font-variant-numeric: tabular-nums; }
.bdc-planifica .ora-mare small { display: block; font: 10.5px var(--mono); color: var(--text-slab); margin-top: 4px; }
.bdc-planifica .ora-mare sup { font: 10px var(--mono); color: var(--accent); margin-left: 2px; }
.bdc-planifica .drum { position: relative; height: 1px; background: var(--linie-tare); }
.bdc-planifica .drum i {
  position: absolute; top: -6px; width: 13px; height: 13px; border-radius: 50%; transform: translateX(-50%);
  border: 2px solid #FFE08A;
  background: radial-gradient(circle at 32% 28%, #FFFBEA 0 12%, #F5C451 42%, #A8730F 100%);
  box-shadow: 0 0 8px rgba(245, 196, 81, .8), 0 0 16px rgba(245, 196, 81, .35);
}
.bdc-planifica .drum .durata, .bdc-planifica .drum .opriri { position: absolute; left: 50%; transform: translateX(-50%); font-size: 10.5px; white-space: nowrap; }
.bdc-planifica .drum .durata { bottom: 7px; color: var(--text-sec); }
.bdc-planifica .drum .opriri { top: 9px; color: var(--auriu); }
.bdc-planifica .drum .opriri.direct { color: var(--jad); }
.bdc-planifica .bagaje { display: grid; gap: 3px; font-size: 12px; color: var(--text-sec); }
.bdc-planifica .bagaje .nu { color: var(--text-slab); text-decoration: line-through; }
.bdc-planifica .zbor .pret { text-align: right; }
.bdc-planifica .zbor .pret b { display: block; font: 400 25px/1 var(--serif); font-variant-numeric: tabular-nums; white-space: nowrap; }
.bdc-planifica .zbor .pret small { display: block; font-size: 11px; margin-top: 5px; color: var(--text-sec); }

/* detaliile, sub rândul deschis */
.bdc-planifica .zb-detalii { padding: 6px 18px 18px 21px; display: grid; gap: 14px; background: var(--accent-slab); box-shadow: inset 3px 0 0 var(--accent); }
.bdc-planifica .zb-ruta .mic-titlu { margin: 8px 0 6px; }
.bdc-planifica .segmente { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--linie); }
.bdc-planifica .segmente li { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 16px; padding: 8px 0; border-bottom: 1px solid var(--linie); font-size: 12.5px; color: var(--text-sec); }
.bdc-planifica .segmente li b { color: var(--text); font-weight: 500; }
.bdc-planifica .segmente li.escala { color: var(--auriu); font-size: 11.5px; padding-left: 14px; }
.bdc-planifica .zb-detalii-jos { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.bdc-planifica .zb-detalii-jos .fisa-mic { margin: 0; max-width: 60ch; }
.bdc-planifica .zb .hd-precomanda { padding-top: 26px; }

@media (max-width: 1280px) {
  .bdc-planifica .zbor { grid-template-columns: 130px minmax(220px, 1fr) 150px 120px; }
}
@media (max-width: 1100px) {
  .bdc-planifica .sortare { margin-left: 0; width: 100%; }
  .bdc-planifica .zbor { grid-template-columns: 1fr auto; gap: 12px 14px; padding: 14px; }
  .bdc-planifica .zbor .rute { grid-column: 1 / -1; order: -1; padding-top: 12px; }
  .bdc-planifica .zbor .bagaje { display: none; }
  .bdc-planifica .zb-detalii { padding: 4px 14px 16px 17px; }
}
@media (max-width: 860px) {
  .bdc-planifica .zboruri-sectiune { padding: 32px 16px 0; }
  .bdc-planifica .ora-mare { font-size: 19px; }
}
/* dus-întors: loc pentru etichetele „Dus” / „Întors” deasupra orelor */
.bdc-planifica .rute.tur { padding-top: 12px; gap: 26px; }
.bdc-planifica .zb-detalii-jos .buton { width: auto; flex: none; padding-inline: 28px; }
@media (max-width: 560px) { .bdc-planifica .zb-detalii-jos .buton { width: 100%; } }
/* titlul paginii: pentru Google și cititoarele de ecran, nu pe ecran (auditul din 26 sept.) */
.bdc-planifica .ascuns-vizual { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
