/* Cart-only Bianca presentation. No WooCommerce core or product loop styling. */
.bianca-cart-page { width:100%; background:#F8FAFC; color:#0B3B6F; font-family:var(--bianca-font); }
.bianca-cart-page *, .bianca-cart-page *::before, .bianca-cart-page *::after { box-sizing:border-box; }
.bianca-cart-content { max-width:1400px; width:100%; margin:0 auto; padding:45px 35px 80px; }
.bianca-cart-page__header { margin-bottom:30px; }
.bianca-cart-page__header h1 { margin:0 0 8px; color:#0B3B6F; font-size:clamp(30px,4vw,46px); font-weight:700; line-height:1.1; letter-spacing:-.035em; }
.bianca-cart-page__header p { margin:0; color:#64748B; font-size:14px; }
.bianca-cart-page__grid { display:grid; grid-template-columns:minmax(0,1.85fr) minmax(300px,1fr); align-items:start; gap:40px; }
.bianca-cart-page__items { display:flex; flex-direction:column; gap:16px; margin:0; padding:0; list-style:none; min-width:0; }
.bianca-cart-row { position:relative; display:grid; grid-template-columns:110px minmax(0,1fr); gap:24px; padding:24px; background:#FFFFFF; border-radius:18px; }
.bianca-cart-row__image img { display:block; width:110px; height:135px; max-width:100%; object-fit:cover; border-radius:14px; background:#E8F4F6; }
.bianca-cart-row__details { min-width:0; }
.bianca-cart-row h2 { margin:0 24px 8px 0; color:#0B3B6F; font-size:17px; font-weight:700; line-height:1.4; overflow-wrap:anywhere; }
.bianca-cart-row a { color:#0B3B6F; text-decoration:none; }
.bianca-cart-row__attribute { margin:0 0 3px; color:#64748B; font-size:13px; line-height:1.5; }
.bianca-cart-row__unit { margin:8px 0 14px; color:#64748B; font-size:13px; }
.bianca-cart-row__unit span { color:#0B3B6F; }
.bianca-cart-row__bottom { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; }
.bianca-cart-row__quantity { display:flex; width:120px; height:42px; border:1px solid rgba(11,59,111,.2); border-radius:10px; overflow:hidden; flex-shrink:0; }
.bianca-cart-row__quantity button { width:38px; padding:0; border:0; background:#F8FAFC; color:#0B3B6F; font:inherit; font-size:20px; cursor:pointer; }
.bianca-cart-row__quantity input { display:block; width:42px; min-width:0; margin:0; padding:0; border:0; border-radius:0; background:#FFFFFF; color:#0B3B6F; font:inherit; font-size:14px; text-align:center; appearance:textfield; }
.bianca-cart-row__quantity input::-webkit-inner-spin-button,.bianca-cart-row__quantity input::-webkit-outer-spin-button { appearance:none; margin:0; }
.bianca-cart-row__total { color:#0B3B6F; font-size:17px; white-space:nowrap; }
.bianca-cart-row__remove { position:absolute; top:20px; right:18px; display:grid; place-items:center; width:30px; height:30px; padding:0; border:0; background:transparent; color:#64748B; cursor:pointer; }
.bianca-cart-row__remove:hover { color:#0B3B6F; }
.bianca-cart-page button:disabled { opacity:.45; cursor:default; }
.bianca-cart-page__summary { position:sticky; top:100px; min-width:0; padding:28px; border-radius:18px; background:#FFFFFF; }
.bianca-cart-page__summary h2 { margin:0 0 26px; color:#0B3B6F; font-size:23px; line-height:1.25; font-weight:600; letter-spacing:-.02em; }
.bianca-cart-page__totals > div { display:flex; justify-content:space-between; align-items:baseline; gap:16px; margin-bottom:16px; font-size:14px; }
.bianca-cart-page__totals > div > :last-child { text-align:right; }
.bianca-cart-page__shipping { max-width:180px; color:#64748B; font-size:12px; line-height:1.5; }
.bianca-cart-page__totals > .bianca-cart-page__total { margin:24px 0; padding-top:22px; border-top:1px solid #DCE6EA; font-size:21px; }
.bianca-cart-page__order, .bianca-cart-page__shop { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; min-height:62px; margin:0; padding:15px 18px; border:0; border-radius:14px; background:#0B3B6F; color:#FFFFFF; font:inherit; font-size:16px; font-weight:700; line-height:1.4; text-align:center; text-decoration:none; cursor:pointer; transition:background-color 200ms ease; }
.bianca-cart-page__order:hover, .bianca-cart-page__shop:hover { background:#062D55; color:#FFFFFF; }
.bianca-cart-page__payment { margin:14px 0 0; color:#64748B; text-align:center; font-size:12px; }
.bianca-cart-page__empty { display:flex; align-items:center; flex-direction:column; padding:45px 20px 55px; text-align:center; background:#FFFFFF; border-radius:18px; }
.bianca-cart-page__empty svg { margin-bottom:20px; }
.bianca-cart-page__empty h2 { margin:0 0 10px; color:#0B3B6F; font-size:26px; font-weight:600; }
.bianca-cart-page__empty p { margin:0 0 24px; max-width:420px; color:#64748B; font-size:15px; line-height:1.6; }
.bianca-cart-page__shop { width:auto; max-width:100%; min-height:56px; }
.bianca-cart-page__notices { max-width:1400px; margin:0 auto; padding:0 35px; }
.bianca-cart-page__error { margin:0; padding:14px 0; color:#0B3B6F; font-size:14px; }
.bianca-cart-page__error[hidden] { display:none; }
.bianca-cart-page__coupon { margin:0 0 20px; }
.bianca-cart-page__coupon label { display:block; font-size:13px; margin-bottom:8px; }
.bianca-cart-page__coupon > div { display:flex; gap:8px; }
.bianca-cart-page__coupon input { min-width:0; width:100%; min-height:42px; border:1px solid #DCE6EA; border-radius:8px; padding:8px; font:inherit; }
.bianca-cart-page__coupon button { padding:8px 12px; border:0; border-radius:8px; background:#0B3B6F; color:#FFFFFF; font:inherit; font-size:12px; cursor:pointer; }
.bianca-cart-page__coupon-remove { padding:0 4px; border:0; background:transparent; color:#0B3B6F; font:inherit; cursor:pointer; }
.bianca-cart-page :focus-visible { outline:2px solid #0B3B6F; outline-offset:3px; }
@media(max-width:1024px) { .bianca-cart-page__grid { grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr); gap:24px; } .bianca-cart-row { padding:20px; gap:16px; } .bianca-cart-page__summary { padding:22px; } }
@media(max-width:768px) { .bianca-cart-content { padding:30px 18px 50px; } .bianca-cart-page__grid { grid-template-columns:minmax(0,1fr); gap:24px; } .bianca-cart-page__summary { position:static; } .bianca-cart-row { grid-template-columns:85px minmax(0,1fr); padding:18px; gap:14px; } .bianca-cart-row__image img { width:85px; height:108px; border-radius:10px; } .bianca-cart-row h2 { font-size:14px; } .bianca-cart-row__quantity { width:108px; height:38px; } .bianca-cart-row__quantity button { width:32px; } .bianca-cart-row__total { font-size:15px; } .bianca-cart-row__remove { top:14px; right:12px; } .bianca-cart-page__notices { padding:0 18px; } }
@media(max-width:380px) { .bianca-cart-row { padding:14px; grid-template-columns:70px minmax(0,1fr); gap:10px; } .bianca-cart-row__image img { width:70px; height:90px; } }