:root{color-scheme:light;--bg:#f4f5ef;--surface:#fff;--ink:#1e2920;--muted:#596451;--line:#dce0d5;--accent:#c2e94e;--soft:#e9ecdf;--radius:12px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);line-height:1.55}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}button,select,input{font:inherit;color:inherit}button,select{cursor:pointer}a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #547708;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(2.7rem,5.3vw,5.6rem);font-weight:650;margin-bottom:28px}h1 em{font-family:Georgia,serif;font-weight:400}h2{font-size:clamp(2rem,3vw,3rem);font-weight:550}h3{font-size:1.6rem;font-weight:600}header{border-bottom:1px solid var(--line);background:var(--bg)}.header-inner{max-width:1480px;min-height:92px;margin:auto;padding:16px 40px;display:flex;align-items:center;gap:36px}.brand{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:1.6rem;letter-spacing:-.07em;white-space:nowrap}.brand span{font-weight:400}.brand small{font-size:8px;font-weight:500;letter-spacing:.13em;max-width:44px;white-space:normal;margin-left:9px;line-height:1.5}.brand:hover{text-decoration:none}nav{display:flex;flex-wrap:wrap;align-items:center;gap:21px;flex:1;font-size:.85rem}nav a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--ink);text-underline-offset:8px}.theme-label{font-size:10px;color:var(--muted);display:grid;gap:3px}.theme-label select{background:transparent;border:0;font-size:.75rem;padding:3px 0}.menu-toggle{display:none}.context{max-width:1400px;margin:auto;display:flex;gap:20px;padding:13px 0;border-bottom:1px solid var(--line);font-size:.7rem;color:var(--muted);letter-spacing:.025em}.context span:first-child{font-weight:700;color:var(--ink)}.context a{margin-left:auto}main{max-width:1400px;margin:auto;padding:0 0 75px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:88px 0 76px}.eyebrow,.number{font-size:.65rem;font-weight:700;letter-spacing:.15em;line-height:1.6}.eyebrow{margin-bottom:25px;color:var(--muted)}.lede{font-size:1.1rem;line-height:1.7;max-width:520px;color:var(--muted)}.actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:32px 0 23px}.button{display:inline-flex;gap:35px;justify-content:space-between;align-items:center;padding:14px 20px;border:1px solid var(--line);border-radius:5px;font-size:.85rem;font-weight:600}.button.primary{background:var(--accent);border-color:var(--accent);color:#1e2920}.button.quiet{border:0}.button:hover{text-decoration:none;filter:brightness(.97)}.fine{font-size:.7rem;color:var(--muted)}.system-art{background:var(--soft);border:1px solid var(--line);border-radius:var(--radius);padding:24px 27px 20px;transform:rotate(-1.5deg)}.system-art svg{width:100%;height:auto;display:block}.art-top,.art-bottom{display:flex;align-items:center;gap:8px;font-size:.6rem;letter-spacing:.08em}.art-top{font-weight:650;justify-content:space-between}.art-top span,.art-bottom{color:var(--muted)}.art-bottom{letter-spacing:0;font-size:.65rem}.art-bottom>span:last-child{margin-left:auto;font-size:.5rem;letter-spacing:.1em}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7d9e2f}.section{padding:54px 0;border-top:1px solid var(--line)}.section-heading .eyebrow{margin-bottom:14px}.section-heading{margin-bottom:35px}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.feature{display:block;padding:32px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}a.feature:hover{border-color:var(--ink);text-decoration:none}.number{color:var(--muted);display:block;margin-bottom:45px}.feature h3{margin-bottom:14px}.feature p{font-size:.9rem;color:var(--muted);max-width:340px}.feature>span:last-child{font-size:.75rem;font-weight:600}.page-intro{padding:70px 0 45px}.page-intro h1{max-width:880px}.notice{padding:16px 20px;background:var(--soft);border-left:3px solid #839b47;font-size:.85rem;max-width:750px;margin:30px 0 0}.skip{position:fixed;top:-80px;left:20px;padding:12px;background:var(--accent);color:#1e2920;z-index:100}.skip:focus{top:12px}footer{max-width:1400px;margin:auto;border-top:1px solid var(--line);padding:35px 0 50px;font-size:.75rem;color:var(--muted)}footer .brand{color:var(--ink);font-size:1.3rem;margin-bottom:14px}footer p{margin-bottom:9px}
html[data-theme=dark]{color-scheme:dark;--bg:#182019;--surface:#202b21;--ink:#eff2e8;--muted:#b0bca8;--line:#3d4738;--soft:#273226}
@media(prefers-color-scheme:dark){html:not([data-theme=light]){color-scheme:dark;--bg:#182019;--surface:#202b21;--ink:#eff2e8;--muted:#b0bca8;--line:#3d4738;--soft:#273226}}
@media(max-width:1480px){main,.context,footer{margin-left:40px;margin-right:40px}.header-inner{gap:25px}nav{gap:17px}}
@media(max-width:1100px){.header-inner{flex-wrap:wrap;min-height:80px;gap:16px}nav{order:3;flex-basis:100%;padding-bottom:8px}.theme-label{margin-left:auto}.hero{gap:28px;padding-top:60px}.system-art{padding:16px}.feature{padding:25px}.number{margin-bottom:30px}}
@media(max-width:680px){main,.context,footer{margin-left:20px;margin-right:20px}.header-inner{padding:16px 20px}.brand{font-size:1.45rem}.brand small{display:none}.menu-toggle{display:block;background:transparent;border:1px solid var(--line);padding:7px 12px;margin-left:auto;border-radius:4px;font-size:.8rem}nav{display:none;gap:0}nav.open{display:grid;grid-template-columns:1fr 1fr}nav a{padding:12px 4px}.theme-label{margin-left:0}.context{font-size:.6rem;gap:10px}.context a{white-space:nowrap}.hero{grid-template-columns:1fr;padding:48px 0 40px;gap:30px}.hero h1{font-size:3.45rem}.hero .lede{font-size:1rem}.eyebrow{font-size:.59rem}.system-art{max-width:470px}.system-art svg{max-height:300px}.feature-grid{grid-template-columns:1fr}.number{margin-bottom:26px}.section{padding:35px 0}.page-intro{padding:45px 0 30px}.art-bottom>span:last-child{display:none}.actions{gap:8px}.button{padding:13px 16px;gap:18px}.page-intro h1{font-size:2.7rem}.context span:nth-child(2){max-width:120px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{header,.context,.menu-toggle,footer{display:none}body{background:white;color:black}main{margin:0}.system-art{transform:none}.feature-grid{display:block}.feature{break-inside:avoid}.button{border:1px solid black}}
/* Shared workspace components: cards, tables, drawer, statuses and sticky totals. */
[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-intro.compact{padding-bottom:30px}.page-intro.compact h1{font-size:clamp(2.8rem,4.5vw,4.5rem)}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:15px 0 24px}.catalog-toolbar h2{font-size:1.65rem;margin:0}.category-tabs{display:flex;gap:7px;flex-wrap:wrap;padding-bottom:22px;border-bottom:1px solid var(--line)}.category-tab{background:transparent;border:1px solid var(--line);border-radius:30px;padding:8px 13px;font-size:.75rem}.category-tab span{margin-left:6px;color:var(--muted)}.category-tab[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.category-tab[aria-pressed=true] span{color:inherit;opacity:.7}.result-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0 5px}.result-bar p{font-size:.8rem;margin:0}.text-button{background:none;border:0;padding:5px 0;text-decoration:underline;text-underline-offset:3px;font-size:.8rem}.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:20px 0}.catalog-table{border-collapse:collapse;width:100%;font-size:.85rem;table-layout:fixed}.catalog-table thead{background:var(--soft);text-align:left;font-size:.65rem;letter-spacing:.06em;text-transform:uppercase}.catalog-table th,.catalog-table td{padding:22px;vertical-align:top;border-bottom:1px solid var(--line)}.catalog-table th:first-child{width:35%}.catalog-table th:nth-child(2){width:25%}.catalog-table th:nth-child(3){width:19%}.catalog-table th:last-child{width:21%}.catalog-table td strong{display:block;font-weight:650;font-size:1rem;line-height:1.4}.catalog-table code{font-size:.65rem;color:var(--muted);display:block;margin-top:6px;overflow-wrap:anywhere}.catalog-table tr:last-child td{border-bottom:0}.part-category{display:block;color:var(--muted);font-size:.6rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase;margin-bottom:9px}.badge{display:inline-block;border-radius:4px;padding:5px 8px;font-size:.65rem;font-weight:600;background:var(--soft);color:var(--muted)}.badge.good{color:#36560a;background:#d9efb5}.badge.warning{color:#725216;background:#f9e4b7}.badge.error{color:#8e322e;background:#f6d4d0}.empty-state{text-align:center;padding:60px 20px;border:1px dashed var(--line);border-radius:var(--radius);margin:20px 0}.empty-state h2,.empty-state h3{font-size:1.5rem}.empty-state p{font-size:.9rem;color:var(--muted)}summary{cursor:pointer;font-size:.75rem;font-weight:600}.part-evidence{min-width:200px;margin-top:15px;font-size:.75rem}.part-evidence table{width:100%;border-collapse:collapse;font-size:.7rem;table-layout:auto}.part-evidence table th,.part-evidence table td{padding:8px 0;width:auto;font-size:.7rem;overflow-wrap:anywhere}.part-evidence table th{font-weight:500;text-transform:capitalize}.part-evidence caption{text-align:left;padding-bottom:8px;font-weight:650}.part-evidence ul{padding-left:17px;color:var(--muted)}.part-evidence li{margin-bottom:9px}.source-list{font-size:.65rem}.source-list a{text-decoration:underline}.filter-drawer{position:fixed;inset:0 0 0 auto;margin:0;padding:35px 30px;width:min(430px,100%);height:100%;max-height:100%;border:0;border-left:1px solid var(--line);background:var(--surface);color:var(--ink)}.filter-drawer::backdrop{background:#10180c70;backdrop-filter:blur(2px)}.drawer-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:35px}.drawer-heading h2{font-size:1.8rem}.filter-drawer label{display:grid;gap:10px;margin:25px 0;font-size:.8rem;font-weight:600}.filter-drawer input,.filter-drawer select{padding:13px;border:1px solid var(--line);background:var(--bg);border-radius:5px;width:100%;font-weight:400}.drawer-actions{display:flex;align-items:center;gap:24px;margin-top:35px}.builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:35px;align-items:start}.build-row{display:flex;align-items:center;gap:24px;padding:25px 0;border-top:1px solid var(--line)}.build-row h3{font-size:1.1rem;flex:1;margin:0;letter-spacing:-.02em}.build-row>.part-category{margin:0}.build-row .button{font-size:.75rem;padding:10px 15px}.build-summary{position:sticky;top:24px;background:var(--surface);padding:28px;border:1px solid var(--line);border-radius:var(--radius)}.build-summary h2{font-size:1.65rem}.build-summary dl{font-size:.8rem}.build-summary dl>div{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}.build-summary dd{margin:0;font-weight:600}.build-summary .eyebrow{margin-bottom:18px}.status-message{padding:15px;border:1px solid var(--line);background:var(--soft);border-radius:5px;font-size:.85rem}.status-message[role=alert]{border-color:#ad4b40}.loading-state{display:flex;align-items:center;gap:12px}.loading-state:before{content:'';width:16px;height:16px;border:2px solid var(--line);border-top-color:var(--ink);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1000px){.catalog-table{min-width:850px}.builder-layout{grid-template-columns:minmax(0,1fr) 280px;gap:22px}.build-row{gap:14px}.build-summary{padding:23px}}
@media(max-width:680px){.catalog-toolbar{align-items:flex-start}.catalog-toolbar h2{font-size:1.4rem}.catalog-toolbar>.button{white-space:nowrap;font-size:.7rem;padding:10px 12px;gap:8px}.category-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:14px}.category-tab{white-space:nowrap;flex-shrink:0}.catalog-table{min-width:0;display:block}.catalog-table thead{display:none}.catalog-table tbody{display:block}.catalog-table .catalog-row{display:grid;grid-template-columns:1fr auto;padding:20px;border-bottom:1px solid var(--line);gap:13px}.catalog-table .catalog-row:last-child{border-bottom:0}.catalog-table .catalog-row>td{padding:0;border:0;width:auto}.catalog-table .catalog-row>td:first-child{grid-column:1/-1}.catalog-table .catalog-row>td:nth-child(2){grid-column:1/-1;color:var(--muted);font-size:.8rem}.catalog-table .catalog-row>td:last-child{grid-column:1/-1}.part-evidence{min-width:0}.builder-layout{display:flex;flex-direction:column}.builder-layout>section{width:100%}.build-summary{position:static;width:100%}.build-row{padding:20px 0;gap:12px}.build-row h3{font-size:1rem}.build-row>.part-category{display:none}.build-row .button{font-size:.7rem;white-space:nowrap}.filter-drawer{padding:28px 22px}}
.goal-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.goal-section h2{max-width:470px}.goal-section .lede{font-size:1rem}.goal-form{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:30px}.goal-form label{display:grid;gap:9px;font-size:.75rem;font-weight:600;margin-bottom:20px}.goal-form input,.goal-form select{width:100%;min-width:0;padding:13px;border:1px solid var(--line);background:var(--bg);border-radius:5px;font-weight:400}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.goal-form .fine{margin:15px 0 0}@media(max-width:850px){.goal-section{gap:30px}}@media(max-width:680px){.goal-section{grid-template-columns:1fr;gap:24px}.goal-form{padding:22px}.form-pair{grid-template-columns:1fr}}
.sort-label{display:flex;align-items:center;gap:9px;font-size:.7rem;color:var(--muted);margin-left:auto}.sort-label select{background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:7px;font-size:.7rem;max-width:190px}.filter-chips{display:flex;gap:7px;flex-wrap:wrap;margin:16px 0 0}.filter-chip{border:1px solid var(--line);background:var(--soft);border-radius:30px;padding:7px 12px;font-size:.7rem}.checkbox-label{display:flex!important;align-items:flex-start;gap:10px!important;font-weight:400!important}.checkbox-label input{width:auto!important;margin-top:5px}.offer-filters{border-top:1px solid var(--line);padding-top:22px;margin-top:28px}.offer-filters summary{font-size:.85rem}.catalog-row>td>small,.detail-table small{display:block;color:var(--muted);font-size:.65rem;line-height:1.5;margin-top:7px}.catalog-row>td>a.text-button{display:block;margin-bottom:15px}.detail-table{width:100%;border-collapse:collapse;font-size:.85rem;min-width:620px}.detail-table caption{font-weight:600;text-align:left;padding:22px}.detail-table th,.detail-table td{padding:20px 22px;text-align:left;vertical-align:top;border-top:1px solid var(--line)}.detail-table thead{background:var(--soft);font-size:.65rem;text-transform:uppercase;letter-spacing:.04em}.detail-table tbody th{font-weight:600;width:26%}.detail-table a{text-decoration:underline}.detail-table .source-list{margin:0;padding-left:18px;max-width:420px}.detail-table .source-list li{margin-bottom:7px;overflow-wrap:anywhere}.detail-notes{padding-left:22px;color:var(--muted);font-size:.85rem;max-width:900px}.detail-notes li{margin-bottom:12px}.part-mpn{color:var(--muted);font-family:ui-monospace,monospace;font-size:.8rem;overflow-wrap:anywhere}.category-tabs a.category-tab[aria-current]{background:var(--ink);color:var(--bg)}.page-intro>.text-button{display:inline-block;margin-bottom:27px}.page-intro h1{overflow-wrap:anywhere}.page-intro .actions{margin-bottom:30px}@media(max-width:680px){.result-bar{flex-wrap:wrap}.sort-label{margin-left:0}.result-bar #clear-filters{margin-left:auto}.filter-drawer .form-pair{grid-template-columns:1fr 1fr}.detail-table{min-width:570px}.detail-table th,.detail-table td{padding:16px}.detail-notes{font-size:.8rem}.page-intro .part-mpn{font-size:.7rem}.category-tabs a.category-tab{white-space:normal;min-width:170px;max-width:250px}}
.workspace-toolbar{display:flex;align-items:center;gap:22px;border-top:1px solid var(--line);padding:18px 0;margin-bottom:20px}.workspace-toolbar p{flex:1;font-size:.75rem;color:var(--muted);margin:0}.workspace-toolbar button{font-size:.7rem;white-space:nowrap}button:disabled{opacity:.45;cursor:default}.build-group{border-top:1px solid var(--line);padding-bottom:18px}.build-group .build-row{border-top:0;padding-bottom:14px}.slot-empty{font-size:.8rem;color:var(--muted);margin:0 0 7px 44px}.selected-part{display:flex;gap:18px;align-items:center;margin:0 0 14px 44px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:18px}.selected-part>a{flex:1;min-width:0}.selected-part strong{font-size:.9rem;font-weight:600;display:block}.selected-part code{font-size:.65rem;color:var(--muted);overflow-wrap:anywhere}.selected-part label{display:grid;font-size:.6rem;color:var(--muted);gap:4px}.selected-part select{background:var(--bg);border:1px solid var(--line);border-radius:4px;padding:4px;font-size:.8rem}.selected-part button{font-size:.65rem}@media(max-width:680px){.workspace-toolbar{flex-wrap:wrap;gap:20px}.workspace-toolbar p{flex-basis:100%}.selected-part{margin-left:0;flex-wrap:wrap;gap:15px}.selected-part>a{flex-basis:100%}.slot-empty{margin-left:0}.build-group .build-row{padding-bottom:12px}}
.manual-entry{border:1px solid var(--line);border-radius:8px;padding:20px;margin-bottom:28px;background:var(--surface)}.manual-entry>summary{font-size:.85rem}.budget-form,.peripheral-form{display:flex;align-items:end;flex-wrap:wrap;gap:16px;padding-top:24px}.budget-form label,.peripheral-form label{display:grid;gap:8px;font-size:.7rem;font-weight:600;flex:1;min-width:150px}.budget-form input,.budget-form select,.peripheral-form input{padding:11px;border:1px solid var(--line);border-radius:4px;background:var(--bg);width:100%;min-width:0;font-size:.8rem}.budget-form button,.peripheral-form button{font-size:.75rem;padding:11px 18px}.peripheral-form{border-top:1px solid var(--line);margin-top:24px}.peripheral-form>.fine{flex-basis:100%;margin:0}.retailer-choice{min-width:130px;max-width:190px}.retailer-choice select{max-width:190px;width:100%}.retailer-choice small{font-size:.6rem;color:var(--muted)}.manual-items{margin-top:30px}.manual-items h3{font-size:1.3rem}.manual-items .selected-part{margin-left:0}.manual-items .selected-part>div{flex:1}.manual-items p{margin:6px 0 0}.build-summary .notice{font-size:.7rem;padding:13px;margin:20px 0}.selected-part{flex-wrap:wrap}.selected-part>a{flex-basis:45%}@media(max-width:680px){.budget-form,.peripheral-form{display:grid;grid-template-columns:1fr}.selected-part>a{flex-basis:100%}.retailer-choice{flex:1;max-width:none}.retailer-choice select{max-width:100%;font-size:.7rem}.peripheral-form>.fine{grid-column:1}.manual-entry{padding:18px}}
.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.check-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:25px}.check-card.incompatible{border-left:4px solid #ac4f43}.check-card.conditional{border-left:4px solid #b28b39}.check-card h3{font-size:1.15rem;letter-spacing:-.025em;margin:18px 0 12px}.check-card p{font-size:.85rem;color:var(--muted)}.check-sources{display:grid;gap:6px;margin-top:18px}.check-sources a{font-size:.65rem;text-decoration:underline;overflow-wrap:anywhere}@media(max-width:680px){.check-grid{grid-template-columns:1fr}.check-card{padding:22px}}
.peripheral-form select{padding:11px;border:1px solid var(--line);border-radius:4px;background:var(--bg);width:100%;min-width:0;font-size:.8rem}.peripheral-form label{min-width:180px}
#compare-tray{margin-left:auto}.context a:last-child{margin-left:0}.compare-feedback{max-width:1400px;margin:15px auto 0;padding:12px 18px;background:var(--soft);border-radius:5px;font-size:.8rem}.compare-button{display:block;margin:0 0 16px}.compare-button[aria-pressed=true]{font-weight:700}.compare-controls{display:flex;align-items:end;gap:18px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:20px 0}.compare-controls label{display:grid;gap:9px;font-size:.75rem;font-weight:600;flex:1;min-width:0}.compare-controls select{padding:12px;background:var(--bg);border:1px solid var(--line);border-radius:5px;min-width:0;width:100%;font-size:.8rem}.compare-controls button{white-space:nowrap;font-size:.75rem;padding:12px 18px}.comparison-table{border-collapse:collapse;font-size:.8rem;min-width:650px;width:100%}.comparison-table caption{text-align:left;font-size:.8rem;font-weight:600;padding:20px}.comparison-table th,.comparison-table td{padding:22px;vertical-align:top;text-align:left;border-top:1px solid var(--line);min-width:210px;max-width:290px}.comparison-table thead th{background:var(--soft);font-weight:600}.comparison-table th:first-child{min-width:160px;max-width:210px;font-size:.7rem;background:var(--surface)}.comparison-table thead th>a:first-child{font-size:1.05rem;line-height:1.4;display:block}.comparison-table code{display:block;font-size:.65rem;color:var(--muted);font-weight:400;margin:12px 0;overflow-wrap:anywhere}.comparison-table th .button{font-size:.65rem;padding:10px 12px;gap:5px;margin-top:15px;display:block}.comparison-table td small{display:block;font-size:.65rem;color:var(--muted);margin:9px 0}.comparison-table td p{margin:12px 0;font-size:.75rem}.share-label{display:grid;gap:9px;font-size:.75rem;margin:20px 0 10px}.share-label input{width:100%;padding:13px;border:1px solid var(--line);border-radius:5px;background:var(--surface);font-size:.75rem;color:var(--ink)}@media(max-width:1480px){.compare-feedback{margin-left:40px;margin-right:40px}}@media(max-width:680px){.compare-controls{display:grid;grid-template-columns:1fr;padding:20px}.compare-controls label{min-width:0}.compare-feedback{margin-left:20px;margin-right:20px}.context{gap:8px}.context span:nth-child(2){display:none}.context a{font-size:.58rem}.comparison-table th,.comparison-table td{padding:18px;min-width:210px}.comparison-table th:first-child{min-width:140px}.comparison-table thead th>a:first-child{font-size:.95rem}#compare-workspace .workspace-toolbar{gap:17px}}
.check-summary{display:flex;gap:22px;align-items:center;flex-wrap:wrap;padding:22px 25px;border:1px solid var(--line);background:var(--soft);border-radius:var(--radius);margin:20px 0 25px;font-size:.8rem}.check-summary strong{font-size:1rem}.check-summary p{flex-basis:100%;margin:0;font-size:.7rem;color:var(--muted)}.check-next-action{margin-top:18px}.check-next-action .text-button{font-size:.75rem}.remedy{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.remedy strong{font-size:.8rem;line-height:1.5;display:block}.remedy p{font-size:.75rem;margin:10px 0}.remedy small{font-size:.65rem;color:var(--muted);display:block}.remedy .button{margin-top:14px;font-size:.7rem;padding:10px 14px;gap:10px}@media(max-width:680px){.check-summary{gap:12px;padding:20px}.check-summary span{flex-basis:100%;font-size:.75rem}}
.quote-editor{flex-basis:100%;border-top:1px solid var(--line);padding-top:14px;margin-top:3px}.quote-editor summary{font-size:.7rem}.quote-editor form,.costs-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:20px}.quote-editor label,.costs-form label{display:grid;gap:8px;font-size:.65rem;color:var(--muted);font-weight:600;min-width:0}.quote-editor input,.quote-editor select,.costs-form input,.costs-form select{padding:10px;background:var(--bg);border:1px solid var(--line);border-radius:4px;min-width:0;width:100%;font-size:.75rem}.quote-editor form>.fine,.costs-form>.fine{grid-column:1/-1;margin:0}.quote-editor .button{font-size:.65rem;padding:10px 13px}.costs-form>.button{align-self:end;font-size:.75rem;padding:13px 18px}.cost-total{background:var(--soft);padding:28px;border:1px solid var(--line);border-radius:var(--radius);margin-top:25px}.cost-total h3{font-size:2.3rem;margin:0 0 17px;overflow-wrap:anywhere}.cost-total p:last-child{font-size:.85rem;color:var(--muted);margin:0}.cost-total .eyebrow{margin-bottom:16px}.cost-totals{margin:22px 0;font-size:.85rem}.cost-totals>div{display:flex;justify-content:space-between;gap:25px;padding:16px 0;border-bottom:1px solid var(--line)}.cost-totals dd{white-space:nowrap;margin:0;font-weight:650}.cost-gaps{padding:25px;border:1px dashed var(--line);border-radius:var(--radius);margin:25px 0}.cost-gaps h3{font-size:1.4rem}.cost-gaps ul{font-size:.8rem;color:var(--muted);padding-left:20px}.cost-gaps li{margin-bottom:9px}@media(max-width:680px){.quote-editor form,.costs-form{grid-template-columns:1fr}.quote-editor form>.fine,.costs-form>.fine{grid-column:1}.cost-total{padding:22px}.cost-total h3{font-size:1.8rem}.cost-totals{font-size:.75rem}.cost-totals>div{gap:15px}.cost-gaps{padding:20px}}
.library-intro{margin:22px 0;font-size:.85rem;color:var(--muted);max-width:750px}.library-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:end}.library-form label,.library-load label,.import-label{display:grid;gap:8px;font-size:.75rem;font-weight:600;min-width:0}.library-form label:has(textarea){grid-column:2;grid-row:1/3}.library-form input,.library-form textarea,.library-load select,.import-label input{padding:12px;width:100%;min-width:0;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:5px;font:inherit;font-size:.8rem}.library-form textarea{min-height:150px;resize:vertical}.library-form .button{justify-self:start;font-size:.75rem;padding:12px 17px}.library-form .text-button{justify-self:start}.library-load{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:28px 0;padding-top:25px;border-top:1px solid var(--line)}.library-load .button{justify-self:start;font-size:.75rem}.library-exports{padding-top:25px;border-top:1px solid var(--line)}.library-exports>.checkbox-label{font-size:.8rem;margin:23px 0 12px}.library-exports>.fine{font-size:.7rem}.library-exports>.button{margin-bottom:18px;font-size:.8rem}.library-exports .actions{gap:10px;margin:20px 0}.library-exports .actions .button{font-size:.7rem;padding:12px 15px;gap:8px}.import-label{margin:25px 0 15px}.snapshot-notice{background:var(--soft);border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin:25px 0;font-size:.8rem;overflow-wrap:anywhere}.snapshot-notice p{margin-bottom:12px}.snapshot-notice p:last-child{margin:0}.snapshot-notice ul{padding-left:20px;font-size:.75rem}textarea:focus-visible{outline:3px solid #547708;outline-offset:4px}#build-print{display:none}@media(max-width:680px){.library-form,.library-load{grid-template-columns:minmax(0,1fr)}.library-form label:has(textarea){grid-column:auto;grid-row:auto}.library-form textarea{min-height:120px}.library-load .button{font-size:.7rem}.library-exports .actions .button{flex-basis:100%;justify-content:center}.snapshot-notice{padding:20px}}@media print{main:has(#build-print)>:not(#build-print){display:none!important}#build-print{display:block!important;white-space:pre-wrap;overflow-wrap:anywhere;font:11pt/1.5 ui-monospace,monospace;color:black;background:white}main{padding:0!important}.compare-feedback{display:none!important}}
.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-part{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:2rem;border-top:1px solid var(--line);padding:1.5rem 0}.guide-part p{margin-top:0}.guide-part h3{margin:.5rem 0}.guide-part code{overflow-wrap:anywhere}.prose{max-width:850px}.prose li{margin-bottom:.8rem;line-height:1.6}.prose h2:not(:first-child){margin-top:2rem}@media(max-width:720px){.guide-grid,.guide-part{grid-template-columns:1fr}.guide-part{gap:1rem}}
.tool-nav{display:flex;gap:1.4rem;flex-wrap:wrap;margin-top:1.5rem}.tool-panel{border-top:1px solid var(--line);padding:2rem 0;scroll-margin-top:6rem}.tool-panel>p{max-width:850px;line-height:1.6}.tool-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0;align-items:end}.tool-form label{display:flex;flex-direction:column;gap:.5rem}.tool-result{background:var(--surface);border:1px solid var(--line);padding:1.2rem;line-height:1.7;margin:1.5rem 0;white-space:normal}.tool-result ul{padding-left:1.2rem}.tool-result li{margin:.5rem 0}#power-sources{display:flex;gap:1rem;flex-wrap:wrap}#component-help details{border-top:1px solid var(--line);padding:1rem 0}#component-help p{line-height:1.7}@media(max-width:720px){.tool-form{grid-template-columns:1fr}.tool-panel{scroll-margin-top:4rem}}
.information p{line-height:1.8}.information h2{margin-top:2.5rem}.footer-links{display:flex;flex-wrap:wrap;gap:1.3rem;margin-top:1.5rem}.correction-form{display:grid;gap:1rem;margin:1.5rem 0}.correction-form label,#correction-output>label{display:flex;flex-direction:column;gap:.6rem}#correction-output textarea{width:100%;box-sizing:border-box;resize:vertical}#correction-output{margin:1.5rem 0}.information .notice{padding:1rem}

.tool-form input,.correction-form input,.correction-form textarea,#correction-output textarea{padding:12px;min-width:0;width:100%;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:5px;font:inherit;font-size:.9rem}.correction-form textarea,#correction-output textarea{resize:vertical;line-height:1.6}.tool-form label,.correction-form label{font-size:.8rem}.correction-form .button{justify-self:start}.tool-form .actions{grid-column:1/-1;margin-top:0}.tool-form .fine{font-weight:400}
.product-thumb{display:block;width:94px;height:106px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:7px;padding:7px;flex-shrink:0}.catalog-identity,.selected-identity{display:flex;gap:16px;align-items:center;min-width:0}.catalog-identity>div,.selected-identity>span{min-width:0}.selected-identity{flex:1}.selected-identity .product-thumb{width:70px;height:80px}.product-showcase{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:45px;align-items:center;margin:0 0 55px}.product-photo{margin:0;padding:30px;background:white;border:1px solid var(--line);border-radius:var(--radius);color:#1e2920}.product-full{display:block;width:100%;height:420px;object-fit:contain}.product-photo figcaption{font-size:.7rem;color:#667062;margin-top:24px;text-align:center}.retailer-reference{border:1px solid var(--line);padding:25px;border-radius:var(--radius);background:var(--surface)}.retailer-reference h3{font-size:1.5rem}.retailer-reference p{font-size:.9rem}.retailer-reference .fine{font-size:.75rem}.media-credit{display:flex;gap:25px;padding:30px 0;border-top:1px solid var(--line);max-width:950px}.media-credit>div{min-width:0;overflow-wrap:anywhere}.media-credit h2{font-size:1.5rem}.media-credit p{line-height:1.7;font-size:.9rem}.comparison-table .product-thumb{margin-bottom:18px;width:150px;height:150px}.collection-photo{display:block;object-fit:contain;background:white;width:100%;height:260px;margin-bottom:25px;padding:12px;border-radius:8px}.photo-card h3{margin:.8rem 0}.photo-card .part-category{margin:0}.photo-card{background:var(--surface)}@media(max-width:720px){.product-showcase{grid-template-columns:minmax(0,1fr);gap:25px}.product-full{height:330px}.product-photo{padding:22px}.catalog-identity{gap:14px}.catalog-identity .product-thumb{width:78px;height:90px}.media-credit{gap:17px}.selected-identity .product-thumb{width:60px;height:70px}.selected-identity{flex-basis:100%}.collection-photo{height:250px}}

/* Preserve a consistent image column while exact-model photos are incomplete. */
.photo-missing.product-thumb{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;background:var(--surface);color:var(--muted);font-size:.62rem;line-height:1.35;text-align:center}.photo-missing svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.3;opacity:.55}.photo-missing>span{max-width:72px}.photo-coverage{display:flex;align-items:center;justify-content:space-between;gap:12px 22px;padding:14px 18px;margin:0 0 20px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:.8rem}.photo-coverage p{margin:0}.photo-coverage a{white-space:nowrap}@media(max-width:720px){.photo-coverage{align-items:flex-start;flex-direction:column}.photo-missing.product-thumb{font-size:.6rem}}
.catalog-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 0;margin-top:12px;border-top:1px solid var(--line)}.catalog-pagination p{margin:0;text-align:center;font-size:.8rem;color:var(--muted)}.catalog-pagination[hidden]{display:none}@media(max-width:720px){.catalog-pagination{flex-wrap:wrap;gap:12px}.catalog-pagination p{order:-1;flex-basis:100%}.catalog-pagination .button{flex:1}}
.detail-notes li{overflow-wrap:anywhere}

.parts-import{margin-block:1.5rem}.parts-import form,.import-review-row{display:grid;gap:.9rem}.parts-import textarea{font:inherit;width:100%;resize:vertical;min-height:8rem}.parts-import input,.parts-import select,.parts-import textarea{min-width:0;max-width:100%;padding:.7rem;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:inherit}.import-review-row{border-top:1px solid var(--line);padding:1.4rem 0}.import-review-row h4,.import-review-row p{margin:0}.parts-import label{display:grid;gap:.4rem}.parts-import select{width:100%}.parts-import #parts-import-apply{margin-top:1rem}.parts-import [hidden]{display:none}
.parts-import{overflow-wrap:anywhere}.parts-import textarea:focus-visible{outline:3px solid #547708;outline-offset:4px}

/* Keyboard access for overflowing factual tables; decorative separators stay quiet. */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #547708;outline-offset:4px}
html[data-theme=dark] :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline-color:#c2e94e}
@media(prefers-color-scheme:dark){html:not([data-theme=light]) :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline-color:#c2e94e}}
.table-scroll:focus-visible{outline-offset:-3px}
.check-sources a{display:block;min-height:24px;padding-block:4px}
#component-help details>a{display:inline-flex;align-items:center;min-height:28px;padding-block:3px}

.store-card h2{font-size:1.6rem;margin-bottom:14px}

.workspace-toolbar{flex-wrap:wrap}.workspace-toolbar p{flex-basis:100%}

.category-tab:focus-visible{outline-offset:-3px}
