/* Layout: bară de date rutiere sus, calculator ca piesă centrală, coloană laterală cu restricții + reclamă discretă */
:root{
  --bg:#eef0f2;
  --surface:#ffffff;
  --ink:#14181d;
  --muted:#5a636e;
  --line:#d5dae0;
  --accent:#1d4fa0;      /* albastru indicator rutier */
  --accent-ink:#ffffff;
  --signal:#f2b705;      /* galben marcaj */
  --ok:#1f7a4d; --warn:#a86100;
  --display:"Bahnschrift","DIN Alternate","Roboto Condensed","Arial Narrow","Helvetica Neue",Arial,sans-serif;
  --body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SF Mono","Cascadia Mono",Consolas,Menlo,monospace;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0f1216;--surface:#171b21;--ink:#e8ebef;--muted:#99a3ae;--line:#2a3039;
    --accent:#6b9cf0;--accent-ink:#0b1424;--signal:#f2b705;--ok:#4cc38a;--warn:#e7a447;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#0f1216;--surface:#171b21;--ink:#e8ebef;--muted:#99a3ae;--line:#2a3039;
  --accent:#6b9cf0;--accent-ink:#0b1424;--signal:#f2b705;--ok:#4cc38a;--warn:#e7a447;
  color-scheme:dark;
}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--bg);color:var(--ink);font:400 15px/1.55 var(--body)}
a{color:var(--accent)}
:focus-visible{outline:2px solid var(--signal);outline-offset:2px}
h1,h2,h3{font-family:var(--display);font-stretch:85%;line-height:1.15;text-wrap:balance;margin:0}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}

/* header */
header.top{background:var(--ink);color:var(--bg)}
:root[data-theme="dark"] header.top{background:#07090c;color:var(--ink)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) header.top{background:#07090c;color:var(--ink)}}
.top .wrap{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:.02em;text-decoration:none;color:inherit}
.logo svg{flex:none}
nav.main{display:flex;gap:4px;flex-wrap:wrap;margin-left:auto}
nav.main a{color:inherit;text-decoration:none;font-size:14px;padding:6px 10px;border-radius:6px;opacity:.85}
nav.main a:hover{opacity:1;background:rgba(255,255,255,.08)}
.noacc{font-size:12px;font-family:var(--mono);border:1px solid currentColor;border-radius:99px;padding:2px 9px;opacity:.7}

/* ticker */
.ticker{border-bottom:1px solid var(--line);background:var(--surface)}
.ticker .wrap{display:flex;gap:28px;overflow-x:auto;padding-top:9px;padding-bottom:9px;font-size:13px;white-space:nowrap}
.tk{display:flex;gap:8px;align-items:baseline}
.tk b{font-family:var(--mono);font-weight:500;font-variant-numeric:tabular-nums}
.tk span{color:var(--muted)}
.chip{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:4px;background:var(--signal);color:#1a1400}

/* intro */
.intro{padding:34px 0 18px}
.intro h1{font-size:clamp(28px,4.4vw,44px);font-weight:800;max-width:20ch}
.intro p{color:var(--muted);max-width:62ch;margin:10px 0 0;font-size:16px}

/* grid */
.grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start;padding-bottom:40px}
@media (max-width:920px){.grid{grid-template-columns:minmax(0,1fr)}}
.stack>*,.card{min-width:0}
@media (max-width:640px){.card{padding:16px}.top .wrap{gap:10px}nav.main{margin-left:0;width:100%;flex-wrap:nowrap;overflow-x:auto}nav.main a{white-space:nowrap;padding:6px 8px}.noacc{display:none}.opts .capcol{display:none}.opts td.cap{display:none}.vcap{display:block}}
.vcap{display:none;font-size:12px;color:var(--muted);font-weight:400}
.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:22px}
.stack{display:flex;flex-direction:column;gap:24px}

/* calculator */
.calc h2{font-size:26px;display:flex;align-items:center;gap:10px}
.calc .sub{color:var(--muted);margin:6px 0 18px;font-size:14px}
.form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.f{display:flex;flex-direction:column;gap:5px}
.f.c2{grid-column:span 2}
@media (max-width:640px){.form{grid-template-columns:repeat(2,minmax(0,1fr))}.f.c2{grid-column:span 2}}
label{font-size:12.5px;font-weight:600;color:var(--muted);letter-spacing:.02em}
input,select{font:500 15px var(--body);color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:9px 10px;width:100%;min-width:0}
input[type=number]{font-family:var(--mono);font-variant-numeric:tabular-nums}
.checks{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}
.tog{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:99px;padding:6px 12px;font-size:13.5px;cursor:pointer;background:var(--bg)}
.tog input{width:auto;margin:0;accent-color:var(--accent)}
.route{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:var(--muted);font-family:var(--mono);border-top:1px dashed var(--line);padding-top:12px}
.route b{color:var(--ink);font-weight:500}

.result{margin-top:20px;border-radius:10px;background:var(--accent);color:var(--accent-ink);padding:20px 22px;display:grid;grid-template-columns:1fr auto;gap:8px 20px;align-items:end}
.result .lbl{font-size:12px;letter-spacing:.08em;text-transform:uppercase;opacity:.85;font-family:var(--mono)}
.result .vt{font-family:var(--display);font-weight:800;font-size:clamp(20px,2.6vw,26px)}
.result .price{font-family:var(--display);font-weight:800;font-size:clamp(30px,5vw,44px);font-variant-numeric:tabular-nums;line-height:1}
.result .ron{font-family:var(--mono);font-size:13px;opacity:.85;text-align:right}
.result .why{grid-column:1/-1;font-size:13.5px;opacity:.92}
@media (max-width:520px){.result{grid-template-columns:1fr}.result .ron{text-align:left}}

.opts{width:100%;border-collapse:collapse;margin-top:18px;font-size:14px}
.opts th{text-align:left;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:6px 8px;border-bottom:1px solid var(--line)}
.opts td{padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.opts td.n{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.opts th.n{text-align:right}
.opts tr.rec td:first-child{box-shadow:inset 3px 0 0 var(--signal)}
.opts .vn{font-weight:600}
.opts .cap{font-size:12px;color:var(--muted)}
.pill{display:inline-block;font-size:11px;font-family:var(--mono);padding:1px 7px;border-radius:99px;border:1px solid currentColor;margin-left:6px}
.pill.ok{color:var(--ok)} .pill.no{color:var(--muted)}
.tablewrap{overflow-x:auto}
.disc{font-size:12.5px;color:var(--muted);margin:12px 0 0}

/* ad */
.ad{border:1px dashed var(--line);border-radius:10px;background:transparent;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:12.5px;text-align:center}
.ad .t{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.ad.box{min-height:250px}
.ad.strip{min-height:90px}

/* sidebar */
.side h3{font-size:18px;margin-bottom:4px}
.side .sub{font-size:12.5px;color:var(--muted);margin:0 0 12px}
.rlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.rlist li{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:10px 0;border-top:1px solid var(--line);font-size:13.5px}
.rlist li:first-child{border-top:0}
.cc{font-family:var(--mono);font-weight:500;font-size:12px;background:var(--bg);border:1px solid var(--line);border-radius:4px;text-align:center;padding:2px 0;height:fit-content}
.rlist small{display:block;color:var(--muted);font-size:12px}

/* guides */
.sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}
.sec-h h2{font-size:24px}
.sec-h a{font-size:13.5px}
.guides{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.g{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:6px;text-decoration:none;color:inherit}
.g:hover{border-color:var(--accent)}
.g .tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.g h3{font-size:17px}
.g p{margin:0;font-size:13.5px;color:var(--muted)}

.tools{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.tool{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:14px;font-weight:500}
.tool .soon{margin-left:auto;font-family:var(--mono);font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}

dl.gl{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;margin:0;font-size:13.5px}
dl.gl dt{font-family:var(--mono);font-weight:500}
dl.gl dd{margin:0;color:var(--muted)}

footer{border-top:1px solid var(--line);padding:26px 0 40px;color:var(--muted);font-size:13px}
footer .wrap{display:flex;flex-wrap:wrap;gap:10px 28px;justify-content:space-between}

/* ghid */
.guide{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start;padding:28px 0 48px}
@media (max-width:920px){.guide{grid-template-columns:minmax(0,1fr)}}
.crumb{font-size:13px;color:var(--muted);display:flex;gap:6px;flex-wrap:wrap}
.crumb a{color:var(--muted)}
.art{max-width:70ch}
#guideTitle:focus{outline:none}
.art h1{font-size:clamp(28px,4.2vw,42px);font-weight:800;margin:10px 0 8px}
.art .lede{font-size:17px;color:var(--muted);margin:0 0 6px}
.meta{font-family:var(--mono);font-size:12px;color:var(--muted);margin-bottom:22px}
.art h2{font-size:24px;margin:34px 0 10px;scroll-margin-top:16px}
.art h3{font-size:18px;margin:20px 0 6px}
.art p,.art li{font-size:15.5px}
.art ul,.art ol{padding-left:20px;display:flex;flex-direction:column;gap:6px}
.keybox{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}
@media (max-width:560px){.keybox{grid-template-columns:minmax(0,1fr)}}
.kb{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--signal);border-radius:8px;padding:12px 14px}
.kb b{display:block;font-family:var(--display);font-stretch:85%;font-size:24px;font-weight:800;font-variant-numeric:tabular-nums}
.kb span{font-size:13px;color:var(--muted)}
.tbl{width:100%;border-collapse:collapse;font-size:14px;margin:10px 0}
.tbl th{text-align:left;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:6px 8px;border-bottom:1px solid var(--line)}
.tbl td{padding:9px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.tbl td:first-child{font-weight:600}
.note{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:12px 14px;font-size:14px;color:var(--muted)}
.steps{counter-reset:s;list-style:none;padding:0!important}
.steps li{counter-increment:s;display:grid;grid-template-columns:30px 1fr;gap:10px}
.steps li::before{content:counter(s);font-family:var(--mono);font-size:13px;width:24px;height:24px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center}
.faq details{border-top:1px solid var(--line);padding:10px 0}
.faq summary{cursor:pointer;font-weight:600}
.faq details p{margin:8px 0 0;color:var(--muted)}
.srcs{font-size:13.5px}
.toc{position:sticky;top:16px}
.toc ol{margin:0;padding-left:18px;font-size:14px;display:flex;flex-direction:column;gap:6px}
@media (max-width:920px){.toc{position:static}}
/* checker */
.chk{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:18px;margin:18px 0}
.chk h3{margin:0 0 4px}
.chk .form{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:560px){.chk .form{grid-template-columns:minmax(0,1fr)}}
.verdict{margin-top:14px;border-radius:8px;padding:14px 16px;font-size:14.5px}
.verdict.yes{background:var(--accent);color:var(--accent-ink)}
.verdict.no{background:var(--bg);border:1px solid var(--line)}
.verdict strong{font-family:var(--display);font-stretch:85%;font-size:22px;display:block;margin-bottom:4px}
.verdict ul{margin:6px 0 0;padding-left:18px}
[hidden]{display:none!important}

@media (prefers-reduced-motion: reduce){*{transition:none!important}}

/* reclame: ascunse până la activarea AdSense (adaugă clasa ads-on pe <body>) */
.ad{display:none}
body.ads-on .ad{display:flex}
.toc-h{font-size:16px;margin-bottom:10px}
.chk .hint{color:var(--muted);font-size:13.5px;margin:0 0 12px}
/* pagini simple */
.page{max-width:72ch;padding:32px 0 56px}
.page h1{font-size:clamp(28px,4vw,40px);font-weight:800;margin:10px 0 12px}
.page h2{font-size:22px;margin:28px 0 8px}
.page p,.page li{font-size:15.5px}
.page .meta{margin-bottom:18px}
.foot-links{display:flex;gap:6px 18px;flex-wrap:wrap}
.foot-links a{color:var(--muted)}
.big404{font-family:var(--display);font-weight:800;font-size:96px;line-height:1;color:var(--accent)}

/* localitate cu sugestii */
.locrow{display:grid;grid-template-columns:minmax(0,9.5em) minmax(0,1fr);gap:6px}
.ac{position:relative}
.ac-list{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 4px);margin:0;padding:4px;list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.14);max-height:320px;overflow-y:auto}
.ac-list li{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:8px 10px;border-radius:6px;cursor:pointer;font-size:14.5px}
.ac-list li span{color:var(--muted);font-size:12.5px;text-align:right}
.ac-list li b{font-weight:600}
.ac-list li.on,.ac-list li[data-i]:hover{background:var(--bg)}
.ac-list li.none{color:var(--muted);cursor:default}
.ac-hint{font-size:12px;color:var(--muted);min-height:1.2em}
.ac-hint.warn{color:var(--warn)}
.disc a{color:inherit}
@media (max-width:640px){.locrow{grid-template-columns:minmax(0,1fr)}}

/* coduri poștale */
.cp-form{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:560px){.cp-form{grid-template-columns:minmax(0,1fr)}.cp-form .f.c2{grid-column:auto}}
.cp-form .f.c2{grid-column:1/-1}
.cp-out{margin-top:14px}
.cp-out:empty{display:none}
.cp-hit{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;background:var(--accent);color:var(--accent-ink);border-radius:8px;padding:14px 16px;margin-bottom:12px}
.cp-hit .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;opacity:.85}
.cp-code{font-family:var(--display);font-weight:800;font-size:clamp(30px,6vw,40px);font-variant-numeric:tabular-nums;letter-spacing:.04em;line-height:1.1}
.cp-code-s{font-size:clamp(20px,4vw,26px);letter-spacing:0}
.cp-where{font-size:13.5px;opacity:.92}
button.copy{font:600 13px var(--body);border:1px solid currentColor;background:transparent;color:inherit;border-radius:6px;padding:6px 10px;cursor:pointer}
.cp-tbl button.copy{color:var(--accent);padding:3px 8px;font-size:12px}
.cp-tbl td.n{font-family:var(--mono);font-variant-numeric:tabular-nums}
.cp-rev{max-height:320px;overflow-y:auto;margin:0;padding-left:20px;font-size:14px}
.cp-rev-f{max-width:260px}
.cp-side{margin:0;padding-left:18px;font-size:14px;display:flex;flex-direction:column;gap:6px}
.warn{color:var(--warn)}
a.tool-live{text-decoration:none;color:inherit;border-color:var(--accent)}
.soon.live{color:var(--accent)}

/* incoterms */
.inc-bar{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.inc-b{font:600 14px var(--mono);padding:7px 11px;border-radius:6px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer}
.inc-b.sea{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.inc-b[aria-pressed="true"]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.inc-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:16px}
.inc-head b{font-family:var(--mono)}
.inc-use{color:var(--muted);font-size:14.5px;margin:6px 0 10px}
.inc-tbl td:first-child{font-weight:500}
.who{display:inline-block;white-space:nowrap;font-size:12.5px;font-weight:600;padding:2px 9px;border-radius:99px}
.who.v{background:var(--accent);color:var(--accent-ink)}
.who.c{background:var(--signal);color:#1a1400}
.who.none{color:var(--muted);border:1px dashed var(--line)}
.inc-risk{background:var(--bg);border-left:3px solid var(--signal);padding:10px 12px;border-radius:6px;font-size:14.5px;margin:10px 0 0}

.cb-kinds{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px;flex-direction:row}
.cb-kinds legend{font-size:12.5px;font-weight:600;color:var(--muted);margin-bottom:6px;width:100%}

/* timpi de condus */
.d-tl{list-style:none;margin:0;padding:0 0 0 14px;border-left:2px solid var(--line);display:flex;flex-direction:column;gap:10px}
.d-tl li{position:relative;display:flex;flex-wrap:wrap;gap:2px 10px;align-items:baseline;font-size:14.5px}
.d-tl li::before{content:"";position:absolute;left:-20px;top:6px;width:10px;height:10px;border-radius:50%;background:var(--accent)}
.d-tl .d-t{font-family:var(--mono);font-size:12.5px;color:var(--muted);min-width:9.5em}
.d-tl small{width:100%;color:var(--muted);font-size:12.5px;padding-left:0}
.checks .tog{border-radius:10px;align-items:flex-start}.checks .tog input{margin-top:3px}

/* bara de curs BNR */
.fxbar{background:var(--surface);border-bottom:1px solid var(--line)}
.fxbar .wrap{display:flex;align-items:center;gap:6px;overflow-x:auto;white-space:nowrap;padding-top:7px;padding-bottom:7px;scrollbar-width:none}
.fxbar .wrap::-webkit-scrollbar{display:none}
.fx-l{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-right:6px;padding:3px 8px;border:1px solid var(--line);border-radius:99px}
.fx-i{display:inline-flex;gap:6px;align-items:baseline;padding:3px 10px;border-radius:6px;font-size:13.5px}
.fx-i+.fx-i{border-left:1px solid var(--line);border-radius:0}
.fx-i span{font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;color:var(--muted)}
.fx-i b{font-family:var(--mono);font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
.fx-i.main b{color:var(--accent)}

.cp-form input:disabled{opacity:.55;cursor:not-allowed}
