:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#183149;background:#eef3f7;line-height:1.5;font-size:16px;--navy:#12304a;--green:#c7f47e;--border:#d8e2eb;--muted:#54687c}
*{box-sizing:border-box}body{margin:0}button,input,summary{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}a{color:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.58}[hidden]{display:none!important}:focus-visible{outline:3px solid #16869a;outline-offset:4px}
.masthead{background:var(--navy);color:#fff;padding:1rem max(1.25rem,calc((100vw - 1120px)/2));display:flex;justify-content:space-between;align-items:center;gap:1rem}.brand{font-size:1.65rem;font-weight:800;letter-spacing:-.07em;text-decoration:none}.brand span{color:var(--green)}.tag{font-size:.875rem;color:#e5eef5}main{max-width:1160px;margin:auto;padding:2rem 1.25rem}.heading{margin-bottom:1.5rem}.eyebrow{font-size:.875rem;letter-spacing:.09em;font-weight:750;margin:0 0 .45rem;color:#497084}h1{font-size:clamp(1.8rem,5vw,2.65rem);letter-spacing:-.04em;line-height:1.12;margin:0 0 .7rem}h2{font-size:1.18rem;line-height:1.4;margin:0}.heading>p:last-child{margin:0;color:var(--muted)}.workspace{display:grid;grid-template-columns:1.08fr 1fr;gap:1.25rem;align-items:start}.right-column{display:grid;gap:1.25rem}.card{background:#fff;border:1px solid var(--border);border-radius:1rem;padding:1.5rem;box-shadow:0 4px 20px #12304a05}.section-heading{display:flex;align-items:center;gap:.65rem;margin-bottom:1rem}.step{width:1.85rem;height:1.85rem;display:grid;place-items:center;background:#e9f1f7;color:var(--navy);border-radius:.5rem;font-size:.9rem;font-weight:750;flex:none}.hint{color:var(--muted);margin:0 0 1.1rem;font-size:1rem}.button{min-height:3.25rem;border-radius:.7rem;border:1px solid transparent;display:inline-flex;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:1rem;font-weight:700;transition:background .15s,color .15s}.primary{background:var(--navy);color:#fff}.primary:hover:enabled{background:#1d496e}.capture-actions>.primary{background:var(--green);color:#183d17}.capture-actions>.primary:hover:enabled{background:#b6e86b}.secondary{background:#fff;color:var(--navy);border-color:var(--border)}.secondary:hover:enabled{background:#eef3f7}.capture-actions{display:flex;gap:.65rem;flex-wrap:wrap}.capture-actions>.primary{flex:1}.capture-actions svg{width:1.35rem;height:1.35rem;fill:none;stroke:currentColor;stroke-width:1.75;flex:none}.wide{width:100%}.privacy{color:var(--muted);font-size:.875rem;margin:1.15rem 0 0;padding-top:1rem;border-top:1px solid #e7edf2}.crop-hint{font-size:.9rem;color:var(--muted);margin:1.1rem 0 .6rem}.crop-wrap{position:relative;overflow:hidden;background:#142332;border-radius:.65rem;touch-action:none;user-select:none}.crop-wrap img{display:block;width:100%;height:auto;pointer-events:none}.crop-box{position:absolute;border:2px solid var(--green);box-shadow:0 0 0 9999px #07121d72;min-width:12px;min-height:12px;cursor:move;touch-action:none}.crop-label{position:absolute;left:6px;top:5px;background:#12304add;color:#fff;font-size:.75rem;padding:1px 5px;border-radius:3px;pointer-events:none}.handle{position:absolute;width:32px;height:32px;touch-action:none;background:var(--green);border:3px solid #fff;border-radius:50%;z-index:2}.handle.nw{left:-15px;top:-15px;cursor:nwse-resize}.handle.ne{right:-15px;top:-15px;cursor:nesw-resize}.handle.sw{left:-15px;bottom:-15px;cursor:nesw-resize}.handle.se{right:-15px;bottom:-15px;cursor:nwse-resize}.editor-tools{display:flex;justify-content:space-between;gap:1rem;margin:.4rem 0}.text-button{background:none;border:none;color:#205b81;min-height:44px;font-size:.875rem;font-weight:650;padding:.3rem 0;text-decoration:underline;text-underline-offset:3px}.crop-controls{margin-bottom:1rem}.crop-controls label{display:flex;align-items:center;gap:.8rem;font-size:.875rem;margin:.4rem 0}.crop-controls input{width:70%;height:30px;margin:0}.status{font-size:.95rem;margin:1rem 0 0;overflow-wrap:anywhere}.status:empty{display:none}.status.error,.field-status.error{color:#a63b1c}.status.ok{color:#176b3a}progress{display:block;width:100%;height:.5rem;accent-color:#6eab39;margin:1rem 0}label{display:block;font-size:.95rem;font-weight:650;margin:0 0 .45rem}.label-note{font-size:.875rem;font-weight:400;color:var(--muted);margin-left:.25rem}input[type=text],input[type=number]{width:100%;border:1px solid #b6c7d6;border-radius:.55rem;padding:.8rem .7rem;background:#fafdff;color:#122e45;min-height:3.3rem;font-size:1.125rem}#vin{font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;letter-spacing:.045em;text-transform:uppercase;font-size:clamp(.95rem,3.9vw,1.25rem)}input::placeholder{color:#7c8d9a;text-transform:none;letter-spacing:normal}.field-status{font-size:.875rem;color:var(--muted);margin:.5rem 0 1.1rem;min-height:2.6rem}.year-label{margin-top:1rem}#model-year{max-width:13rem;font-family:inherit}.small{font-size:.875rem;color:var(--muted);margin:1rem 0}details{font-size:.875rem;color:var(--muted);margin:.5rem 0}summary{cursor:pointer;min-height:40px;display:list-item;align-content:center}pre{font-family:ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.875rem;background:#eff4f8;border-radius:.5rem;padding:.75rem}.candidates{display:flex;flex-direction:column;gap:.5rem}.candidate{border:1px solid var(--border);background:#f2f7fa;color:var(--navy);border-radius:.5rem;min-height:44px;padding:.6rem;font-family:ui-monospace,monospace;font-size:.95rem}.result-card{border-top:4px solid #8ec54e}#result-title{font-size:1.75rem;line-height:1.25;margin:.5rem 0}.result-vin{font-family:ui-monospace,monospace;font-size:.9rem;letter-spacing:.04em;overflow-wrap:anywhere;color:var(--muted)}dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);margin:1.3rem 0;font-size:.95rem}dt,dd{margin:0;padding:.65rem 0;border-bottom:1px solid #e8edf1;overflow-wrap:anywhere}dt{color:var(--muted)}dd{font-weight:600;text-align:right}.notice{background:#eaf6ed;color:#1b5931;border-radius:.5rem;padding:.8rem;font-size:.9rem;margin:1rem 0}.notice.warning{background:#fff2df;color:#8a4814}.external-link{color:#206487;display:block;margin:1rem 0;text-underline-offset:3px;font-size:.95rem;min-height:30px}footer{font-size:.875rem;color:var(--muted);margin:1.75rem 0 .5rem;max-width:800px}footer a{color:#236181}noscript{padding:1rem}
@media(max-width:760px){main{padding:1.5rem 1rem}.masthead{padding:.8rem 1rem}.workspace{grid-template-columns:1fr}.card{padding:1.2rem}.heading{margin-bottom:1.2rem}.capture-actions{flex-direction:column}.capture-actions .button{width:100%}.photo-card{border-top:4px solid var(--green)}.handle{width:36px;height:36px}.handle.nw,.handle.sw{left:-17px}.handle.ne,.handle.se{right:-17px}.handle.nw,.handle.ne{top:-17px}.handle.sw,.handle.se{bottom:-17px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.crop-label{top:-5px;transform:translateY(-100%)}.crop-preview{margin:0 0 1rem;padding:.7rem;border:1px solid var(--border);border-radius:.55rem;background:#fafdff}.crop-preview figcaption{font-size:.875rem;font-weight:650;color:var(--navy);margin-bottom:.5rem}.crop-preview img{display:block;max-width:100%;width:100%;height:auto;max-height:240px;object-fit:contain;background:#142332;border-radius:.25rem}.crop-preview .small{margin:.5rem 0 0}
.candidate-changes{display:block;margin-top:.35rem;font-family:system-ui,sans-serif;font-size:.85rem;color:var(--muted)}
.scan-location{display:flex;gap:.5rem;flex-wrap:wrap;margin:0 0 1rem}.source-button{flex:1;min-height:44px;padding:.6rem .7rem;border:1px solid var(--border);border-radius:.55rem;background:#fff;color:var(--navy);font-weight:650}.source-button[aria-pressed=true]{background:#e9f1f7;border-color:#497084}.scan-fallback{margin-top:1rem;padding:1rem;border:1px solid #e9c88d;border-radius:.7rem;background:#fff5e4;color:#754411}.scan-fallback h3{font-size:1rem;line-height:1.4;margin:0 0 .5rem}.scan-fallback p{font-size:.95rem;margin:0 0 .8rem}.scan-fallback .small{font-size:.85rem;margin:.7rem 0 0;color:#754411}
.account-link{font-size:.9rem;text-underline-offset:3px}.registration-progress{list-style:none;display:flex;gap:.75rem;justify-content:space-between;padding:0;margin:0 0 1.5rem;max-width:700px}.registration-progress li{display:flex;align-items:center;gap:.45rem;color:var(--muted);font-size:.9rem}.registration-progress li span{display:grid;place-items:center;width:1.8rem;height:1.8rem;border:1px solid var(--border);border-radius:50%;background:white;font-weight:700}.registration-progress li[aria-current=step]{color:var(--navy);font-weight:700}.registration-progress li[aria-current=step] span{background:var(--navy);border-color:var(--navy);color:white}.flow-card{max-width:700px;margin:0 auto}.flow-card h2{font-size:1.6rem;margin-bottom:.75rem}.flow-card h3{font-size:1.2rem;margin:.8rem 0}.flow-card form>label:not(:first-child){margin-top:1rem}input[type=email]{width:100%;border:1px solid #b6c7d6;border-radius:.55rem;padding:.8rem .7rem;background:#fafdff;color:#122e45;min-height:3.3rem;font-size:1.125rem}.vehicle-context{font-size:.9rem;color:var(--muted);font-weight:650;overflow-wrap:anywhere;margin:0 0 1rem}.flow-actions{display:flex;gap:.7rem;margin-top:1.4rem;flex-wrap:wrap}.flow-actions .primary{flex:1}.check-row{display:flex;align-items:flex-start;gap:.75rem;font-weight:400;line-height:1.5;margin:1.25rem 0}.check-row input{flex:none;appearance:auto;width:22px;height:22px;margin:2px 0;accent-color:var(--navy)}.car-photo-preview{width:100%;max-height:430px;object-fit:contain;background:#eef3f7;border:1px solid var(--border);border-radius:.7rem;margin:1.1rem 0 .5rem;display:block}.ownership-badge{display:inline-block;border:1px solid #e9c88d;background:#fff5e4;color:#754411;border-radius:2rem;padding:.35rem .7rem;font-size:.85rem;font-weight:650;margin:.5rem 0}.account-security{margin-top:1.25rem;padding:1rem;background:#eff5fa;border:1px solid var(--border);border-radius:.7rem;font-size:.95rem}.account-security p{margin:.4rem 0 .8rem}.account-heading{display:flex;gap:1rem;justify-content:space-between;align-items:center;margin-bottom:1rem}.account-heading h2{font-size:1.6rem}.account-contact{margin:.3rem 0;overflow-wrap:anywhere}.account-vehicles{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin:1rem 0}.account-vehicle img{width:100%;height:220px;object-fit:contain;background:#eef3f7;border-radius:.6rem}.account-vehicle h3{font-size:1.25rem;margin:.8rem 0 .3rem}.account-vehicle .result-vin{margin:.3rem 0}.gallery-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin:1rem 0}.gallery-photos img{width:100%;height:220px;object-fit:contain;background:#eef3f7;border-radius:.5rem}.gallery-photos a{display:block}#next-car{margin-top:.6rem}#account-gallery{margin-top:1rem}
@media(max-width:480px){.registration-progress{gap:.25rem}.registration-progress li{font-size:.8rem;gap:.25rem}.registration-progress li span{width:1.5rem;height:1.5rem}.flow-actions{flex-direction:column}.flow-actions .button{width:100%}.account-heading{align-items:flex-start}.account-heading .button{padding:.6rem .8rem;font-size:.9rem}.account-vehicles{grid-template-columns:1fr}.account-link{font-size:.8rem}.gallery-photos{grid-template-columns:1fr 1fr}.gallery-photos img{height:140px}}
