
/* /reschfloor_samples_portal/static/src/css/samples_portal.css */
 .sp-badge{display: inline-block; background: #506070; color: #fff; font-size: 10px; font-weight: 700; letter-spacing: 0.5px; padding: 2px 6px; border-radius: 3px; margin-left: 6px; vertical-align: middle; line-height: 1.4;}.sp-badge-kk{background: #7a8a9a;}.sp-empty{text-align: center; padding: 60px 20px; color: #888;}.sp-empty p{margin: 16px 0; font-size: 16px;}.sp-free-info{display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 20px; align-items: center;}.sp-free-badge{display: inline-flex; align-items: center; gap: 4px; background: #e7ebef; color: #506070; font-size: 13px; padding: 6px 12px; border-radius: 6px; font-weight: 500;}.sp-free-badge-kk{background: #f0e6d6; color: #7a6a4a;}.sp-free-badge-vip{background: #d4edda; color: #155724;}.sp-extra-hint{font-size: 12px; color: #999;}.sp-table-wrap{overflow-x: auto;}.sp-table{width: 100%; border-collapse: collapse;}.sp-table thead th{font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; color: #888; padding: 8px 12px; border-bottom: 2px solid #e7ebef;}.sp-row{background: #e7ebef; border-bottom: 2px solid #fff;}.sp-row td{padding: 10px 12px; vertical-align: middle;}.sp-img-cell{width: 60px;}.sp-name-cell{font-weight: 500; font-size: 14px;}.sp-price-cell{text-align: right; font-weight: 600; font-size: 14px; white-space: nowrap;}.sp-price-free{color: #4caf50; font-weight: 600;}.sp-action-cell{text-align: center;}.sp-remove-btn{background: none; border: none; cursor: pointer; color: #999; padding: 4px; border-radius: 4px; transition: color .15s, background .15s;}.sp-remove-btn:hover{color: #e53935; background: rgba(229,57,53,.08);}.sp-qty-cell{text-align: center;}.sp-qty-wrap{display: inline-flex; align-items: center; gap: 0; border: 1px solid #ccc; border-radius: 6px; overflow: hidden;}.sp-qty-btn{width: 32px; height: 32px; border: none; background: #f5f7f9; color: #333; font-size: 16px; font-weight: 600; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background .15s; user-select: none; -webkit-user-select: none;}.sp-qty-btn:hover{background: #e7ebef;}.sp-qty-btn:active{background: #d0d6dc;}.sp-qty-value{width: 36px; text-align: center; font-size: 14px; font-weight: 600; color: #333; border-left: 1px solid #ccc; border-right: 1px solid #ccc; line-height: 32px;}.sp-btn-checkout{display: inline-flex; align-items: center; gap: 8px;}@media (min-width: 992px){.ws-pricing-card .ws-action-buttons{flex-direction: row !important; flex-wrap: wrap !important;}.ws-pricing-card .ws-action-buttons .ws-btn-cart{flex: 1 1 100%; width: 100%;}.ws-pricing-card .ws-action-buttons #wsAddToInquiry, .ws-pricing-card .ws-action-buttons #wsAddToSample{flex: 1 1 0; min-width: 0;}}.ws-pricing-card .sp-guest-sample-note{flex: 1 1 100%; margin: 4px 0; font-size: 0.8125rem; line-height: 1.45; color: var(--ws-gray-600, #475569); text-align: center;}.ws-pricing-card .sp-guest-sample-link{display: inline-block; padding: 14px 4px; margin: -14px 0; color: var(--ws-primary, #023859); font-weight: 600; text-decoration: underline; text-underline-offset: 3px;}.ws-pricing-card .sp-guest-sample-link:hover{color: var(--ws-primary-hover, #012840);}#wsAddToSample.sp-btn-loading{opacity: 0.6; pointer-events: none;}.sp-modal-hint{color: #666; font-size: 14px; margin-bottom: 12px;}.sp-modal-select-all{padding: 8px 0; border-bottom: 1px solid #e7ebef; margin-bottom: 8px;}.sp-modal-select-all label{display: flex; align-items: center; gap: 8px; cursor: pointer;}.sp-modal-items{max-height: 400px; overflow-y: auto;}.sp-modal-item{display: flex; align-items: center; gap: 10px; padding: 8px 4px; cursor: pointer; border-radius: 4px; transition: background .1s;}.sp-modal-item:hover{background: #f5f7f9;}.sp-modal-item input[type="checkbox"]{flex-shrink: 0;}.sp-modal-item span{font-size: 14px;}.sp-project-sample-btn{border-color: #506070 !important; color: #506070 !important;}.sp-project-sample-btn:hover{background: #506070 !important; color: #fff !important;}.sp-toast{position: fixed; bottom: 24px; left: 50%; transform: translateX(-50%) translateY(80px); background: #333; color: #fff; padding: 12px 24px; border-radius: 8px; font-size: 14px; z-index: 10000; opacity: 0; transition: transform .3s ease, opacity .3s ease; pointer-events: none;}.sp-toast.sp-toast-visible{transform: translateX(-50%) translateY(0); opacity: 1;}@media (max-width: 768px){.sp-free-info{flex-direction: column; align-items: flex-start;}}