#cart-modal{width:min(1040px,96vw)}
#cart-modal[open]{display:flex;flex-direction:column;overflow:hidden}
#cart-modal>.modal-top{flex-shrink:0}
#cart-modal>.modal-body{overflow:auto;overscroll-behavior:contain;min-height:0}
#cart-footer{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px 28px calc(18px + env(safe-area-inset-bottom));border-top:1px solid #eadfee;background:#fff}
#cart-footer .btn{width:auto;min-width:260px;margin:0}
.cart-footer-total span{display:block;font-size:13px;color:#8d7296}.cart-footer-total strong{display:block;font-size:22px;color:#663477;line-height:1.8}
#cart-modal>.modal-body{display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:24px;background:#fdfbfe}
#cart-modal .modal-top{padding-block:20px}
#cart-list{min-width:0}
#cart-modal .cart-row{display:grid;grid-template-columns:88px minmax(0,1fr);gap:18px;padding:22px 0;margin:0;border-bottom:1px solid #eadfed;align-items:start}
#cart-modal .cart-row:first-child{padding-top:0}
#cart-modal .cart-row img{width:88px;height:105px;background:linear-gradient(#f9f1fc,#ede0f3);border:1px solid #eaddee;border-radius:18px;padding:6px;object-fit:contain}
#cart-modal .cart-row strong{font-size:17px;line-height:1.9;color:#482452}
.cart-size{display:inline-block;border:1px solid #e2cee9;background:#f7edf9;color:#70447e;border-radius:8px;padding:2px 10px;margin:8px 0;font-size:14px}
#cart-modal .cart-item-info>small{display:block;color:#7c6387;font-size:14px}
.cart-item-tools{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:16px}
#cart-modal .qty{display:flex;gap:0;border:1px solid #dfcbe8;border-radius:12px;overflow:hidden;background:#fff;direction:ltr}
#cart-modal .qty button{border-radius:0;width:42px;min-height:42px;height:42px;background:#fff;color:#75418a;font-size:22px}
#cart-modal .qty button:disabled{opacity:.3;cursor:not-allowed}
#cart-modal .qty span{min-width:38px;text-align:center;font-size:17px;font-weight:700}
#cart-modal .remove{font-size:14px;color:#995873;min-height:44px;padding:6px}
.cart-line-total{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:14px;color:#7c6387;padding-top:14px;margin:14px 0 0;border-top:1px dashed #eadfed}
.cart-line-total b{font-size:18px;color:#5e326d}.cart-line-total b small{font-size:13px}
#cart-summary{position:sticky;top:0;background:#fff;border:1px solid #e5d4ed;border-radius:20px;box-shadow:0 8px 28px #65357408;padding:22px;min-width:0;display:flex;flex-direction:column}
#cart-summary .cart-total{order:0}#cart-money{order:1}#cart-summary>.notice{order:2}
#cart-summary .cart-total{padding:0 0 16px;border-bottom:1px solid #eee4f2;gap:12px;flex-wrap:wrap;font-size:15px}
#cart-summary .cart-total strong{font-size:16px}#cart-clear{font-size:13px;color:#9b5974;min-height:40px;padding:4px}
#cart-summary .notice{font-size:13px!important;margin:16px 0;color:#7f648a;background:#faf5fc;padding:12px;border-right-width:2px;line-height:1.9}
.cart-breakdown{margin:18px 0 0}
.cart-breakdown>div{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:8px 0;font-size:14px;color:#7b6386}
.cart-breakdown dd{margin:0;white-space:nowrap;color:#563063;font-weight:700;font-size:16px}
.cart-breakdown small{font-size:12px;font-weight:400}
.cart-breakdown .cart-grand-total{display:block;border-top:1px solid #e9dbee;margin-top:12px;padding-top:16px}
.cart-grand-total dt{font-size:14px}.cart-grand-total dd{font-size:28px;color:#713b86;margin-top:5px;line-height:1.8}.cart-grand-total small{font-size:15px}
.cart-shipping-note{font-size:13px;line-height:1.9;color:#8b7095;margin:10px 0 18px}
.cart-item-warning{font-size:14px;color:#a04c68;line-height:1.9;background:#fff1f4;padding:9px 12px;border-radius:10px}
#start-checkout{min-height:52px;font-size:16px;border-radius:14px;margin-top:6px;line-height:1.8}
#cart-recommendations{grid-column:1/-1;margin-top:8px}
.cart-empty{grid-column:1/-1;text-align:center;padding:46px 20px;max-width:520px;margin:auto}
.cart-empty>svg{width:72px;height:72px;padding:14px;background:#f1e4f7;border-radius:22px;color:#8c589f;margin-bottom:14px}
.cart-empty h3{font-size:25px;margin:5px 0;color:#583263}.cart-empty p{font-size:16px;color:#8c7097;line-height:2;margin:12px 0 24px}
#cart-modal .modal-body:has(#cart-summary[hidden]){grid-template-columns:1fr}
@media(max-width:760px){
 #cart-modal{width:calc(100% - 16px)}#cart-modal>.modal-body{display:block;padding:18px}
 #cart-modal .cart-row{grid-template-columns:70px minmax(0,1fr);gap:13px;padding:20px 0}#cart-modal .cart-row img{width:70px;height:90px;border-radius:14px}
 #cart-modal .cart-row strong{font-size:16px}#cart-modal .cart-item-info>small{font-size:13px}
 #cart-modal .qty{grid-column:auto}#cart-modal .qty button{width:38px;min-height:42px}#cart-modal .qty span{min-width:33px}
 .cart-item-tools{gap:12px;margin-top:12px}.cart-line-total{font-size:13px}.cart-line-total b{font-size:17px}
 #cart-summary{position:static;padding:18px;margin-top:22px;border-radius:18px}
 .cart-breakdown>div{font-size:15px}.cart-breakdown dd{font-size:16px}.cart-grand-total dd{font-size:28px}
 #cart-footer{padding:14px 18px calc(14px + env(safe-area-inset-bottom));gap:14px;flex-wrap:wrap}
 #cart-footer .btn{min-width:0;flex:1;font-size:15px;padding:12px;white-space:normal}
 .cart-footer-total{min-width:125px}.cart-footer-total strong{font-size:19px}
 #cart-summary .notice{font-size:14px!important}.cart-shipping-note{font-size:14px}
 .cart-empty{padding:34px 12px}.cart-empty h3{font-size:23px}.cart-empty p{font-size:15px}
}
@media(max-width:420px){
 #cart-footer{display:block;padding:12px 16px calc(12px + env(safe-area-inset-bottom))}
 #cart-footer .cart-footer-total{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}
 #cart-footer .btn{width:100%;min-height:48px;padding:10px 12px;font-size:16px}
 #cart-footer .cart-footer-total strong{font-size:20px}
}
