.cart-page{padding:clamp(3rem,7vh,5rem) 0 clamp(4rem,8vh,6rem);background:var(--panel);min-height:70vh}.cart-header{margin-bottom:2rem;max-width:1100px;padding:0 1.5rem;margin-inline:auto}.cart-header h1{font-size:clamp(1.8rem,3vw,2.6rem);font-weight:700;letter-spacing:-.025em;line-height:1.1;margin-bottom:.4rem;text-wrap:balance}.cart-sub{color:var(--ink-soft);font-size:.95rem}.empty-card{background:var(--bg);border-radius:12px;padding:clamp(2rem,5vw,4rem) 1.5rem;text-align:center;max-width:480px;margin:0 auto}.empty-icon{width:56px;height:56px;color:var(--ink-soft);margin-bottom:1.25rem;opacity:.6}.empty-card h2{font-size:1.3rem;font-weight:700;margin-bottom:.5rem;letter-spacing:-.02em}.empty-card p{color:var(--ink-soft);margin-bottom:1.5rem;font-size:.95rem}.cart-grid{display:grid;grid-template-columns:1fr 360px;gap:2rem;max-width:1100px;padding:0 1.5rem;margin-inline:auto;align-items:start}@media(max-width:880px){.cart-grid{grid-template-columns:1fr;gap:1.5rem}}.cart-items{background:var(--bg);border-radius:12px;padding:.25rem 1.5rem 1.5rem}.col-headers{display:grid;grid-template-columns:64px 1fr 130px 90px 28px;gap:1rem;padding:1rem 0 .65rem;border-bottom:1px solid var(--line);margin-bottom:.25rem}@media(max-width:720px){.col-headers{display:none}}.col-h{font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.col-h-product{grid-column:1 / span 2}.col-h-qty{text-align:center}.col-h-price{text-align:right}.item-list{list-style:none;padding:0;margin:0}.cart-row{display:grid;grid-template-columns:64px 1fr 130px 90px 28px;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--line)}.cart-row:last-child{border-bottom:none}@media(max-width:720px){.cart-row{grid-template-columns:56px 1fr 28px;grid-template-areas:"thumb body remove" "thumb qty   price";gap:.4rem .85rem;padding:1rem 0}.row-thumb{grid-area:thumb}.row-body{grid-area:body}.row-qty{grid-area:qty;justify-self:start}.row-price{grid-area:price;justify-self:end;align-self:end}.row-remove{grid-area:remove;align-self:start}}.row-thumb{display:block;width:64px;height:64px;border-radius:6px;background:var(--panel);overflow:hidden}@media(max-width:720px){.row-thumb{width:56px;height:56px}}.row-thumb img{width:100%;height:100%;object-fit:contain;padding:4px;transition:transform .3s}.row-thumb:hover img{transform:scale(1.05)}.row-body{min-width:0}.row-name{font-size:.9rem;font-weight:600;letter-spacing:-.015em;color:var(--ink);line-height:1.3;display:block;margin-bottom:.2rem;transition:color .2s}.row-name:hover{color:var(--accent)}.row-tag{font-size:.74rem;color:var(--ink-soft);margin-bottom:.2rem}.row-unit{font-size:.74rem;color:var(--ink-soft)}.row-qty{display:inline-flex;align-items:center;background:var(--panel);border-radius:999px;padding:3px;justify-self:center}@media(max-width:720px){.row-qty{justify-self:start}}.row-qty .qty-btn{width:28px;height:28px;border-radius:50%;background:transparent;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;transition:background .2s,color .2s;cursor:pointer}.row-qty .qty-btn:hover{background:var(--bg);color:var(--accent)}.row-qty .qty-btn svg{width:12px;height:12px;stroke:currentColor;stroke-width:2;fill:none}.qty-input{width:32px;text-align:center;border:none;background:transparent;font-size:.85rem;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums;padding:0;appearance:textfield;-moz-appearance:textfield}.qty-input::-webkit-outer-spin-button,.qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.qty-input:focus{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.row-price{font-size:.95rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;text-align:right}.row-remove{width:28px;height:28px;border-radius:50%;color:var(--ink-soft);display:inline-flex;align-items:center;justify-content:center;transition:background .2s,color .2s;cursor:pointer}.row-remove:hover{background:#b85f3d1a;color:var(--sale)}.row-remove svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.8;fill:none}.continue-link{display:inline-flex;align-items:center;gap:.45rem;margin-top:1.5rem;font-size:.85rem;color:var(--ink-soft);transition:color .2s}.continue-link:hover{color:var(--accent)}.cart-summary{background:var(--bg);border-radius:12px;padding:1.75rem;position:sticky;top:100px}@media(max-width:880px){.cart-summary{position:static}}.sum-title{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:1.25rem}.sum-row{display:flex;justify-content:space-between;align-items:baseline;padding:.5rem 0;font-size:.9rem;color:var(--ink)}.sum-row span{color:var(--ink-soft)}.sum-row strong{font-weight:500;font-variant-numeric:tabular-nums}.sum-grand{border-top:1px solid var(--line);margin-top:.5rem;padding-top:.85rem;font-size:1rem}.sum-grand span{color:var(--ink);font-weight:600}.sum-grand strong{font-weight:700;font-size:1.15rem}.ship-progress{margin:1.25rem 0 1.5rem;padding:1rem;background:var(--accent-soft);border-radius:8px;font-size:.78rem;color:var(--accent-deep)}.ship-progress-bar{margin-top:.6rem;height:4px;background:#4f6b3333;border-radius:999px;overflow:hidden}.ship-progress-bar i{display:block;height:100%;background:var(--accent);transform-origin:left;transform:scaleX(0);transition:transform .4s var(--ease, cubic-bezier(.65, 0, .35, 1))}.checkout-btn{width:100%;background:var(--ink);color:var(--bg);padding:.95rem 1.5rem;border-radius:999px;font-size:.95rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;transition:background .3s,transform .2s;cursor:pointer}.checkout-btn:hover{background:var(--accent);transform:translateY(-1px)}.checkout-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.trust-list{list-style:none;padding:1.25rem 0 0;margin:1.25rem 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.55rem}.trust-list li{display:flex;align-items:center;gap:.55rem;font-size:.78rem;color:var(--ink-soft)}.trust-list svg{color:var(--accent);flex-shrink:0}.btn-primary{display:inline-block;background:var(--ink);color:var(--bg);padding:.85rem 1.75rem;border-radius:999px;font-size:.9rem;font-weight:600;transition:background .2s,transform .2s}.btn-primary:hover{background:var(--accent);transform:translateY(-1px)}
