/* Programarea online: widget de programare (card central) pe designul kioskului.
   Desktop: card 1040px, continut in stanga, panoul „Comanda ta” in dreapta, bara de actiuni jos in card.
   Telefon: card pe tot ecranul, panoul ascuns, bara cu total si buton lipita jos. Unitati fixe (rem/px). */
body.site { font-size: 16px; background: #0b0b0d; }
body.site .ecran { padding: 0; overflow: auto; -webkit-overflow-scrolling: touch; display: none; }
body.site .ecran.activ { display: flex; align-items: flex-start; justify-content: center; }
body.site .ic { width: 1em; height: 1em; }
body.site .widget { width: 100%; max-width: 1040px; background: #121216; border: 1px solid rgba(255,255,255,.08); border-radius: 22px; box-shadow: 0 30px 80px rgba(0,0,0,.45); display: flex; flex-direction: column; overflow: hidden; }
@media (min-width: 900px) { body.site .ecran.activ { padding: 28px 24px; } body.site #e-flux .widget { min-height: calc(100dvh - 56px); } }
@media (max-width: 899.98px) { body.site .widget { max-width: none; border: 0; border-radius: 0; box-shadow: none; min-height: 100dvh; } }

/* ---------- start ---------- */
body.site .start-col { padding: 28px 28px 32px; gap: 24px; }
body.site .start-sus { position: static !important; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 !important; }
body.site .marca img, body.site .marca img.marca-wordmark, body.site .marca img.marca-rotund, body.site .marca-sigla { height: 38px !important; width: auto !important; }
body.site .marca img.marca-rotund { width: 38px !important; }
body.site .start-tel { font-size: .92rem; display: flex; align-items: center; gap: 6px; color: rgba(255,255,255,.75); }
body.site .start-tel .ic { width: 16px; height: 16px; }
body.site #e-start::before { display: none; }
body.site .start-grila { display: grid; gap: 24px; }
body.site .start-mijloc { position: static !important; padding: 0 !important; max-width: none !important; display: block !important; flex: none !important; }
body.site .start-titlu { font-size: 1.85rem !important; line-height: 1.15; letter-spacing: -.02em; margin: 0 0 10px; }
body.site .start-text { font-size: 1rem; line-height: 1.5; margin: 0 0 18px; opacity: .8; }
body.site .start-puncte { display: grid; gap: 10px; margin: 0 0 22px; padding: 0; list-style: none; }
body.site .start-puncte li { font-size: .95rem; display: flex; align-items: center; gap: 10px; }
body.site .start-puncte .bifa { width: 22px; height: 22px; flex: none; }
body.site .start-puncte .bifa .ic { width: 12px; height: 12px; }
body.site .start-cta { width: 100%; display: flex !important; align-items: center; justify-content: center; gap: 8px; background: var(--rosu, #d8232a); color: #fff; font-weight: 700; font-size: 1.05rem !important; min-height: 54px; border-radius: 14px !important; padding: 0 20px !important; animation: none; box-shadow: none !important; cursor: pointer; margin: 0; }
body.site .start-cta .ic { width: 18px !important; height: 18px !important; }
body.site .start-servicii { position: static !important; transform: none !important; right: auto !important; top: auto !important; max-width: none !important; width: 100%; padding: 0 !important; margin: 0 !important; display: grid; grid-template-columns: 1fr 1fr !important; gap: 8px !important; }
body.site .start-servicii > div { display: flex !important; grid-template-columns: none !important; align-items: center; gap: 10px; margin: 0; padding: 10px 12px !important; border-radius: 12px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08) !important; font-size: .88rem !important; text-align: left !important; justify-content: flex-start !important; }
body.site .start-servicii > div > div { display: flex !important; flex-direction: column; gap: 2px; min-width: 0; align-items: flex-start !important; line-height: 1.2; }
body.site .start-servicii > div > div small { white-space: normal; font-size: .74rem !important; margin-top: 2px !important; text-align: left !important; }
body.site .start-servicii .cerc { width: 34px !important; height: 34px !important; flex: none; }
body.site .start-servicii .cerc .ic { width: 16px !important; height: 16px !important; }
body.site .start-jos { display: none; }
@media (min-width: 900px) {
  body.site .start-col { padding: 36px 40px 40px; gap: 32px; }
  body.site .start-grila { grid-template-columns: 1.05fr 1fr; gap: 48px; align-items: center; }
  body.site .start-titlu { font-size: 2.3rem !important; }
  body.site .start-cta { width: auto; min-width: 280px; display: inline-flex !important; }
  body.site .start-servicii > div { padding: 14px !important; }
}

/* ---------- flux: antet + stepper ---------- */
body.site #e-flux .widget { position: relative; }
body.site .antet { position: sticky; top: 0; z-index: 5; height: auto; min-height: 0; padding: 0; display: block; background: rgba(18,18,22,.96); backdrop-filter: blur(8px); border-bottom: 1px solid rgba(255,255,255,.08); }
body.site .antet-col { display: flex; align-items: center; gap: 16px; min-height: 64px; padding: 10px 20px; }
body.site .antet .marca img, body.site .antet .marca img.marca-wordmark, body.site .antet .marca img.marca-rotund, body.site .antet .marca-sigla { height: 28px !important; width: auto !important; }
body.site .antet .marca img.marca-rotund { width: 28px !important; }
body.site .pasi, body.site .pasi.multe { flex: 1; display: flex; align-items: center; justify-content: center; gap: 0; padding: 0; overflow: hidden; }
body.site .pas, body.site .pasi.multe .pas { display: flex; align-items: center; gap: 8px; flex: none; opacity: 1; }
body.site .pas .nr, body.site .pasi.multe .pas .nr { width: 26px; height: 26px; min-width: 0; border-radius: 50%; display: grid; place-items: center; font-size: .78rem; font-weight: 700; border: 2px solid rgba(255,255,255,.18); color: rgba(255,255,255,.7); background: transparent; }
body.site .pas .nr .ic { width: 12px; height: 12px; display: block; }
body.site .pas.activ .nr { background: var(--rosu, #d8232a); border-color: var(--rosu, #d8232a); color: #fff; }
body.site .pas.gata .nr { background: rgba(216,35,42,.18); border-color: var(--rosu, #d8232a); color: var(--rosu-lum, #ff5a60); }
body.site .pas .et, body.site .pasi.multe .pas .et { display: block; font-size: .82rem; font-weight: 600; color: rgba(255,255,255,.55); white-space: nowrap; }
body.site .pas.activ .et { color: #fff; }
body.site .pas.gata .et { color: rgba(255,255,255,.8); }
body.site .pas-linie, body.site .pasi.multe .pas-linie { width: 36px; height: 2px; margin: 0 10px; background: rgba(255,255,255,.14); border-radius: 1px; opacity: 1; display: block; }
body.site .pas-linie.gata { background: var(--rosu, #d8232a); }
body.site .antet .renunta { min-height: 36px; width: 36px; padding: 0; justify-content: center; border-radius: 10px; flex: none; }
body.site .antet .renunta span { display: none; }
body.site .antet .renunta .ic { width: 16px; height: 16px; margin: 0; }
@media (max-width: 899.98px) {
  body.site .antet-col { min-height: 56px; padding: 8px 14px; gap: 10px; }
  body.site .pas .et { display: none !important; }
  body.site .pas.activ .et { display: block !important; font-size: .8rem; }
  body.site .pas-linie, body.site .pasi.multe .pas-linie { width: 10px; margin: 0 4px; }
  body.site .pas .nr, body.site .pasi.multe .pas .nr { width: 24px; height: 24px; font-size: .72rem; }
}

/* ---------- flux: corp (continut + panou) ---------- */
body.site .corp { display: grid; grid-template-columns: minmax(0, 1fr); flex: 1; overflow: visible; }
body.site .continut { display: block; padding: 22px 20px 110px; max-width: none; margin: 0; overflow: visible; min-width: 0; }
body.site .titlu-zona { margin-bottom: 16px; }
body.site .titlu { font-size: 1.35rem; line-height: 1.2; margin: 0 0 4px; }
body.site .titlu .idx { display: none; }
body.site .subtitlu { font-size: .92rem; margin: 0; opacity: .75; }
body.site .derulant, body.site #pas { display: block; overflow: visible; height: auto; max-height: none; padding: 0; }
body.site .panou { display: none; }
@media (min-width: 900px) {
  body.site .corp { grid-template-columns: minmax(0, 1fr) 320px; }
  body.site .continut { padding: 28px 32px 32px; }
  body.site .titlu { font-size: 1.55rem; }
  body.site .panou { display: flex; flex-direction: column; gap: 14px; position: sticky; top: 64px; align-self: start; width: auto; max-height: calc(100dvh - 56px - 64px); overflow: auto; padding: 24px 22px; background: rgba(255,255,255,.03); border-left: 1px solid rgba(255,255,255,.08); border-radius: 0; }
  body.site .panou h3 { font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: rgba(255,255,255,.55); margin: 0; }
  body.site .panou-masina { display: flex; align-items: center; gap: 10px; padding: 12px; border-radius: 12px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); }
  body.site .panou-masina .ic { width: 22px; height: 22px; flex: none; color: rgba(255,255,255,.7); }
  body.site .panou-masina b { display: block; font-size: .95rem; }
  body.site .panou-masina span { display: block; font-size: .78rem; color: rgba(255,255,255,.55); }
  body.site .panou-linii { display: grid; gap: 0; }
  body.site .panou .linie { display: flex; justify-content: space-between; gap: 10px; padding: 8px 0; border-bottom: 1px dashed rgba(255,255,255,.1); font-size: .88rem; }
  body.site .panou .linie small { display: block; font-size: .74rem; color: rgba(255,255,255,.5); }
  body.site .panou .linie.gol { border: 0; color: rgba(255,255,255,.45); font-size: .85rem; }
  body.site .panou-total { margin-top: auto; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.1); }
  body.site .panou-total .et { font-size: .7rem; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.55); }
  body.site .panou-total .suma { font-size: 1.7rem; font-weight: 800; color: var(--rosu-lum, #ff5a60); margin: 2px 0 6px; }
  body.site .panou-total p { font-size: .76rem; color: rgba(255,255,255,.5); margin: 0; line-height: 1.4; }
}

/* ---------- flux: bara de actiuni ---------- */
body.site .subsol { position: sticky; bottom: 0; z-index: 6; display: block; padding: 0; min-height: 0; background: rgba(18,18,22,.96); backdrop-filter: blur(8px); border-top: 1px solid rgba(255,255,255,.08); }
body.site .subsol-col { display: flex; align-items: center; gap: 10px; padding: 12px 20px calc(12px + env(safe-area-inset-bottom)); }
body.site .subsol .btn { min-height: 48px; padding: 0 18px; font-size: 1rem; border-radius: 12px; }
body.site .subsol .btn .ic { width: 16px; height: 16px; }
body.site .subsol .spatiu { flex: 1; }
body.site .subsol-total { display: flex; flex-direction: column; align-items: flex-end; margin-right: 6px; }
body.site .subsol-total .et { font-size: .66rem; letter-spacing: .08em; }
body.site .subsol-total .suma { font-size: 1.05rem; }
body.site #btn-inapoi { padding: 0 14px; }
body.site #btn-inapoi span { display: none; }
@media (min-width: 900px) {
  body.site .subsol-col { padding: 14px 32px; max-width: none; }
  body.site .subsol-total { display: none; }
  body.site #btn-inapoi span { display: inline; margin-left: 6px; }
  body.site #btn-continua { min-width: 200px; justify-content: center; }
}
@media (max-width: 899.98px) { body.site .subsol { position: fixed; left: 0; right: 0; bottom: 0; } }

/* ---------- grile si tile-uri ---------- */
body.site .grila, body.site .grila-2, body.site .grila-3, body.site .grila-4, body.site .grila-auto { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px; }
body.site .grila-3.pachete { grid-template-columns: 1fr !important; }
body.site .tile { padding: 14px; min-height: 0; border-radius: 14px; gap: 8px; }
body.site .tile .bifa { width: 20px; height: 20px; top: 10px; right: 10px; }
body.site .tile .bifa .ic { width: 11px; height: 11px; }
body.site .tile .icon { width: 40px; height: 40px; border-radius: 11px; }
body.site .tile .icon .ic { width: 20px; height: 20px; }
body.site .tile .nume { font-size: .95rem; line-height: 1.2; }
body.site .tile .sub { font-size: .78rem; line-height: 1.3; }
body.site .tile .pret { font-size: .9rem; margin-top: 2px; }
body.site .tile .promo-et, body.site .tile .reco-et { font-size: .66rem; padding: 2px 6px; }
body.site .tile.vehicul .silueta { height: 64px; }
body.site .tile.vehicul .silueta img { max-height: 60px; width: 88%; }
body.site .tile.vehicul .silueta.ev::after { width: 18px; height: 18px; font-size: 10px; }
body.site .tile.janta .nume { font-size: 1.3rem; }
body.site .tile.roata .numar-mare { font-size: 2rem; }
body.site .tile.roata .nume, body.site .tile.roata .pret { font-size: .85rem; }
body.site .rand-ajutor { font-size: .85rem; padding: 10px 12px; border-radius: 12px; gap: 8px; margin-top: 10px; }
body.site .rand-ajutor .ic { width: 16px; height: 16px; }
@media (min-width: 700px) {
  body.site .grila-4, body.site .grila.roti, body.site .grila-auto { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
  body.site .grila-3 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  body.site .grila-3.pachete { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; align-items: stretch; }
}
@media (max-width: 699.98px) {
  body.site .grila-3:not(.pachete) { grid-template-columns: 1fr !important; gap: 8px; }
  body.site .grila-3:not(.pachete) .tile { display: grid; grid-template-columns: 40px 1fr; grid-template-areas: "icon nume" "icon sub" "icon pret"; column-gap: 12px; row-gap: 2px; align-items: center; padding: 12px 14px; text-align: left; }
  body.site .grila-3:not(.pachete) .tile .icon { grid-area: icon; }
  body.site .grila-3:not(.pachete) .tile .nume { grid-area: nume; }
  body.site .grila-3:not(.pachete) .tile .sub { grid-area: sub; }
  body.site .grila-3:not(.pachete) .tile .pret { grid-area: pret; margin-top: 2px; }
  body.site .grila-3:not(.pachete) .tile .promo-et, body.site .grila-3:not(.pachete) .tile .reco-et { grid-column: 2; justify-self: start; }
  body.site .grila-3:not(.pachete) .tile .bifa { top: 50%; transform: translateY(-50%); right: 12px; }
}

/* pachete */
body.site .pachet { padding: 16px; border-radius: 14px; }
body.site .pachet .et { font-size: .66rem; padding: 2px 8px; }
body.site .pachet .nume { font-size: 1.1rem; }
body.site .pachet .subt { font-size: .82rem; }
body.site .pachet ul { display: grid; gap: 6px !important; margin: 10px 0 12px !important; padding: 0; }
body.site .pachet li { display: flex; align-items: center; gap: 8px !important; font-size: .85rem; line-height: 1.3; }
body.site .pachet li .ic { width: 14px !important; height: 14px !important; flex: none; }
body.site .pachet .pret-zona { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; padding-top: 12px; }
body.site .pachet .pret-zona b { font-size: 1.3rem; line-height: 1; }
body.site .pachet .pret-zona small { font-size: .78rem; }
body.site .pachet .alege { display: inline-flex !important; align-items: center; justify-content: center; height: 40px !important; min-height: 0 !important; width: auto !important; padding: 0 18px !important; font-size: .9rem !important; border-radius: 10px !important; line-height: 1; }

/* bife (suplimentare, probleme) */
body.site .lista-bife { display: grid; grid-template-columns: 1fr !important; gap: 8px; }
body.site .rb { padding: 10px 12px; border-radius: 12px; gap: 10px; min-height: 52px; }
body.site .rb .cutie { width: 22px; height: 22px; border-radius: 7px; }
body.site .rb .cutie .ic { width: 12px; height: 12px; }
body.site .rb .icon { width: 36px; height: 36px; }
body.site .rb .icon .ic { width: 18px; height: 18px; }
body.site .rb .text b { font-size: .95rem; }
body.site .rb .text span { font-size: .78rem; }
body.site .rb .pret { font-size: .9rem; }
body.site .rb .et-mic { font-size: .68rem; }
body.site .reco { padding: 12px 14px; border-radius: 12px; margin-bottom: 10px; }
body.site .reco-cap { font-size: .82rem; gap: 6px; margin-bottom: 6px; }
body.site .reco-cap .ic { width: 16px; height: 16px; }
body.site .reco-rand { padding: 8px 0; gap: 10px; font-size: .88rem; }
body.site .reco-rand .btn { min-height: 36px; padding: 0 12px; font-size: .85rem; border-radius: 9px; }
body.site .optiuni-notif { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
body.site .optiuni-notif .rb .ic.mare { width: 22px; height: 22px; }
@media (min-width: 700px) { body.site .lista-bife { grid-template-columns: 1fr 1fr !important; } }

/* campuri */
body.site .placa-zona { display: grid; gap: 14px; justify-items: center; }
body.site .placa-zona .seg, body.site .placa-zona .rand-ajutor, body.site .placa-zona #vehicul-gasit, body.site .placa-zona .camp-mare { width: 100%; justify-self: stretch; }
body.site .seg { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: 4px; border-radius: 12px; }
body.site .seg button { min-height: 38px; font-size: .85rem; border-radius: 9px; }
body.site .placa { height: 58px !important; min-width: 0 !important; width: 100% !important; max-width: 320px !important; margin: 0 auto !important; border-width: 2px !important; border-radius: 8px !important; box-shadow: 0 0 0 2px #d9d9df inset !important; }
body.site .placa .ro { width: 38px !important; font-size: .7rem !important; gap: 6px !important; padding-bottom: 5px !important; }
body.site .placa .ro .stele { width: 16px !important; height: 16px !important; border-width: 1.5px !important; }
body.site .placa .nr, body.site .placa input.nr { font-size: 1.45rem !important; min-width: 0 !important; padding: 0 12px !important; }
body.site .placa input.nr { background: transparent; border: 0; outline: 0; width: 100%; height: 100%; color: #111; font: inherit; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; text-align: center; }
body.site .placa input.nr::placeholder { color: rgba(0,0,0,.3); font-weight: 600; text-align: center; }
body.site .camp-mare { min-height: 50px; font-size: 1.05rem; padding: 0 14px; border-radius: 12px; }
body.site input.camp-input { width: 100%; color: inherit; font: inherit; font-size: 1.05rem; outline: 0; border: 2px solid rgba(255,255,255,.14); background: rgba(255,255,255,.06); }
body.site input.camp-input:focus { border-color: var(--rosu, #d8232a); }
body.site input.camp-input::placeholder { color: rgba(255,255,255,.35); }
body.site .contact-grila { display: block; }
body.site .contact-grila > div:first-child { width: 100%; max-width: none; }
body.site .eticheta { font-size: .8rem; margin: 0 0 6px; }
body.site .tel-rand { display: flex; gap: 8px; align-items: stretch; }
body.site .tel-rand .prefix { min-height: 50px; padding: 0 10px; border-radius: 12px; gap: 6px; font-size: 1rem; flex: none; }
body.site .tel-rand .prefix .ic { width: 14px; height: 14px; }
body.site .tel-rand .camp-mare { flex: 1; min-width: 0; }
body.site .tel-ajutor { font-size: .8rem; margin: 8px 0 0; }
body.site .steag { transform: scale(1); }
body.site .tari-dialog, body.site #val-tari .dialog { width: 100%; max-width: none; height: 100%; max-height: none; border-radius: 0; padding: max(12px, env(safe-area-inset-top)) 14px 14px; }
body.site .tari-lista { max-height: none; }
body.site .tara { min-height: 46px; font-size: 1rem; padding: 0 10px; gap: 10px; border-radius: 10px; }
body.site .tari { grid-template-columns: repeat(4, 1fr); gap: 6px; }
body.site .tari .tara { min-height: 44px; font-size: .85rem; }
@media (min-width: 700px) { body.site .tari-dialog, body.site #val-tari .dialog { width: min(92vw, 520px); height: auto; max-height: 80vh; border-radius: 16px; padding: 20px; } body.site .tari-lista { max-height: 50vh; } }

/* zi si ora */
body.site .zile { display: flex; gap: 8px; overflow-x: auto; padding: 2px 0 8px; margin: 0 0 12px; scrollbar-width: thin; }
body.site .zi { flex: 0 0 64px; min-height: 72px; border-radius: 12px; padding: 8px 4px; }
body.site .zi small { font-size: .68rem; }
body.site .zi b { font-size: 1.3rem; }
body.site .zi span { font-size: .72rem; }
body.site .ore { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
body.site .ora { min-height: 44px; font-size: .95rem; border-radius: 10px; }
body.site .gol-mesaj { font-size: .9rem; padding: 18px 12px; border-radius: 12px; }
@media (min-width: 700px) { body.site .ore { grid-template-columns: repeat(5, 1fr); } }

/* rezumat */
body.site .rezumat { display: block; }
body.site .rezumat > div { display: grid; gap: 10px !important; }
body.site .card { padding: 14px 16px; border-radius: 14px; }
body.site .card h4 { font-size: .72rem; letter-spacing: .1em; margin: 0 0 8px; display: flex; justify-content: space-between; align-items: center; }
body.site .card h4 button { font-size: .8rem; min-height: 0; padding: 0; }
body.site .rez-masina { gap: 10px; }
body.site .rez-masina .placa-mica { font-size: .95rem; padding: 2px 8px; }
body.site .rez-masina b { font-size: 1rem; }
body.site .rez-masina span { font-size: .82rem; }
body.site .rez-linii .linie, body.site .rezumat .linie { font-size: .9rem; padding: 7px 0; }
body.site .rezumat .linie small { font-size: .74rem; }
body.site .rez-total { padding-top: 10px; margin-top: 6px; }
body.site .rez-total b { font-size: 1.4rem; }
body.site .rez-total span { font-size: .85rem; }
body.site .rez-nota { font-size: .78rem; gap: 8px; margin-top: 8px; }
body.site .rez-nota .ic { width: 16px; height: 16px; flex: none; }
body.site .pastile span { font-size: .78rem; padding: 3px 9px; }

/* ---------- final ---------- */
body.site .final-col { padding: 48px 28px; text-align: center; align-items: center; justify-content: center; max-width: 560px; }
body.site .final-bifa { width: 76px; height: 76px; margin: 0 auto 18px; }
body.site .final-bifa .ic { width: 36px; height: 36px; }
body.site .final-et { font-size: .72rem; letter-spacing: .14em; }
body.site .final-nr { font-size: 2.4rem; margin: 4px 0 12px; }
body.site .final-titlu { font-size: 1.4rem; margin: 0 0 8px; }
body.site .final-text { font-size: 1rem; line-height: 1.5; margin: 0 auto 22px; max-width: 440px; opacity: .8; }
body.site .final-cont { font-size: .9rem; }
body.site .final-cont .btn { min-height: 48px; padding: 0 22px; font-size: 1rem; border-radius: 12px; margin: 0; }
@media (min-width: 900px) { body.site #e-final.activ { align-items: center; min-height: 100dvh; } }

/* ---------- dialoguri si mesaje ---------- */
body.site .val .dialog { width: min(92vw, 420px); padding: 22px 20px; border-radius: 16px; }
body.site .dialog h2 { font-size: 1.2rem; margin: 0 0 8px; }
body.site .dialog p { font-size: .95rem; margin: 0 0 16px; }
body.site .dialog .butoane { display: flex; gap: 8px; }
body.site .dialog .butoane .btn { flex: 1; min-height: 46px; font-size: .95rem; border-radius: 12px; padding: 0 10px; }
body.site .toast { font-size: .9rem; padding: 10px 16px; bottom: calc(84px + env(safe-area-inset-bottom)); max-width: 92vw; border-radius: 12px; }
body.site .stare-retea { font-size: .85rem; padding: 6px 12px; }
body.site .incarcare { font-size: 1rem; }
body.site .spinner { width: 36px; height: 36px; }
body.site #e-inchis { display: flex; align-items: center; justify-content: center; padding: 24px; }
body.site #e-inchis .dialog { width: min(92vw, 420px); padding: 24px; border-radius: 16px; text-align: center; }
body.site #e-inchis .dialog .btn { display: inline-flex; min-height: 48px; padding: 0 20px; font-size: 1rem; border-radius: 12px; }
/* panoul din dreapta pe toata inaltimea cardului; listele din pachete lipite sus */
@media (min-width: 900px) { body.site .panou { position: static; align-self: stretch; max-height: none; } }
body.site .pachet { display: flex; flex-direction: column; }
body.site .pachet ul { align-content: start; margin-bottom: auto !important; }
body.site .pachet .pret-zona { margin-top: 12px; }

/* cardul centrat (kioskul pune ecranul pe coloana) */
body.site .ecran.activ { flex-direction: column; align-items: center; }
body.site .widget { margin: 0 auto; }

/* calendar lunar + ore */
body.site .prog-grila { display: grid; gap: 20px; }
body.site .cal { background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.08); border-radius: 14px; padding: 14px; }
body.site .cal-cap { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
body.site .cal-cap b { font-size: .95rem; font-weight: 700; }
body.site .cal-nav { width: 34px; height: 34px; border-radius: 9px; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.04); color: #fff; display: grid; place-items: center; cursor: pointer; }
body.site .cal-nav .ic { width: 14px; height: 14px; }
body.site .cal-nav[disabled] { opacity: .3; cursor: default; }
body.site .cal-zs { display: grid; grid-template-columns: repeat(7, 1fr); margin-bottom: 4px; }
body.site .cal-zs span { text-align: center; font-size: .68rem; letter-spacing: .06em; text-transform: uppercase; color: rgba(255,255,255,.45); padding: 4px 0; }
body.site .cal-grila { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; }
body.site .cal-zi { aspect-ratio: 1; min-height: 36px; border-radius: 10px; border: 1px solid transparent; background: rgba(255,255,255,.05); color: #fff; font-size: .95rem; font-weight: 600; cursor: pointer; display: grid; place-items: center; }
body.site .cal-zi:hover:not([disabled]) { border-color: rgba(255,255,255,.25); }
body.site .cal-zi.azi { border-color: rgba(255,255,255,.35); }
body.site .cal-zi.ales { background: var(--rosu, #d8232a); border-color: var(--rosu, #d8232a); }
body.site .cal-zi[disabled] { background: transparent; color: rgba(255,255,255,.22); cursor: default; font-weight: 500; }
body.site .ore-zona .eticheta { margin-bottom: 10px; }
body.site .ore-zona .ore { grid-template-columns: repeat(3, 1fr); }
@media (min-width: 700px) { body.site .prog-grila { grid-template-columns: 340px minmax(0, 1fr); align-items: start; } body.site .ore-zona .ore { grid-template-columns: repeat(3, 1fr); } }
/* titlul pasului aliniat cu continutul; preturile din randurile cu bife aliniate la dreapta pe aceeasi muchie */
body.site .titlu-zona { padding: 0 !important; }
body.site .rb .pret { display: flex; flex-direction: column; align-items: flex-end; text-align: right; min-width: 92px; line-height: 1.2; }
body.site .rb .pret small { display: block; font-size: .72rem; margin-top: 2px; }
body.site .reco-rand .t { text-align: left; }

/* selectorul de tara: spatii intre sectiuni, butoane care incap in card, bara de derulare intunecata */
body.site .tari-dialog { display: flex; flex-direction: column; gap: 0; min-height: 0; }
body.site .tari-cap { margin-bottom: 14px !important; gap: 12px; }
body.site .tari-cap h3 { font-size: 1.2rem !important; }
body.site .tari-cap .btn { min-height: 38px; padding: 0 12px; font-size: .9rem; border-radius: 10px; }
body.site .tari-cap .btn .ic { width: 14px; height: 14px; }
body.site .tari-dialog .eticheta { margin: 0 0 8px !important; }
body.site .tari-dialog .tari-rapide + .eticheta, body.site .tari-dialog .eticheta + .eticheta { margin-top: 18px !important; }
body.site .tari-rapide { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px !important; margin-bottom: 18px; }
body.site .tari-rapide .tara, body.site .tari-lista .tara { min-width: 0; min-height: 44px !important; padding: 0 10px !important; font-size: .9rem !important; gap: 8px !important; border-radius: 10px !important; justify-content: flex-start; }
body.site .tara .t { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.site .tara b { flex: none; font-size: .85rem; }
body.site .tari-lista { display: grid; grid-template-columns: 1fr !important; gap: 6px !important; padding: 2px 6px 2px 2px !important; overflow-y: auto; min-height: 0; flex: 1; scrollbar-width: thin; scrollbar-color: rgba(255,255,255,.28) transparent; }
body.site .tari-lista::-webkit-scrollbar { width: 8px; }
body.site .tari-lista::-webkit-scrollbar-track { background: transparent; }
body.site .tari-lista::-webkit-scrollbar-thumb { background: rgba(255,255,255,.28); border-radius: 4px; }
@media (min-width: 700px) {
  body.site .tari-rapide { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
  body.site .tari-lista { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.site .tari-dialog, body.site #val-tari .dialog { width: min(92vw, 640px) !important; max-height: 82vh !important; }
}
@media (min-width: 700px) { body.site .tari-rapide { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } }

/* rezumat: cardurile cu spatiu intre ele; „Servicii alese” nu se mai lipeste de Contact */
body.site .rezumat { display: grid; gap: 10px; }
@media (min-width: 900px) { body.site .rezumat { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; } body.site .rezumat .card { min-width: 0; } }
/* widgetul pe desktop: antetul si bara de jos raman, continutul se deruleaza in interior cand e lung */
@media (min-width: 900px) {
  body.site #e-flux .widget { height: calc(100dvh - 56px); min-height: 520px; }
  body.site .corp { min-height: 0; grid-template-rows: minmax(0, 1fr); overflow: hidden; }
  body.site .continut { overflow-y: auto; min-height: 0; }
  body.site .panou { position: static; align-self: stretch; max-height: none; min-height: 0; overflow: hidden; }
  body.site .panou-linii { flex: 1 1 auto; min-height: 0; overflow-y: auto; align-content: start; }
}
/* barele de derulare in culorile widgetului, nu albe (panoul „Comanda ta”, continutul, listele) */
body.site { color-scheme: dark; }
body.site .continut, body.site .panou, body.site .panou-linii, body.site .ecran, body.site .zile { scrollbar-width: thin; scrollbar-color: rgba(255,255,255,.28) transparent; }
body.site .continut::-webkit-scrollbar, body.site .panou::-webkit-scrollbar, body.site .panou-linii::-webkit-scrollbar, body.site .ecran::-webkit-scrollbar { width: 8px; height: 8px; }
body.site .continut::-webkit-scrollbar-track, body.site .panou::-webkit-scrollbar-track, body.site .panou-linii::-webkit-scrollbar-track, body.site .ecran::-webkit-scrollbar-track { background: transparent; }
body.site .continut::-webkit-scrollbar-thumb, body.site .panou::-webkit-scrollbar-thumb, body.site .panou-linii::-webkit-scrollbar-thumb, body.site .ecran::-webkit-scrollbar-thumb { background: rgba(255,255,255,.28); border-radius: 4px; }

/* marimea de baza a textului pe programarea online: fixa, nu dupa inaltimea ecranului (kioskul foloseste vmin, pe telefon iesea ~6px) */
html.site { font-size: 16px !important; }
@media (min-width: 900px) { html.site { font-size: 14px !important; } }
html.site body.site { font-size: 1rem; }
/* resturi in vmin din kiosk care pe telefon ieseau microscopice */
body.site .pret small { font-size: .78rem !important; }
body.site .tile.janta .nume sup { font-size: .6em !important; }
body.site .pachet .pret-zona b i, body.site .pachet b i { font-size: .55em !important; }
body.site .tile .sub, body.site .rez-masina span, body.site .rezumat .linie small { font-size: .82rem; }
/* pe telefon stepper-ul arata doar cercurile (titlul pasului e chiar dedesubt), ca sa nu iasa din ecran */
@media (max-width: 559.98px) { body.site .pasi .pas .et { display: none !important; } }
@media (max-width: 899.98px) {
  body.site .subsol-total { white-space: nowrap; flex: none; }
  body.site .subsol-total .et { font-size: .68rem; }
  body.site .subsol-total .suma { font-size: 1.15rem; line-height: 1.2; }
  body.site .subsol .btn-rosu { min-width: 0; padding-left: 18px; padding-right: 18px; font-size: 1rem; white-space: nowrap; }
}
@media (max-width: 899.98px) { body.site .subsol .btn-rosu { flex: 1 1 auto; justify-content: center; padding-left: 14px; padding-right: 14px; font-size: .95rem; gap: 8px; } }
@media (max-width: 400px) { body.site .subsol .btn-rosu .ic { display: none; } }

/* telefon: cardul nu se mai strange la inaltimea ecranului (taia continutul), ecranul se deruleaza */
@media (max-width: 899.98px) {
  body.site .widget { flex-shrink: 0; overflow: visible; }
  body.site .ecran.activ { overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; }
}

/* placuta de inmatriculare din rezumat: banda albastra lipita de margine, fara spatiu alb in stanga */
body.site .rez-masina .placa-mica { display: inline-flex; align-items: stretch; padding: 0 10px 0 0 !important; overflow: hidden; border-radius: 6px; line-height: 1; font-size: 1rem; }
body.site .rez-masina .placa-mica i { display: block; flex: none; width: 10px; margin: 0 9px 0 0 !important; border-radius: 0 !important; background: #0a3fa6; align-self: stretch; }
body.site .rez-masina .placa-mica { padding-top: 5px !important; padding-bottom: 5px !important; }
body.site .rez-masina .placa-mica i { margin-top: -5px !important; margin-bottom: -5px !important; }

/* barele de derulare in rosul aplicatiei */
body.site .continut, body.site .panou, body.site .panou-linii, body.site .ecran, body.site .zile, body.site .tari-lista { scrollbar-color: rgba(216,35,42,.75) transparent !important; }
body.site ::-webkit-scrollbar { width: 8px; height: 8px; }
body.site ::-webkit-scrollbar-track { background: transparent; }
body.site ::-webkit-scrollbar-thumb { background: rgba(216,35,42,.75) !important; border-radius: 4px; }
body.site ::-webkit-scrollbar-thumb:hover { background: #d8232a !important; }

/* servicii legate pe site: aceleasi componente, in unitati fixe */
body.site .dialog-conex { text-align: center; }
body.site .dialog-conex .cx-ic { width: 56px; height: 56px; border-radius: 14px; margin-bottom: 14px; }
body.site .dialog-conex .cx-ic .ic, body.site .dialog-conex .cx-ic img { width: 30px; height: 30px; }
body.site .dialog-conex .cx-info { padding: 12px 14px; border-radius: 12px; margin-bottom: 16px; gap: 12px; }
body.site .dialog-conex .cx-info b { font-size: .95rem; }
body.site .dialog-conex .cx-info span { font-size: .88rem; }
body.site .legat { margin-top: 18px; padding: 16px; border-radius: 14px; }
body.site .legat-cap { gap: 12px; margin-bottom: 14px; }
body.site .legat-ic { width: 40px; height: 40px; border-radius: 10px; }
body.site .legat-ic .ic, body.site .legat-ic img { width: 22px; height: 22px; }
body.site .legat-cap b { font-size: 1rem; }
body.site .legat-cap small { font-size: .85rem; margin-top: 2px; }
body.site .legat-optiuni { gap: 8px; }
body.site .legat-opt { padding: 12px 14px; border-radius: 12px; gap: 12px; }
body.site .legat-opt .cutie { width: 20px; height: 20px; }
body.site .legat-opt .cutie .ic { width: 12px; height: 12px; }
body.site .legat-opt .lo-text b { font-size: .95rem; }
body.site .legat-opt .lo-text small { font-size: .8rem; margin-top: 2px; }
body.site .legat-opt .lo-ora { font-size: 1rem; }
body.site .legat-ore { margin-top: 10px; }
body.site .legat-gol { font-size: .9rem; }
body.site .legat-renunta { margin-top: 12px; min-height: 44px; font-size: .95rem; border-radius: 12px; padding: 0 16px; }
body.site .rez-prog { gap: 8px; }
body.site .rez-prog div { font-size: .92rem; }
@media (min-width: 900px) { body.site .prog-grila #legat-zona { grid-column: 1 / -1; } }
/* eticheta mica din servicii („Inclus”, „Recomandat”): cat textul, nu pe toata latimea */
body.site .rb .et-mic { align-self: flex-start; width: max-content; max-width: 100%; padding: 2px 7px; border-radius: 6px; letter-spacing: .06em; margin-top: 4px; }
body.site .legat-pas { margin-top: 0; }
body.site .legat-opt .lo-ora small { font-size: .74rem; margin-bottom: 1px; }
body.site .legat-alege { margin-top: 16px; }
@media (min-width: 700px) { body.site .legat-alege.prog-grila { grid-template-columns: 300px minmax(0, 1fr); } }

body.site .mod-legat { margin-bottom: 18px; }
body.site .mod-legat .seg { display: grid; grid-template-columns: 1fr 1fr; width: 100%; max-width: 460px; }
body.site .mod-legat .seg button { min-height: 42px; font-size: .9rem; }
body.site .mod-legat-text { font-size: .86rem; margin-top: 8px; }
body.site .ora.ora-dubla { min-height: 54px; }
body.site .ora.ora-dubla small { font-size: .72rem; margin-top: 2px; }

body.site .sugestii { gap: 10px; max-width: 640px; }
body.site .sug-intro { font-size: .92rem; margin-bottom: 4px; }
body.site .sug-card { padding: 16px; border-radius: 14px; gap: 12px; }
body.site .sug-card .cutie { width: 22px; height: 22px; }
body.site .sug-card .cutie .ic { width: 12px; height: 12px; }
body.site .sug-corp { gap: 6px; }
body.site .sug-corp b { font-size: 1rem; }
body.site .sug-rand { font-size: .92rem; }
body.site .sug-corp small { font-size: .8rem; }
body.site .sug-calendar { padding: 14px; border-radius: 14px; font-size: .95rem; gap: 8px; min-height: 52px; }
body.site .sug-calendar .ic { width: 18px; height: 18px; }
/* comutatorul „Ambele odată / Separat” pe toata latimea */
body.site .mod-legat .seg { max-width: none !important; width: 100%; }
/* intrebarile serviciului pe site */
body.site .intrebari { gap: 14px; }
body.site .int-card { padding: 16px; border-radius: 14px; }
body.site .int-cap { margin-bottom: 12px; }
body.site .int-cap b { font-size: 1.02rem; }
body.site .int-cap small { font-size: .86rem; margin-top: 3px; }
body.site .int-optiuni { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; }
body.site .int-opt { padding: 12px; border-radius: 12px; gap: 10px; }
body.site .int-opt .cutie { width: 20px; height: 20px; }
body.site .int-opt .cutie .ic { width: 12px; height: 12px; }
body.site .int-opt .io-text b { font-size: .95rem; }
body.site .int-opt .io-text small { font-size: .8rem; margin-top: 2px; }
body.site .imp-stare { padding: 10px 12px; border-radius: 10px; font-size: .88rem; margin-bottom: 10px; gap: 10px; }
body.site .imp-stare .ic { width: 15px; height: 15px; margin-right: 6px; vertical-align: -2px; }
body.site .imp-puncte { gap: 5px; }
body.site .imp-puncte i { width: 11px; height: 11px; }
body.site .imp-randuri { gap: 8px; }
body.site .imp-rand { padding: 12px; border-radius: 12px; gap: 12px; }
body.site .imp-et b { font-size: .95rem; }
body.site .imp-et small { font-size: .8rem; margin-top: 2px; }
body.site .imp-nr-grup { gap: 5px; }
body.site .imp-nr { width: 38px; height: 38px; border-radius: 9px; font-size: .95rem; }
@media (max-width: 559.98px) {
  body.site .imp-rand { flex-direction: column; align-items: stretch; }
  body.site .imp-nr-grup { display: grid; grid-template-columns: repeat(5, 1fr); }
  body.site .imp-nr { width: auto; height: 42px; }
  body.site .int-optiuni { grid-template-columns: 1fr; }
}
body.site .imp-stare > span:first-child { gap: 6px; }

/* ecranul nu mai centreaza cu justify-content (taia partea de sus cand continutul e mai inalt decat ecranul);
   centrarea verticala se face cu margini automate, care nu ies niciodata din zona derulabila */
body.site .ecran.activ { justify-content: flex-start !important; }
body.site .ecran.activ > .widget { margin-top: auto !important; margin-bottom: auto !important; flex-shrink: 0; }
/* patru niveluri: doua cate doua, nu trei plus unul singur pe rand */
@media (min-width: 700px) { body.site .pachete:has(> .pachet:nth-child(4)) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }

body.site .marca-model { gap: 10px; margin-top: 18px; max-width: 520px; margin-left: auto; margin-right: auto; }
body.site .mm-camp { gap: 6px; }
body.site .mm-camp > span { font-size: .82rem; }
body.site .mm-camp select, body.site .mm-text { height: 46px; padding: 0 12px; border-radius: 12px; font-size: 1rem; appearance: auto; color-scheme: dark; }
body.site .mm-text { margin-top: 2px; }
@media (max-width: 420px) { body.site .marca-model { grid-template-columns: 1fr; } }

body.site .inclus-rezumat { padding: 14px 16px; margin-bottom: 18px; border-radius: 14px; }
body.site .inclus-rezumat .ir-cap { font-size: .9rem; gap: 8px; margin-bottom: 10px; }
body.site .inclus-rezumat .ir-cap .ic { width: 16px; height: 16px; }
body.site .inclus-rezumat ul { gap: 6px; }
body.site .inclus-rezumat li { padding: 5px 10px; font-size: .8rem; }
body.site .eticheta-supl { margin: 0 0 10px; }

/* primul pas pe site: bloc centrat, numarul pe toata latimea blocului */
body.site .masina-pas { max-width: 520px; gap: 14px; justify-items: stretch !important; margin: 4px auto 0; }
body.site .masina-pas .placa { max-width: none !important; height: 64px !important; }
body.site .masina-pas .placa .nr, body.site .masina-pas .placa input.nr { font-size: 1.6rem !important; }
body.site .mp-nota { padding: 11px 13px; border-radius: 12px; font-size: .88rem; gap: 10px; }
body.site .mp-nota .ic { width: 17px; height: 17px; margin-top: 1px; }
body.site .mp-detalii { padding: 16px; border-radius: 14px; margin-top: 4px; }
body.site .mp-cap { margin-bottom: 12px; gap: 6px 12px; }
body.site .mp-cap b { font-size: .98rem; }
body.site .mp-cap span { font-size: .8rem; }
body.site .mp-detalii .marca-model { max-width: none; margin: 0; }
body.site .mp-detalii .mm-camp select, body.site .mp-detalii .mm-text { background: rgba(255,255,255,.03); }
/* blocul primului pas aliniat cu titlul pasului, nu centrat in gol */
body.site .masina-pas { margin-left: 0 !important; margin-right: 0 !important; max-width: 560px; }
/* listele marca/model: sageata proprie, cu spatiu fata de marginea din dreapta */
body.site .mm-camp select { appearance: none !important; -webkit-appearance: none !important; padding-right: 42px !important; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23b4b4bd' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important; background-position: right 14px center !important; background-size: 16px 16px !important; }
body.site .mm-camp select:disabled { cursor: default; }
/* spatii egale intre numar, nota si cardul cu marca si modelul (zona goala nu mai adauga spatiu) */
body.site .masina-pas > #vehicul-gasit:empty { display: none; }
body.site .masina-pas > .mp-detalii { margin-top: 0 !important; }
body.site .masina-pas { gap: 16px !important; }

/* ===== meniul de pachete (dupa afisul AutoKraft) ===== */
@media (min-width: 900px) {
  body.site .widget.pas-lat .corp { grid-template-columns: minmax(0, 1fr) !important; }
  body.site .widget.pas-lat .panou { display: none !important; }
}
body.site .pm-meniu { display: grid !important; gap: 14px !important; grid-template-columns: 1fr !important; align-items: stretch; }
@media (min-width: 700px) { body.site .pm-meniu { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (min-width: 1000px) { body.site .widget.pas-lat .pm-meniu { grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)) !important; } }
body.site .pm { --c1: #3a3d44; --c2: #8a8f99; --fond: linear-gradient(180deg, #1d1f24 0%, #141518 100%); position: relative; display: flex !important; flex-direction: column; text-align: left; padding: 0 !important; overflow: visible; border-radius: 16px !important; border: 1.5px solid var(--c1) !important; background: var(--fond) !important; color: #fff; min-height: 0 !important; transition: transform .15s, box-shadow .2s, border-color .2s; }
body.site .pm:hover { transform: translateY(-2px); }
body.site .pm.stil-accent { --c1: #d8232a; --c2: #ff4a51; --fond: linear-gradient(180deg, #2a1012 0%, #160b0c 100%); box-shadow: 0 10px 30px rgba(216,35,42,.18); }
body.site .pm.stil-auriu { --c1: #d9b24a; --c2: #f3d27a; --fond: linear-gradient(180deg, #241d0d 0%, #14110a 100%); box-shadow: 0 10px 30px rgba(217,178,74,.14); }
body.site .pm.ales { box-shadow: 0 0 0 3px var(--c1), 0 14px 36px rgba(0,0,0,.45) !important; }
body.site .pm-panglica { position: absolute; top: -12px; left: 50%; transform: translateX(-50%); display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; padding: 4px 12px; border-radius: 999px; background: var(--c1); color: #fff; font-size: .68rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; z-index: 2; }
body.site .pm.stil-auriu .pm-panglica { color: #1a1406; }
body.site .pm-panglica .ic { width: 12px; height: 12px; }
body.site .pm-cap { padding: 22px 16px 12px; text-align: center; border-bottom: 1px solid rgba(255,255,255,.06); }
body.site .pm-nume { display: block; font-size: 1.32rem; font-weight: 900; font-style: italic; letter-spacing: -.01em; text-transform: uppercase; line-height: 1.05; }
body.site .pm.stil-normal .pm-nume { background: linear-gradient(180deg, #ffffff, #b9bec7); -webkit-background-clip: text; background-clip: text; color: transparent; }
body.site .pm.stil-accent .pm-nume { color: #fff; }
body.site .pm.stil-auriu .pm-nume { background: linear-gradient(180deg, #fff1c1, #d9b24a 70%); -webkit-background-clip: text; background-clip: text; color: transparent; }
body.site .pm-cap::after { content: ""; display: block; width: 46px; height: 3px; border-radius: 2px; margin: 9px auto 0; background: var(--c1); }
body.site .pm-sub { display: block; margin-top: 8px; font-size: .78rem; color: rgba(255,255,255,.6); line-height: 1.35; }
body.site .pm-foto { height: 150px; overflow: hidden; background: #0d0d10; }
body.site .pm-foto img { width: 100%; height: 100%; object-fit: cover; display: block; }
body.site .pm-ben { list-style: none; margin: 0; padding: 12px 16px 4px; display: grid; gap: 0; flex: 1; align-content: start; }
body.site .pm-ben li { display: flex; align-items: flex-start; gap: 9px; padding: 7px 0; border-bottom: 1px solid rgba(255,255,255,.06); font-size: .84rem; line-height: 1.3; color: rgba(255,255,255,.9); }
body.site .pm-ben li:last-child { border-bottom: 0; }
body.site .pm-ben .ic { width: 15px; height: 15px; flex: none; margin-top: 1px; color: var(--c2); }
body.site .pm-pt { margin: 4px 16px 0; padding-top: 10px; border-top: 1px solid rgba(255,255,255,.08); font-size: .8rem; font-style: italic; color: rgba(255,255,255,.65); text-align: center; line-height: 1.35; }
body.site .pm-jos { padding: 12px 12px 12px; display: grid; gap: 10px; }
body.site .pm-pret { text-align: center; }
body.site .pm-pret b { font-size: 1.6rem; font-weight: 900; letter-spacing: -.02em; }
body.site .pm-pret b i { font-style: normal; font-size: .8rem; font-weight: 700; margin-left: 4px; color: rgba(255,255,255,.65); }
body.site .pm-pret small { display: block; font-size: .72rem; color: rgba(255,255,255,.5); margin-top: 2px; }
body.site .pm-cta { display: grid; gap: 2px; padding: 10px 12px; border-radius: 12px; text-align: center; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); }
body.site .pm.stil-accent .pm-cta { background: linear-gradient(90deg, #b71c22, #e0262d); border-color: transparent; }
body.site .pm.stil-auriu .pm-cta { background: linear-gradient(90deg, #b8902f, #e9c766); border-color: transparent; color: #1a1406; }
body.site .pm-cta span { font-size: .74rem; opacity: .85; line-height: 1.3; }
body.site .pm-cta b { display: inline-flex; align-items: center; justify-content: center; gap: 6px; font-size: .9rem; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; }
body.site .pm-cta b .ic { width: 14px; height: 14px; }
body.site .pm.ales .pm-cta { outline: 2px solid rgba(255,255,255,.5); outline-offset: -2px; }
@media (max-width: 699.98px) { body.site .pm-foto { height: 130px; } body.site .pm-meniu { gap: 20px !important; padding-top: 6px; } }
/* meniul de pachete: lista cu spatiu fata de margine, imagini aliniate, totul incape pe ecran */
body.site .pm .pm-ben { padding: 10px 16px 4px !important; margin: 0 !important; }
body.site .pm .pm-ben li { padding-left: 0 !important; }
@media (min-width: 1000px) {
  body.site .widget.pas-lat .pm-cap { min-height: 104px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 18px 12px 10px; }
  body.site .widget.pas-lat .pm-nume { font-size: 1.16rem; }
  body.site .widget.pas-lat .pm-sub { font-size: .74rem; margin-top: 6px; }
  body.site .widget.pas-lat .pm-cap::after { margin-top: 7px; }
  body.site .widget.pas-lat .pm-foto { height: 118px; }
  body.site .widget.pas-lat .pm-ben li { padding: 5px 0; font-size: .8rem; }
  body.site .widget.pas-lat .pm-pt { font-size: .76rem; padding-top: 8px; }
  body.site .widget.pas-lat .pm-jos { padding: 10px 12px 12px; gap: 8px; }
  body.site .widget.pas-lat .pm-pret b { font-size: 1.4rem; }
  body.site .widget.pas-lat .pm-cta { padding: 8px 10px; }
  body.site .widget.pas-lat .pm-cta span { font-size: .7rem; }
  body.site .widget.pas-lat .pm-cta b { font-size: .84rem; }
}
body.site .placa .ro { justify-content: center !important; padding: 0 !important; gap: 5px !important; line-height: 1 !important; }
/* la alegerea nivelului, cardul se lateste (centrat, margini egale), ca textele sa stea pe un rand */
@media (min-width: 1000px) {
  body.site .widget.pas-lat .pm-cap { min-height: 92px; }
}
@media (min-width: 1000px) { body.site .widget.pas-lat .pm-meniu:not(:has(> .pm:nth-child(4))) .pm-foto { height: 160px; } }
/* primul pas pe desktop: numarul, nota si marca/modelul pe toata latimea zonei, cu acelasi spatiu stanga si dreapta */
@media (min-width: 900px) { body.site .masina-pas { max-width: none !important; width: 100% !important; } }

/* ---------- Ce include + comparatia nivelurilor (site) ---------- */
body.site .pm-compara { gap: 14px; margin: 0 0 18px; padding: 14px 16px; border-radius: 14px; }
body.site .pmc-ic { width: 42px; height: 42px; } body.site .pmc-ic .ic { width: 22px; height: 22px; }
body.site .pmc-text b { font-size: 1rem; } body.site .pmc-text small { font-size: .86rem; line-height: 1.35; }
body.site .pmc-sag .ic { width: 20px; height: 20px; }
body.site .pm-info { top: 10px; right: 10px; gap: 5px; padding: 5px 10px 5px 7px; font-size: .74rem; }
body.site .pm-info .ic { width: 15px; height: 15px; }
body.site .pm-info::before { width: 9px; height: 9px; top: -2px; right: -2px; }
body.site .val .dialog.dialog-detalii { width: min(94vw, 640px); padding: 0; border-radius: 18px; max-height: 86vh; }
body.site .dd-x { top: 12px; right: 12px; width: 36px; height: 36px; } body.site .dd-x .ic { width: 18px; height: 18px; }
body.site .dd-cap { padding: 22px 60px 16px 20px; gap: 4px; }
body.site .dd-et { font-size: .7rem; } body.site .dd-cap b { font-size: 1.35rem; } body.site .dd-pret { font-size: .92rem; }
body.site .dd-ops { padding: 10px 20px; } body.site .dd-ops li { gap: 12px; padding: 10px 0; font-size: .95rem; }
body.site .dd-ops li::before { width: 26px; height: 26px; font-size: .78rem; } body.site .dd-ops li span { padding-top: 3px; gap: 2px; }
body.site .dd-jos { gap: 10px; padding: 14px 20px; } body.site .dd-jos .btn { min-height: 46px; font-size: .95rem; border-radius: 12px; padding: 0 12px; }
body.site .dd-tabel-wrap { padding: 0 12px 14px; } body.site .dd-tabel { font-size: .88rem; }
body.site .dd-tabel thead th { padding: 12px 4px 9px; } body.site .dd-tabel thead th b { font-size: .95rem; } body.site .dd-tabel thead th small { font-size: .74rem; }
body.site .dd-tabel td { padding: 9px 6px; } body.site .dd-tabel td.da .ic { width: 18px; height: 18px; } body.site .dd-tabel td.nu i { width: 12px; }
body.site .dd-tabel tfoot td { padding-top: 12px; } body.site .dd-tabel tfoot .btn { min-height: 40px; font-size: .85rem; border-radius: 10px; padding: 0 6px; }
@media (max-width: 699px) {
  body.site #val-detalii { padding: 0; align-items: flex-end; }
  body.site .val .dialog.dialog-detalii { width: 100%; max-height: 92vh; border-radius: 18px 18px 0 0; padding-bottom: env(safe-area-inset-bottom); }
  body.site .dd-tabel td.da, body.site .dd-tabel td.nu { width: 19%; }
  body.site .dd-tabel { font-size: .82rem; }
}
body.site .pm-foto { position: relative; }
body.site .pm-foto .pm-info { top: auto; bottom: 10px; right: 10px; }
body.site .pm-cap .pm-info { margin-top: 10px; }
@media (max-width: 699px) { body.site .dd-tabel thead th b { font-size: .8rem; } body.site .dd-tabel thead th small { font-size: .68rem; } body.site .dd-tabel thead th { padding: 10px 2px 8px; } }
body.site .val .dialog.dialog-detalii { max-height: 86dvh; }
@media (max-width: 699px) { body.site .val .dialog.dialog-detalii { max-height: 90dvh; } }
body.site .pm-info { box-shadow: 0 3px 10px rgba(0,0,0,.45); animation-name: pmInfoSite; font-weight: 800; }
@keyframes pmInfoSite {
  0%   { transform: scale(1);    box-shadow: 0 3px 10px rgba(0,0,0,.45), 0 0 0 0 rgba(var(--halo),.6); }
  50%  { transform: scale(1.06); box-shadow: 0 3px 10px rgba(0,0,0,.45), 0 0 0 9px rgba(var(--halo),0); }
  100% { transform: scale(1);    box-shadow: 0 3px 10px rgba(0,0,0,.45), 0 0 0 0 rgba(var(--halo),0); }
}
body.site .reco-inclus { gap: 6px; padding: 6px 12px; font-size: .85rem; } body.site .reco-inclus .ic { width: 15px; height: 15px; }
body.site .mp-nota { padding: 0 2px !important; margin-top: -6px; border-radius: 0; font-size: .8rem; gap: 6px; line-height: 1.35; }
body.site .mp-nota .ic { width: 14px; height: 14px; margin: 0; }
body.site .mp-nota.avertizare { padding: 10px 12px !important; margin-top: 0; border-radius: 12px; font-size: .86rem; gap: 9px; }
body.site .masina-pas .placa { width: 100% !important; max-width: 300px !important; justify-self: center !important; margin: 0 auto !important; }
body.site .cs-btn { font-size: .95rem; padding: 0 14px; height: 46px; border-radius: 12px; gap: 10px; }
body.site .cs-btn .ic { width: 17px; height: 17px; }
body.site .val .dialog.cs-dialog { width: min(94vw, 460px) !important; height: min(76dvh, 620px); border-radius: 18px; padding: 0 !important; }
body.site .cs-cap { padding: 18px 18px 12px; } body.site .cs-cap b { font-size: 1.1rem; } body.site .cs-cap .dd-x { width: 36px; height: 36px; }
body.site .cs-cauta { margin: 0 18px 12px; padding: 0 12px; gap: 9px; border-radius: 12px; } body.site .cs-cauta .ic { width: 17px; height: 17px; }
body.site .cs-cauta input { font-size: 16px; padding: 12px 0; }
body.site .cs-lista { padding: 0 8px 10px; }
body.site .cs-opt { padding: 13px 10px; font-size: .95rem; } body.site .cs-opt .ic { width: 17px; height: 17px; }
body.site .cs-gol { padding: 28px 12px; font-size: .9rem; }
@media (max-width: 699px) { body.site #val-cauta { padding: 0; align-items: flex-end; } body.site .val .dialog.cs-dialog { width: 100% !important; height: 88dvh; border-radius: 18px 18px 0 0; } }
body.site .final-confirmare { max-width: 440px; margin: 16px auto 0; padding: 13px 14px; gap: 12px; border-radius: 14px; font-size: .92rem; }
body.site .final-confirmare .fc-ic { width: 34px; height: 34px; } body.site .final-confirmare .fc-ic .ic { width: 18px; height: 18px; }

/* ===== Audit mobil (programarea online) ===== */
/* recomandari: text lizibil */
body.site .reco-rand .t b { font-size: .95rem; line-height: 1.3; }
body.site .reco-rand .t span { font-size: .84rem; line-height: 1.45; margin-top: 2px; }
@media (max-width: 420px) { body.site .reco-rand { flex-wrap: wrap; } body.site .reco-rand .t { flex-basis: 100%; } }
/* „Ce include”: butoanele unul sub altul pe telefon */
@media (max-width: 420px) { body.site .dd-jos { flex-direction: column-reverse; gap: 8px; } body.site .dd-jos .btn { width: 100%; flex: none; } }
/* bara de jos pe telefoane mici: butonul incape */
@media (max-width: 400px) { body.site .subsol-total .et { display: none; } body.site .subsol .btn-rosu { font-size: .92rem; padding: 0 14px; } }
/* eticheta pasului activ in stepper pe telefon */
/* eticheta pasului activ nu incape in bara de sus pe telefon: ramane doar cercul numerotat */
/* Continua dezactivat: neutru, nu rosu stins */
body.site #btn-continua:disabled { background: #2a2a30; color: rgba(255,255,255,.45); box-shadow: none; }
/* hover care ramane agatat dupa atingere pe ecrane tactile */
@media (hover: none) { body.site .pm:hover { transform: none; } body.site .cs-opt:hover, body.site .cal-zi:hover { background: transparent; } body.site .pm-info:hover { filter: none; } }
/* cautarea din liste: fara X-ul nativ */
body.site #val-cauta input::-webkit-search-cancel-button { -webkit-appearance: none; }
/* lista de tari: aceeasi foaie de jos ca restul */
@media (max-width: 699px) { body.site #val-tari { padding: 0; align-items: flex-end; } body.site #val-tari .dialog { height: 92dvh; border-radius: 18px 18px 0 0 !important; padding-bottom: max(14px, env(safe-area-inset-bottom)); } }
@media (max-width: 400px) { body.site .tari-rapide, body.site .tari-grila { grid-template-columns: 1fr !important; } }
/* note scurte fara cuvinte ramase singure */
body.site .mp-nota, body.site .mp-nota span { text-wrap: pretty; }
body.site .subtitlu, body.site .int-sub, body.site .dialog p, body.site .tel-ajutor, body.site .tile .titlu, body.site .tile .desc { text-wrap: pretty; }
body.site .dd-cap b { text-wrap: balance; }
/* servicii suplimentare pe telefoane mici: titlul are loc */
@media (max-width: 400px) { body.site .rb .pret { min-width: 72px; } }
body.site .rb .pret small { white-space: nowrap; }
/* tinte de atingere de cel putin 44px */
body.site .pm-info { min-height: 34px; padding: 7px 12px 7px 9px; }
body.site .pm-info::after { content: ""; position: absolute; inset: -6px; }
body.site .dd-tabel tfoot .btn { min-height: 44px; }
body.site .imp-nr { height: 44px; }
body.site .cal-nav { width: 44px; height: 44px; }
body.site #btn-renunta { min-width: 44px; min-height: 44px; }
body.site .card h4 button { padding: 14px 0 14px 16px; margin: -14px 0; }
/* 0 la impartirea anvelopelor: neutru, nu rosu */
body.site .imp-nr.ales[data-n="0"] { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.3); color: #fff; }
/* contact: spatiu intre grupuri */
body.site .contact-grila .eticheta[style] { margin-top: 20px !important; }
/* rezumat */
body.site .rez-masina .placa-mica { white-space: nowrap; flex: none; }
@media (max-width: 560px) { body.site .rez-prog div { flex-direction: column; gap: 2px; } body.site .rez-prog b { text-align: left; } }
/* tableta: Continua nu se intinde pe toata latimea */
@media (min-width: 600px) and (max-width: 899.98px) { body.site .subsol .btn-rosu { flex: 0 0 auto; min-width: 220px; } }
body.site .nota-gdpr { gap: 8px; margin: 14px 2px 0; font-size: .8rem; }
body.site .nota-gdpr .ic { width: 14px; height: 14px; margin-top: 2px; }
