.osa-finder{--of-red:var(--primary-color,#dd3333);--of-bd:#e2e2e2;--of-mut:#6b6b6b;--of-bg:#f6f6f6;font-size:14px;line-height:1.45;color:#222;margin:0 0 40px}
.osa-finder *{box-sizing:border-box}
.osa-finder .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.of-wrap{display:grid;grid-template-columns:220px minmax(0,1fr);gap:26px;align-items:start}
.of-toggle{display:none}
/* Filtros */
.of-side{position:sticky;top:90px;max-height:calc(100vh - 110px);overflow:auto;padding-right:4px}
.of-f{border:0;margin:0 0 18px;padding:0;min-width:0}
.of-f legend,.of-f>span:first-child{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#444;margin:0 0 7px;padding:0}
.of-chips{display:flex;flex-wrap:wrap;gap:6px}
.of-chip{appearance:none;border:1px solid var(--of-bd);background:#fff;color:#333;border-radius:16px;padding:4px 10px;font:inherit;font-size:13px;line-height:1.3;cursor:pointer;margin:0;min-height:0;text-transform:none;letter-spacing:0;box-shadow:none}
.of-chip span{color:var(--of-mut);font-size:11px;margin-left:2px}
.of-chip:hover{border-color:#999}
.of-chip.on{background:var(--of-red);border-color:var(--of-red);color:#fff}
.of-chip.on span{color:rgba(255,255,255,.85)}
.of-chip.zero{opacity:.45}
.of-sel select,.of-num input,.of-dims input,.of-sort select{font:inherit;font-size:13px;height:34px;padding:4px 8px;border:1px solid var(--of-bd);border-radius:4px;background:#fff;margin:0;box-shadow:none}
.of-sel select{width:100%}
.of-unit{display:flex;align-items:center;gap:6px}
.of-num input{width:110px}
.of-dims{display:flex;align-items:center;gap:4px}
.of-dims input{width:100%;min-width:0;padding:4px 6px}
.of-dims span{color:var(--of-mut)}
.of-check{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}
.of-check input{margin:0}
/* Cabecera de resultados */
.of-top{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 10px;padding:0 0 10px;border-bottom:2px solid #222}
.of-count{flex:1;font-size:15px}
.of-sort{display:flex;align-items:center;gap:6px;font-size:13px;margin:0;white-space:nowrap}
.of-sort select{height:32px}
.of-link{appearance:none;background:none;border:0;padding:0;margin:0;color:var(--of-red);font:inherit;font-size:13px;cursor:pointer;text-decoration:underline;min-height:0;text-transform:none;letter-spacing:0}
/* Tabla (las columnas se adaptan al ancho disponible con container queries) */
.of-main{container-type:inline-size;min-width:0}
.of-table{display:flex;flex-direction:column}
.of-row{display:grid;grid-template-columns:28px minmax(230px,2.4fr) minmax(130px,1.3fr) 92px 60px 86px 74px 90px 78px;gap:0 8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--of-bd)}
.of-head{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#555;padding:6px 0;border-bottom:1px solid #bbb;position:sticky;top:0;background:#fff;z-index:2}
.of-row.open{background:var(--of-bg)}
.of-c small{display:block;color:var(--of-mut);font-size:11px}
.of-model a{display:flex;gap:10px;align-items:center;color:inherit;text-decoration:none}
.of-model img{width:56px;height:56px;object-fit:contain;border-radius:4px;background:#f2f2f2;flex:none}
.of-model strong{display:block;font-size:15px;color:#111}
.of-model em{display:block;font-style:normal;color:#444;font-size:12.5px;line-height:1.35}
.of-model small.of-meta{display:block;color:var(--of-mut);font-size:11.5px;margin-top:2px}
.of-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.of-b{font-size:10.5px;line-height:1;padding:3px 6px;border-radius:3px;background:#eee;color:#444;white-space:nowrap}
.of-b.uln{background:#222;color:#fff}
.of-b.g{background:#e7f1fb;color:#1d4f86}
.of-v{display:inline-block;font-variant-numeric:tabular-nums;border:1px solid var(--of-bd);border-radius:3px;padding:0 5px;margin:0 3px 3px 0;font-size:12.5px;background:#fff}
.of-hl{font-weight:700;font-variant-numeric:tabular-nums}
.of-c{font-variant-numeric:tabular-nums}
.of-oos{color:#b32d2e!important}
.of-docs{display:flex;gap:4px;flex-wrap:wrap}
.of-model .of-docs{margin:6px 0 0 66px}
.of-kind{display:block;color:var(--of-mut);font-size:11px;margin-bottom:3px}
.of-doc{font-size:10.5px;font-weight:700;border:1px solid var(--of-bd);border-radius:3px;padding:2px 5px;color:#333;text-decoration:none;line-height:1.2}
.of-doc:hover{border-color:var(--of-red);color:var(--of-red)}
.of-act{display:flex;flex-direction:column;gap:5px;align-items:stretch}
.of-exp,.of-view{appearance:none;font:inherit;font-size:12.5px;text-align:center;border-radius:4px;padding:5px 8px;cursor:pointer;margin:0;min-height:0;line-height:1.2;text-transform:none;letter-spacing:0;text-decoration:none}
.of-exp{background:#fff;border:1px solid var(--of-bd);color:#333}
.of-view{background:var(--of-red);border:1px solid var(--of-red);color:#fff!important}
.of-cmp input{margin:0;width:16px;height:16px}
.of-sub{background:var(--of-bg);padding:0 0 12px 40px;border-bottom:1px solid var(--of-bd)}
.of-sub table{width:100%;border-collapse:collapse;background:#fff;font-size:13px;margin:0}
.of-sub th,.of-sub td{padding:6px 10px;border-bottom:1px solid #eee;text-align:left;font-variant-numeric:tabular-nums}
.of-sub th{font-size:11px;text-transform:uppercase;color:#555;letter-spacing:.03em}
.of-sub small{color:var(--of-mut);font-size:11px}
.of-sub .of-view{display:inline-block}
.of-empty{padding:30px 10px;text-align:center;color:#444}
/* Barra de comparar / presupuesto */
.of-bar{position:fixed;left:50%;transform:translateX(-50%);bottom:16px;z-index:9999;background:#222;color:#fff;border-radius:8px;padding:10px 14px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;box-shadow:0 8px 30px rgba(0,0,0,.3);max-width:calc(100% - 24px);font-size:13px}
.of-bar .button{margin:0;min-height:0;padding:6px 14px;line-height:1.4;font-size:13px}
.of-bar .of-link{color:#fff}
.of-bar a.button,.of-bar button.button{background:#fff;color:#222;border:0;border-radius:4px;text-decoration:none;cursor:pointer;font-weight:600}
.of-bar a.button.primary{background:var(--primary-color,#dd3333);color:#fff}
.of-hint{color:#bbb}
/* Comparativa */
.osa-finder-cmp .of-modal{position:fixed;inset:0;z-index:100000;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;padding:16px}
.osa-finder-cmp .of-mbox{background:#fff;border-radius:8px;max-width:960px;width:100%;max-height:calc(100vh - 32px);display:flex;flex-direction:column;padding:20px 22px;position:relative}
.osa-finder-cmp h3{margin:0 0 10px}
.osa-finder-cmp .of-x{position:absolute;top:8px;right:12px;border:0;background:none;font-size:26px;cursor:pointer;line-height:1;margin:0;padding:4px;min-height:0;color:#666}
.osa-finder-cmp .of-mscroll{overflow:auto}
.osa-finder-cmp table{width:100%;border-collapse:collapse;font-size:13.5px;margin:0}
.osa-finder-cmp th,.osa-finder-cmp td{padding:7px 10px;border-bottom:1px solid #eee;text-align:left;vertical-align:top}
.osa-finder-cmp thead th{text-align:center}
.osa-finder-cmp thead img{display:block;margin:0 auto 4px;width:64px;height:64px;object-fit:contain}
.osa-finder-cmp tbody th{font-weight:600;color:#444;width:200px}
.osa-finder-cmp tr.diff td{background:#fff6e0}
.osa-finder-cmp .of-docs{display:flex;gap:4px}
.osa-finder-cmp .of-doc{font-size:11px;font-weight:700;border:1px solid #ddd;border-radius:3px;padding:2px 6px;color:#333;text-decoration:none}
.of-mnote{color:#777;font-size:12px;margin:8px 0 0}
/* Buscador rápido */
.osa-finder-quick{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;background:#fff;border:1px solid #e2e2e2;border-radius:8px;padding:16px 18px;box-shadow:0 4px 18px rgba(0,0,0,.06)}
.osa-finder-quick .ofq-title{width:100%;font-size:17px}
.osa-finder-quick label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#444;margin:0;flex:1 1 180px}
.osa-finder-quick select{height:38px;margin:0;font-size:14px;text-transform:none;letter-spacing:0;font-weight:400}
.osa-finder-quick .button{margin:0;height:38px}
/* Columnas según el ancho del listado */
@container (max-width:1040px){
	.of-row{grid-template-columns:28px minmax(200px,2.2fr) minmax(120px,1.3fr) 88px 56px 84px 70px 86px 74px}
}
@container (max-width:900px){
	.of-row{grid-template-columns:28px minmax(180px,2fr) minmax(110px,1.2fr) 86px 84px 84px 72px}
	.of-row>[data-col=pow],.of-row>[data-col=psrr]{display:none}
}
@container (max-width:760px){
	.of-head{display:none}
	.of-row{grid-template-columns:28px 1fr 1fr;gap:6px 10px;padding:12px 0}
	.of-row>[data-col=model],.of-row>[data-col=act]{grid-column:2/4}
	.of-row>.of-c[data-l]::before{content:attr(data-l);display:block;font-size:10.5px;text-transform:uppercase;color:#777;letter-spacing:.04em}
	.of-row>[data-col=volt],.of-row>[data-col=noise],.of-row>[data-col=price]{grid-column:2}
	.of-row>[data-col=cur],.of-row>[data-col=pow],.of-row>[data-col=psrr]{grid-column:3}
	.of-row>[data-col=pow],.of-row>[data-col=psrr]{display:block}
	.of-act{flex-direction:row}
	.of-act>*{flex:1}
	.of-sub{padding-left:0;overflow-x:auto}
	.of-top .of-count{flex-basis:100%}
}
/* Panel de filtros en pantallas estrechas */
@media (max-width:900px){
	.of-wrap{grid-template-columns:1fr}
	.of-toggle{display:block;width:100%;margin:0 0 12px;border:1px solid #ccc;background:#fff;border-radius:4px;padding:10px;font:inherit;font-weight:700;cursor:pointer}
	.of-side{display:none;position:static;max-height:none;border:1px solid var(--of-bd);border-radius:6px;padding:14px}
	.osa-finder.of-show .of-side{display:block}
}
/* En temas de bloques, más ancho que el texto */
.is-layout-constrained>.osa-finder{max-width:min(1400px,calc(100vw - 32px))!important;margin-left:auto!important;margin-right:auto!important}
