/* Public Frontend CSS (Final) */
@font-face{font-family:'Yekan';src:url('../fonts/Yekan.woff2') format('woff2'),url('../fonts/Yekan.ttf') format('ttf');font-weight:400;font-style:normal;font-display:swap}
.wcapt-container,.wcapt-container *{font-family:'Yekan',sans-serif!important;box-sizing:border-box}
.wcapt-container{position:relative;padding:20px;direction:rtl;border-radius:8px;background:var(--wcapt-bg);border:1px solid var(--wcapt-line-color);box-shadow:0 4px 10px rgba(0,0,0,.05);font-size:14px;color:var(--wcapt-text)}
.wcapt-table-loader{display:none;position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,.7);z-index:10;border-radius:8px}
.wcapt-table-loader::after{content:'';display:block;position:absolute;top:50%;left:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:50%;border:4px solid #f3f3f3;border-top:4px solid var(--wcapt-btn-bg);animation:spin 1s linear infinite}
.wcapt-container.is-loading .wcapt-table-loader{display:block}
.wcapt-filters-wrapper{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px;align-items:center;padding:10px;border-bottom:1px solid var(--wcapt-line-color);padding-bottom:15px}
.wcapt-search,.wcapt-price-filter{min-width:200px}
.wcapt-search input,.wcapt-price-filter input,.wcapt-qty-input-native,.wcapt-control,.wcapt-qty-input,.wcapt-variation-selector{padding:5px 5px;border:1px solid #ccc;border-radius:5px;font-size:14px;width:100%;max-width:250px;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}
.wcapt-search input:focus,.wcapt-price-filter input:focus,.wcapt-qty-input-native:focus,.wcapt-control:focus,.wcapt-qty-input:focus,.wcapt-variation-selector:focus{border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,.25);outline:none}
.wcapt-price-filter{display:flex;gap:10px;align-items:center}
.wc-btn,.wcapt-price-filter-btn{padding:10px 18px;background:var(--wcapt-btn-bg);color:var(--wcapt-btn-text);border:none;border-radius:5px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s ease-in-out,transform .1s ease;white-space:nowrap}
.wc-btn:hover,.wcapt-price-filter-btn:hover{background:var(--wcapt-btn-bg-hover);transform:translateY(-1px)}
.wc-btn:active,.wcapt-price-filter-btn:active{transform:translateY(0)}
.wcapt-add-to-cart-btn:disabled{background:#ccc!important;color:#888!important;cursor:not-allowed;opacity:.8;transform:none}
.wcapt-add-to-cart-btn .wcapt-loader{display:none;width:16px;height:16px;border:2px solid rgba(255,255,255,.7);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:8px;vertical-align:middle}
.wcapt-add-to-cart-btn.loading .wcapt-loader{display:inline-block}
.wcapt-product-table{width:100%;border-collapse:collapse;margin-top:15px;table-layout:auto;background:#fff;border-radius:6px;overflow:hidden;color:var(--wcapt-text)}
.wcapt-product-table th,.wcapt-product-table td{border:1px solid var(--wcapt-line-color);padding:12px;vertical-align:middle;text-align:inherit}
.wcapt-product-table th{background:var(--wcapt-header-bg);color:var(--wcapt-header-text);font-weight:600;text-align:center;white-space:nowrap}
.wcapt-product-table tbody tr:nth-child(even){background:var(--wcapt-even-row)}
.wcapt-product-table tbody tr:nth-child(odd){background:var(--wcapt-odd-row)}
.wcapt-element{display:block;margin:0 auto}
.wcapt-img-wrapper{display:inline-block}
.wcapt-product-table img{display:block;margin:0 auto;max-width:100%;height:auto;}
.wcapt-ttl-container{width:100%}
.wcapt-title-item,.wcapt-ttl-var-wrapper{display:flex;justify-content:inherit;align-items:inherit}
.wcapt-product-title{font-weight:600;text-decoration:none;transition:color .2s;font-size:15px}
.wcapt-product-title:hover{color:#0056b3;text-decoration:underline}
.wcapt-variation-selector{width:100%}
.wcapt-prod-price{font-weight:700;font-size:15px}
.wcapt-prod-price {
    color: var(--wcapt-price-color);
}
.wcapt-prod-price,
.wcapt-prod-price * {
    font-family: 'Yekan', sans-serif !important;
    background: none !important;
}
.wcapt-prod-price .woocommerce-Price-amount,
.wcapt-prod-price ins .woocommerce-Price-amount {
    color: var(--wcapt-price-color) !important;
}
.wcapt-prod-price ins {
    text-decoration: none !important;
}
.wcapt-prod-price del {
    text-decoration: line-through !important;
    color: inherit !important;
    opacity: 0.7;
}
.wcapt-qty-control{display:flex;align-items:center;justify-content:center;width:100%;height:35px;overflow:hidden}
.wcapt-qty-input{flex-grow:1;text-align:center;padding:5px 0;border:1px solid #ccc;border-radius:4px;font-size:14px;height:35px;margin:0 2px;-moz-appearance:textfield;line-height:normal}
.wcapt-qty-btn{background:#f0f0f0;border:1px solid #ccc;color:#555;width:35px;height:35px;border-radius:4px;font-size:16px;line-height:1;cursor:pointer;transition:background .2s;display:flex;align-items:center;justify-content:center}
.wcapt-stock-text{font-size:13px;color:#6c757d}
.wcapt-discount-text{font-size:16px;color:#dc3545;font-weight:500}
.wcapt-tags-list,.wcapt-cats-list{font-size:13px;color:#6c757d;display:inline-block}
.wcapt-wishlist-btn-wrapper,.wcapt-wishlist-placeholder{font-size:13px;color:#6c757d}
.wcapt-custom-block-content{display:flex;width:100%}
.wcapt-custom-block-content .wcapt-element{flex-shrink:0;flex-grow:1;margin:0}
.wcapt-custom-block-content.flex-direction-column .wcapt-element{width:100%}
.wcapt-custom-block-content.flex-direction-row .wcapt-element{max-width:none}
.wcapt-message{position:fixed;background:#28a745;color:#fff;padding:12px 20px;border-radius:6px;font-size:13px;z-index:9999;display:none;box-shadow:0 6px 15px rgba(0,0,0,.25);transition:opacity .3s ease,transform .3s ease;font-weight:500;width: 80%; max-width: 450px; box-sizing: border-box; text-align: center;}
.wcapt-message.error{background:#dc3545}
.wcapt-loading{padding:15px;background:#f0f0f0;border-radius:6px;text-align:center;margin-top:20px;font-size:15px;color:#555;font-weight:500}
@keyframes spin{to{transform:rotate(360deg)}}
.wcapt-lightbox{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:99999;visibility:hidden;opacity:0;transition:opacity .3s ease,visibility .3s ease}
.wcapt-lightbox.active{visibility:visible;opacity:1}
.wcapt-lightbox-overlay{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer}
.wcapt-lightbox-content{position:relative;max-width:90%;max-height:90%;background:#fff;padding:15px;border-radius:8px;box-shadow:0 0 20px rgba(0,0,0,.5);overflow:hidden;z-index:100000}
.wcapt-lightbox-image{display:block;max-width:100%;max-height:100vh;height:auto;object-fit:contain;margin:0 auto}
.wcapt-lightbox-close{position:absolute;top:10px;right:10px;background:#dc3545;color:#fff;border:none;border-radius:50%;width:30px;height:30px;font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:100001;box-shadow:0 2px 5px rgba(0,0,0,.2);transition:background .2s ease}
.wcapt-lightbox-close:hover{background:#c82333}
body.wcapt-lightbox-active{overflow:hidden}
.wcapt-pagination-wrapper { margin-top: 25px; text-align: center; }
.wcapt-pagination { direction: ltr; }
.wcapt-pagination .page-numbers { display: inline-block; padding: 8px 14px; margin: 0 3px; border: 1px solid var(--wcapt-line-color); border-radius: 5px; background: var(--wcapt-bg); color: var(--wcapt-text); text-decoration: none; transition: background .2s, color .2s; font-size: 14px; }
.wcapt-pagination .page-numbers:hover,
.wcapt-pagination .page-numbers.current { background: var(--wcapt-btn-bg); color: var(--wcapt-btn-text); border-color: var(--wcapt-btn-bg); }
.wcapt-pagination .page-numbers.dots { border: none; background: transparent; padding: 8px 5px; }
@media (max-width:768px){
    .wcapt-container{padding:10px;border-radius:4px}
    .wcapt-filters-wrapper{flex-direction:column;align-items:stretch;gap:10px;margin-bottom:15px;padding:5px;padding-bottom:10px}
    .wcapt-search input,.wcapt-price-filter input,.wc-btn,.wcapt-variation-selector{max-width:100%}
    .wcapt-price-filter{flex-wrap:wrap}
    .wcapt-price-filter input{flex:1}
    .wcapt-price-filter-btn{flex-basis:100%}
    .wcapt-product-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:4px}
    .wcapt-product-table td,
    .wcapt-product-table th { white-space: nowrap; vertical-align: middle; }
    .wcapt-product-table td.wcapt-wrappable-cell { white-space: normal; word-break: break-word; }
    .wcapt-product-table thead th{font-size:13px;padding:8px}
    .wcapt-product-table tbody td{font-size:13px;padding:8px}
    .wcapt-ttl-container{flex-direction:column;align-items:center}
    .wcapt-ttl-var-wrapper{width:100%}
    .wcapt-product-title{font-size:14px}
    .wcapt-prod-price{font-size:14px}
    .wcapt-add-to-cart-btn{padding:8px 12px;font-size:13px}
    .wcapt-stock-text,.wcapt-discount-text,.wcapt-tags-list,.wcapt-cats-list,.wcapt-wishlist-placeholder{font-size:12px}
    .wcapt-custom-block-content{flex-wrap:wrap;justify-content:center;align-items:center}
    .wcapt-custom-block-content .wcapt-element{flex-basis:auto;max-width:100%}
    .wcapt-custom-block-content.flex-direction-row .wcapt-element{flex-basis:48%;margin-bottom:5px}
    .wcapt-custom-block-content.flex-direction-column .wcapt-element{flex-basis:100%}
    .wcapt-qty-input-wrapper, .wcapt-qty-control {width: 100%;}
    .wcapt-qty-input-wrapper input.wcapt-qty-input-native {width: 100%; max-width: 100%;}
}