:root { --page-bg:#0a0a0a; --panel:#151719; --foreground:#f5f0e6; --muted:#b8b0a0; --gold:#d4af37; --border:#5b4c22; --input:#090b0d; --error:#ffb4ad; --whatsapp:#168d4d; --on-action:#080909; }
.calculator-tool { padding:24px; background:var(--panel); border:1px solid var(--gold); border-radius:8px; font-family:Arial,sans-serif; color:var(--foreground); }
.calculator-tool * { box-sizing:border-box; letter-spacing:0; }
.calculator-tool label { display:block; font-size:14px; color:var(--muted); }
.calculator-tool input,.calculator-tool select { width:100%; min-width:0; height:46px; border:1px solid var(--border); border-radius:6px; color:var(--foreground); background:var(--input); padding:10px; margin:6px 0 10px; font:inherit; color-scheme:dark; }
.calculator-tool select { white-space:nowrap; text-overflow:ellipsis; }
.address-grid,.two-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.control { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:10px 14px; border:1px solid var(--border); border-radius:6px; background:var(--input); color:var(--gold); font:inherit; cursor:pointer; text-decoration:none; text-align:center; }
.control:disabled { opacity:.5; cursor:not-allowed; }
.control:focus-visible,input:focus-visible,select:focus-visible { outline:2px solid var(--gold); outline-offset:3px; }
.primary { background:var(--gold); color:var(--on-action); font-weight:bold; }
.full { width:100%; margin-top:16px; }
.address-row { display:flex; gap:6px; align-items:center; }.address-row input { flex:1; }.address-row .control { width:42px; padding:0; flex-shrink:0; }
.search { font-size:13px; margin-bottom:8px; }.swap { margin:8px 0 20px; }
.address-actions { display:flex; flex-wrap:wrap; gap:8px; }
.results { list-style:none; margin:6px 0 12px; }.results .control { width:100%; justify-content:flex-start; text-align:left; font-size:14px; }
.minimum { text-align:center; color:var(--muted); font-size:12px; margin:12px 0; }.error { color:var(--error); font-size:14px; padding:10px 0; }
.stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin:24px 0 12px; }.stats>div { text-align:center; color:var(--muted); font-size:12px; border-bottom:1px solid var(--border); padding:12px 4px; }.stats strong { display:block; color:var(--gold); font:26px Georgia,serif; margin-top:8px; }
.journey-map { height:330px; margin:20px 0 12px; border-radius:6px; z-index:0; }.map-label span { display:block; color:var(--on-action); background:var(--gold); padding:4px 8px; border-radius:4px; font:12px Arial,sans-serif; }.map-label .to { background:var(--foreground); }
.maps-link { color:var(--gold); display:block; text-align:center; margin-bottom:24px; }.calculator-tool h3 { font:26px Georgia,serif; margin:26px 0 18px; }.check { display:flex !important; align-items:center; gap:10px; }.check input { width:20px; height:20px; margin:0; }
.vehicle { text-align:center; margin:24px 0; }.vehicle img { display:block; height:150px; width:100%; object-fit:contain; margin-bottom:8px; }.vehicle strong { font-size:14px; color:var(--muted); }
.recap dl>div { display:grid; grid-template-columns:160px minmax(0,1fr); gap:12px; padding:12px 0; border-bottom:1px solid var(--border); font-size:14px; }.recap dt { color:var(--muted); }.recap dd { margin:0; overflow-wrap:anywhere; }.recap p { margin-top:16px; color:var(--muted); font-size:14px; }.whatsapp { background:var(--whatsapp); color:var(--foreground); font-weight:bold; }.payment { text-align:center; font-size:14px; color:var(--muted); margin-top:24px; }
@media(max-width:600px) { .calculator-tool { padding:16px; }.address-grid { grid-template-columns:1fr; }.two-columns { gap:10px; }.stats strong { font-size:22px; }.recap dl>div { grid-template-columns:1fr; gap:4px; }.journey-map { height:350px; } }