/* Acabado del muestrario, sin alterar la página principal. */
:root{--bien-navy:#16314e;--bien-teal:#087c8e;--bien-muted:#526579;--bien-line:#dce5ec}
#inventory-total{font-size:13px;font-weight:700;color:#087c8e;line-height:1.6;padding:10px 0;margin:0 0 12px;border-bottom:1px solid #dce5ec}
.inventory-sync-status{font-size:11px;color:#526579;line-height:1.6;margin-top:16px}
body{background:#f5f8fa;color:var(--bien-navy)}
.intro{border-radius:14px;box-shadow:0 4px 18px #16314e05}
.intro h1{font-size:clamp(28px,3.5vw,40px);line-height:1.25}
.intro>p{color:var(--bien-muted)}
.eyebrow,.tag{color:#076d7d}
.category-overview{gap:18px}
.area-tile{transition:border-color .18s,box-shadow .18s;min-width:0}
.area-tile:hover{border-color:var(--bien-teal);box-shadow:0 5px 18px #16314e12}
.area-tile[aria-pressed=true]{box-shadow:0 0 0 2px #087c8e18}
.area-tile small,.area-note,.results-heading p,.category-desc,.public-search-hint{color:var(--bien-muted)}
.tools{border-radius:12px;box-shadow:0 4px 20px #16314e06}
.tools h2{font-size:17px;line-height:1.5;margin-bottom:18px}
.tools label{font-size:12px;color:var(--bien-navy)}
.tools input[type=search],.tools select{min-height:44px;border:1px solid #b8c8d5;border-radius:8px;font-size:13px;color:var(--bien-navy);background:white}
.filters button{min-height:44px;font-size:12px;border:1px solid transparent;border-radius:8px;color:#344e69}
.filters button:hover{background:#eaf3f5}
.filters button.active{background:#e5f2f4;color:#075b69;border-color:#98c8d1;font-weight:700}
.public-clear-filters,.public-filter-toggle{min-height:44px;font-size:12px;border-radius:8px}
.public-active-filters button{font-size:12px;min-height:36px}
.grid{gap:22px}
.product{border-color:var(--bien-line);border-radius:12px;box-shadow:0 3px 12px #16314e06;transition:box-shadow .18s,border-color .18s}
.product:hover{transform:none;border-color:#a9c8d1;box-shadow:0 8px 24px #16314e14}
.product:focus-within{border-color:var(--bien-teal)}
.product-image{height:220px;background:#f3f6f8;border-bottom:1px solid #e6edf2}
.product-image img{object-fit:contain!important;padding:18px}
.product-image span{color:#42566b;font-size:10px}
.product-content{padding:24px}
.product-content h3{font-size:18px;line-height:1.5;min-height:54px}
.product-content>p{font-size:13px;line-height:1.8;color:var(--bien-muted);min-height:71px}
.origin-badge,.public-card-facts span,.product-family{font-size:11px;color:var(--bien-muted)}
.details-product{min-height:46px;background:var(--bien-navy);border-radius:8px;font-size:13px;font-weight:700;transition:background .18s}
.details-product:hover{background:#234e71}
.public-compare-choice{font-size:12px;color:var(--bien-muted);min-height:36px}
.public-compare-choice input{width:18px;height:18px;flex:none}
#show-more{min-height:46px;border-radius:8px;border-color:#a4bdcb;font-size:13px}
dialog#detail-dialog{border-radius:16px;box-shadow:0 20px 70px #16314e30}
.detail-layout{gap:32px}
.detail-layout h2{font-size:clamp(22px,2.6vw,28px)}
.detail-metrics>div{border:1px solid #e1e9ef;border-radius:8px;padding:14px}
.detail-metrics span{color:var(--bien-muted);font-size:11px}
.detail-metrics strong{font-size:13px}
.sheet-tabs button{min-height:48px;font-weight:700}
#detail-description,#detail-specs{line-height:1.85;font-size:14px;color:#344e69}
#detail-table{font-size:13px;border:1px solid var(--bien-line);border-radius:8px}
#detail-table th{color:var(--bien-muted)}
#detail-table th,#detail-table td{padding:13px 12px}
.detail-note{color:var(--bien-muted)}
.public-inquire-link{min-height:46px;border-radius:8px;font-weight:700}
.public-inquire-link:hover{background:#dceef1;border-color:#9bc5ce}
.contact{padding:30px;border-radius:12px}
.contact .quote{border-radius:8px;min-height:44px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #087c8e;outline-offset:3px}
@media(max-width:900px){.tools{padding:22px}.catalog-layout{gap:24px}}
@media(max-width:540px){main{padding-left:16px;padding-right:16px}.intro{padding:22px}.category-overview{gap:12px}.area-tile small{font-size:11px}.product-content{padding:22px}.product-content h3,.product-content>p{min-height:0}.public-active-filters button{min-height:40px}.detail-layout{gap:22px}.detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-tabs button{font-size:12px}.contact{padding:24px}}
@media(prefers-reduced-motion:reduce){.area-tile,.product,.details-product,.product-image img{transition:none}.product:hover .product-image img{transform:none}}

/* Identidad por área y presentación compacta. */
.category[data-category=insumos],.area-tile[data-area=insumos]{--area-accent:#087c8e}
.category[data-category=contenedores],.area-tile[data-area=contenedores]{--area-accent:#397345}
.category[data-category=limpieza],.area-tile[data-area=limpieza]{--area-accent:#315ca0}
.category[data-category=gasfiteria],.area-tile[data-area=gasfiteria]{--area-accent:#865b24}
.area-tile{border-bottom:4px solid var(--area-accent,#087c8e)}
.category h2:before{background:var(--area-accent)}
.category .tag{color:var(--area-accent)}
.category .product{border-top:3px solid var(--area-accent)}
.catalog-view-buttons{display:flex;gap:6px;margin-top:16px;width:fit-content;padding:4px;border:1px solid #dce5ec;border-radius:10px;background:#edf2f6}
.catalog-view-buttons button{min-height:44px;border:0;border-radius:7px;font-size:12px;background:transparent;color:#344e69}
.catalog-view-buttons button[aria-pressed=true]{background:#16314e;color:white;font-weight:700}
.catalog-list-view .grid{grid-template-columns:1fr}
.catalog-list-view .product{display:grid;grid-template-columns:150px minmax(0,1fr);height:auto}
.catalog-list-view .product-image{height:100%;min-height:190px;border-bottom:0;border-right:1px solid #e6edf2}
.catalog-list-view .product-image{height:auto;display:flex;align-items:center;justify-content:center;min-width:0}
.catalog-list-view .product-image img{height:180px;width:100%;padding:12px;flex:none}
.catalog-results,.product-content,.detail-layout>div{min-width:0}
.product-content h3{display:block;overflow:visible;overflow-wrap:anywhere;-webkit-line-clamp:unset;min-height:0}
.product-content>p{min-height:0}
.product-family,.origin-badge{overflow-wrap:anywhere;max-width:100%}
.tools{max-height:calc(100dvh - 40px);overflow-y:auto;scrollbar-width:thin}
.product-actions button{white-space:normal;overflow-wrap:anywhere}
dialog#detail-dialog{max-height:calc(100dvh - 32px);overscroll-behavior:contain}
.dialog-top{position:sticky;top:-30px;background:white;z-index:2;padding:12px 0}
.dialog-top button{flex-shrink:0;min-width:44px;min-height:44px}
.catalog-list-view .product-content h3,.catalog-list-view .product-content>p{min-height:0;margin:8px 0}
.catalog-list-view .product-actions{flex-direction:row;flex-wrap:wrap;align-items:center;margin-top:12px}
.catalog-list-view .details-product{min-width:150px}
.catalog-list-view .public-card-facts{margin:8px 0}
.visual-edit-mode .catalog-view-buttons{display:none}
#sheet-info,#sheet-spec,#sheet-variants{border:1px solid #dce5ec;background:#fafcfd;border-radius:10px;padding:18px;margin:16px 0}
#sheet-info .info-label,#sheet-spec .info-label{margin-top:0}
.dimensions-block,.record-documents{border:1px solid #dce5ec;border-radius:10px;padding:18px;background:white}
.record-documents{margin-top:18px}
.variant-link:hover{background:#edf5f7;border-color:#8ebbc5}
button:not(:disabled):active{filter:brightness(.94)}
button:disabled{opacity:.55;cursor:not-allowed}
.dialog-top button:hover{background:#dae8ee}
dialog[open]{animation:show-record .18s ease-out}
@keyframes show-record{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:540px){.catalog-list-view .product{grid-template-columns:95px minmax(0,1fr)}.catalog-list-view .product-image{min-height:180px}.catalog-list-view .product-image img{padding:8px}.catalog-list-view .product-image span{display:none}.catalog-list-view .product-content{padding:15px}.catalog-list-view .product-content h3{font-size:15px}.catalog-list-view .details-product{min-width:0;width:100%}.catalog-list-view .public-compare-choice{font-size:11px}.detail-layout>div{min-width:0}.detail-layout table{table-layout:fixed;width:100%}.detail-layout td,.detail-layout th{overflow-wrap:anywhere}.sheet-tabs button{min-height:48px}#sheet-info,#sheet-spec,#sheet-variants{padding:14px}.share-area button{min-height:44px}}
@media(max-width:900px){.tools{max-height:none;overflow:visible}}
@media(max-width:760px){.detail-layout{grid-template-columns:1fr}.detail-layout>div:first-child{padding:14px}.detail-layout img{height:220px}.sheet-tabs button{padding:12px 6px;overflow-wrap:anywhere}}
@media(max-width:540px){.dialog-top{top:-20px}.visual-controls,.visual-ficha-actions,.visual-save-actions{flex-wrap:wrap}.catalog-list-view .product-image img{height:130px}.share-area{align-items:stretch}.share-area>a{width:100%;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){dialog[open]{animation:none}}
@media print{
 @page{margin:15mm}
 body{background:white!important;color:#16314e;padding:0!important;font-size:11pt}
 header,footer,.tools,.category-overview,.area-note,.catalog-expansion,.catalog-view-buttons,.product-actions,.public-compare-choice,.public-compare-bar,.quote-bar,.contact,.visual-edit-toolbar{display:none!important}
 main{max-width:none;padding:0}
 .product{box-shadow:none;break-inside:avoid}
 body:has(#detail-dialog[open])>*:not(#detail-dialog){display:none!important}
 #detail-dialog[open]{display:block!important;position:static;width:100%;max-width:none;max-height:none;margin:0;padding:0;overflow:visible;box-shadow:none;border:0;animation:none}
 #detail-dialog::backdrop{background:transparent}
 #detail-dialog .dialog-top button,#detail-dialog .sheet-tabs,#detail-dialog .share-area,#detail-dialog .public-inquire-link,#detail-dialog .zoom-photo,#detail-dialog .consultation-fields,#detail-dialog .variant-control,#detail-dialog .record-documents button{display:none!important}
 #detail-dialog .detail-layout{display:block}
 #detail-dialog .detail-layout>div:first-child{float:right;width:32%;padding:12px;margin:0 0 15px 20px}
 #detail-dialog #detail-image{height:180px;max-height:180px}
 #detail-dialog #sheet-info,#detail-dialog #sheet-spec{display:block!important;background:white;break-inside:avoid}
 #detail-dialog #sheet-variants{display:none!important}
 #detail-dialog .dimensions-block,#detail-dialog .record-documents{break-inside:avoid}
 #detail-dialog a{color:#16314e;text-decoration:underline}
}
