.shop-main{padding:38px 0 90px}.shop-breadcrumb{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);margin-bottom:22px}.shop-breadcrumb a{color:var(--muted);font-weight:600}.shop-breadcrumb a:hover{color:var(--accent)}.shop-breadcrumb span{opacity:.6}.shop-breadcrumb b{color:var(--ink);font-weight:700}.shop-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:30px;flex-wrap:wrap}.shop-head h1{font-size:30px;margin:0;letter-spacing:-1px}.shop-head p{margin:6px 0 0;color:var(--muted);font-size:13.5px}.shop-count-pill{background:#f5f2f6;color:var(--accent-2);font-weight:800;font-size:12px;padding:7px 14px;border-radius:20px}.shop-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:90px 20px;color:var(--muted);font-size:13px}.shop-spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:shop-spin .8s linear infinite}@keyframes shop-spin{to{transform:rotate(360deg)}}.shop-empty{border:1.5px dashed var(--line);border-radius:var(--radius);padding:80px 24px;text-align:center;display:none}.shop-empty.is-visible{display:block}.shop-empty-icon{font-size:44px;margin-bottom:14px;opacity:.5}.shop-empty h2{font-size:19px;margin:0 0 8px}.shop-empty p{color:var(--muted);font-size:13.5px;margin:0 0 24px}.cart-layout{display:grid;grid-template-columns:1fr 360px;gap:28px;align-items:start}.cart-list{display:flex;flex-direction:column;gap:14px}.cart-line{display:grid;grid-template-columns:92px 1fr auto auto auto;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px}.cart-line-img{width:92px;height:100px;border-radius:13px;overflow:hidden;background:linear-gradient(145deg,#e9dce9,#c4a7c8);flex:none}.cart-line-img img{width:100%;height:100%;object-fit:cover;display:block}.cart-line-info a{font-size:14.5px;font-weight:700;color:var(--ink);display:block;margin-bottom:5px}.cart-line-info a:hover{color:var(--accent)}.cart-line-info small{color:var(--muted);font-size:11.5px}.cart-line-info small.cart-line-variant{display:block;color:var(--ink);font-weight:600;margin-bottom:3px}.cart-line-info .cart-line-warn{display:block;color:#c65b5b;font-size:11.5px;font-weight:700;margin-top:5px}.cart-line-price{font-weight:800;font-size:14px;white-space:nowrap;text-align:center}.cart-line-price del{display:block;font-weight:500;font-size:11px;color:#aaa}.cart-qty{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:13px;overflow:hidden;height:42px;flex-shrink:0}.cart-qty button{width:36px;height:100%;border:0;background:#fff;font-size:16px;cursor:pointer;color:var(--ink);transition:.15s}.cart-qty button:hover{background:#f7f3fa;color:var(--accent)}.cart-qty button:disabled{opacity:.35;cursor:not-allowed}.cart-qty input{width:34px;height:100%;border:0;border-inline:1px solid var(--line);text-align:center;font:inherit;font-size:13px;font-weight:800;background:#fff}.cart-line-remove{width:38px;height:38px;border-radius:50%;border:0;background:#faf4f4;color:#c65b5b;font-size:15px;cursor:pointer;display:grid;place-items:center;transition:.15s}.cart-line-remove:hover{background:#f6dede}.cart-line.out-of-stock{opacity:.6}.cart-line.out-of-stock .cart-qty{display:none}.cart-toolbar{display:flex;justify-content:space-between;align-items:center;margin-top:6px}.cart-clear-btn{background:none;border:0;color:var(--muted);font-size:12.5px;font-weight:700;cursor:pointer}.cart-clear-btn:hover{color:#c65b5b}.summary-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px;position:sticky;top:100px}.summary-card h3{margin:0 0 18px;font-size:16px}.summary-row{display:flex;justify-content:space-between;align-items:center;font-size:13.5px;padding:9px 0;color:var(--muted)}.summary-row b{color:var(--ink);font-weight:700}.summary-row.discount b{color:#1f9d55}.summary-row.total{border-top:1.5px solid var(--line);margin-top:8px;padding-top:16px;font-size:15px}.summary-row.total b{color:var(--ink);font-size:20px;font-weight:900}.coupon-form{display:flex;gap:8px;margin:16px 0}.coupon-form input{flex:1;height:46px;border:1.5px solid var(--line);border-radius:12px;padding:0 14px;font:inherit;font-size:13px;outline:0;background:#fdfcfb}.coupon-form input:focus{border-color:var(--accent);background:#fff}.coupon-form button{height:46px;padding:0 18px;border:0;border-radius:12px;background:var(--ink);color:#fff;font-weight:700;font-size:12.5px;cursor:pointer}.coupon-form button:hover{background:var(--accent)}.coupon-msg{font-size:12px;margin-bottom:10px;line-height:1.8}.coupon-msg.ok{color:#1f9d55}.coupon-msg.err{color:#c65b5b}.coupon-applied{display:flex;align-items:center;justify-content:space-between;background:#f6f1fb;border:1px dashed var(--accent);border-radius:12px;padding:10px 14px;font-size:12.5px;font-weight:700;color:var(--accent-2);margin:16px 0}.coupon-applied button{background:none;border:0;color:#c65b5b;font-size:16px;cursor:pointer;line-height:1}.summary-card .btn{width:100%;justify-content:center;border:0;cursor:pointer;margin-top:6px}.summary-note{font-size:11px;color:var(--muted);text-align:center;margin-top:14px;line-height:1.8}.mobile-cart-bar{display:none}.mobile-checkout-bar{display:none}.checkout-layout{display:grid;grid-template-columns:1fr 380px;gap:28px;align-items:start}.checkout-steps{display:flex;gap:10px;margin-bottom:26px;flex-wrap:wrap}.checkout-step{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--muted)}.checkout-step b{width:24px;height:24px;border-radius:50%;background:#f0eef2;color:var(--muted);display:grid;place-items:center;font-size:11px}.checkout-step.active{color:var(--ink)}.checkout-step.active b{background:var(--accent);color:#fff}.checkout-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px;margin-bottom:20px}.checkout-card h2{font-size:16px;margin:0 0 20px;display:flex;align-items:center;gap:8px}.checkout-card h2 b{width:26px;height:26px;border-radius:50%;background:#f5f2f6;color:var(--accent-2);display:grid;place-items:center;font-size:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group.full{grid-column:1/-1}.form-group label{font-size:12.5px;font-weight:700;color:var(--ink)}.form-group input,.form-group textarea,.form-group select{height:48px;border:1.5px solid var(--line);border-radius:12px;padding:0 14px;font:inherit;font-size:13.5px;outline:0;background:#fdfcfb;transition:border-color .15s,box-shadow .15s;color:var(--ink)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(178,0,237,.10);background:#fff}.form-group textarea{height:auto;min-height:88px;padding:12px 14px;resize:vertical;font-family:inherit}.form-group .field-err{color:#c65b5b;font-size:11.5px}.pay-options{display:grid;gap:10px}.pay-option{display:flex;align-items:center;gap:12px;border:1.5px solid var(--line);border-radius:14px;padding:14px 16px;cursor:pointer;transition:.15s}.pay-option:hover{border-color:var(--accent)}.pay-option input{accent-color:var(--accent);width:17px;height:17px}.pay-option span{font-size:13.5px;font-weight:700}.pay-option small{display:block;color:var(--muted);font-size:11px;font-weight:400;margin-top:2px}.pay-option:has(input:checked){border-color:var(--accent);background:#faf5fd}.address-list{display:grid;gap:10px}.address-card{display:flex;align-items:flex-start;gap:12px;border:1.5px solid var(--line);border-radius:14px;padding:14px 16px;cursor:pointer;transition:.15s}.address-card:hover{border-color:var(--accent)}.address-card input{accent-color:var(--accent);width:17px;height:17px;margin-top:3px}.address-card b{display:block;font-size:13.5px;font-weight:700}.address-card span{display:block;color:var(--accent-2);font-size:11.5px;font-weight:700;margin-top:3px}.address-card small{display:block;color:var(--muted);font-size:11.5px;margin-top:4px;line-height:1.7}.address-card:has(input:checked){border-color:var(--accent);background:#faf5fd}.address-card-new b{color:var(--accent-2)}.order-review{display:flex;flex-direction:column;gap:12px;margin-bottom:6px;max-height:260px;overflow:auto;padding-left:2px}.order-review-line{display:flex;align-items:center;gap:12px;font-size:12.5px}.order-review-line img{width:46px;height:50px;border-radius:9px;object-fit:cover;flex:none;background:#eee}.order-review-line b{flex:1;font-weight:700}.order-review-line b small{display:block;color:var(--muted);font-weight:500;font-size:11px;margin-top:2px}.order-review-line span{color:var(--muted);white-space:nowrap}.checkout-alert{background:#fff0f0;color:#b42318;border:1px solid #ffd4d4;border-radius:12px;padding:12px 16px;font-size:13px;margin-bottom:18px;line-height:1.8}.checkout-submit-btn{width:100%;justify-content:center;border:0;cursor:pointer;background:var(--accent);color:#fff;font-size:15px;box-shadow:0 15px 30px rgba(178,0,237,.28);height:54px}.checkout-submit-btn:hover{background:var(--accent-2)}.checkout-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.checkout-submit-btn.is-loading::after{content:"..."}.order-success{max-width:560px;margin:20px auto;text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:60px 40px;box-shadow:var(--shadow)}.order-success-icon{width:78px;height:78px;border-radius:50%;background:#e9f9ef;color:#1f9d55;display:grid;place-items:center;font-size:36px;margin:0 auto 22px}.order-success h1{font-size:24px;margin:0 0 10px}.order-success p{color:var(--muted);font-size:14px;line-height:1.9;margin:0 0 8px}.order-success .order-number{display:inline-block;background:#f5f2f6;color:var(--accent-2);font-weight:800;padding:8px 18px;border-radius:20px;margin:14px 0 26px;font-size:13px}.order-success-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.wishlist-toolbar{display:flex;justify-content:flex-end;margin-bottom:18px}.compare-table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.compare-table{border-collapse:collapse;width:100%;min-width:560px}.compare-table th,.compare-table td{border-bottom:1px solid var(--line);padding:14px 16px;text-align:center;vertical-align:top;font-size:13px}.compare-table tr:last-child th,.compare-table tr:last-child td{border-bottom:0}.compare-row-label{position:sticky;right:0;background:var(--surface);text-align:right !important;font-weight:700;color:var(--ink);white-space:nowrap;min-width:140px;box-shadow:-1px 0 0 var(--line)}.compare-row-head .compare-row-label{background:var(--surface)}.compare-col{min-width:190px;position:relative;padding-top:34px !important}.compare-remove{position:absolute;top:10px;left:10px;width:26px;height:26px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--muted);font-size:12px;cursor:pointer;display:grid;place-items:center;transition:.15s}.compare-remove:hover{color:#c65b5b;border-color:#f3c6c6}.compare-thumb{display:block;height:130px;border-radius:14px;overflow:hidden;position:relative;background:linear-gradient(145deg,#d7c6cf,#8c7183);margin-bottom:10px}.compare-thumb img{width:100%;height:100%;object-fit:cover}.compare-outstock{position:absolute;bottom:8px;left:8px;font-size:10px;background:#3a3540;color:#fff;padding:5px 9px;border-radius:8px}.compare-name{display:block;font-size:13.5px;font-weight:700;color:var(--ink);margin-bottom:8px;line-height:1.5}.compare-name:hover{color:var(--accent)}.compare-price{margin-bottom:10px}.compare-price strong{font-size:13px}.compare-price del{font-size:10px;color:#aaa;margin-inline-start:6px}.compare-addcart{width:100%;font-size:12px;padding:9px}@media(max-width:960px){.cart-layout,.checkout-layout{grid-template-columns:1fr}.summary-card{position:static}.form-grid{grid-template-columns:1fr}.cart-line{grid-template-columns:70px 1fr;grid-template-areas:"img info" "img qty" "img price";row-gap:10px}.cart-line-img{grid-area:img;width:70px;height:80px}.cart-line-info{grid-area:info}.cart-qty{grid-area:qty}.cart-line-price{grid-area:price;text-align:right}.cart-line-remove{position:absolute;top:10px;left:10px}.cart-line{position:relative;padding-left:52px}.cart-qty{height:44px}.cart-qty button{width:44px;font-size:18px}.cart-qty input{width:40px;font-size:14px}.cart-line-remove{width:44px;height:44px;font-size:16px}.cart-toolbar{flex-wrap:wrap;gap:12px}.cart-clear-btn,.cart-toolbar .text-link{padding:10px 2px;font-size:13px}.coupon-form button{min-width:64px}.cart-main{padding-bottom:86px}.mobile-cart-bar.is-visible{display:flex;align-items:center;gap:14px;position:fixed;right:0;left:0;bottom:0;z-index:900;background:#fff;border-top:1px solid var(--line);box-shadow:0 -8px 24px rgba(20,10,25,.08);padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.mobile-cart-bar-total{flex:1;display:flex;flex-direction:column;gap:2px;font-size:11.5px;color:var(--muted)}.mobile-cart-bar-total b{font-size:16px;font-weight:900;color:var(--ink)}.mobile-cart-bar .btn{width:auto;flex:none;margin:0;padding:0 22px;height:46px;display:flex;align-items:center}.checkout-main{padding-bottom:86px}.mobile-checkout-bar.is-visible{display:flex;align-items:center;gap:14px;position:fixed;right:0;left:0;bottom:0;z-index:900;background:#fff;border-top:1px solid var(--line);box-shadow:0 -8px 24px rgba(20,10,25,.08);padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.mobile-checkout-bar-total{flex:1;display:flex;flex-direction:column;gap:2px;font-size:11.5px;color:var(--muted)}.mobile-checkout-bar-total b{font-size:16px;font-weight:900;color:var(--ink)}.mobile-checkout-bar .btn{width:auto;flex:none;margin:0;padding:0 22px;height:46px;display:flex;align-items:center}}@media(max-width:560px){.shop-head h1{font-size:24px}.checkout-card{padding:20px}.order-success{padding:44px 22px}}