/* V18.59 — shop-only compact model control and on-demand device browser. */
[data-model-finder][hidden],.model-dialog [hidden],[data-model-part-types][hidden]{display:none!important}
.shop-model-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #dce3eb;border-radius:12px;background:#f7f9fc;padding:12px 16px;margin:0 0 14px;min-width:0}
.model-current{display:flex;align-items:center;gap:12px;min-width:0;color:#161c25}
.model-current>svg{width:24px;height:24px;flex-shrink:0;fill:none;stroke:#5d6f82;stroke-width:1.6}
.model-current>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;min-width:0}
.model-current-label{font-size:15px;color:#596778}
.model-current strong{font-size:17px;line-height:1.4;font-weight:650;overflow-wrap:anywhere}
.model-open{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;min-height:42px;background:#fff;border:1px solid #ccd5e0;border-radius:8px;color:#1a2533;padding:8px 14px;line-height:1.4;font-family:inherit;font-size:16px;font-weight:600;cursor:pointer}
.model-open:hover{border-color:#7c8b9e;background:#fdfdfd}.model-open:disabled{border-color:transparent;background:transparent;color:#677387;cursor:default;font-weight:400;font-size:15px}
.model-part-types{display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;padding:0 0 5px;margin:0 0 13px;max-width:100%}
.model-part-types button{appearance:none;white-space:nowrap;border:1px solid #dce2e9;border-radius:999px;background:white;padding:8px 13px;font-family:inherit;font-size:15px;line-height:1.4;min-height:40px;color:#475569;cursor:pointer}
.model-part-types button[aria-pressed=true]{border-color:#1c2733;background:#1c2733;color:white}
.model-dialog{box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(1020px,calc(100vw - 64px));height:min(770px,calc(100dvh - 64px));max-height:calc(100dvh - 64px);padding:0;border:1px solid #dce3eb;border-radius:20px;box-shadow:0 24px 90px #101c3440;color:#151a22;background:#fff;font-family:Inter,Arial,sans-serif;overflow:hidden}
.model-dialog[open]{display:flex;flex-direction:column}
.model-dialog::backdrop{background:rgb(20 29 42 / .42);backdrop-filter:blur(3px)}
.model-dialog *{box-sizing:border-box}
.model-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 26px 16px;gap:20px;flex-shrink:0}
.model-dialog-head h2{margin:0;font-size:28px;line-height:1.2;letter-spacing:-.6px;font-weight:650}
.model-dialog-head p{margin:6px 0 0;color:#617083;font-size:16px;line-height:1.5}
.model-close{flex-shrink:0;appearance:none;width:40px;height:40px;border:0;border-radius:50%;background:#f0f3f7;color:#273343;font-size:28px;line-height:1;cursor:pointer}
.model-search-wrap{margin:0 26px 14px;position:relative;display:flex;align-items:center;flex-shrink:0;border:1px solid #cbd5e1;border-radius:10px;background:#fff;min-height:50px}
.model-search-wrap:focus-within{border-color:#426ea7;box-shadow:0 0 0 3px #e4eefb}
.model-search-wrap>svg{position:absolute;left:15px;width:21px;height:21px;fill:none;stroke:#718096;stroke-width:1.7;pointer-events:none}
.model-search-wrap input{appearance:none;width:100%;background:none;border:none;outline:none;padding:13px 45px;font:inherit;font-size:17px;line-height:1.45;color:#17212c;min-width:0}
.model-search-wrap input::-webkit-search-cancel-button{display:none}
.model-search-wrap input::placeholder{color:#788697}
.model-search-clear{appearance:none;position:absolute;right:7px;border:0;background:transparent;color:#617083;width:36px;height:36px;font-size:24px;cursor:pointer}
.model-brands,.model-recent{display:flex;align-items:center;gap:8px;padding:0 26px 14px;overflow-x:auto;flex-shrink:0;scrollbar-width:thin}
.model-brands button{appearance:none;white-space:nowrap;background:transparent;border:1px solid transparent;border-radius:8px;padding:10px 17px;min-height:44px;font-family:inherit;font-size:16px;font-weight:600;color:#516174;cursor:pointer}
.model-brands button[aria-pressed=true]{background:#fff0e9;color:#b6320b;border-color:#ffd4c1}
.model-brands button:hover{background:#f4f6f8}
.model-recent{gap:8px;padding-bottom:12px}.model-recent>span{font-size:14px;color:#65758a}
.model-recent button{appearance:none;font-family:inherit;font-size:14px;line-height:1.5;border:1px solid #e0e5ed;background:#f8fafc;border-radius:6px;padding:6px 9px;white-space:nowrap;color:#4d5d70;cursor:pointer}
.model-browser{min-height:0;flex:1;display:grid;grid-template-columns:175px minmax(0,1fr);border-block:1px solid #e5eaf0}
.model-families{padding:18px 10px;background:#f8fafc;border-right:1px solid #e5eaf0;overflow-y:auto;min-height:0;scrollbar-width:thin}
.model-families button{appearance:none;display:block;text-align:left;width:100%;padding:11px 12px;min-height:45px;border:0;background:transparent;border-radius:8px;font-family:inherit;font-size:16px;line-height:1.5;color:#586a7e;cursor:pointer;margin-bottom:4px}
.model-families button[aria-pressed=true]{background:#e7edf5;color:#162b42;font-weight:650}
.model-scroll{overflow:auto;overscroll-behavior:contain;padding:20px 22px;min-width:0;min-height:0;scrollbar-width:thin}
.model-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:24px 18px}
.model-group{min-width:0}.model-group h3{margin:0 0 8px;font-size:15px;font-weight:650;color:#5a6a7e;line-height:1.5;padding:4px 8px}
.model-choice{appearance:none;border:1px solid transparent;background:transparent;border-radius:7px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:5px;text-align:left;font-family:inherit;font-size:16px;line-height:1.4;padding:10px 8px;min-height:44px;color:#17202c;cursor:pointer}
.model-choice:hover{background:#f2f5f9;border-color:#e3eaf2}.model-choice.is-selected{background:#fff1e9;border-color:#ffd3bb;color:#a62c08}
.model-choice>span:first-child{overflow-wrap:anywhere}.model-choice small{display:block;font-size:14px;line-height:1.4;color:#7a8797;margin-top:3px}
.model-choice-arrow{color:#98a6b5;font-size:19px;flex-shrink:0}.model-choice.is-selected .model-choice-arrow{color:#c44314}
.model-dialog button:focus-visible,.shop-model-bar button:focus-visible,.model-part-types button:focus-visible{outline:3px solid #7aabeb;outline-offset:2px}
.model-result-label{margin:0 0 14px;font-size:15px;color:#677588;line-height:1.5}
.model-search-results,.model-brand-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 16px}
.model-search-results .model-choice{border-color:#e4eaf1;padding:12px}
.model-brand-grid button{appearance:none;display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid #dce4ee;border-radius:9px;padding:15px;background:#fff;font-family:inherit;font-size:17px;line-height:1.5;color:#26374b;cursor:pointer;min-width:0;text-align:left}
.model-brand-grid button:hover{background:#f7f9fc}.model-brand-grid button span{color:#8896a7}
.model-dialog.is-model-search .model-browser{grid-template-columns:1fr}
.model-dialog-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;padding:12px 22px;background:#fcfdfe}
.model-dialog-foot button{appearance:none;cursor:pointer;font:inherit;font-size:15px;line-height:1.5;border:0;background:transparent;color:#52647b;padding:8px 4px;min-height:40px;text-decoration:underline;text-underline-offset:3px}
.model-help{padding:0 26px 18px;flex-shrink:0;color:#596b80}.model-help p{margin:0 0 8px;font-size:16px;line-height:1.5}.model-help a,.model-no-results a{color:#284e7e;font-size:16px;font-weight:600;text-decoration:underline}
.model-no-results{max-width:440px;padding:12px 4px}.model-no-results h3{font-size:21px;line-height:1.4;margin:0 0 10px}.model-no-results p{font-size:17px;line-height:1.6;color:#607187;margin:0 0 18px}
.model-load-more{display:block;margin:20px auto 0;border:1px solid #cbd5e1;background:#fff;color:#33465d;border-radius:8px;padding:12px 20px;font-family:inherit;font-size:16px;cursor:pointer}
@media (max-width:900px){.model-dialog{width:calc(100vw - 32px);height:calc(100dvh - 40px);max-height:calc(100dvh - 40px)}.model-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.model-search-results,.model-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.model-current>div{display:block}.model-current-label{display:block;font-size:15px}.model-current strong{font-size:17px}.model-part-types button{font-size:16px}}
@media (max-width:600px){
 .shop-model-bar{padding:10px 12px;gap:8px}.model-current{gap:9px}.model-current>svg{width:21px}.model-open{padding:8px 10px;font-size:16px}.model-open:disabled{max-width:90px;font-size:14px;text-align:right}
 .model-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0}
 .model-dialog-head{padding:20px 18px 15px}.model-dialog-head h2{font-size:25px}.model-dialog-head p{font-size:16px}
 .model-search-wrap{margin:0 18px 15px}.model-search-wrap input{font-size:17px;padding-left:42px}
 .model-brands,.model-recent{padding-inline:18px;gap:5px}.model-brands button{padding:10px 12px;font-size:17px}
 .model-browser{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.model-dialog.is-model-search .model-browser{grid-template-rows:minmax(0,1fr)}
 .model-families{border-right:0;border-bottom:1px solid #e5eaf0;display:flex;overflow-x:auto;overflow-y:hidden;gap:6px;padding:9px 16px;min-height:0}
 .model-families button{white-space:nowrap;width:auto;flex-shrink:0;margin:0;padding:8px 12px;min-height:44px;font-size:17px}
 .model-scroll{padding:16px}.model-groups{gap:18px 9px}.model-group h3{font-size:15px}.model-choice{font-size:17px;padding:11px 6px;min-height:46px}.model-choice small{font-size:15px}.model-choice-arrow{display:none}
 .model-search-results{grid-template-columns:1fr;gap:8px}.model-brand-grid{gap:10px}.model-dialog-foot{padding:10px 14px;gap:12px}.model-dialog-foot button{font-size:15px;text-align:left}
 .model-help{padding:0 18px 18px}.model-help p{font-size:17px}.model-recent button,.model-recent>span{font-size:15px}
}
@media (max-width:359px){.model-groups{grid-template-columns:1fr}.model-dialog-head{padding:16px}.model-dialog-head h2{font-size:23px}.model-dialog-head p{font-size:15px}.model-brand-grid{grid-template-columns:1fr}.model-dialog-foot{gap:10px}.model-open{padding-inline:8px}.model-current>svg{display:none}}
@media(prefers-reduced-motion:reduce){.model-dialog *{scroll-behavior:auto!important}}

@media (max-height:560px){.model-dialog-head{padding-block:12px}.model-dialog-head h2{font-size:23px}.model-dialog-head p{display:none}.model-search-wrap{margin-bottom:10px;min-height:46px}.model-brands{padding-bottom:10px}.model-help{max-height:30dvh;overflow:auto}.model-dialog-foot{padding-block:6px}}
