/* Cart page, empty cart, 404 (Bob's board, 7 Oct 2026). Phone rules first; tokens match the product page. */
.al-cart,.al-empty,.al-404,.al-more{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;color:#111;-webkit-font-smoothing:antialiased}
.al-cart *,.al-empty *,.al-404 *{box-sizing:border-box}

/* The theme's wrappers step aside */
body.woocommerce-cart .shoptimizer-cart-wrapper{display:block;margin:0;padding:0}
body.woocommerce-cart .shoptimizer-cart-wrapper form.woocommerce-cart-form,body.woocommerce-cart .shoptimizer-cart-wrapper .cart-collaterals{float:none;width:auto;max-width:none;margin:0;padding:0;border:0;background:none;box-shadow:none}
body.woocommerce-cart .entry-content,body.woocommerce-cart .entry-content>.woocommerce{max-width:none}
body.woocommerce-cart .archive-header{display:none}

/* Title row */
.al-cart{padding:8px 0 28px}
.al-cart__head{display:flex;align-items:baseline;gap:10px;margin:0 0 14px}
body .al-cart h1.al-cart__title{margin:0;font-size:24px;line-height:1.15;font-weight:800;letter-spacing:-.4px;color:#111}
.al-cart__count{font-size:14px;color:#6b7185}
.al-cart__keep{margin-left:auto;font-size:14px;font-weight:500;color:#4d5aa1;text-decoration:none;white-space:nowrap;padding:10px 0}
.al-cart__keep:hover{text-decoration:underline}

/* Steps */
.al-steps{display:flex;align-items:center;gap:8px;list-style:none;margin:0 0 18px;padding:0;font-size:12px;line-height:1;font-weight:600;color:#6b7185}
.al-steps li{display:flex;align-items:center;gap:6px;margin:0;padding:0;white-space:nowrap}
.al-steps li+li{flex:1}
.al-steps li+li::before{content:"";flex:1;min-width:14px;height:2px;border-radius:2px;background:#d9dce8}
.al-steps__dot{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#e9ebf3;color:#6b7185;font-size:11px;font-weight:700}
.al-steps li.is-active{color:#111}
.al-steps li.is-active .al-steps__dot{background:#5b6bbd;color:#fff}

/* Item cards */
.al-cart__items{display:block;margin:0;border:0;background:none}
.al-cart__item{display:flex;gap:12px;padding:14px;margin:0 0 12px;background:#fff;border:1px solid #e3e7f3;border-radius:14px}
.al-cart__thumb{flex:none;width:72px}
.al-cart__thumb img{display:block;width:72px;height:72px;object-fit:cover;border-radius:10px;margin:0}
.al-cart__body{flex:1;min-width:0}
.al-cart__name{font-size:15px;line-height:1.35;font-weight:600;color:#111;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.al-cart__name a{color:inherit;text-decoration:none}
.al-cart__name a:hover{color:#4d5aa1}
.al-cart__meta{list-style:none;margin:4px 0 0;padding:0;font-size:13px;line-height:1.45;color:#6b7185}
.al-cart__meta li{margin:0;padding:0;overflow-wrap:anywhere}
.al-cart__row{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:12px}
.al-cart__price{flex:none;text-align:right;line-height:1.25;white-space:nowrap}
.al-cart__price strong{display:block;font-size:17px;font-weight:700;color:#111}
.al-cart__unit{display:block;font-size:12.5px;color:#6b7185;min-height:0}
.al-cart__unit:empty{display:none}
.al-cart__unit del{color:#8a8fa3;opacity:1;margin-left:2px}
.al-cart__unit ins{text-decoration:none;background:none}
.al-cart__qty{flex:none}
.al-cart__row{flex-wrap:wrap}
.al-cart__remove{margin-top:2px}
.al-cart__remove a.remove{display:inline-flex;align-items:center;width:auto;height:44px;min-width:44px;padding:0;margin:0 0 -12px;border:0;border-radius:0;background:none!important;font-size:13px;font-weight:400;line-height:1;color:#6b7185!important;text-decoration:underline;text-indent:0;position:static}
.al-cart__remove a.remove::before,.al-cart__remove a.remove::after{content:none!important;display:none!important}
.al-cart__remove a.remove:hover{color:#111!important}

/* Stepper */
.al-step{display:inline-flex;align-items:stretch;height:36px;border:1px solid #dedede;border-radius:9px;background:#fff;overflow:hidden}
.al-step__btn{appearance:none;-webkit-appearance:none;width:36px;height:auto;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:#fff;color:#111;font:500 18px/1 Inter,sans-serif;cursor:pointer;box-shadow:none}
.al-step__btn:hover{background:#f6f7fc}
.al-step .quantity{display:flex;margin:0;padding:0;border:0;width:auto;height:auto;float:none}
.al-step .quantity .quantity-nav,.al-step .quantity .plus,.al-step .quantity .minus,.al-step .quantity button{display:none!important}
.al-step input.qty{width:38px;height:34px;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:#fff;box-shadow:none;text-align:center;font:600 16px/1 Inter,sans-serif;color:#111;-moz-appearance:textfield;appearance:textfield}
.al-step input.qty::-webkit-outer-spin-button,.al-step input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.al-cart__one .quantity{display:none}
.al-cart__one::after{content:"Qty 1";font-size:13px;color:#6b7185}

/* Coupon: one line, always visible. "Update cart" is pressed by the script, not by the buyer. */
.al-cart__actions{display:block;margin:4px 0 0;padding:0;border:0}
.al-cart__coupon{display:flex;gap:8px;margin:0;padding:0;float:none;width:auto}
.al-cart__coupon #coupon_code{flex:1;min-width:0;width:auto;height:48px;margin:0;padding:0 14px;border:1px solid #dedede;border-radius:9px;background:#fff;box-shadow:none;font:400 16px/1.2 Inter,sans-serif;color:#111;float:none}
.al-cart__coupon #coupon_code:focus{border-color:#5b6bbd;outline:2px solid rgba(91,107,189,.25);outline-offset:0}
.al-cart__coupon button.al-cart__apply{flex:none;width:auto;height:48px;min-height:0;margin:0;padding:0 20px;border:1.5px solid #5b6bbd;border-radius:10px;background:#fff;color:#4d5aa1;font:600 15px/1 Inter,sans-serif;text-transform:none;letter-spacing:0;box-shadow:none;float:none}
.al-cart__coupon button.al-cart__apply:hover{background:#f6f7fc;color:#4d5aa1}
.al-cart__update{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Summary card */
body.woocommerce-cart .shoptimizer-cart-wrapper .cart-collaterals.al-cart__side{margin:16px 0 0}
.al-sum.cart_totals{float:none;width:auto;margin:0;padding:16px;border:0;border-radius:14px;background:#f6f7fc;box-shadow:none}
.al-sum__rows{margin:0 0 14px}
.al-sum__row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:5px 0;font-size:15px;line-height:1.4;color:#111}
.al-sum__row>span:first-child{color:#444}
.al-sum__row>span:last-child{text-align:right;font-weight:600}
.al-sum__row.cart-discount>span:last-child{color:#2f7d4f}
.al-sum__row.cart-discount a{font-size:12px;font-weight:400;color:#6b7185;margin-left:6px}
.al-sum__row.order-total{margin-top:8px;padding-top:12px;border-top:1px solid #e3e7f3;font-size:18px;font-weight:700}
.al-sum__row.order-total>span:first-child{color:#111}
.al-sum__row.order-total>span:last-child{font-weight:700}
.al-sum__row.order-total strong{font-weight:700}
.al-sum__cur{font-size:13px;font-weight:600;color:#6b7185;margin-left:2px}
.al-sum .wc-proceed-to-checkout{display:flex;flex-direction:column;gap:0;margin:0;padding:0}
.al-sum .wc-proceed-to-checkout>*{order:6;margin-left:0;margin-right:0;max-width:none}
.al-sum .wc-proceed-to-checkout a.checkout-button{order:1;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:52px;min-height:0;margin:0;padding:0 20px;border:0;border-radius:10px;background:#5b6bbd;color:#fff;font:600 16px/1 Inter,sans-serif;text-transform:none;letter-spacing:0;text-decoration:none;box-shadow:0 6px 18px rgba(91,107,189,.25)}
.al-sum .wc-proceed-to-checkout a.checkout-button:hover{background:#4d5aa1;color:#fff}
.al-sum .wc-proceed-to-checkout a.checkout-button::before{content:"";flex:none;width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17 9V7A5 5 0 0 0 7 7v2a3 3 0 0 0-3 3v7a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3v-7a3 3 0 0 0-3-3ZM9 7a3 3 0 0 1 6 0v2H9Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17 9V7A5 5 0 0 0 7 7v2a3 3 0 0 0-3 3v7a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3v-7a3 3 0 0 0-3-3ZM9 7a3 3 0 0 1 6 0v2H9Z'/%3E%3C/svg%3E") center/contain no-repeat}
.al-sum .wc-proceed-to-checkout a.checkout-button::after{content:none}
.al-sum .al-cart__note{order:2;margin:12px 0 0;font-size:13px;line-height:1.4;color:#6b7185;text-align:center}
.al-sum .al-prod__payline{order:3;display:flex;align-items:center;justify-content:center;gap:6px;margin:10px 0 0;min-width:0}
.al-sum .al-prod__payline-label{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6b7185;line-height:1.3;white-space:nowrap;margin-right:2px}
.al-sum .al-prod__payline img{display:block;flex:none;object-fit:contain;opacity:.8;margin:0}
.al-sum .al-prod__payline img.is-logo{width:30px;height:30px;margin:-5px 0}
.al-sum .al-prod__payline img.is-card{width:30px;height:20px;border-radius:3px}
.al-sum .al-prod__payline img.is-mark{width:30px;height:20px;padding:3px 5px;background:#fff;border:1px solid #e3e7f3;border-radius:5px}
.al-sum .al-prod__payline-chip{display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:20px;border-radius:5px;background:#eef0fa;color:#4d5aa1;font-size:10px;font-weight:700;line-height:1}
.al-sum .al-cart__or{order:4;display:none;align-items:center;gap:10px;margin:14px 0 10px;font-size:12px;line-height:1;color:#6b7185}
.al-sum .al-cart__or::before,.al-sum .al-cart__or::after{content:"";flex:1;height:1px;background:#d9dce8}
/* The divider shows only once a wallet button has really drawn itself */
.al-sum .wc-proceed-to-checkout:has(.ppc-button-wrapper [id^="ppc-button"]:not(:empty),[id*="express-checkout-element"]:not(:empty),[class*="express-checkout"] iframe,[class*="payment-request"] iframe) .al-cart__or{display:flex}
.al-sum .wc-proceed-to-checkout .ppc-button-wrapper{order:5;margin:0 0 8px}
.al-sum .wc-proceed-to-checkout p.wcpay-express-checkout-button-separator,.al-sum .wc-proceed-to-checkout [id*="express-checkout-button-separator"]{display:none!important}

/* "Add to your order" and the 404's "Popular accounts": the category card, 2 across on phones */
.al-more{margin:28px 0 0;clear:both}
.al-more__title,.al-404__h2{margin:0 0 12px;font-size:18px;line-height:1.3;font-weight:700;color:#111}
.al-more .al-cat__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:0}

/* Game buttons (empty cart, 404) */
.al-games{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.al-games__item{display:flex;align-items:center;gap:10px;min-height:60px;padding:10px 12px;border:1px solid #e3e7f3;border-radius:14px;background:#fff;color:#111;font-size:14px;line-height:1.25;font-weight:600;text-decoration:none}
.al-games__item:hover{border-color:#5b6bbd;color:#111}
.al-games__item img{flex:none;width:40px;height:40px;border-radius:10px;object-fit:cover;margin:0}
.al-btn,.al-empty .button.al-btn{display:inline-flex;align-items:center;justify-content:center;height:48px;min-height:0;padding:0 24px;border:0;border-radius:10px;background:#5b6bbd;color:#fff;font:600 15px/1 Inter,sans-serif;text-transform:none;letter-spacing:0;text-decoration:none;box-shadow:none}
.al-btn:hover,.al-empty .button.al-btn:hover{background:#4d5aa1;color:#fff}

/* Empty cart */
.al-empty{max-width:420px;margin:0 auto;padding:28px 0 36px;text-align:center}
.al-empty.wc-empty-cart-message::before{content:none}
.al-empty__tile{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:16px;background:#eef0fa;color:#5b6bbd}
body .al-empty h1.al-empty__title{margin:16px 0 6px;font-size:22px;line-height:1.2;font-weight:800;letter-spacing:-.3px;color:#111}
.al-empty__text{margin:0 0 18px;font-size:15px;color:#6b7185}
.al-empty .al-games{text-align:left}
.al-empty__cta{margin:18px 0 0;padding:0}
.al-empty__cta .al-btn{width:100%}

/* 404 */
.al-404{max-width:1120px;margin:0 auto;padding:0 0 40px}
.al-404__label{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#4d5aa1}
body .al-404 h1.al-404__title{margin:0 0 10px;font-size:30px;line-height:1.12;font-weight:800;letter-spacing:-.6px;color:#111}
.al-404__text{margin:0 0 18px;max-width:46ch;font-size:16px;line-height:1.5;color:#444}
.al-404__search{display:flex;gap:8px;max-width:560px;margin:0 0 18px}
.al-404__search input[type=search]{flex:1;min-width:0;height:48px;margin:0;padding:0 14px;border:1px solid #dedede;border-radius:9px;background:#fff;box-shadow:none;font:400 16px/1.2 Inter,sans-serif;color:#111;-webkit-appearance:none;appearance:none}
.al-404__search input[type=search]:focus{border-color:#5b6bbd;outline:2px solid rgba(91,107,189,.25);outline-offset:0}
.al-404__search button{flex:none;height:48px;min-height:0;margin:0;padding:0 22px;border:0;border-radius:10px;background:#5b6bbd;color:#fff;font:600 15px/1 Inter,sans-serif;cursor:pointer}
.al-404__search button:hover{background:#4d5aa1}
.al-404__links{display:flex;flex-wrap:wrap;gap:6px 18px;margin:16px 0 0;font-size:14px;font-weight:500}
.al-404__links a{color:#4d5aa1;text-decoration:none;padding:6px 0}
.al-404__links a:hover{text-decoration:underline}
.al-404__h2{margin-top:28px}

/* Two across on a phone: the card stands up (picture on top), keeps the name, the Instant chip and the price */
@media (max-width:767px){
.al-more .al-cat__product-main{flex-direction:column;padding:10px 10px 0}
.al-more .al-cat__product-media{width:100%;height:auto}
.al-more .al-cat__product-img,.al-more .al-cat__product-img--empty{height:auto}
.al-more .al-cat__product-info{padding:8px 2px 2px}
.al-more .al-cat__product-desc,.al-more .al-cat__product-game,.al-more .al-cat__product-type{display:none}
.al-more .al-cat__product-game-row:not(:has(.al-tile-rating)){display:none}
.al-more .al-cat__product-footer{padding:4px 12px 12px}
.al-more .al-cat__product-type-row{flex-wrap:wrap;gap:6px}
.al-more .al-cat__product-type-row .al-cat__product-price{margin-left:0;font-size:14px;white-space:normal;flex-shrink:1}
}
@media (min-width:768px){
.al-more .al-cat__grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.al-404 .al-games{grid-template-columns:repeat(4,minmax(0,1fr))}
body .al-404 h1.al-404__title{font-size:40px}
}
@media (min-width:993px){
.al-404{padding-top:28px}
.al-cart{padding:14px 0 40px}
body .al-cart h1.al-cart__title{font-size:28px}
.al-cart__cols{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
body.woocommerce-cart .shoptimizer-cart-wrapper .cart-collaterals.al-cart__side{margin:0;position:sticky;top:16px}
.al-steps{max-width:420px}
}
