:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#263631;background:#f6f7f4;font-synthesis:none;--ink:#213a31;--muted:#7d8982;--line:#dde3dc;--green:#244e3b;--accent:#d0eac1}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{outline-offset:4px}button{cursor:pointer;border:1px solid var(--line);background:#fff;color:var(--ink);padding:9px 12px;border-radius:6px;font-size:12px;transition:background .16s}button:hover{background:#edf2e9}button:disabled{opacity:.45;cursor:default}a{color:var(--green)}button.active{background:#e0eadb;border-color:#b6ccb0}button.primary{background:var(--green);color:#fff;border-color:var(--green)}button.primary:hover{background:#34634a}[hidden]{display:none!important}.masthead{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 30px;background:#fbfcf9;gap:24px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:#253d31;font-size:21px;font-weight:700;letter-spacing:3px}.brand small{display:block;letter-spacing:2.7px;font-size:8px;margin-top:4px;font-weight:500}.bolt{font-size:42px;line-height:1;font-weight:400;transform:skew(-10deg)}.vehicle-id{display:flex;gap:18px;align-items:center;font-size:12px}.vehicle-id span:first-child{font-weight:650}.vehicle-id span+span{border-left:1px solid #ced6cc;padding-left:18px;color:#7a847b}.header-actions{display:flex;gap:8px;align-items:center}.local-status{font-size:11px;color:#67786a;margin-right:16px}.local-status i,.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#68a975;margin-right:7px}.workspace{display:grid;grid-template-columns:250px minmax(440px,1fr) 295px;height:calc(100dvh - 82px);min-height:690px}.catalog-panel{padding:29px 18px 18px 23px;background:#fbfcf9;display:flex;flex-direction:column;border-right:1px solid var(--line);min-height:0}.eyebrow{font-size:9px;letter-spacing:1.5px;font-weight:600;color:#89948b}h1{font-size:23px;letter-spacing:-.9px;font-weight:500;margin:11px 0 23px}.search{display:flex;align-items:center;gap:9px;padding:10px 8px;border:1px solid var(--line);border-radius:5px;background:white}.search span{font-size:20px;line-height:14px;color:#859084}.search input{border:0;background:none;width:100%;font-size:11px;min-width:0;outline:none}.search kbd{font-size:10px;color:#b2b9ae;border:1px solid #e7eae2;padding:1px 5px;border-radius:3px}.catalog-head{display:flex;justify-content:space-between;margin:27px 7px 12px;font-size:9px;letter-spacing:1.5px;color:#8a958c}#systems{overflow:auto;min-height:0;flex:1}#systems button{display:flex;align-items:center;gap:10px;text-align:left;border:0;width:100%;background:transparent;padding:12px 9px;font-size:11px;border-radius:5px;margin:2px 0}#systems button:hover{background:#edf1e9}#systems button.active{background:#e4eddc;color:#2b5035}#systems button .sys-index{color:#98a390;font-size:9px;font-variant-numeric:tabular-nums}#systems button .sys-label{flex:1}#systems button .arrow{color:#9dab9a}#systems .search-result small{display:block;margin-top:4px;font-size:9px;color:#879380}.catalog-foot{margin-top:16px;display:flex;gap:10px;align-items:center;border-top:1px solid var(--line);padding-top:17px}.catalog-foot img{width:46px;height:42px;object-fit:cover;border-radius:5px}.catalog-foot div{flex:1;font-size:10px}.catalog-foot strong{display:block;font-weight:550}.catalog-foot span{display:block;color:#96a08f;font-size:8px;margin-top:6px}.catalog-foot button{background:none;padding:5px;border:0;font-size:20px}.viewer-panel{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 32%,#fcfcf9,#e9ece4);min-width:0}.viewer-top{position:absolute;z-index:5;top:27px;left:29px;right:26px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;pointer-events:none}.viewer-top>*{pointer-events:auto}.breadcrumbs{font-size:9px;color:#7b887b;display:flex;flex-wrap:wrap;gap:5px;max-width:450px}.breadcrumbs button{border:0;padding:0;background:transparent;color:#6d7e70;font-size:9px}.viewer-top h2{font-size:24px;font-weight:450;letter-spacing:-.65px;margin:9px 0}.mode-tabs{display:flex;gap:2px;background:#e5e9e0;padding:3px;border-radius:6px;white-space:nowrap}.mode-tabs button{border:0;background:none;font-size:10px;padding:8px 10px}.mode-tabs button.active{background:#fff;box-shadow:0 1px 4px #26362114}#viewport{position:absolute;inset:0;touch-action:none}#viewport canvas{display:block;width:100%;height:100%}.loading{position:absolute;inset:0;display:grid;place-items:center;font-size:13px;color:#61725f}#hover-label{position:absolute;pointer-events:none;padding:6px 9px;color:white;background:#244533ed;box-shadow:0 3px 12px #182b2520;font-size:10px;border-radius:4px;z-index:3;white-space:nowrap}.part-label{position:absolute;pointer-events:auto;font-size:9px;padding:4px 6px;white-space:nowrap;border-color:#ffffffb0;box-shadow:0 1px 5px #213a3119;background:#fffffff0;z-index:2}.viewport-tools{position:absolute;left:26px;top:130px;display:flex;gap:8px;z-index:4;flex-wrap:wrap}.tool-group{display:flex;background:#ffffffce;padding:3px;border-radius:7px;border:1px solid #d9e0d4;box-shadow:0 2px 6px #263d3010}.tool-group button{border:0;background:transparent;font-size:13px;padding:7px 8px}.tool-group span{font-size:10px;margin-left:4px}.tool-group button.active{background:#e6eede}.camera-presets{position:absolute;right:22px;bottom:206px;z-index:4;display:flex;flex-direction:column;gap:5px}.camera-presets button{background:#ffffffd6;min-width:39px;font-size:9px;padding:8px}.scene-note{position:absolute;left:27px;bottom:213px;font-size:8px;letter-spacing:1px;color:#8b9483}.divider{color:#bfc7b5;margin:0 8px}#geometry-status{letter-spacing:0}.assembly-controls{position:absolute;bottom:42px;left:26px;right:26px;padding:17px 21px 15px;background:#ffffffde;border:1px solid #dce3d6;border-radius:10px;box-shadow:0 6px 24px #4b5f4610;backdrop-filter:blur(12px)}.assembly-caption{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.7px;color:#7b8877}.assembly-caption output{color:#40503c;letter-spacing:0;font-size:11px}#explode{width:100%;accent-color:#456f46;margin:19px 0 17px;height:4px;cursor:pointer}.playback{display:flex;gap:7px;align-items:center}.playback button{font-size:10px;padding:10px 11px}.playback button:nth-child(3){background:none;border-color:transparent;color:#7d8977}.playback span{margin-left:auto;font-size:9px;color:#8b9582}.gesture-hint{position:absolute;bottom:16px;width:100%;text-align:center;font-size:8px;color:#919b87;letter-spacing:.2px}.inspector{padding:26px 22px;background:#fbfcf9;border-left:1px solid var(--line);overflow:auto}.inspector-top{display:flex;align-items:center;justify-content:space-between}.inspector-top button{border:0;background:none;padding:0;font-size:23px;color:#567247}.inspector h2{font-size:23px;line-height:1.2;font-weight:480;letter-spacing:-.6px;margin:17px 0 9px}.part-code{font:9px Consolas,monospace;color:#8a9582;letter-spacing:1px}.inspector p{font-size:11px;line-height:1.75;color:#82907e;margin:16px 0}.model-scope{font-size:9px;line-height:1.6;padding:10px;background:#edf1e7;border:1px solid #e2e8dc;border-radius:5px;color:#7b8a73;margin-bottom:14px}.actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}.actions-grid button{font-size:10px}.text-button{border:0;background:none;padding-left:0;font-size:9px;color:#6d8560}.section-title{display:flex;justify-content:space-between;align-items:center;margin-top:15px}.section-title h3{font-size:11px;font-weight:550;margin:12px 0}.section-title span{font-size:9px;color:#95a08b}#children button{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;text-align:left;font-size:10px;border:0;border-bottom:1px solid #e8ece3;border-radius:0;background:none;padding:10px 0;color:#64785c}#children button:hover{color:#213e2a}details{border-top:1px solid var(--line);margin-top:18px;padding-top:15px}summary{font-size:11px;font-weight:550;cursor:pointer;list-style:none;display:flex;justify-content:space-between}summary::after{content:'+';font-size:14px;color:#8c9b82}details[open] summary::after{content:'-'}#part-photo{margin-top:14px}#part-photo img{width:100%;height:126px;object-fit:cover;border-radius:5px}#part-photo .photo-missing{height:102px;border:1px dashed #cfd9c5;border-radius:5px;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:10px;color:#93a184;text-align:center;padding:12px;gap:8px}.photo-missing span{font-size:9px;color:#a0ab97}#part-record label{display:block;font-size:9px;margin:13px 0;color:#7e8d74}#part-record input,#part-record textarea{display:block;width:100%;margin-top:6px;border:1px solid #dce3d4;border-radius:4px;background:#fff;padding:9px 8px;font-size:10px;color:#34502d}#part-record textarea{resize:vertical}#part-record button{width:100%;font-size:10px}#product-link{display:block;font-size:10px;margin-top:12px}#record-status{font-size:8px;font-weight:400;color:#5d8251;margin-left:auto;margin-right:10px}#sources a{display:block;font-size:10px;line-height:1.6;margin:10px 0;text-decoration:none}#sources a:hover{text-decoration:underline}#photo-view{position:absolute;inset:185px 30px 245px;z-index:3}#owner-photo{width:100%;height:100%;object-fit:contain}#photo-options{display:flex;gap:6px;justify-content:center;margin-top:8px}#photo-options button{padding:7px;font-size:9px}#toast{position:fixed;left:50%;bottom:25px;transform:translateX(-50%);padding:13px 22px;background:#254b35;color:#fff;border-radius:7px;font-size:12px;z-index:100;box-shadow:0 4px 20px #233b3522;max-width:80vw}.empty{font-size:11px;color:#829176;padding:10px}.small-copy{font-size:10px!important}@media(min-width:1650px){.workspace{grid-template-columns:275px minmax(500px,1fr) 320px}.catalog-panel{padding-left:28px}.inspector{padding:28px}}@media(max-width:1150px){.workspace{grid-template-columns:205px minmax(380px,1fr) 250px}.masthead{padding:0 20px}.vehicle-id{display:none}.catalog-panel{padding:24px 12px}.inspector{padding:24px 15px}.viewer-top{left:20px;right:15px}.viewer-top h2{font-size:20px}.viewport-tools{left:20px}.tool-group span{display:none}.playback span{display:none}.mode-tabs button{font-size:9px;padding:7px}.header-actions .local-status{display:none}}@media(max-width:900px){.workspace{grid-template-columns:180px 1fr;grid-template-rows:minmax(650px,calc(100dvh - 82px)) auto;height:auto;min-height:0}.inspector{grid-column:1/-1;border-top:1px solid var(--line);columns:2;column-gap:30px}.inspector>*{break-inside:avoid}.catalog-foot div{display:none}.catalog-foot img{width:75px}.masthead{height:72px}.brand{font-size:18px}.header-actions button{font-size:10px}}@media(max-width:600px){.workspace{display:flex;flex-direction:column}.catalog-panel{padding:18px;height:auto}.catalog-panel h1,.catalog-head,.catalog-foot,.catalog-panel .eyebrow{display:none}#systems{display:flex;gap:5px;margin-top:10px;overflow:auto}#systems button{width:auto;min-width:max-content;padding:9px;font-size:10px}#systems .sys-index,#systems .arrow{display:none}.viewer-panel{height:740px}.inspector{columns:1;padding:22px}.masthead{padding:0 18px}.header-actions button{padding:8px}.brand small{font-size:6px}.brand{font-size:15px;letter-spacing:2px}.brand .bolt{font-size:33px}.viewer-top{top:24px}.viewer-top h2{font-size:19px;max-width:170px}.viewport-tools{top:133px}.assembly-controls{left:15px;right:15px;padding:15px}.scene-note{left:18px}.camera-presets{right:15px}.playback button{padding:10px 8px}.gesture-hint{font-size:7px}}
:root #component-picker{width:100%;border:1px solid #dce3d4;border-radius:5px;padding:9px 6px;background:#fff;color:#4e6445;font-size:10px;margin-bottom:10px}
:root .parts-map-view{position:absolute;inset:115px 25px 22px;z-index:5;display:flex;flex-direction:column;min-height:0;background:#f8faf5;border:1px solid #dbe3d3;border-radius:9px;padding:18px}.map-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.map-heading h2{font-size:19px;font-weight:500;letter-spacing:-.4px;margin:0 0 8px}.map-heading p{font-size:10px;color:#75866d;margin:0 0 14px}.map-heading button{font-size:9px;white-space:nowrap}#mapping-search{border:1px solid #d3dec9;border-radius:5px;padding:10px;font-size:11px;background:#fff}.mapping-disclosure{font-size:10px;color:#8b815b;line-height:1.5;margin:12px 0}.mapping-scroll{overflow:auto;min-height:0;flex:1}#parts-mapping-table{width:100%;border-collapse:collapse;text-align:left;font-size:10px}#parts-mapping-table th{position:sticky;top:0;background:#eaf0e4;padding:11px 8px;font-size:9px;font-weight:600;border-bottom:1px solid #ccd8c0;z-index:1}#parts-mapping-table td{vertical-align:top;padding:13px 8px;border-bottom:1px solid #e0e7d9;line-height:1.5}#parts-mapping-table td:first-child{min-width:115px;width:19%}#parts-mapping-table td:last-child{width:35%}#parts-mapping-table small{display:block;font-size:9px;color:#86927b;margin-top:5px}#parts-mapping-table strong{font-weight:600}.mapping-badge{display:inline-block;background:#e6eedf;border-radius:3px;padding:3px 5px;font-size:8px;color:#648252;margin:0 0 5px}.mapping-badge.review,.mapping-badge.assembly,.mapping-badge.accessory{background:#f2edda;color:#988450}.mapping-node{display:block;border:0;background:none;text-align:left;padding:3px 0;font-size:9px;color:#447746;line-height:1.45}.supplier-count{font-size:9px;font-weight:400;margin-left:auto;margin-right:10px;color:#8fa17f}.supplier-card{padding:12px 0;border-bottom:1px solid #e2e9da}.supplier-card>strong{display:block;font-size:10px;font-weight:600;margin-bottom:7px}.supplier-card p{font-size:9px!important;line-height:1.6!important;margin:5px 0!important}.supplier-card b{font-weight:550;color:#677c5d}.supplier-card small{display:block;font-size:8px;color:#9b977c;margin:6px 0}.supplier-card .mapping-note{color:#96845d!important}@media(max-width:900px){.parts-map-view{inset:125px 15px 20px!important;padding:12px!important}.map-heading{flex-wrap:wrap}.map-heading h2{font-size:16px}.mapping-scroll table{min-width:530px}.mode-tabs button{padding:7px 6px}}@media(max-width:600px){.viewer-top{flex-wrap:wrap}.viewer-top .mode-tabs{margin-top:3px}.parts-map-view{inset:145px 12px 18px!important}.map-heading button{padding:6px}.mapping-disclosure{font-size:9px}}
/* Model years view */
.model-years-view{position:absolute;inset:115px 25px 22px;z-index:5;display:flex;flex-direction:column;min-height:0;background:#f8faf5;border:1px solid #dbe3d3;border-radius:9px;padding:18px;overflow:auto}.model-years-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;flex-wrap:wrap}.model-years-heading h2{font-size:19px;font-weight:500;letter-spacing:-.4px;margin:0 0 8px}.model-years-heading p{font-size:10px;color:#75866d;margin:0 0 14px}.model-years-heading-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-start}.model-years-heading-actions button,.model-years-heading-actions a{font-size:9px;white-space:nowrap}.model-years-disclosure{margin:0 0 14px;padding:10px 12px;background:#f2edda;border-radius:6px;font-size:10px;line-height:1.5;color:#766b3f}.model-years-disclosure p{margin:0 0 6px}.model-years-disclosure p:last-child{margin:0}.model-years-source-note{font-size:10px}.model-years-chips,.model-years-subtabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.model-years-chips button,.model-years-subtabs button{padding:6px 10px;font-size:11px}.model-years-chips button.is-active{background:var(--green);color:#fff;border-color:var(--green)}.model-years-subtabs button.is-active{background:var(--accent);border-color:#9bbf86;color:var(--ink)}.model-years-content{flex:1;min-height:0;font-size:11px;line-height:1.5}.model-years-content h3{font-size:13px;margin:14px 0 6px;font-weight:600;color:var(--ink)}.model-years-content section{margin-bottom:14px}.model-years-content ul{margin:0;padding-left:18px}.model-years-content li{margin-bottom:4px}.model-years-year-label{display:flex;align-items:baseline;gap:10px;margin-bottom:8px;padding:8px 10px;background:#fff;border:1px solid var(--line);border-radius:5px}.model-years-year-num{font-size:24px;font-weight:700;color:var(--green)}.model-years-year-intro{font-size:11px;color:#75866d;font-style:italic}.model-years-table{width:100%;border-collapse:collapse;font-size:10px;margin-top:6px}.model-years-table th,.model-years-table td{border:1px solid var(--line);padding:6px 8px;text-align:left;vertical-align:top}.model-years-table thead th{background:#eaf0e4;font-size:10px;font-weight:600}.model-years-table tbody th{background:#f4f7f0;font-weight:500;text-align:left}.model-years-count{font-size:10px;color:#75866d}.model-years-filter-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:10px;padding:8px 10px;background:#fff;border:1px solid var(--line);border-radius:5px}.model-years-tier-toggle{font-size:10px;display:flex;gap:6px;align-items:center;color:#67786a}.model-years-recall-list,.model-years-tsb-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.model-years-recall,.model-years-tsb{padding:10px 12px;background:#fff;border:1px solid var(--line);border-radius:6px;border-left-width:4px}.model-years-recall.model-years-tier-a{border-left-color:#68a975}.model-years-recall.model-years-tier-b{border-left-color:#d6b04a}.model-years-recall.model-years-tier-c{border-left-color:#b6bfb1}.model-years-recall-head,.model-years-tsb-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:6px}.model-years-recall-id,.model-years-tsb-id{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;color:#445549;font-weight:600}.model-years-recall-component{font-size:10px;color:#5d6e62}.model-years-recall-year,.model-years-tsb-date{font-size:10px;color:#75866d}.model-years-recall p,.model-years-tsb p{margin:0 0 6px;font-size:11px;line-height:1.5}.model-years-recall-meta,.model-years-tsb-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:10px;color:#67786a;margin-top:6px}.model-years-recall-meta a,.model-years-link{font-size:10px;color:var(--green)}.model-years-badge{display:inline-block;padding:2px 6px;border-radius:3px;font-size:9px;font-weight:600;letter-spacing:.3px}.model-years-badge-tier-a{background:#dceadc;color:#3a6448}.model-years-badge-tier-b{background:#f2edda;color:#8a7434}.model-years-badge-tier-c{background:#e2e6df;color:#5d6e62}.model-years-badge-park{background:#f5d6d2;color:#7a2e25}.model-years-badge-ota{background:#d6e3f0;color:#2c5170}.model-years-badge-tsb-a{background:#dceadc;color:#3a6448}.model-years-badge-tsb-b{background:#f2edda;color:#8a7434}
/* Ford programs sub-tab */
.model-years-ford-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.model-years-ford{padding:10px 12px;background:#fff;border:1px solid var(--line);border-radius:6px;border-left-width:4px}.model-years-ford.model-years-program-s{border-left-color:#c1403a}.model-years-ford.model-years-program-c{border-left-color:#9bbf86}.model-years-ford.model-years-program-b,.model-years-ford.model-years-program-h{border-left-color:#6c98b5}.model-years-ford.model-years-program-e{border-left-color:#9b6cb5}.model-years-ford.model-years-program-g,.model-years-ford.model-years-program-p,.model-years-ford.model-years-program-l,.model-years-ford.model-years-program-m{border-left-color:#b5a368}.model-years-ford-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:6px}.model-years-ford-id{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;font-weight:600;color:#243e2f;background:#f0f4ed;padding:2px 6px;border-radius:3px}.model-years-ford-date{font-size:10px;color:#75866d}.model-years-ford-year{font-size:10px;color:#75866d}.model-years-ford p{margin:0 0 6px;font-size:11px;line-height:1.5}.model-years-ford-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:10px;color:#67786a;margin-top:6px;align-items:center}.model-years-ford-xref{font-size:10px;color:var(--green);background:#edf2e9;padding:2px 6px;border-radius:3px}.model-years-ford-nhtsa-campaign{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#3a6448;font-weight:600}.model-years-badge-ford-type-s{background:#f5d6d2;color:#7a2e25}.model-years-badge-ford-type-c{background:#dceadc;color:#3a6448}.model-years-badge-ford-type-b,.model-years-badge-ford-type-h{background:#dde7ee;color:#2c5170}.model-years-badge-ford-type-e{background:#e8dcec;color:#5d2c70}.model-years-badge-ford-type-g,.model-years-badge-ford-type-p,.model-years-badge-ford-type-l,.model-years-badge-ford-type-m{background:#f2edda;color:#8a7434}
@media(max-width:600px){.model-years-view{inset:145px 12px 18px!important;padding:14px}.model-years-chips,.model-years-subtabs{gap:4px}.model-years-heading-actions{width:100%}}
