/* Verification feedback, route motion and result cards. */
.plate{position:relative;overflow:hidden;transition:box-shadow .2s,border-color .2s}.plate.is-invalid{border-color:#ff625d;box-shadow:0 0 0 3px rgba(255,85,79,.3),inset 0 0 0 2px #fff}.plate:after{content:"";position:absolute;z-index:3;left:-24%;top:0;width:20%;height:100%;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(108,245,223,.62),transparent);opacity:0;transform:skewX(-12deg)}.is-loading .plate:after{opacity:1;animation:plate-scan 1.15s linear infinite}.is-loading .plate-row button{position:relative;overflow:hidden}.is-loading .plate-row button:after{content:"";position:absolute;inset:0;transform:translateX(-110%);background:linear-gradient(105deg,transparent,rgba(255,255,255,.35),transparent);animation:button-shimmer 1.2s linear infinite}.check-progress{min-height:20px;margin-top:10px;color:var(--mint);font:700 11px/1.4 monospace;text-transform:uppercase;letter-spacing:.1em}.check-progress:not(:empty):before{content:"";display:inline-block;width:6px;height:6px;margin:0 9px 1px 1px;border-radius:50%;background:currentColor;box-shadow:0 0 12px currentColor;animation:progress-pulse .8s ease-in-out infinite alternate}
.foreign-mode .plate-country{display:none}
.zone-map{position:relative;width:112px;height:112px;margin:8px auto 4px}.zone-ring{position:absolute;border:1px solid rgba(108,245,223,.55);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.zone-ring--1{width:106px;height:106px}.zone-ring--2{width:72px;height:72px}.zone-ring--3{width:38px;height:38px}.route-dot{position:absolute;left:3px;top:50%;width:9px;height:9px;border-radius:50%;background:var(--mint);box-shadow:0 0 16px var(--mint);transform-origin:53px 0;animation:route-orbit 4.8s linear infinite}.route-labels{margin-top:-4px}.is-loading .route-dot{animation-duration:1.7s}.state-invalid .route-dot,.state-error .route-dot{animation-play-state:paused}.state-error .hero-art{filter:saturate(.4) brightness(.65)}
.verdict{--tone:var(--mint);display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;padding:24px;border:1px solid color-mix(in srgb,var(--tone) 45%,transparent);background:linear-gradient(120deg,color-mix(in srgb,var(--tone) 12%,transparent),rgba(12,25,38,.76));box-shadow:0 18px 60px color-mix(in srgb,var(--tone) 10%,transparent);margin-bottom:18px}.verdict--soon,.verdict--empty{--tone:#ffad42}.verdict--invalid,.verdict--error{--tone:#ff625d}.verdict-mark{width:18px;height:18px;margin-top:7px;border-radius:50%;background:var(--tone);box-shadow:0 0 20px var(--tone)}.verdict p{margin:0 0 5px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.12em}.verdict h3{margin:0 0 7px;font-size:clamp(27px,4vw,48px);letter-spacing:-.035em}.verdict>div>span{display:block;color:#c7d2dc;line-height:1.45}.verdict small{display:block;color:var(--muted);margin-top:12px}.permit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.permit-card{--card-tone:var(--mint);padding:22px;background:var(--panel);border:1px solid var(--line);animation:result-rise .38s both;animation-delay:var(--delay)}.permit-card--soon{--card-tone:#ffad42}.permit-card--invalid{--card-tone:#ff625d}.permit-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.permit-card-head strong{font-size:20px}.status-badge{display:inline-flex;padding:6px 9px;border-radius:99px;background:color-mix(in srgb,var(--card-tone) 15%,transparent);color:var(--card-tone);font-size:11px;font-weight:700}.permit-card dl{display:grid;grid-template-columns:1fr 1fr;margin:0}.permit-card dl div{padding:10px 0;border-top:1px solid var(--line)}.permit-card dt{font-size:11px;color:var(--muted)}.permit-card dd{margin:5px 0 0;font-size:14px}.permit-timeline{margin-top:20px}.timeline-track{position:relative;height:3px;background:rgba(255,255,255,.12)}.timeline-track i{display:block;height:100%;max-width:100%;background:var(--card-tone)}.timeline-track b{position:absolute;top:50%;width:9px;height:9px;border-radius:50%;background:var(--card-tone);transform:translate(-50%,-50%);box-shadow:0 0 10px var(--card-tone)}.timeline-labels{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:9px;color:var(--muted);font-size:9px;line-height:1.35}.timeline-labels span:nth-child(2){text-align:center}.timeline-labels span:last-child{text-align:right}.timeline-labels strong{color:var(--ink);font-size:10px}.result-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.result-actions button,.result-actions a{min-height:46px;border:1px solid var(--line);padding:0 16px;background:transparent;color:var(--ink);font:700 12px/44px Arial;text-decoration:none;cursor:pointer}.result-actions button:first-child{background:var(--mint);border-color:var(--mint);color:#06131c}.result-actions button:focus-visible,.result-actions a:focus-visible{outline:3px solid #fff;outline-offset:2px}.state-active{--mint:#6cf5df}.state-soon{--mint:#ffad42}.state-invalid{--mint:#ff625d}.state-empty{--mint:#ff914d}.state-error{--mint:#82909c}
@keyframes plate-scan{to{left:110%}}@keyframes button-shimmer{to{transform:translateX(110%)}}@keyframes progress-pulse{to{opacity:.3}}@keyframes route-orbit{to{transform:rotate(360deg)}}@keyframes result-rise{from{opacity:0;transform:translateY(10px)}}
@media(max-width:720px){.result-section{padding:64px 22px}.permit-list{grid-template-columns:1fr}.verdict{padding:18px}.verdict h3{font-size:29px}.result-actions{display:grid}.result-actions button,.result-actions a{text-align:center}.zone-map{width:84px;height:84px}.zone-ring--1{width:80px;height:80px}.zone-ring--2{width:54px;height:54px}.zone-ring--3{width:28px;height:28px}.route-dot{left:1px;transform-origin:41px 0}.route-card{padding:14px 18px}.route-card strong{font-size:22px}}
@media(prefers-reduced-motion:reduce){.is-loading .plate:after,.is-loading .plate-row button:after,.check-progress:before,.route-dot,.permit-card{animation:none!important}.result-section{scroll-margin-top:0}}

/* State language and restrained reveal motion. */
.scene-status-icon{position:absolute;z-index:4;left:50%;top:50%;width:42px;height:42px;margin:-21px 0 0 -21px;border:1px solid rgba(108,245,223,.3);border-radius:50%;display:grid;place-items:center;color:var(--mint);background:rgba(5,13,22,.86);box-shadow:0 0 25px color-mix(in srgb,var(--mint) 28%,transparent),inset 0 0 18px color-mix(in srgb,var(--mint) 10%,transparent);font:700 24px/1 Arial;opacity:0;transition:opacity .2s,color .25s,border-color .25s,box-shadow .25s}
.state-active .scene-status-icon,.state-soon .scene-status-icon,.state-invalid .scene-status-icon,.state-empty .scene-status-icon,.state-error .scene-status-icon{opacity:1}
.state-active .scene-status-icon:before{content:"✓"}.state-soon .scene-status-icon:before{content:"◷"}.state-invalid .scene-status-icon:before{content:"!"}.state-empty .scene-status-icon:before{content:"?"}.state-error .scene-status-icon:before{content:"×"}
.zone-map:after{content:"";position:absolute;z-index:2;inset:1px;border-radius:50%;opacity:0;background:conic-gradient(from 0deg,transparent 0 77%,color-mix(in srgb,var(--mint) 58%,transparent) 88%,transparent 96%);mask:radial-gradient(circle,transparent 0 43%,#000 47% 50%,transparent 54% 100%);pointer-events:none}
.is-loading .zone-map:after{opacity:1;animation:route-sweep .9s linear infinite}
.scene-pulse .scene-status-icon{animation:status-pop .65s cubic-bezier(.2,.8,.2,1)}
.js .how.reveal-target{opacity:0;transform:translateY(20px);transition:opacity .58s ease,transform .58s cubic-bezier(.2,.8,.2,1)}
.js .how.reveal-target.is-revealed{opacity:1;transform:none}
@keyframes route-sweep{to{transform:rotate(360deg)}}
@keyframes status-pop{0%{transform:scale(.82);filter:brightness(1)}42%{transform:scale(1.14);filter:brightness(1.65)}100%{transform:scale(1);filter:brightness(1)}}
@media(prefers-reduced-motion:reduce){.is-loading .zone-map:after,.scene-pulse .scene-status-icon{animation:none!important}.js .how.reveal-target{opacity:1;transform:none;transition:none}}

/* Search-useful answers, styled as part of the existing editorial rhythm. */
.faq{max-width:var(--max);margin:auto;padding:20px 28px 120px;display:grid;grid-template-columns:.72fr 1.28fr;gap:80px}.faq-intro h2{font-size:clamp(40px,5vw,68px);line-height:.98;letter-spacing:-.05em;margin:12px 0}.faq-list{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:0}.faq summary{position:relative;cursor:pointer;list-style:none;padding:24px 48px 24px 0;font-size:20px;font-weight:700}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:4px;top:20px;color:var(--mint);font:400 28px/1 monospace;transition:transform .2s}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{margin:0;padding:0 50px 25px 0;color:var(--muted);font-size:16px;line-height:1.65}.faq summary:focus-visible{outline:3px solid var(--mint);outline-offset:5px}
@media(max-width:900px){.faq{grid-template-columns:1fr;gap:18px;padding-bottom:90px}}@media(max-width:620px){.faq{padding:10px 22px 70px}.faq summary{font-size:18px;padding-right:38px}}
.privacy-settings{border:0;padding:0;background:none;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}.privacy-settings:focus-visible{outline:3px solid var(--mint);outline-offset:3px}.consent-panel{position:fixed;z-index:100;left:50%;bottom:20px;width:min(760px,calc(100% - 32px));transform:translateX(-50%);display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:22px 24px;border:1px solid rgba(108,245,223,.35);background:rgba(5,13,22,.96);box-shadow:0 20px 70px rgba(0,0,0,.55);backdrop-filter:blur(18px)}.consent-panel[hidden]{display:none}.consent-panel strong{font-size:18px}.consent-panel p{margin:7px 0 0;color:var(--muted);font-size:14px;line-height:1.45}.consent-actions{display:flex;gap:9px}.consent-actions button{min-height:44px;padding:0 15px;border:1px solid var(--line);background:transparent;color:var(--ink);font-weight:700;cursor:pointer}.consent-actions button:last-child{border-color:var(--mint);background:var(--mint);color:#06131c}.consent-actions button:focus-visible{outline:3px solid #fff;outline-offset:2px}@media(max-width:720px){.consent-panel{grid-template-columns:1fr;gap:15px;bottom:10px;padding:18px}.consent-actions{display:grid}.consent-actions button{width:100%}}
