.vinpage{max-width:720px;margin:0 auto;padding:clamp(20px,4vw,44px) 16px 64px;color:var(--ink)}.vin-title{margin:0;font-size:clamp(24px,3.6vw,32px);font-weight:800;letter-spacing:-.02em}.vin-sub{margin:6px 0 22px;font-size:15px;line-height:1.5;color:var(--ink-soft);max-width:56ch}.vin-form{padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.vin-label{display:block;margin-bottom:8px;font-size:13px;font-weight:700;color:var(--ink-soft)}.vin-field{display:flex;gap:8px}.vin-input{flex:1;min-width:0;height:52px;padding:0 14px;border:1.5px solid var(--line-strong);border-radius:12px;background:var(--surface);color:var(--ink);font:600 19px/1 ui-monospace,SF Mono,Menlo,Consolas,monospace;letter-spacing:.12em;text-transform:uppercase}.vin-input::placeholder{color:var(--muted);opacity:.45}.vin-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.vin-input[aria-invalid=true]{border-color:var(--danger)}.vin-submit{display:inline-flex;align-items:center;gap:6px;height:52px;padding:0 20px;border:0;border-radius:12px;background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:15px;cursor:pointer}.vin-submit:hover{background:var(--accent-deep)}:where(:root[data-theme=dark]) .vin-submit:hover{background:var(--brand-fill-deep, #2b5596)}.vin-submit:focus-visible,.vin-go:focus-visible,.vin-report:focus-visible,.vin-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.vin-submit:disabled{opacity:.7;cursor:progress}.vin-spin{animation:vin-spin .8s linear infinite}@keyframes vin-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.vin-spin{animation:none}}.vin-segs{display:flex;align-items:flex-start;gap:6px;margin-top:12px}.vin-seg{flex-basis:0;min-width:0}.vin-seg-bar{height:4px;border-radius:4px;background:var(--surface-2);overflow:hidden}.vin-seg-bar span{display:block;height:100%;background:var(--place);transition:width .15s ease}.vin-seg-name{display:block;margin-top:5px;font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vin-count{flex:none;margin-top:-5px;font-size:12px;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}.vin-help,.vin-error{margin:12px 0 0;font-size:13px;line-height:1.45;color:var(--muted)}.vin-error{color:var(--danger);font-weight:600}.vin-mine{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.vin-chip{padding:7px 12px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--ink);font-size:13px;font-weight:600;cursor:pointer}.vin-chip:hover{border-color:var(--ink)}:where(:root[data-theme=dark]) .vin-chip:hover{border-color:var(--ink-fill, #2f5ea6)}.vin-card{margin-top:16px;padding:20px 18px 18px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.vin-card-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.vin-car{margin:0;font-size:clamp(21px,3vw,26px);font-weight:800;letter-spacing:-.015em}.vin-trim{font-size:14px;color:var(--ink-soft)}.vin-code{flex-basis:100%;font:500 13px/1.4 ui-monospace,SF Mono,Menlo,Consolas,monospace;letter-spacing:.08em;color:var(--muted)}.vin-specs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px 18px;margin:18px 0 0;padding:16px 0 0;border-top:1px solid var(--line)}.vin-specs dt{font-size:12.5px;color:var(--muted)}.vin-specs dd{margin:2px 0 0;font-size:15px;font-weight:700}.vin-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.vin-go{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 16px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface);color:var(--ink);font-size:14.5px;font-weight:700;cursor:pointer}.vin-go:hover{border-color:var(--ink)}:where(:root[data-theme=dark]) .vin-go:hover{border-color:var(--ink-fill, #2f5ea6)}.vin-go.is-main{border-color:var(--ink);background:var(--ink);color:var(--surface)}:where(:root[data-theme=dark]) .vin-go.is-main{border-color:var(--ink-fill, #2f5ea6);background:var(--ink-fill, #305ea5)}.vin-go.is-main:hover{background:var(--navy-2)}.vin-miss{display:flex;gap:8px;align-items:flex-start;margin:16px 0 0;padding:14px 16px;border-radius:14px;background:var(--warm-soft);color:var(--ink);font-size:14px;line-height:1.45}.vin-miss svg{flex:none;margin-top:1px;color:var(--warm)}.vin-photos{margin-top:16px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.vin-photos h2{margin:0 0 12px;font-size:18px;font-weight:800}.vin-shot{position:relative;aspect-ratio:4 / 3;overflow:hidden;border-radius:12px;background:var(--surface-2)}.vin-shot img{display:block;width:100%;height:100%;object-fit:cover}.vin-shot-nav{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:#0000008c;color:#fff;cursor:pointer}.vin-shot-nav:hover{background:#000000bf}.vin-shot-nav.is-prev{left:10px}.vin-shot-nav.is-next{right:10px}.vin-shot-count{position:absolute;right:10px;bottom:10px;padding:3px 9px;border-radius:999px;background:#0000008c;color:#fff;font-size:12.5px;font-weight:700}.vin-thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;scrollbar-width:thin}.vin-thumb{flex:0 0 auto;width:84px;height:63px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:var(--surface-2);opacity:.75;cursor:pointer}.vin-thumb.is-on{border-color:var(--accent);opacity:1}.vin-thumb img{display:block;width:100%;height:100%;object-fit:cover}.vin-photos-src{margin:10px 0 0;color:var(--ink-soft);font-size:12.5px}.vin-history{margin-top:16px;padding:18px;border-radius:18px;background:var(--surface-2)}.vin-history h2{margin:0;font-size:18px;font-weight:800}.vin-history p{margin:6px 0 14px;font-size:14px;line-height:1.5;color:var(--ink-soft);max-width:60ch}.vin-report{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 18px;border-radius:12px;background:var(--accent);color:var(--accent-ink);font-size:14.5px;font-weight:700;text-decoration:none}.vin-report:hover{background:var(--accent-deep)}:where(:root[data-theme=dark]) .vin-report:hover{background:var(--brand-fill-deep, #2b5596)}.vin-links{display:flex;flex-wrap:wrap;gap:10px}.vin-report--plain{background:var(--surface);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-strong)}.vin-report--plain:hover{background:var(--surface-2)}@media (max-width: 520px){.vin-form,.vin-card,.vin-history{padding:16px 14px}.vin-input{font-size:16px;letter-spacing:.06em;padding:0 10px}.vin-submit{padding:0 14px}.vin-go,.vin-report{width:100%;justify-content:center}}
