/* Safe product-card alignment: do not alter Flatsome columns, image widths, or .box sizing. */
.tpqa-card-content{display:flex!important;flex-direction:column!important;box-sizing:border-box!important;overflow:visible!important}
.tpqa-quick-add-wrap{margin-top:auto!important;width:100%!important;padding-top:8px}
.teepluz-quick-add-button{
    width:100%!important;margin:0!important;display:flex!important;align-items:center;justify-content:center;
    min-height:38px;padding:8px 12px!important;font-size:13px!important;line-height:1.2!important;box-sizing:border-box!important;
}
.tpqa-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:20px}
.tpqa-modal.is-open{display:flex}
.tpqa-overlay{position:absolute;inset:0;background:rgba(0,0,0,.58);backdrop-filter:blur(2px)}
.tpqa-dialog{position:relative;width:min(920px,96vw);height:min(760px,92vh);background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.tpqa-close{position:absolute;top:8px;right:10px;z-index:5;width:38px;height:38px;border:0;background:#fff;border-radius:50%;font-size:30px;line-height:32px;cursor:pointer;box-shadow:0 2px 12px rgba(0,0,0,.13)}
.tpqa-frame{width:100%;height:100%;border:0;opacity:0;transition:opacity .18s ease;background:#fff}
.tpqa-frame.is-visible{opacity:1}
.tpqa-loader{position:absolute;inset:0;display:none;align-items:center;justify-content:center;gap:12px;color:#555;background:#fff;z-index:2}
.tpqa-loader.is-visible{display:flex}
.tpqa-spinner{width:26px;height:26px;border:3px solid #ddd;border-top-color:#555;border-radius:50%;animation:tpqa-spin .8s linear infinite}
.tpqa-no-scroll{overflow:hidden!important}
@keyframes tpqa-spin{to{transform:rotate(360deg)}}

body.teepluz-quick-add-frame-page{margin:0!important;background:#fff!important;overflow-x:hidden}
.teepluz-quick-add-frame-page header,.teepluz-quick-add-frame-page footer,.teepluz-quick-add-frame-page #header,.teepluz-quick-add-frame-page #footer,.teepluz-quick-add-frame-page .header-wrapper,.teepluz-quick-add-frame-page .footer-wrapper{display:none!important}
.tpqa-frame-content{box-sizing:border-box;max-width:900px;margin:0 auto;padding:28px 30px 36px;color:#222}
.tpqa-product-summary{display:grid;grid-template-columns:minmax(220px,42%) 1fr;gap:28px;align-items:start;margin-bottom:20px}
.tpqa-product-image img{display:block;width:100%;height:auto;border-radius:8px}
.tpqa-product-info h1{font-size:25px;line-height:1.25;margin:0 42px 10px 0;color:#222}
.tpqa-product-info .price{font-size:20px;margin-bottom:10px}
.tpqa-purchase-form form.cart{margin:0!important}
.tpqa-purchase-form .quantity{margin-bottom:10px}
.tpqa-purchase-form button.single_add_to_cart_button{min-height:46px;width:100%;margin-top:8px}
.tpqa-success{text-align:center;max-width:620px;margin:40px auto;padding:20px}
.tpqa-success-icon{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 14px;border-radius:50%;background:#16884a;color:#fff;font-size:28px;font-weight:700}
.tpqa-success h2{margin:0 0 22px;font-size:25px}
.tpqa-success-product{display:flex;align-items:center;gap:14px;text-align:left;background:#f7f7f7;border-radius:8px;padding:12px;margin-bottom:20px}
.tpqa-success-product img{width:76px;height:76px;object-fit:cover;border-radius:6px}
.tpqa-success-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tpqa-success-actions .tpqa-continue{grid-column:1/-1}
.tpqa-success-actions .button{margin:0!important;text-align:center;display:flex;align-items:center;justify-content:center;min-height:44px}
.tpqa-frame-error{padding:40px;text-align:center}

@media(max-width:640px){
    .tpqa-modal{padding:0;align-items:flex-end}
    .tpqa-dialog{width:100vw;height:92vh;border-radius:16px 16px 0 0}
    .tpqa-frame-content{padding:22px 16px 30px}
    .tpqa-product-summary{grid-template-columns:110px 1fr;gap:15px;margin-bottom:15px}
    .tpqa-product-info h1{font-size:18px;margin-right:34px}
    .tpqa-product-info .price{font-size:17px}
    .tpqa-success{margin:15px auto;padding:15px 0}
}
