
/* STEP TAXI — unified premium visual system, V12.
   Presentation-only layer: existing ids, event handlers and business logic unchanged. */
:root{
 --step-navy:#081D56;--step-deep:#06143b;--step-yellow:#FFC100;
 --step-ink:#11244b;--step-cloud:#f2f5fb;--step-border:#dce4f1;
 --step-shadow:0 18px 56px rgba(8,29,86,.12);
 --lime:#FFC100;--acid:#FFC100;--accent:#FFC100;--char:#081D56;
 --dark:#081D56;--black:#081D56;--edge:#dce4f1;
}
html{scroll-behavior:smooth}
body{background:radial-gradient(ellipse at 4% 0%,#dce7ff 0%,transparent 35%),radial-gradient(ellipse at 100% 100%,#fff4cc 0%,transparent 35%),#f2f5fb!important;color:var(--step-ink)}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button,.btn,.main-btn,.secondary-btn{transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease}
button:not(:disabled):active,.btn:not(:disabled):active,.main-btn:not(:disabled):active{transform:scale(.98)}
:where(button,a,input,select,textarea):focus-visible{outline:3px solid #ffc100!important;outline-offset:3px!important}
:where(input,select,textarea){accent-color:#ffc100}
:where(input,select,textarea):focus{border-color:#dba600!important;box-shadow:0 0 0 4px rgba(255,193,0,.13)!important}
:where(.btn,.main-btn):not(.btnDark){background:#ffc100;color:#081d56}
:where(.btn,.main-btn):not(:disabled):hover{box-shadow:0 9px 23px rgba(255,193,0,.29);transform:translateY(-1px)}
:where(.panel,.sidebar,.route-panel,.job,.step,.mapcard,.auth-form-wrap){border-color:rgba(217,226,244,.88)!important}
:where(.panel,.sidebar){box-shadow:var(--step-shadow)!important}
:where(.pill,.demo-tag){background:#fff3cc;color:#765b00}
:where(.eyebrow,.kicker,.aside-kicker,.small-eyebrow){color:#c18b00}
:where(.logo,.brand){letter-spacing:-1.1px}
:where(.logo,.brand) img{filter:drop-shadow(0 4px 10px rgba(8,29,86,.08))}
:where(.mapbox,.map-wrap,.map-container){box-shadow:0 18px 50px rgba(8,29,86,.14)}
:where(.maplibregl-ctrl-group){border-radius:13px!important;overflow:hidden;box-shadow:0 6px 20px #081d5620!important}
::selection{background:#ffc100;color:#081d56}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
}
