/* ============================================================
   MAYASHOP — calculator.css
   Simple, funcional, 100% responsive
   ============================================================ */

.calc-hero-section{position:relative;overflow:hidden;min-height:200px}
.calc-section{padding:20px 0 80px;position:relative;background:linear-gradient(180deg,var(--bg-dark) 0%,rgba(10,15,26,.8) 100%)}

/* ── Toolbar ────────────────────────────────────────────────── */
.calc-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:10px 14px;margin-bottom:14px;flex-wrap:wrap}
.calc-search-box{position:relative;flex:1;min-width:200px}
.calc-search-box>i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-dim);font-size:.85rem;pointer-events:none}
.calc-search-box input{width:100%;padding:10px 14px 10px 36px;background:var(--bg-dark);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:var(--font-body);font-size:.9rem;outline:none}
.calc-search-box input:focus{border-color:var(--gold)}
.calc-stats{display:flex;align-items:center;gap:6px;flex-shrink:0}
.cs-label{font-family:var(--font-head);font-size:.65rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em}
.cs-gem{display:inline-flex;align-items:center}
.cs-value{font-family:var(--font-head);font-size:1.1rem;font-weight:900;color:#C77DFF}

/* ── Tabs ───────────────────────────────────────────────────── */
.calc-tabs-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:14px;scrollbar-width:none}
.calc-tabs-scroll::-webkit-scrollbar{display:none}
.calc-tabs{display:flex;gap:4px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:5px;min-width:max-content}
.calc-tab{flex:0 0 auto;background:transparent;border:1px solid transparent;border-radius:7px;padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:5px;font-family:var(--font-head);font-size:.6rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);transition:background .2s,color .2s,border-color .2s;white-space:nowrap;-webkit-tap-highlight-color:transparent}
.calc-tab:hover{background:rgba(255,215,0,.04);color:var(--text)}
.calc-tab.active{background:rgba(255,215,0,.12);border-color:var(--gold);color:var(--gold);box-shadow:0 0 12px rgba(255,215,0,.15)}
.tab-ico{font-size:.95rem}
.tab-badge{background:var(--green);color:#000;border-radius:10px;padding:1px 6px;font-size:.55rem;font-weight:900;display:none;min-width:16px;text-align:center}
.tab-badge.show{display:inline-block}

/* ── Panels ─────────────────────────────────────────────────── */
.calc-panel{display:none}
.calc-panel.active{display:block;animation:fadeIn .25s ease}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.panel-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:10px;font-size:.85rem;color:var(--text-dim)}
.panel-head strong{color:var(--gold)}
.btn-clear-cat{background:rgba(255,68,68,.08);border:1px solid rgba(255,68,68,.25);color:var(--red);padding:6px 10px;border-radius:6px;font-family:var(--font-head);font-size:.55rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;gap:4px;-webkit-tap-highlight-color:transparent}
.btn-clear-cat:hover{background:rgba(255,68,68,.15)}

/* ══════════════════════════════════════════════════════════════
   ITEMS TABLE — simple como Lord's Gems pero mejor diseño
   ══════════════════════════════════════════════════════════════ */
.items-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;overflow:hidden}
.items-table thead{background:rgba(255,215,0,.06)}
.items-table th{font-family:var(--font-head);font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);padding:10px 12px;text-align:left;border-bottom:1px solid var(--border)}
.th-icon{width:44px}
.th-gem{width:100px;text-align:right}
.th-qty{width:140px;text-align:center}

.item-row{border-bottom:1px solid var(--border);transition:background .15s}
.item-row:last-child{border-bottom:none}
.item-row:hover{background:rgba(255,215,0,.03)}
.item-row.has-qty{background:rgba(155,48,255,.06)}
.item-row.has-qty .td-name{color:var(--gold)}

.item-row td{padding:10px 12px;vertical-align:middle}
/* ── TAMAÑO DE ÍCONOS DE LA CALCULADORA ────────────────────
   Para cambiar el tamaño manualmente:
   - Desktop: modifica width/height en .td-icon y .td-icon svg/img (líneas abajo)
   - Tablet: modifica en @media(max-width:768px)
   - Móvil:  modifica en @media(max-width:480px)
   ──────────────────────────────────────────────────────────── */
.td-icon{width:72px;min-width:72px;padding:4px}
.td-icon svg,.td-icon img{width:64px;height:64px;object-fit:contain;display:block;border-radius:6px}
.td-name{font-family:var(--font-head);font-size:.72rem;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.02em}
.td-gem{text-align:right;font-family:var(--font-head);font-size:.8rem;font-weight:700;color:#C77DFF;white-space:nowrap}
.td-qty{text-align:center}

/* ── Qty controls ───────────────────────────────────────────── */
.qty-wrap{display:inline-flex;align-items:center;gap:4px}
.qb{width:32px;height:32px;background:var(--bg-dark);border:1px solid var(--border);border-radius:6px;color:var(--gold);font-size:1.1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;user-select:none;touch-action:manipulation;padding:0;transition:background .15s,transform .1s}
.qb:hover{background:rgba(255,215,0,.1);border-color:var(--gold)}
.qb:active{transform:scale(.9)}
.qi{width:52px;height:32px;background:var(--bg-dark);border:1px solid var(--border);border-radius:6px;color:var(--text);font-family:var(--font-head);font-size:.85rem;font-weight:700;text-align:center;outline:none;-moz-appearance:textfield;padding:0}
.qi::-webkit-outer-spin-button,.qi::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.qi:focus{border-color:var(--gold);background:rgba(255,215,0,.04)}

/* ══════════════════════════════════════════════════════════════
   WISHLIST BOX — siempre visible debajo de la tabla
   ══════════════════════════════════════════════════════════════ */
.wl-box{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;margin-top:24px;overflow:hidden;position:relative}
.wl-box::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),#9B30FF,var(--green))}
.wl-box-head{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid var(--border)}
.wl-box-head h3{font-family:var(--font-head);font-size:.85rem;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:.06em;margin:0}
.wl-box-clear{background:rgba(255,68,68,.08);border:1px solid rgba(255,68,68,.25);color:var(--red);padding:6px 12px;border-radius:6px;font-family:var(--font-head);font-size:.55rem;font-weight:700;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;gap:4px;letter-spacing:.06em}
.wl-box-empty{padding:24px;text-align:center;color:var(--text-dim);font-size:.9rem}
.wl-box-list{max-height:300px;overflow-y:auto;padding:0;margin:0}
.wl-box-list::-webkit-scrollbar{width:4px}
.wl-box-list::-webkit-scrollbar-thumb{background:var(--gold-dark)}

.wl-row{display:flex;align-items:center;gap:10px;padding:10px 18px;border-bottom:1px solid var(--border);font-size:.85rem;animation:rowIn .2s ease}
@keyframes rowIn{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:translateX(0)}}
.wl-row:last-child{border-bottom:none}
.wl-row-icon{width:28px;height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.wl-row-icon svg{width:100%;height:100%}
.wl-row-name{flex:1;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem}
.wl-row-meta{font-family:var(--font-head);font-size:.72rem;color:#C77DFF;font-weight:700;flex-shrink:0;white-space:nowrap}
.wl-row-del{width:22px;height:22px;background:transparent;border:1px solid var(--border);border-radius:4px;color:var(--text-dim);font-size:.6rem;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;padding:0;flex-shrink:0}
.wl-row-del:hover{background:rgba(255,68,68,.15);border-color:var(--red);color:var(--red)}

.wl-box-total{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:var(--bg-dark);border-top:1px solid var(--border);font-family:var(--font-head);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim)}
.wl-total-num{display:flex;align-items:center;gap:6px;font-size:1.2rem;color:#C77DFF}
.wl-total-num strong{font-weight:900}

.wl-box-actions{display:flex;gap:10px;padding:14px 18px;flex-wrap:wrap}
.wl-box-actions .btn{flex:1;min-width:180px;justify-content:center;text-align:center}
.wl-capture-btn:disabled,.wl-box-actions .wa-vendor-btn:disabled{opacity:.4;cursor:not-allowed;filter:grayscale(.5)}

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════════════════════ */
@media(max-width:768px){
  .calc-section{padding:14px 0 60px}
  .calc-hero-section{min-height:180px}
  .calc-toolbar{padding:8px 10px}
  .calc-search-box{min-width:100%}
  .calc-stats{width:100%;justify-content:center;padding:4px 0}

  /* Tabla responsive: cada fila es card */
  .items-table,.items-table thead,.items-table tbody,.items-table th,.items-table td,.items-table tr{display:block;width:100%}
  .items-table thead{display:none}
  .item-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px;border-bottom:1px solid var(--border)}
  /* TAMAÑO ÍCONOS TABLET - cambiar aquí */
  .td-icon{width:64px;height:64px;min-width:64px;flex-shrink:0}
  .td-icon svg,.td-icon img{width:56px;height:56px}
  .td-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0}
  .td-gem{flex-shrink:0;padding:0;font-size:.75rem}
  .td-qty{width:100%;display:flex;justify-content:center;padding:6px 0 0;border-top:1px solid var(--border);margin-top:4px}
  .qb{width:36px;height:36px;font-size:1.2rem}
  .qi{width:56px;height:36px;font-size:.95rem}

  .wl-box-actions{flex-direction:column}
  .wl-box-actions .btn{min-width:100%}
}

@media(max-width:480px){
  .container{padding:0 10px}
  .calc-tabs{gap:3px;padding:4px}
  .calc-tab{padding:7px 8px;font-size:.58rem;gap:4px}
  .tab-txt{display:none}
  .tab-ico{font-size:1.1rem}

  .item-row{padding:10px}
  /* TAMAÑO ÍCONOS MÓVIL - cambiar aquí */
  .td-icon{width:80px;height:80px;min-width:80px}
  .td-icon svg,.td-icon img{width:50px;height:50px}
  .td-name{font-size:.68rem}
  .td-gem{font-size:.72rem}
  .qb{width:38px;height:38px;font-size:1.3rem}
  .qi{width:54px;height:38px;font-size:1rem}

  .wl-row{padding:8px 12px;gap:8px}
  .wl-row-name{font-size:.75rem}
  .wl-box-head{padding:12px 14px}
  .wl-box-total{padding:12px 14px}
  .wl-box-actions{padding:10px 14px}
}

@media(max-width:360px){
  .td-name{font-size:.65rem}
  .qb{width:40px;height:40px}
  .qi{width:52px;height:40px}
}
