/* AMTT în România: harta județelor, paginile /taxi-romania, formularul de candidatură.
   Folosește variabilele și clasele existente ale site-ului (--y, --gr2, .btn, .sec-tag, .sec-title, .inp). */
:root{--rh-activ:#3E9E68;--rh-activ-h:#4FBF7F;--rh-preg:#C9A227;--rh-preg-l:#9C7C17;--rh-inactiv:#3A3A3A;--rh-inactiv-h:#4A4A4A}

/* Hartă */
.rh{margin-top:28px}
.rh-harta{position:relative;max-width:900px;margin:0 auto}
.rh-svg{display:block;width:100%;height:auto;aspect-ratio:1012/715}
.rh-j path{stroke:var(--bk);stroke-width:1.3;stroke-linejoin:round;transition:fill .15s,filter .15s;cursor:pointer}
.rh-activ path{fill:var(--rh-activ)}
.rh-inactiv path{fill:var(--rh-inactiv)}
.rh-has-fond{fill:var(--rh-preg)}
.rh-has-linie{fill:var(--rh-preg-l)}
.rh-j:hover path,.rh-j.rh-hover path{filter:brightness(1.25)}
.rh-j:focus{outline:none}
.rh-j:focus-visible path{stroke:var(--y);stroke-width:3.5}
/* București e foarte mic: o margine transparentă lată îl face ușor de atins */
.rh-mic path{stroke:rgba(0,0,0,0);stroke-width:18;paint-order:stroke;pointer-events:all}
.rh-mic:focus-visible path{stroke:var(--y);stroke-width:6}
.rh-punct{pointer-events:none}
.rh-resedinta{display:none}
.rh-resedinta.rh-vizibil{display:inline}
.rh-punct circle{fill:var(--y);stroke:var(--bk);stroke-width:3}
.rh-punct text{fill:var(--wh);font-size:22px;font-weight:700;stroke:var(--bk);stroke-width:5px;paint-order:stroke;stroke-linejoin:round}
.rh-tip{position:absolute;pointer-events:none;background:var(--bk);color:var(--wh);border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:6px 10px;font-size:13px;line-height:1.3;white-space:nowrap;transform:translate(-50%,calc(-100% - 12px));z-index:5;box-shadow:0 6px 20px rgba(0,0,0,.4)}
.rh-tip small{display:block;color:var(--muted);font-size:11px}
.rh-legenda{list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:center;margin:18px 0 0;padding:0;font-size:13px;color:var(--muted)}
.rh-legenda li{display:flex;align-items:center;gap:8px}
.rh-legenda em{font-style:normal}
.rh-legenda em::before{content:'· '}
.rt-home a.btn,.rt-wrap a.btn,.rt-sec a.btn,.rh a.btn{text-decoration:none}
.rh-legenda strong{color:var(--wh)}
.rh-cheie{display:inline-block;width:16px;height:16px;border-radius:4px;flex:0 0 16px;border:1px solid rgba(255,255,255,.25)}
.rh-cheie-activ{background:var(--rh-activ)}
.rh-cheie-pregatire{background:repeating-linear-gradient(45deg,var(--rh-preg) 0 4px,var(--rh-preg-l) 4px 6px)}
.rh-cheie-inactiv{background:var(--rh-inactiv)}
.rh-selector{max-width:480px;margin:22px auto 0}
.rh-selector label{display:block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.rh-selector-rand{display:flex;gap:8px}
.rh-selector select{flex:1;min-width:0;min-height:44px;background:var(--gr2);color:var(--wh);border:1px solid var(--border);border-radius:8px;padding:0 12px;font:inherit;font-size:14px}
.rh-selector .btn{min-height:44px}
.rh-sursa{text-align:center;font-size:11px;color:var(--muted);margin-top:14px}
.rh-sursa a{color:var(--muted)}

/* Secțiunea de pe pagina de start */
.rt-home .rt-sub,.rt-wrap .rt-sub{font-size:clamp(17px,2.4vw,21px);font-weight:600;color:var(--wh);line-height:1.45;max-width:720px;margin-bottom:12px}
.rt-lead{font-size:15px;color:var(--muted);line-height:1.75;max-width:720px}
.rt-home-harta{margin-top:24px;min-height:120px;display:flex;align-items:center;justify-content:center}
.rt-home-harta.rh-incarcat{display:block;min-height:0}
.rt-home-cta{text-align:center;margin-top:26px}

/* Paginile /taxi-romania */
.rt-wrap{padding-top:88px}
.rt-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0 0 22px;font-size:12px;color:var(--muted)}
.rt-crumbs li+li::before{content:'›';margin-right:6px;color:rgba(249,247,242,.35)}
.rt-crumbs a{color:var(--muted);text-decoration:none}
.rt-crumbs a:hover{color:var(--y)}
.rt-sec{max-width:none}
.rt-h2{font-family:'Bebas Neue',sans-serif;font-size:clamp(28px,6vw,44px);line-height:1;margin-bottom:16px;font-weight:400}
.rt-h2 span{color:var(--y)}
.rt-muted{font-size:13px;color:var(--muted);line-height:1.7}
.rt-nota{margin-top:22px;max-width:720px}
.rt-stare-rand{margin:4px 0 18px}
.rt-stare{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--gr2);border:1px solid var(--border);border-radius:100px;padding:6px 12px}
.rt-grupa{margin-top:22px}
.rt-grupa h3{display:flex;align-items:center;gap:10px;font-size:14px;margin-bottom:12px}
.rt-grupa h3 small{color:var(--muted);font-weight:400}
.rt-judete{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;padding:0;margin:0}
.rt-judete a{display:flex;align-items:center;min-height:44px;padding:0 14px;background:var(--gr2);border:1px solid var(--border);border-radius:10px;color:var(--wh);text-decoration:none;font-size:14px}
.rt-judete a:hover,.rt-judete a:focus-visible{border-color:var(--y);color:var(--y)}
.rt-pasi{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.rt-pasi div{background:var(--gr2);border-radius:14px;padding:20px}
.rt-pasi strong{display:block;font-family:'Bebas Neue',sans-serif;font-size:24px;color:var(--y);letter-spacing:.5px;font-weight:400;margin-bottom:6px}
.rt-pasi p{font-size:13px;color:var(--muted);line-height:1.7}
.rt-cta{text-align:center}
.rt-cta p{font-size:14px;color:var(--muted);line-height:1.7;max-width:620px;margin:0 auto 22px}
.rt-prezentare{margin-top:20px;max-width:760px;font-size:15px;line-height:1.8;color:rgba(249,247,242,.85)}
.rt-prezentare p{margin-bottom:12px}
.rt-resurse,.rt-admini,.rt-linkuri{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.rt-resurse li{background:var(--gr2);border:1px solid var(--border);border-radius:12px;padding:16px 18px}
.rt-res-desc{font-size:13px;color:var(--muted);line-height:1.7;margin-top:6px}
.rt-res-actiuni{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.rt-admini li{font-size:15px;font-weight:600}
.rt-admini small{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:2px}
.rt-generale{background:var(--gr)}
.rt-linkuri a{display:flex;align-items:center;gap:12px;min-height:44px;padding:12px 16px;background:var(--gr2);border:1px solid var(--border);border-radius:12px;color:var(--wh);text-decoration:none}
.rt-linkuri a:hover{border-color:var(--y)}
.rt-linkuri .ico{color:var(--y);flex:0 0 auto}
.rt-linkuri small{display:block;color:var(--muted);font-size:12px}

/* Dispecerate: logo în forma lui (pătrat, lat), denumire, tarif */
.rt-disp{list-style:none;padding:0;margin:14px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.rt-disp li{background:var(--gr2);border:1px solid var(--border);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:10px;text-align:center}
.rt-disp-logo{height:120px;display:flex;align-items:center;justify-content:center}
.rt-disp-logo img{max-width:100%;max-height:100%;width:auto;height:auto;border-radius:10px;display:block}
.rt-disp-init{font-family:'Bebas Neue',sans-serif;font-size:42px;color:var(--bk);background:#fff;border-radius:10px;width:120px;height:120px;display:flex;align-items:center;justify-content:center}
.rt-disp strong{font-size:16px}
.rt-disp-tel{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;margin:-6px auto -4px;padding:0 12px;color:var(--y);font-weight:700;font-size:17px;text-decoration:none;letter-spacing:.02em}
.rt-disp-tel:hover{text-decoration:underline}
.rt-disp-tarif{display:flex;justify-content:center;gap:10px;margin:0}
.rt-disp-tarif div{flex:1;background:var(--gr);border-radius:8px;padding:8px 6px}
.rt-disp-tarif dt{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.rt-disp-tarif dd{margin:2px 0 0;font-weight:700;color:var(--y);font-size:15px}
@media (max-width:520px){.rt-disp{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.rt-disp li{padding:10px;gap:8px}.rt-disp strong{font-size:14px}.rt-disp-tarif{flex-direction:column;gap:6px}.rt-disp-tarif dd{font-size:14px}.rt-disp-init{font-size:30px}}

/* Formular candidatură */
.rt-form{max-width:760px;margin-top:24px}
.rt-campuri{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rt-camp{display:flex;flex-direction:column;gap:6px}
.rt-camp label{font-size:13px;font-weight:600}
.rt-camp label span{color:var(--y)}
.rt-camp .inp{width:100%}
.rt-lat{grid-column:1/-1}
.rt-camp .inp[aria-invalid=true]{border-color:#FF6666}
.rt-err{font-size:12px;color:#FF8888}
.rt-info{margin:22px 0 14px;background:var(--gr2);border-left:3px solid var(--y);border-radius:0 10px 10px 0;padding:14px 16px;font-size:13px;line-height:1.7;color:var(--muted)}
.rt-info strong{color:var(--wh)}
.rt-info a{color:var(--y)}
.rt-bifa{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;margin:10px 0;cursor:pointer}
.rt-bifa input{width:20px;height:20px;flex:0 0 20px;margin-top:1px;accent-color:var(--y)}
.rt-form button[type=submit]{margin-top:12px}
.rt-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.rt-msg{border-radius:10px;padding:14px 16px;margin:20px 0;font-weight:600;font-size:14px;line-height:1.6}
.rt-msg-ok{background:rgba(68,187,119,.12);border:1px solid rgba(68,187,119,.35);color:#88DDAA}
.rt-msg-err{background:rgba(255,68,68,.1);border:1px solid rgba(255,68,68,.3);color:#FF9999}
@media (max-width:640px){.rt-campuri{grid-template-columns:1fr}.rh-legenda{flex-direction:column;align-items:flex-start;gap:10px}.rh-legenda li{display:grid;grid-template-columns:16px 1fr;column-gap:10px;align-items:start}.rh-legenda li .rh-cheie{grid-row:span 2;margin-top:2px}.rh-legenda li em{grid-column:2}.rh-legenda em::before{content:none}}
@media (prefers-reduced-motion:reduce){.rh-j path{transition:none}}
