.na-finder { --finder-border:#d5d5d5; --finder-muted:#5b5b5b; color:#111; background:#fff; padding:clamp(20px,3vw,48px); border:1px solid var(--finder-border); }
.na-finder * { box-sizing:border-box; }
.na-finder [hidden] { display:none!important; }
.na-finder fieldset { border:0; padding:0; margin:0 0 30px; min-width:0; }
.na-finder legend { margin:0 0 18px; padding:0; }
.na-finder__hint { color:var(--finder-muted); font-size:14px; line-height:1.65; }
.na-finder__form { margin-top:30px; }
.na-finder__modes,.na-finder__positions { display:grid; gap:12px; }
.na-finder__modes { grid-template-columns:repeat(2,minmax(0,1fr)); }
.na-finder__positions { grid-template-columns:repeat(3,minmax(0,1fr)); }
.na-finder__choice { position:relative; display:flex; align-items:center; gap:12px; border:1px solid var(--finder-border); padding:16px; cursor:pointer; font-size:15px; line-height:1.4; }
.na-finder__choice:has(input:checked) { border-color:#f3000a; box-shadow:inset 0 0 0 1px #f3000a; background:#fff5f5; }
.na-finder__choice:focus-within { outline:2px solid #111; outline-offset:3px; }
.na-finder__choice input { flex:none; accent-color:#f3000a; width:18px; height:18px; margin:0; }
.na-finder__positions .na-finder__choice { flex-wrap:wrap; align-content:start; }
.na-finder__positions .na-finder__choice>span:last-child { flex-basis:100%; }
.na-finder__choice svg { width:calc(100% - 35px); height:95px; }
.na-finder__unknown { font-size:42px; display:flex; align-items:center; justify-content:center; height:95px; flex:1; }
.na-finder__measurement { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr); gap:24px; align-items:center; }
.na-finder__dimension-diagram { width:100%; max-width:360px; }
.na-finder__dimensions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.na-finder label>span:not(.na-finder__unknown) { color:inherit; }
.na-finder__dimensions label,.na-finder__select { display:block; font-size:14px; }
.na-finder__dimensions label>span { color:var(--finder-muted); }
.na-finder__dimensions input,.na-finder__select select { display:block; width:100%; margin-top:8px; border:1px solid #888; border-radius:0; min-height:48px; padding:10px 12px; font:inherit; font-size:16px; background:#fff; color:#111; }
.na-finder input:focus-visible,.na-finder select:focus-visible,.na-finder button:focus-visible,.na-finder a:focus-visible,.na-finder summary:focus-visible { outline:2px solid #f3000a; outline-offset:3px; }
.na-finder__select { max-width:600px; margin-top:20px; }
.na-finder__optional { border-top:1px solid var(--finder-border); border-bottom:1px solid var(--finder-border); padding:20px 0; }
.na-finder__optional summary { cursor:pointer; padding:8px 0; }
.na-finder__actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin-top:24px; }
.na-finder__actions button,.na-finder__pagination button,.na-finder__pagination a { border:1px solid #f3000a; background:#f3000a; color:#fff; padding:14px 22px; min-height:48px; font:inherit; font-size:15px; cursor:pointer; text-decoration:none; }
.na-finder__actions a { color:#111; padding:12px 0; }
.na-finder__status:empty { margin:0; }
.na-finder__status { margin-top:20px; }
.na-finder__error { border-left:3px solid #f3000a; padding:12px 20px; margin-top:20px; background:#fff5f5; }
.na-finder__result-heading { margin-top:40px; }
.na-finder__result-heading h3 { margin:0 0 16px; }
.na-finder__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:24px; }
.na-finder__result { display:flex; flex-direction:column; min-width:0; container-type:inline-size; }
.na-finder__result>.na-product-card { height:auto; flex:none; }
.na-finder__fit { border:1px solid var(--finder-border); border-top:0; padding:18px; flex:1; font-size:13px; line-height:1.6; }
.na-finder__fit p { margin:0 0 12px; }
.na-finder__fit dl { margin:0; }
.na-finder__fit dl>div { margin-bottom:10px; }
.na-finder__fit dt { color:var(--finder-muted); }
.na-finder__fit dd { margin:0; font-weight:600; }
.na-finder__result-diagram { display:flex; align-items:center; gap:10px; margin:12px 0; }
.na-finder__result-diagram svg { width:100px; flex:none; }
.na-finder__pending { color:var(--finder-muted); border-top:1px solid var(--finder-border); padding-top:12px; }
.na-finder__availability { font-weight:600; }
.na-finder__pagination { display:flex; align-items:center; flex-wrap:wrap; gap:16px; margin-top:30px; }
.na-finder__empty { background:#f5f5f5; padding:20px; }
.na-finder__diagnostics { min-width:0; max-width:100%; margin:24px 0; padding:20px; border:1px solid #bbb; background:#fafafa; color:#111; font-size:14px; line-height:1.6; }
.na-finder__diagnostics summary { cursor:pointer; font-weight:600; }
.na-finder__audit-counts { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr)); gap:12px; margin:20px 0; }
.na-finder__audit-counts>div { padding:12px; background:#eee; }
.na-finder__audit-counts dt { color:#555; }
.na-finder__audit-counts dd { margin:4px 0 0; font-size:24px; font-weight:600; }
.na-finder__audit-warning { padding:14px; border-left:3px solid #f3000a; background:#fff0f0; }
.na-finder__audit-criteria dl { margin:16px 0; }
.na-finder__audit-criteria dl>div { display:flex; flex-wrap:wrap; gap:4px 16px; margin:8px 0; }
.na-finder__audit-criteria dt { font-weight:600; }
.na-finder__audit-criteria dd { margin:0; }
.na-finder__audit-scroll { max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; border:1px solid #ccc; }
.na-finder__audit-scroll:focus-visible { outline:2px solid #f3000a; outline-offset:3px; }
.na-finder__audit-scroll table { width:100%; min-width:1060px; border-collapse:collapse; margin:0; text-align:left; font-size:13px; line-height:1.6; }
.na-finder__audit-scroll caption { padding:12px; text-align:left; font-weight:600; background:#eee; }
.na-finder__audit-scroll th,.na-finder__audit-scroll td { padding:12px; vertical-align:top; border-bottom:1px solid #ddd; }
.na-finder__audit-scroll thead { background:#eee; }
.na-finder__audit-scroll tbody th { min-width:165px; font-weight:500; }
.na-finder__audit-scroll small { display:block; font-size:12px; font-weight:400; color:#555; overflow-wrap:anywhere; }
.na-finder__audit-scroll ul { padding-left:18px; margin:8px 0 0; }
.na-finder__audit-scroll [data-finder-audit-result="rejected"] { background:#fff5f5; }
@media(max-width:1100px) { .na-finder__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .na-finder__measurement { grid-template-columns:1fr; } }
@media(max-width:620px) { .na-finder__positions { grid-template-columns:repeat(2,minmax(0,1fr)); } .na-finder__modes,.na-finder__grid,.na-finder__dimensions { grid-template-columns:1fr; } .na-finder__choice { padding:12px; } .na-finder__actions button { width:100%; } .na-finder__fit { padding:16px; } .na-finder__dimension-diagram { margin-inline:auto; } }
@media(prefers-reduced-motion:reduce) { .na-finder { scroll-behavior:auto; } }
