:root{--ink:#05020a;--ink2:#0b0612;--panel:#12091d;--panel2:#1b0c2d;--gold:#ffc72c;--gold2:#ff9f0a;--purple:#7b00ff;--violet:#c22cff;--text:#fff;--muted:#d8cae7;--line:#ffc72c66;--logo:url("nova-taxi-black.png")}
*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:radial-gradient(circle at 50% -10%,#35105b 0,#12091d 32%,#05020a 72%);color:var(--text);font-family:Inter,Arial,sans-serif}.app{max-width:430px;margin:auto;min-height:100vh;padding:18px 18px 92px}.brand{text-align:center;font-size:30px;font-weight:900;margin:10px auto 22px;letter-spacing:.2px;color:#fff;text-shadow:0 2px 16px #7b00ff99}.brand:before{content:"";display:block;width:88px;height:88px;margin:0 auto 8px;background-image:var(--logo);background-size:cover;background-position:center;border-radius:22px;border:1px solid #ffc72c88;box-shadow:0 0 0 2px #7b00ff55,0 10px 30px #0009}.card{background:linear-gradient(160deg,#1b0c2df2,#0b0612f2);border:1px solid var(--line);border-radius:20px;padding:16px;margin:12px 0;box-shadow:0 14px 34px #0008,inset 0 1px 0 #ffffff12}.btn{width:100%;min-height:54px;border:0;border-radius:16px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#170817;font-weight:900;font-size:15px;margin:7px 0;padding:0 14px;box-shadow:0 8px 22px #ffad1840,0 0 0 1px #fff2 inset}.btn:active{transform:scale(.99)}.btn:disabled{opacity:.45}.btn.secondary{background:linear-gradient(135deg,#7b00ff33,#c22cff18);border:1px solid #b52cff;color:#fff;box-shadow:none}.input{width:100%;height:54px;border-radius:14px;border:1px solid #6f37a8;background:#0a0611;color:#fff;padding:0 14px;margin:7px 0;font-size:16px;outline:none}.input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #ffc72c22}.input::placeholder{color:#cbbbd9}.map{height:250px;border-radius:20px;background:linear-gradient(135deg,#17131e,#2b1650 52%,#17131e);border:1px solid #7b00ff88;color:#ffc72c;display:flex;align-items:center;justify-content:center;font-size:38px;box-shadow:inset 0 0 40px #0008}.row{display:flex;gap:10px}.row>*{flex:1}.price{font-size:30px;font-weight:900;color:var(--gold)}.small{font-size:13px;color:var(--muted)}.nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:430px;background:#08040de8;backdrop-filter:blur(14px);border-top:1px solid #ffc72c55;display:grid;grid-template-columns:repeat(4,1fr);z-index:20}.nav button{height:68px;background:none;border:0;color:#fff}.screen{display:none}.screen.active{display:block;animation:screenIn .2s ease-out}@keyframes screenIn{from{opacity:.2;transform:translateY(6px)}to{opacity:1;transform:none}}h1,h2{margin:8px 0 14px}h2{color:#fff}b{color:#fff}.badge{display:inline-block;background:#7b00ff26;border:1px solid #9b38ff88;border-radius:999px;padding:7px 11px;margin:3px;color:#f8edff}.password-wrap{position:relative;margin:7px 0}.password-wrap .input{margin:0;padding-right:58px}.password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:44px;height:40px;border:0;border-radius:12px;background:#ffc72c18;color:var(--gold);font-size:20px;font-weight:900;z-index:3;display:grid;place-items:center;padding:0;line-height:1;touch-action:manipulation}.password-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:1px}.splash{position:fixed;inset:0;z-index:9999;background:radial-gradient(circle at 50% 35%,#2f0b55 0,#09040f 52%,#020104 100%);display:flex;align-items:center;justify-content:center;padding:24px;transition:opacity .38s ease,visibility .38s ease}.splash.hide{opacity:0;visibility:hidden}.splash-card{text-align:center;width:min(88vw,360px)}.splash-logo{width:min(78vw,320px);aspect-ratio:1;margin:auto;background-image:var(--logo);background-size:cover;background-position:center;border-radius:28px;box-shadow:0 0 0 2px #ffc72caa,0 0 46px #7b00ff88,0 30px 70px #000}.splash-title{font-size:32px;font-weight:950;margin-top:18px}.splash-title span{color:var(--gold)}.splash-kicker{margin-top:6px;font-size:12px;letter-spacing:3px;color:#e9dfff}.status-good{color:#7dffb2}.status-warn{color:#ffd86b}p{line-height:1.45;color:#efe8f6}
