/* Shared visual foundations. Scanner geometry and background artwork stay local. */
:root{--radius-precise:8px;--border-slate:#e2e6ec;--text-primary:#111827;--text-secondary:#526075;--shadow-premium:0 4px 18px rgba(15,23,42,.045)}
[hidden]{display:none!important}
button,input,select{font:inherit}
button,a,input,select,summary{ -webkit-tap-highlight-color:transparent }
:where(button,a,input,select,summary):focus-visible{outline:3px solid #a81a1a;outline-offset:4px}
button{transition:background-color .15s,border-color .15s,box-shadow .15s}
button:disabled{cursor:not-allowed;opacity:.5}
.logo-text{background:none!important;-webkit-text-fill-color:#111827!important;color:#111827!important;letter-spacing:-.7px!important}
nav.navbar,.app-bar,.topbar{min-height:72px;padding:14px max(24px,calc((100vw - 1280px)/2));gap:24px;box-shadow:none;background:#fff}
.nav-links,.global-nav{display:flex;align-items:center;gap:24px}
.nav-link,.app-link{font-size:14px;font-weight:600;color:var(--text-secondary);text-decoration:none;white-space:nowrap}
.app-link.active{background:#f9eded;border-radius:6px;padding:9px 12px}
.btn-crimson,.btn,.btn-pricing,.btn-ghost,.btn-ghost-modal,.linkish{border-radius:8px;min-height:44px;font-family:'Outfit',sans-serif!important;font-weight:600;letter-spacing:0;box-shadow:none}
.btn-crimson,.btn.scan{background:#a81a1a;background-image:none;box-shadow:0 2px 4px #a81a1a18}
.btn-crimson:hover,.btn.scan:hover{background:#8c1414;transform:none;box-shadow:0 3px 10px #a81a1a20}
.btn.ghost:hover,.btn-ghost:hover,.btn-pricing-secondary:hover{background:#f8fafc;border-color:#bcc5d1}
.search-card,.report-card-container,.report-panel,.pricing-card,.provider-card,.card{border-radius:12px;box-shadow:var(--shadow-premium)}
.input-field,.comp-input,.inp,.input{border-radius:8px;min-height:44px}
.hero-title{font-weight:800!important;max-width:850px;text-wrap:balance}
.hero-subtitle{max-width:570px!important;text-wrap:balance}
.hero-container .scroll-reveal{opacity:1;transform:none;transition:none}
.search-card{width:100%;max-width:820px;padding:28px!important;text-align:left}
.search-group{gap:10px}
.input-wrapper{min-width:0;flex:1}
.input-field{font-size:17px;letter-spacing:.6px!important}
.capture-options{margin-top:18px;border-top:1px solid var(--border-slate);padding-top:14px}
.capture-options summary,.column-picker summary,.workspace-options summary{cursor:pointer;color:var(--text-secondary);font-size:14px;font-weight:600;padding:8px 0}
.capture-options .comp-settings-grid{margin-top:12px}
#scan-mode-toggle{max-width:none!important;margin-top:18px!important}
#scan-mode-toggle button,#scan-mode-toggle a{font-family:'Outfit',sans-serif!important;min-height:42px;display:flex;align-items:center;justify-content:center}
#report-empty{display:none!important}
#report-decoded>.report-card-container:first-of-type{border-top:3px solid #a81a1a}
.report-header-flex{gap:24px}
.vin-char-grid{gap:2px}
.report-tags-flex{padding-top:18px;margin-top:20px}
.data-details{margin-top:18px;border-top:1px solid var(--border-slate);padding-top:12px}
.data-details summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--text-secondary);padding:6px 0}
.data-details .report-tags-flex{margin-top:0}
.prov-row>div:first-child{flex:1;min-width:220px}.prov-meta{font-family:'Outfit',sans-serif;font-size:14px;line-height:1.6;max-width:480px;margin-top:5px}
.integration-cost-note{font-size:13px;line-height:1.6;color:var(--text-light);padding:16px 0}
.settings-integration{border:1px solid var(--border-slate);border-radius:9px;margin-top:10px;background:#fff}
.settings-integration summary{padding:16px;cursor:pointer;font-weight:600;display:flex;justify-content:space-between;gap:14px;list-style:revert}
.integration-state{font-size:12px;color:var(--text-secondary);text-align:right}.integration-body{padding:0 16px 18px;font-size:14px;line-height:1.65;color:var(--text-secondary)}
.settings-integration summary::after{content:'+';color:var(--text-light)}.settings-integration[open]>summary::after{content:'−'}.settings-integration summary>span:first-child{flex:1}
.integration-body dl{display:grid;grid-template-columns:120px 1fr;gap:8px 16px;margin:14px 0}.integration-body dt{font-weight:600;color:var(--text-primary)}.integration-body dd{margin:0}.integration-body a{color:var(--crimson-red);display:inline-block;margin-right:20px;margin-top:10px}
#revealModal .modal{max-width:580px}#revealedKey{margin-top:10px}#revealModal label{font-size:14px;color:var(--text-secondary)}
.btn-crimson.btn-web-scan{background:#fff;color:#526075;border:1px solid #cbd5e1;box-shadow:none}
.report-panel-title{font-size:14px;letter-spacing:.02em}
.report-panel-grid{gap:24px}
.report-card-container{margin-bottom:24px}
#marketsnap-head{font-variant-numeric:tabular-nums}
.report-section-nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}
.report-section-nav a{padding:9px 14px;border:1px solid var(--border-slate);border-radius:7px;background:#fff;color:var(--text-secondary);font-size:14px;text-decoration:none}
#market-report,#vehicle-details,#risk-report{scroll-margin-top:95px}
.pricing-card.popular{border-color:#a81a1a;box-shadow:0 6px 24px #a81a1a0c}
.pricing-header>.mono{font-family:'Outfit',sans-serif!important;color:#a81a1a!important}
.pricing-feature-dot{background:#a81a1a!important}
.intro p{font-size:16px;line-height:1.7;max-width:660px}
.cap-legend{line-height:1.6}
.cat-card{box-shadow:none;border-radius:12px}
.wrap{max-width:1480px;padding:28px 24px}
.capture{padding:20px}
.hint{font-size:13px;line-height:1.6}
.tablewrap{overflow:auto;max-height:75vh}
#lot-table{min-width:1250px;font-variant-numeric:tabular-nums}
#lot-table th{position:sticky;top:0;z-index:2;background:#f8fafc;padding:15px 12px;white-space:nowrap}
#lot-table td{padding:16px 12px}
#lot-table .num{text-align:right;font-family:'Outfit',sans-serif}
#lot-table th:not(.c-vehicle):not(.c-vin):not(.c-status):not(.c-notes){text-align:right}
#lot-table .c-expect,#lot-table .c-sold{background:#faf3f3;color:#711818}
#lot-table tr.car:hover td{background:#f3f5f8}
.column-picker{margin:16px 0 4px;border-top:1px solid var(--border-slate);padding-top:10px}
.column-picker label{display:inline-flex;align-items:center;gap:8px;margin:8px 20px 8px 0;font-size:14px}
.workspace-options{margin-top:16px;border-top:1px solid var(--border-slate);padding-top:8px}
@media(max-width:768px){
 nav.navbar .nav-links{display:none}
 nav.navbar,.app-bar,.topbar{min-height:64px;padding:12px 16px;gap:12px}
 .app-bar .global-nav{order:5;width:100%;justify-content:space-between;gap:10px;border-top:1px solid var(--border-slate);padding-top:12px}
 .breadcrumb{display:none}.nav-mobile-menu{top:64px}
 .search-card{padding:20px!important}.search-group{display:grid!important;grid-template-columns:1fr 52px}
 .search-group .input-wrapper{grid-column:1/-1;width:100%}.search-group .input-field{width:100%;font-size:16px;letter-spacing:.35px!important}
 .btn-search{width:100%;justify-content:center;min-height:48px}.btn-web-scan{grid-column:2}
 .hero-title{font-size:36px!important;line-height:1.12!important;letter-spacing:-1px!important}
 .hero-subtitle{font-size:17px!important}.report-header-flex{align-items:flex-start}
 .report-header-flex>div:last-child{display:none!important}.wrap{padding:20px 12px}
 .topbar{flex-wrap:wrap}.topbar .workspace-nav{order:5;width:100%;display:flex;justify-content:space-between}
 .report-card-container{padding-left:18px!important;padding-right:18px!important}
}
@media print{.column-picker,.workspace-nav,.report-section-nav{display:none!important}.tablewrap{max-height:none;overflow:visible}#lot-table{min-width:0}#lot-table th{position:static}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
