/* site/palette.css */
/* The vehicle collection is the visual palette: Arctic White canvas, Courthouse
 * Sand surfaces, Graphite Black anchors, Phosphor Lime actions and Cloud Silver
 * Blue as a small secondary material. Never reintroduce navy or green-tinted dark
 * surfaces. Load last on the catalog, sourcing desk and generated field pages.
 * Product art always uses contain. Dark preview is a background, never a scene.
 */
body.phosphor-theme{
  --graphite:#171b1c;--arctic:#e9ece8;--silver-blue:#a7bac8;--lime:#b4d62f;
  --sand:#bfb09a;--paper:#f5f4f0;--surface:#e8e2d8;--ink:#171b1c;
  --muted:#5f615c;--line:#d6d3ca;--radius:16px;
  background:var(--paper);color:var(--ink);color-scheme:light;
  -webkit-font-smoothing:antialiased;
}
body.market.phosphor-theme{--app-canvas:var(--paper);--app-panel:#fff;--app-hover:var(--surface);--app-text:var(--ink);--app-muted:var(--muted);background:var(--paper);color:var(--ink)}
.market p,.phosphor-theme p,.phosphor-theme li{color:var(--muted)}
.market :is(h1,h2,h3),.phosphor-theme :is(h1,h2,h3){color:var(--ink)}
.market :is(.kicker,small,.label,.maker-context,.catalog-status,.catalog-foot,.paint-source,.paint-section-head>span),.phosphor-theme .label{color:var(--muted)}
.market .topnote{background:transparent;color:var(--muted);border:0;padding:13px 5%;font-size:9px}
.market header{background:var(--graphite);color:var(--arctic);max-width:1440px;border-radius:16px;margin:4px auto 0;padding:14px 24px;box-shadow:none}
.market nav a,.market .global-search summary{color:var(--arctic);background:transparent}
.market nav a{padding:11px;justify-content:center}
.market nav svg{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.market nav a:hover,.market .global-search summary:hover,.market .global-search[open]{background:#303334}
.market .global-search input{color:var(--arctic)}
.market .global-search input::placeholder{color:#bec0bb}
.market .global-search[open] .search-expansion{background:#303334}
.market main{max-width:1520px}
.market section{padding:64px 5%}
.market .hero{padding:64px 5% 58px;grid-template-columns:.9fr 1.1fr;gap:48px}
.market .hero h1{font-size:clamp(34px,3.6vw,53px);line-height:1.08;letter-spacing:-.055em}
.market .hero p{font-size:15px;line-height:1.8;margin-top:24px;max-width:480px}
.market .hero .kicker{margin-bottom:22px}
.market .hero figure{background:var(--surface);border-radius:20px;overflow:hidden}
.market .hero img{width:100%;height:auto;max-height:none;object-fit:contain;aspect-ratio:1.5;padding:18px}
.market .hero figcaption{background:var(--surface);color:var(--muted);text-align:left;font-size:10px;padding:0 22px 20px}
.market .hero-foot{color:var(--muted);font-size:10px}
.market .button,.phosphor-theme .button{background:var(--lime);color:var(--ink);border:0;border-radius:10px;font-weight:600;min-height:46px}
.market .button:hover,.phosphor-theme .button:hover{background:#c4df5b;color:var(--ink)}
.market :is(.quiet,.build-actions button,.build-actions a){background:var(--surface);color:var(--ink);border:0;min-height:44px}
.market :is(.quiet,.build-actions button,.build-actions a):hover{background:#d8cfbf;color:var(--ink)}
.market #ideas{background:var(--arctic);border-radius:24px;margin:0 24px;padding:48px max(24px,calc(5% - 24px))}
.market .section-head{align-items:start;gap:32px;margin-bottom:28px}
.market .section-head h2{font-size:30px;line-height:1.15}
.market .section-head>p{font-size:14px;max-width:400px}
.market .manufacturer-links{gap:8px;margin-bottom:8px}
.market .manufacturer-links span{color:var(--muted)}
.market .manufacturer-links a{background:transparent;color:var(--muted);min-height:36px;padding:5px 9px;border:1px solid var(--line);border-radius:8px}
.market .manufacturer-links a:hover{background:var(--surface);color:var(--ink)}
.market .maker-context{margin:12px 0 24px;font-size:10px}
.market .catalog-toolbar{width:fit-content;max-width:100%;background:#dcded8;border:0;padding:5px;border-radius:12px;gap:4px}
.market .catalog-toolbar button{color:var(--muted);border:0;border-radius:8px;padding:10px 16px;min-height:44px}
.market .catalog-toolbar button[aria-pressed=true]{background:var(--graphite);color:var(--arctic)}
.market .catalog-toolbar button:hover{background:#cbcfc6;color:var(--ink)}
.market .catalog-toolbar button[aria-pressed=true]:hover{background:#303334;color:var(--arctic)}
.market .browse-controls{margin-top:20px;gap:12px}
.market .browse-controls label{color:var(--muted)}
.market .browse-controls select{background-color:#fff;color:var(--ink);min-height:44px;border:1px solid var(--line)}
.market .catalog-foot a{color:var(--ink)}
.market .owner-note b{color:var(--ink)}
.market .geographic-pin{background:var(--graphite)!important;border-color:var(--arctic)}
.market .geographic-pin:hover{background:var(--lime)!important}
.market :is(.cost-list li,.customization,.collection-note){border-color:var(--line)}
.market .catalog-status{font-size:10px;margin:20px 0}
.market .products{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.market .products article{padding:10px 10px 18px;border:1px solid #dedfd8;background:#fafbf8;border-radius:18px;box-shadow:0 3px 10px #171b1c03}
.market .products article>h3{font-size:20px;padding:0;margin-top:10px;letter-spacing:-.04em}
.market .products article>small{font-size:9px;margin-top:20px;color:var(--muted)}
.market .products article>p{font-size:13px;line-height:1.7;min-height:66px}
.market .products .build-specs{font-size:11px;color:var(--muted);border:0;padding:0}
.market .products .build-actions{gap:8px;margin-top:20px}
.market .product-stage{background:transparent;color:var(--ink);border-radius:12px}
.market .product-stage[data-mode=scene]{background:var(--graphite);color:var(--arctic)}
.market .product-viewport,.market .product-stage[data-mode=scene] .product-viewport{aspect-ratio:1.5;padding:10px;width:100%;overflow:hidden}
.market .product-stage .product-viewport img{object-fit:contain;width:100%;height:100%;padding:0;max-width:100%;max-height:100%;background:none;filter:none}
.market .media-controls{min-height:58px;background:transparent;padding:6px 10px}
.market [data-mode=scene] .media-controls{background:#292d2e}
.market .product-stage .paint-swatches{gap:2px}
.market .product-stage .paint-swatches button{width:38px;height:40px;min-width:38px;min-height:40px;border-radius:8px}
.market .product-stage .paint-swatches button:before{inset:9px;border-radius:5px}
.market .product-stage .paint-swatches button[aria-pressed=true]{background:#c2b69f;box-shadow:none}
.market .product-stage[data-mode=scene] .paint-swatches button[aria-pressed=true]{background:#575a57}
.market .media-views button{width:40px;height:40px;border-radius:8px}
.market .media-views button[aria-pressed=true]{background:#c2b69f}
.market [data-mode=scene] .media-views button[aria-pressed=true]{background:#575a57}
.market .media-status{display:block;padding:0 14px 12px;font:9px/1.5 Phosphor Mono,monospace;color:inherit;opacity:.8}
.market .media-original{background:#ded6c8;color:var(--ink);font-size:12px;text-align:center;padding:15px}
.market [data-mode=scene] .media-original{background:#292d2e;color:var(--arctic)}
.market .media-original:hover{background:var(--sand);color:var(--ink)}
.market #build-dialog{background:var(--paper);color:var(--ink);border-radius:20px;padding:28px;max-height:94dvh}
.market #build-dialog h2{font-size:28px;line-height:1.15}
.market #build-dialog .product-viewport,.market #build-dialog [data-mode=scene] .product-viewport{aspect-ratio:1.5;max-height:54vh;padding:12px}
.market #build-dialog>div>p{color:var(--muted)}
.market #build-dialog dl{background:var(--arctic);color:var(--ink);border-radius:12px}
.market #build-dialog dt{color:var(--muted)}
.market #build-dialog dd{color:var(--ink)}
.market .dialog-close{background:#ded6c8;color:var(--ink)}
.market dialog::backdrop{background:#171b1cbf;backdrop-filter:blur(8px)}
.market .angle-gallery{display:flex;gap:8px;overflow-x:auto;padding:12px;scrollbar-width:thin;background:var(--arctic);border-top:1px solid var(--line)}
.market .angle-gallery button{flex:0 0 110px;border:2px solid transparent;background:#f5f4f0;color:var(--ink);padding:4px;border-radius:9px;cursor:pointer;text-align:left}
.market .angle-gallery button[aria-pressed=true]{border-color:var(--graphite);background:#ded6c8}
.market .angle-gallery button:hover{background:#ded6c8}
.market .angle-gallery img{width:100%;height:70px;object-fit:contain;background:transparent;border-radius:5px}
.market .angle-gallery span{font-size:10px;line-height:1.5;padding:4px;display:block}
.market .landing-doors{background:transparent}
.market .door-grid>a{background:var(--surface);color:var(--ink);border-radius:16px;padding:28px 24px 50px}
.market .door-grid>a:hover{background:#ddd3c2}
.market .door-number,.market .door-arrow{color:var(--muted)}
.market .customization{border-top:1px solid var(--line);padding-top:24px;margin-top:28px}
.market .custom-chips :is(a,span){background:#dcded8;color:var(--ink);font-size:11px;padding:10px 14px;border:0;border-radius:8px;text-decoration:none}
.market .custom-chips a:hover{background:var(--sand)}
.market .motor-footer{background:var(--graphite);color:var(--arctic);border-radius:24px 24px 0 0;margin:0 24px;padding:40px 4% 0;border:0}
.market .motor-footer :is(h2,h3,p,a,span){color:var(--arctic)}
.market .motor-footer p,.market .motor-footer .kicker,.market .footer-base{color:#bec0bb}
.market .motor-footer a:hover{color:var(--lime)}
.market .footer-next{background:var(--lime);color:var(--ink)}
.market .footer-invitation h2{font-size:32px;max-width:600px}
.market .footer-column h3{font-size:12px}
.market .footer-base{border-top:1px solid #424542;padding-top:24px}
.market #join-dialog{background:var(--paper);color:var(--ink)}
.market #join-dialog h2{color:var(--ink)}
.market #join-dialog .join-state{background:var(--arctic);color:var(--muted)}
.market :is(.tinted,.owner-note,.collection-note,.local-card,.fee-proposal,.guide-grid article,.dealer,.workspace-item,.distribution-note){background:var(--arctic);color:var(--ink);border:0}
.market :is(.handoff li,.map-detail,.paint-option,.paint-summary){background:var(--surface);color:var(--ink);border:0}
.market :is(.handoff small,.map-detail small,.map-detail p,.map-detail a,.cost-list li,.fee-proposal strong,.distribution-note p,.request-form label,.guide-grid a){color:var(--ink)}
.market :is(.map-controls button,.port-list button){background:var(--surface);color:var(--ink);border:0}
.market :is(.map-controls button,.port-list button)[aria-pressed=true]{background:var(--graphite);color:var(--arctic)}
.market :is(.request-form input,.request-form select,.request-form textarea,.filters input,.filters select){background-color:#fff;color:var(--ink);border:1px solid var(--line)}
.market .request-form option{background:#fff;color:var(--ink)}
.market :is(input,textarea)::placeholder{color:#73756e}
.market .paint-page{max-width:1480px}
.market .paint-page section:first-child{padding-top:54px}
.market .paint-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.market .paint-option{padding:18px;border-radius:16px}
.market .paint-option small,.market .paint-option p{color:var(--muted)}
.market .paint-option h3{font-size:21px}
.market .paint-vehicle{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;margin-bottom:18px;border-radius:10px;background:transparent}
.market #factory-paints .paint-option{background:var(--arctic);padding:24px}
.market .paint-summary{padding:32px;border-radius:16px}
.market .paint-summary p{max-width:760px;margin:18px 0}
.phosphor-theme :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.market header :is(a,button,input,summary):focus-visible,.market .motor-footer a:focus-visible{outline-color:var(--lime)}
/* Editorial routes share the same warm paper instead of their earlier green dark. */
.phosphor-theme:not(.market) :is(nav a,.card,.questions){background:var(--surface);color:var(--ink)}
.phosphor-theme:not(.market) :is(nav a,.card):hover{background:#ddd3c2}
.phosphor-theme:not(.market) :is(figcaption,dt,footer){color:var(--muted)}
.phosphor-theme:not(.market) img{object-fit:contain;max-height:620px;background:var(--arctic)}
.phosphor-theme:not(.market) .text-link{color:var(--ink)}
.phosphor-theme:not(.market) button:disabled{background:#ded6c8;color:var(--muted)}
@media(max-width:1100px){.market header{margin-inline:24px}.market .hero{gap:28px}.market .products{grid-template-columns:repeat(2,minmax(0,1fr))}.market .paint-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.market .hero{grid-template-columns:1fr;padding-top:36px}.market .hero p{max-width:640px}.market .hero h1{font-size:40px}.market .hero figure{max-width:none}.market .hero img{max-height:430px}.market .hero .actions{margin-top:24px}}
@media(max-width:600px){.market header{margin-inline:12px;padding:14px 16px}.market section{padding:44px 20px}.market .hero{padding:34px 20px 36px;gap:26px}.market .hero h1{font-size:36px}.market .hero p{font-size:14px}.market .hero img{padding:8px}.market .hero figcaption{font-size:9px;padding:0 16px 16px}.market #ideas{margin:0 10px;padding:32px 12px;border-radius:18px}.market .products{grid-template-columns:1fr;gap:18px}.market .products article>p{min-height:0}.market .section-head h2{font-size:27px}.market .catalog-toolbar{width:100%}.market .catalog-toolbar button{flex:1 1 44%;padding:10px 8px;font-size:11px}.market .browse-controls{flex-wrap:wrap}.market .browse-controls label{flex:1 1 100%}.market .browse-controls select{width:100%}.market .catalog-status{font-size:9px}.market .products article>h3{font-size:21px}.market .product-viewport{padding:8px}.market .product-stage .paint-swatches button{width:40px;min-width:40px;height:44px;min-height:44px}.market .media-views button{width:38px;height:44px}.market .media-controls{padding:6px;gap:2px}.market .motor-footer{margin:0 10px;padding:32px 20px 0}.market .footer-invitation h2{font-size:27px}.market .footer-main{grid-template-columns:1fr 1fr;gap:30px 20px}.market .footer-identity{grid-column:1/-1}.market .paint-options{grid-template-columns:1fr}.market #build-dialog{padding:22px 12px;max-width:calc(100% - 16px)}.market #build-dialog h2{font-size:25px}.market #build-dialog .product-viewport,.market #build-dialog [data-mode=scene] .product-viewport{padding:4px;max-height:44vh}.market .angle-gallery button{flex-basis:100px}.market .global-search[open] .search-expansion{background:#303334}.market .topnote{font-size:8px}.market .catalog-foot{font-size:10px}.market .paint-summary{padding:24px}}
@media(max-width:360px){.market .product-stage .paint-swatches button{width:32px;min-width:32px}.market .media-views button{width:32px}.market .product-stage .paint-swatches button:before{inset:7px}.market .media-status{font-size:9px}}
@media(prefers-reduced-motion:reduce){.phosphor-theme *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.phosphor-theme{background:#fff;color:#171b1c}.market .products{grid-template-columns:repeat(2,minmax(0,1fr))}.market .motor-footer{background:#fff;color:#171b1c}.market .motor-footer :is(h2,h3,p,a,span){color:#171b1c}}

/* Full-frame media contract. Product PNG/WebP files retain real alpha. The
 * default stage adds no colored rectangle behind them. Dark is an optional UI
 * inspection surface, never a baked-in asset background. A bounded dialog stage
 * uses contain so long plows, tracks and portrait details cannot be clipped.
 * The pixel-alpha gate lives in scripts/verify-reviewed-vehicle-assets.mjs. */
.market .products .product-stage .product-viewport{aspect-ratio:1792/1196;height:auto;max-height:none;padding:0;overflow:visible}
.market #build-dialog .product-stage .product-viewport{height:min(52svh,640px);aspect-ratio:auto;max-height:none;padding:0;overflow:visible}
.market .product-stage .product-viewport img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;aspect-ratio:auto;background:transparent;max-width:100%;max-height:100%}
.market .product-stage:not([data-mode=scene]) .angle-gallery{background:transparent;border:0}
.market .product-stage:not([data-mode=scene]) .angle-gallery button:not([aria-pressed=true]){background:transparent}
.phosphor-theme:not(.market) img:is([src*="/assets/trucks/"],[src*="/assets/vans/"]){background:transparent}
@media(max-width:600px){.market #build-dialog .product-stage .product-viewport{height:min(42svh,360px);max-height:none;padding:0}}
