/* SF WooCommerce Ticketera */
.sfwt-wrap{--sfwt-bg:#fff;--sfwt-card:#fff;--sfwt-border:rgba(0,0,0,.08);--sfwt-text:#111;--sfwt-muted:rgba(0,0,0,.62);--sfwt-primary:#111;--sfwt-radius:16px;--sfwt-shadow:0 8px 28px rgba(0,0,0,.08);font-family:inherit;color:var(--sfwt-text)}
.sfwt-header{margin:0 0 14px 0}
.sfwt-title{margin:0 0 6px 0;line-height:1.15;font-size:clamp(20px,2.2vw,28px)}
.sfwt-empty{padding:16px;border:1px dashed var(--sfwt-border);border-radius:var(--sfwt-radius);color:var(--sfwt-muted);background:rgba(0,0,0,.02)}

/* Layout */
.sfwt-layout-sidecart{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}
@media (min-width: 980px){.sfwt-layout-sidecart{grid-template-columns:minmax(0,1fr) 340px}}
.sfwt-aside{position:relative}
.sfwt-cart-wrap{position:sticky;top:18px}

/* Tickets grid */
.sfwt-grid{display:grid;grid-template-columns:1fr;gap:12px}
@media (min-width: 720px){.sfwt-cols-2 .sfwt-grid{grid-template-columns:1fr 1fr}}

.sfwt-card{display:flex;gap:14px;align-items:stretch;justify-content:space-between;background:var(--sfwt-card);border:1px solid var(--sfwt-border);border-radius:var(--sfwt-radius);box-shadow:var(--sfwt-shadow);padding:14px}
.sfwt-card-main{flex:1;min-width:0}
.sfwt-card-top{display:flex;gap:10px;justify-content:space-between;align-items:flex-start}
.sfwt-name{font-weight:700;font-size:16px;line-height:1.2}
.sfwt-price{white-space:nowrap;font-weight:700}
.sfwt-price .amount{font-weight:700}
.sfwt-desc{margin-top:8px;color:var(--sfwt-muted);font-size:13px;line-height:1.35}

.sfwt-card-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.sfwt-qty{display:flex;align-items:center;gap:8px}
.sfwt-qty-label{font-size:12px;color:var(--sfwt-muted)}
.sfwt-btn{appearance:none;border:1px solid var(--sfwt-border);background:#fff;color:var(--sfwt-text);border-radius:999px;padding:10px 14px;font-weight:700;font-size:14px;line-height:1;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:transform .05s ease, box-shadow .12s ease, background .12s ease}
.sfwt-btn:active{transform:translateY(1px)}
.sfwt-btn-primary{background:var(--sfwt-primary);color:#fff;border-color:rgba(0,0,0,.18)}
.sfwt-btn-primary:hover{box-shadow:0 10px 22px rgba(0,0,0,.12)}
.sfwt-btn-ghost{background:transparent}
.sfwt-out{font-size:13px;color:var(--sfwt-muted);padding:10px 12px;border:1px dashed var(--sfwt-border);border-radius:999px}

/* Stepper +/- */
.sfwt-stepper{display:inline-flex;align-items:center;border:1px solid var(--sfwt-border);border-radius:999px;overflow:hidden;background:#fff}
.sfwt-step{width:38px;height:38px;border:0;background:transparent;color:var(--sfwt-text);font-size:18px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.sfwt-step:hover{background:rgba(0,0,0,.04)}
.sfwt-step:active{transform:translateY(1px)}
.sfwt-qty-input{width:60px;max-width:100%;border:0;border-left:1px solid var(--sfwt-border);border-right:1px solid var(--sfwt-border);padding:10px 10px;font-size:14px;outline:none;text-align:center}
.sfwt-qty-input::-webkit-outer-spin-button,.sfwt-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.sfwt-qty-input[type=number]{-moz-appearance:textfield}

/* Cart summary */
.sfwt-cart{background:#fff;border:1px solid var(--sfwt-border);border-radius:18px;box-shadow:var(--sfwt-shadow);padding:14px}
.sfwt-cart-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.sfwt-cart-title{font-weight:800}
.sfwt-cart-empty{color:var(--sfwt-muted);font-size:13px;padding:10px 0}
.sfwt-cart-items{display:flex;flex-direction:column;gap:10px;margin:8px 0 12px 0}
.sfwt-cart-row{display:flex;gap:10px;justify-content:space-between;align-items:flex-start}
.sfwt-cart-name{font-size:13px;line-height:1.25;font-weight:700;flex:1;min-width:0}
.sfwt-cart-meta{display:flex;gap:10px;align-items:center;white-space:nowrap}
.sfwt-cart-qty{color:var(--sfwt-muted);font-size:12px}
.sfwt-cart-line{font-weight:800;font-size:13px}
.sfwt-cart-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--sfwt-border);padding-top:10px;margin-top:8px;font-weight:800}
.sfwt-cart-total-value{font-weight:900}
.sfwt-cart-actions{display:flex;gap:10px;justify-content:flex-end;align-items:center;margin-top:12px;flex-wrap:wrap}

/* Toasts */
.sfwt-toasts{position:fixed;right:16px;bottom:16px;z-index:99999;display:flex;flex-direction:column;gap:10px;pointer-events:none}
.sfwt-toast{pointer-events:none;background:#111;color:#fff;border-radius:14px;padding:12px 14px;box-shadow:0 10px 26px rgba(0,0,0,.18);font-size:13px;max-width:min(360px, calc(100vw - 32px));opacity:0;transform:translateY(8px);animation:sfwt-in .18s ease forwards}
.sfwt-toast--error{background:#b00020}
@keyframes sfwt-in{to{opacity:1;transform:translateY(0)}}


/* Cart remove */
.sfwt-cart-remove{width:28px;height:28px;border:1px solid var(--sfwt-border);border-radius:999px;background:#fff;color:var(--sfwt-text);font-size:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.sfwt-cart-remove:hover{background:rgba(0,0,0,.04)}
.sfwt-cart-remove:active{transform:translateY(1px)}

/* Ticketera simple: sin selector de cantidad */
.sfwt-qtywrap,.sfwt-step,.sfwt-qty-input{display:none!important;}
