/* Legacy shortcodes → layout usable con Oxygen / temas limpios */
.k360-legacy-row{
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
  margin:0 0 1.25rem;
  width:100%;
  box-sizing:border-box;
}
.k360-legacy-col{
  box-sizing:border-box;
  min-width:0;
  flex:1 1 100%;
}
.k360-legacy-col.k360-w-1{flex-basis:8.333%}
.k360-legacy-col.k360-w-2{flex-basis:16.666%}
.k360-legacy-col.k360-w-3{flex-basis:25%}
.k360-legacy-col.k360-w-4{flex-basis:33.333%}
.k360-legacy-col.k360-w-5{flex-basis:41.666%}
.k360-legacy-col.k360-w-6{flex-basis:50%}
.k360-legacy-col.k360-w-7{flex-basis:58.333%}
.k360-legacy-col.k360-w-8{flex-basis:66.666%}
.k360-legacy-col.k360-w-9{flex-basis:75%}
.k360-legacy-col.k360-w-10{flex-basis:83.333%}
.k360-legacy-col.k360-w-11{flex-basis:91.666%}
.k360-legacy-col.k360-w-12{flex-basis:100%}
@media(max-width:782px){
  .k360-legacy-col[class*="k360-w-"]{flex-basis:100%}
}
.k360-legacy-text{line-height:1.6}
.k360-legacy-heading{font-size:1.05rem;line-height:1.55;margin:0 0 1rem;color:inherit}
.k360-legacy-image{margin:.75rem 0}
.k360-legacy-image.k360-align-center{text-align:center}
.k360-legacy-image.k360-align-right{text-align:right}
.k360-legacy-img{max-width:100%;height:auto}
.k360-legacy-space{width:100%;display:block}
.k360-legacy-separator{border:0;border-top:1px solid #e2e8f0;margin:1.25rem 0}
.k360-legacy-accordion{display:flex;flex-direction:column;gap:.5rem;margin:1rem 0}
.k360-legacy-acc-item{
  border:1px solid #e2e8f0;
  border-radius:10px;
  background:#fff;
  overflow:hidden;
}
.k360-legacy-acc-title{
  cursor:pointer;
  list-style:none;
  font-weight:600;
  padding:.85rem 1rem;
  background:#f8fafc;
  color:#0f172a;
}
.k360-legacy-acc-title::-webkit-details-marker{display:none}
.k360-legacy-acc-title::after{
  content:"+";
  float:right;
  font-weight:700;
  color:#64748b;
}
.k360-legacy-acc-item[open] > .k360-legacy-acc-title::after{content:"–"}
.k360-legacy-acc-body{padding:.85rem 1rem 1.1rem}
.k360-legacy-acc-body table{width:100%;border-collapse:collapse}
.k360-legacy-acc-body th,
.k360-legacy-acc-body td{border:1px solid #e2e8f0;padding:.45rem .55rem;vertical-align:top}

/* Tabs — plantilla basic (hook para más tpl-*) */
.k360-tabs{margin:1.25rem 0}
.k360-tabs-nav{
  display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;
  border-bottom:1px solid #e2e8f0;margin-bottom:1rem;padding-bottom:.35rem;
}
.k360-tabs--pos-top-left .k360-tabs-nav,
.k360-tabs--pos-top .k360-tabs-nav{justify-content:flex-start}
.k360-tabs--pos-top-right .k360-tabs-nav{justify-content:flex-end}
.k360-tabs--pos-top-center .k360-tabs-nav{justify-content:center}
.k360-tabs-btn{
  border:1px solid transparent;background:transparent;color:#475569;
  font:inherit;font-weight:600;padding:.55rem 1rem;border-radius:999px;cursor:pointer;
}
.k360-tabs-btn:hover{color:#0f172a;background:#f1f5f9}
.k360-tabs-btn.is-active{
  color:#fff;background:#0ea5e9;border-color:#0ea5e9;
}
.k360-tabs--skin-primary .k360-tabs-btn.is-active{background:#0284c7;border-color:#0284c7}
.k360-tabs-panel{display:none}
.k360-tabs-panel.is-active{display:block}
.k360-tabs-panel[hidden]{display:none!important}

/* Porto products grid */
.k360-porto-products{
  display:grid;gap:1rem;margin:1rem 0;
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.k360-porto-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.k360-porto-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.k360-porto-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.k360-porto-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.k360-porto-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}
@media(max-width:900px){.k360-porto-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.k360-porto-products{grid-template-columns:1fr}}
.k360-porto-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;padding:0 0 .75rem}
.k360-porto-thumb{display:block;aspect-ratio:1;background:#f8fafc}
.k360-porto-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.k360-porto-title{font-size:.9rem;margin:.65rem .75rem .25rem;line-height:1.3}
.k360-porto-title a{color:inherit;text-decoration:none}
.k360-porto-price{margin:0 .75rem;font-weight:600;color:#0f172a}
.k360-porto-products--empty{padding:1rem;color:#64748b;border:1px dashed #cbd5e1;border-radius:10px}
