:root{--bg-1:#f8fafc;--bg-2:#eef2f7;--surface:#fff;--text:#0f172a;--text-muted:#64748b;--text-soft:#94a3b8;--border:#e2e8f0;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-soft:rgba(37,99,235,0.12);--success:#16a34a;--success-soft:rgba(22,163,74,0.12);--danger:#dc2626;--r-card:20px;--r-field:14px;--shadow-card:0 10px 40px rgba(15,23,42,0.08);--shadow-card-lg:0 24px 60px rgba(15,23,42,0.16);--shadow-btn:0 8px 20px rgba(37,99,235,0.32)}*,:after,:before{box-sizing:border-box}#app,body,html{height:100%;margin:0}body{font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;color:var(--text);background:linear-gradient(155deg,var(--bg-1),var(--bg-2));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,p{margin:0}.card{width:100%;max-width:440px;background:var(--surface);border-radius:var(--r-card);box-shadow:var(--shadow-card)}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;display:block}.icon--solid{fill:currentColor;stroke:none}.field{display:flex;gap:10px}.field__input{flex:1;min-width:0;height:54px;padding:0 18px;font:inherit;font-size:16px;color:var(--text);background:#fff;border:1.5px solid var(--border);border-radius:var(--r-field);transition:border-color .2s ease,box-shadow .2s ease}.field__input::-moz-placeholder{color:var(--text-soft)}.field__input::placeholder{color:var(--text-soft)}.field__input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.field__btn{flex:none;width:54px;height:54px;border:none;border-radius:var(--r-field);background:var(--accent);color:#fff;display:grid;place-items:center;cursor:pointer;transition:background .2s ease,box-shadow .2s ease,transform .08s ease,opacity .2s ease}.field__btn:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-btn)}.field__btn:active:not(:disabled){transform:scale(.95)}.field__btn:disabled{background:#cbd5e1;cursor:default}.field__btn--active{box-shadow:var(--shadow-btn)}.field__btn .spinner{border-color:hsla(0,0%,100%,.4);border-top-color:#fff}.field--error .field__input{border-color:var(--danger);box-shadow:0 0 0 4px rgba(220,38,38,.1)}.field__msg{display:block;margin-top:10px;font-size:13px;color:var(--danger);text-align:left}.spinner{width:22px;height:22px;border:2.5px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;-webkit-animation:spin .7s linear infinite;animation:spin .7s linear infinite}.spinner--sm{width:20px;height:20px;border-width:2px}@-webkit-keyframes spin{to{transform:rotate(1turn)}}@keyframes spin{to{transform:rotate(1turn)}}.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:24px;background:rgba(15,23,42,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal__card{position:relative;width:100%;max-width:360px;padding:40px 28px 32px;background:#fff;border-radius:var(--r-card);box-shadow:var(--shadow-card-lg);text-align:center}.modal__close{position:absolute;top:14px;right:14px;width:36px;height:36px;border:none;background:transparent;color:var(--text-soft);border-radius:50%;display:grid;place-items:center;cursor:pointer;transition:background .2s ease,color .2s ease}.modal__close:hover{background:#f1f5f9;color:var(--text)}.modal__icon{width:64px;height:64px;margin:0 auto 20px;border-radius:50%;display:grid;place-items:center}.modal__icon .icon{width:32px;height:32px;stroke-width:2.25}.modal__icon--warn{background:var(--accent-soft);color:var(--accent)}.modal__icon--ok{background:var(--success-soft);color:var(--success)}.modal__msg{color:var(--text);font-size:16px;line-height:1.55}.modal-enter-active,.modal-leave-active{transition:opacity .25s ease}.modal-enter-active .modal__card,.modal-leave-active .modal__card{transition:transform .25s cubic-bezier(.16,1,.3,1)}.modal-enter,.modal-leave-to{opacity:0}.modal-enter .modal__card,.modal-leave-to .modal__card{transform:translateY(16px) scale(.97)}.install{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:200;max-width:440px;margin:0 auto;display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-card-lg)}.install__icon{flex:none;width:44px;height:44px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}.install__icon .icon{width:24px;height:24px}.install__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;font-size:13px;line-height:1.4;color:var(--text-muted)}.install__text strong{font-size:14px;font-weight:600;color:var(--text)}.install__ios-icon{display:inline;width:15px;height:15px;vertical-align:-3px;fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.install__btn{flex:none;height:40px;padding:0 18px;border:none;border-radius:10px;background:var(--accent);color:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease,transform .08s ease}.install__btn:hover{background:var(--accent-hover)}.install__btn:active{transform:scale(.95)}.install__close{flex:none;width:32px;height:32px;border:none;background:transparent;color:var(--text-soft);border-radius:50%;display:grid;place-items:center;cursor:pointer;transition:background .2s ease,color .2s ease}.install__close .icon{width:18px;height:18px}.install__close:hover{background:#f1f5f9;color:var(--text)}.install-enter-active,.install-leave-active{transition:transform .3s cubic-bezier(.16,1,.3,1),opacity .3s ease}.install-enter,.install-leave-to{transform:translateY(140%);opacity:0}.home-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:32px 20px calc(28px + env(safe-area-inset-bottom))}.search{width:100%;max-width:440px;background:var(--surface);border-radius:var(--r-card);box-shadow:var(--shadow-card);padding:44px 30px;text-align:center}.search__title{font-size:clamp(26px,6vw,32px);font-weight:600;letter-spacing:-.01em;color:var(--text)}.search__subtitle{margin-top:8px;font-size:16px;font-weight:400;color:var(--text-muted)}.search .field{margin-top:30px}.search__hint{margin-top:24px;font-size:14px;font-weight:400;color:var(--text-soft)}.search-footer{font-size:13px;color:var(--text-soft);text-align:center}.search-footer a{color:var(--accent);font-weight:500;text-decoration:none}.search-footer a:hover{text-decoration:underline}.details-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:0 20px calc(20px + env(safe-area-inset-bottom))}.detail-header{position:relative;width:100%;max-width:440px;display:flex;align-items:center;justify-content:center;padding:calc(24px + env(safe-area-inset-top)) 0 8px}.detail-header__back{position:absolute;left:0;top:50%;transform:translateY(-50%);flex:none;width:42px;height:42px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:50%;box-shadow:0 2px 8px rgba(15,23,42,.06);display:grid;place-items:center;cursor:pointer;transition:color .2s ease,box-shadow .2s ease}.detail-header__back .icon{width:20px;height:20px}.detail-header__back:hover{color:var(--text);box-shadow:0 5px 14px rgba(15,23,42,.1)}.detail-header__back:active{transform:translateY(-50%) scale(.92)}.plate{display:flex;align-items:stretch;height:46px;background:#fff;border:1.5px solid #0f172a;border-radius:7px;overflow:hidden;box-shadow:0 4px 14px rgba(15,23,42,.14)}.plate__eu{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:34px;background:#039;color:#fff}.plate__stars{width:19px;height:19px;fill:#fc0}.plate__country{font-size:11px;font-weight:700;letter-spacing:.5px;line-height:1}.plate__number{display:flex;align-items:center;padding:0 16px;font-size:23px;font-weight:700;letter-spacing:3px;color:#0f172a}.status{width:100%;max-width:440px;margin-top:auto;padding:40px 30px 36px;background:var(--surface);border-radius:var(--r-card);box-shadow:var(--shadow-card);text-align:center}.status__ring{position:relative;width:124px;height:124px;margin:0 auto 22px}.status__ring>svg{position:absolute;inset:0;width:100%;height:100%}.status__ring-track circle{fill:none;stroke:var(--border);stroke-width:6}.status__ring-arc{transform-origin:center;-webkit-animation:spin 1.3s linear infinite;animation:spin 1.3s linear infinite}.status__ring-arc circle{fill:none;stroke:var(--accent);stroke-width:6;stroke-linecap:round;stroke-dasharray:70 206}.status__ring-full circle{fill:none;stroke:var(--success);stroke-width:6;stroke-linecap:round}.status__ring-icon{position:absolute;inset:0;display:grid;place-items:center;color:var(--accent)}.status__ring-icon .icon{width:42px;height:42px}.status__ring--done .status__ring-icon{color:var(--success)}.status__label{font-size:13px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.status__value{margin:10px 0 0;font-size:clamp(24px,6vw,30px);font-weight:600;color:var(--accent)}.status__value--done{color:var(--success)}.steps{display:flex;justify-content:space-between;margin:30px 0 0;padding:0;list-style:none;position:relative}.steps:before{content:"";position:absolute;top:11px;left:14%;right:14%;height:2px;background:var(--border);z-index:0}.steps__item{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;align-items:center;gap:8px}.steps__dot{width:24px;height:24px;border-radius:50%;background:var(--border);display:grid;place-items:center;transition:background .3s ease,box-shadow .3s ease}.steps__check{width:14px;height:14px;fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.steps__label{font-size:12px;font-weight:500;color:var(--text-soft);transition:color .3s ease}.steps__item--done .steps__dot{background:var(--success)}.steps__item--done .steps__label{color:var(--text)}.steps__item--active .steps__dot{background:var(--accent);box-shadow:0 0 0 5px var(--accent-soft)}.steps__item--active .steps__label{color:var(--accent);font-weight:600}.phone{width:100%;max-width:440px;margin-top:16px;padding:30px;background:var(--surface);border-radius:var(--r-card);box-shadow:var(--shadow-card);text-align:center}.phone__label{font-size:15px;font-weight:500;line-height:1.5;color:var(--text)}.phone .field,.phone__rodo{margin-top:18px}.phone__rodo{font-size:11px;line-height:1.55;color:var(--text-soft);text-align:left}.app-footer{margin-top:auto;padding-top:20px;text-align:center}.app-footer__brand{font-size:13px;font-weight:500;letter-spacing:.04em;color:var(--text-soft)}