/* Customer bet slip: shared by full pages and the progressively enhanced sheet. */
.cart-toolbar,.cart-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.cart-toolbar{padding:12px 0 16px;font-size:.875rem}
.cart-toolbar strong{color:#12312b;margin-left:5px}
.cart-toolbar a,.cart-section-heading a{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-weight:700}
.cart-surface{max-width:780px;margin-inline:auto}
.cart-section-heading{margin-bottom:12px;font-size:.875rem}
.cart-pill{display:inline-grid;place-items:center;min-width:24px;height:24px;margin-left:5px;padding:0 5px;border-radius:6px;background:#e5f2cf;color:#12312b}
.cart-line{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 16px;margin-bottom:10px;padding:16px;border:1px solid #dce4db;border-radius:12px;background:#fff}
.cart-selection{grid-column:1/-1;padding-right:32px;min-width:0}
.cart-selection small{font-size:.75rem;color:#52675d}
.cart-line h2{margin:6px 0 10px;font-size:.9375rem;line-height:1.4;overflow-wrap:anywhere}
.cart-choice{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:.875rem}
.cart-choice>strong{overflow-wrap:anywhere}
.cart-price{font-weight:800;color:#163f33;white-space:nowrap;font-variant-numeric:tabular-nums}
.cart-remove{position:absolute;right:5px;top:5px}
.cart-icon-button{display:inline-grid;place-items:center;width:44px;height:44px;border:0;border-radius:8px;background:transparent;color:#496259;cursor:pointer;flex-shrink:0}
.cart-icon-button:hover{background:#e7eee3;color:#12312b}
.cart-icon-button:focus-visible{outline:3px solid #659331;outline-offset:2px}
.cart-stake-form{min-width:0;max-width:250px}
.cart-stake-form label,.cart-confirmed-stake>span,.cart-return>span{display:block;margin-bottom:5px;font-size:.75rem;color:#52675d}
.cart-stake-control{display:flex;gap:6px}
.capivara .cart-stake-control .form-control{width:110px;min-width:0;min-height:44px;height:44px;padding:9px 10px;font-size:1rem;border-radius:7px}
.capivara .cart-stake-control .btn{min-height:44px;padding:8px 10px;font-size:.75rem;border-radius:7px}
.cart-stake-control .btn:disabled{opacity:.5}
.cart-return{align-self:end;text-align:right;padding-bottom:8px}
.cart-return strong,.cart-confirmed-stake strong{display:block;font-size:.9375rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.cart-change{margin:10px 0 0;padding:10px;border-radius:8px;background:#fff4d7;color:#694b0c;font-size:.8125rem}
.cart-clear{margin:10px 0 16px;border:1px solid #dce4db;border-radius:10px;background:#fff;text-align:center}
.cart-clear>summary{display:flex;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px;font-size:.8125rem;font-weight:650;cursor:pointer}
.cart-clear form{padding:0 12px 14px}
.cart-clear p{font-size:.875rem;margin-bottom:10px}
.cart-checkout{padding:16px;background:#f8faf5;border:1px solid #dce4db;border-radius:12px}
.cart-totals{display:grid;gap:12px;margin:0 0 16px}
.cart-totals>div{display:flex;justify-content:space-between;align-items:baseline;gap:14px}
.cart-totals dt{font-size:.875rem;font-weight:500}
.cart-totals dt small{display:block;font-size:.6875rem;color:#52675d}
.cart-totals dd{margin:0;text-align:right;font-size:1.125rem;font-weight:800;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.cart-hint,.cart-rules p{font-size:.75rem;line-height:1.6;color:#52675d}
.cart-rules{margin:12px 0}
.cart-rules>summary{cursor:pointer;font-size:.8125rem;min-height:44px;display:flex;align-items:center;text-decoration:underline}
.cart-submit-bar{display:grid;gap:10px;text-align:center}
.cart-submit-bar>.btn{width:100%;min-height:48px}
.cart-submit-bar>.cart-review-button{display:flex;justify-content:space-between;gap:10px}
.cart-submit-bar>.cart-review-button strong{color:#12312b;white-space:nowrap;font-size:.9375rem}
.cart-submit-bar>a{display:flex;align-items:center;justify-content:center;min-height:44px;font-size:.875rem}
.cart-checkout .confirmation-check{font-size:.875rem;line-height:1.5;margin:0}
.cart-empty-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 16px;border-radius:18px;background:#e5f2cf;font-size:24px;color:#12312b}
.capivara .mobile-navigation a>.cart-nav-count{position:absolute;top:3px;left:calc(50% + 7px);display:grid;place-items:center;width:auto;min-width:18px;height:18px;padding:0 4px;background:#153f33;color:#fff;border:2px solid #fff;border-radius:9px;font-size:10px;font-weight:800}
.mobile-navigation>a{position:relative}
.bet-cart-launcher{position:fixed;z-index:40;right:24px;bottom:24px;display:flex;align-items:center;gap:12px;min-height:52px;padding:12px 20px;border-radius:12px;background:#c6ee57;color:#12312b;font-weight:800;box-shadow:0 4px 24px #12312b26;text-decoration:none}
.bet-cart-launcher [data-cart-count]{display:grid;place-items:center;min-width:26px;height:26px;border-radius:6px;background:#12312b;color:#fff}
.bet-panel{position:fixed;inset:auto 0 0 auto;width:min(100%,520px);height:min(860px,94dvh);max-height:94dvh;max-width:100%;margin:0;padding:0;border:0;border-radius:18px 18px 0 0;background:#f3f6f1;color:#12312b;box-shadow:0 -8px 60px #061e2040;overflow:hidden}
.bet-panel[open]{display:flex;flex-direction:column;animation:bet-panel-in .22s ease-out}
.bet-panel::backdrop{background:#03181199;backdrop-filter:blur(2px)}
.bet-panel-grip{width:36px;height:4px;flex-shrink:0;margin:9px auto 0;border-radius:2px;background:#b6c6b8}
.bet-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 12px 8px 18px;border-bottom:1px solid #dce4db;flex-shrink:0}
.bet-panel-header h2{margin:0;font-size:1.125rem;line-height:1.4}
.bet-panel-heading{display:flex;align-items:center;gap:8px;min-width:0}
.bet-panel-count{display:inline-grid;place-items:center;min-width:25px;height:25px;padding:0 6px;border-radius:50%;background:#c6ee57;color:#12312b;font-size:.8125rem;font-weight:800}
.bet-panel-count[hidden]{display:none}
.bet-panel-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:14px 16px max(18px,env(safe-area-inset-bottom));scrollbar-gutter:stable}
.bet-panel-body>[data-bet-panel-content]{padding:0;margin:0}
.bet-panel-body .back-link{display:none}
.bet-panel-body .page-heading{margin:0 0 12px}
.bet-panel-body .page-heading p{font-size:.75rem;line-height:1.5}
.bet-panel-body .market-fixture-title{padding:12px;gap:10px;margin-bottom:16px}
.bet-panel-body .market-fixture-title .team-cell{font-size:.8125rem;gap:8px}
.bet-panel-body .market-ticket{display:flex;flex-direction:column;gap:0}
.bet-panel-body .market-options,.bet-panel-body .market-ticket-summary{width:100%}
.bet-panel-body .market-panel{padding:12px;margin-bottom:14px;scroll-margin-top:12px}
.bet-panel-body fieldset.market-panel>legend{font-size:.875rem;margin-bottom:10px}
.bet-panel-body fieldset.market-panel>legend small{font-size:.6875rem}
.bet-panel-body .market-ticket-summary{position:static}
.bet-panel-body .market-panel h2{font-size:1rem;margin-bottom:12px}
.bet-panel-body .market-summary{margin:10px 0}
.bet-panel-body .market-summary>div{padding:8px 0}
.bet-panel-body .market-ticket-summary .btn{margin-top:14px;min-height:48px}
.bet-panel-body .market-navigation{gap:6px;margin-bottom:12px}
.bet-panel-body .market-navigation a{padding:6px 12px;font-size:.8125rem}
.bet-panel-body .market-three,.bet-panel-body .market-score-options{gap:7px}
.bet-panel-body .market-option>span{padding:8px 6px}
.bet-panel-body .app-alert{margin-bottom:12px;padding:12px;font-size:.8125rem;scroll-margin-top:10px}
.bet-panel-body .cart-toolbar{padding:0 0 10px}
.bet-panel[data-phase="cart"] .bet-panel-body{padding-bottom:calc(96px + env(safe-area-inset-bottom))}
.bet-panel[data-phase="review"] .bet-panel-body{padding-bottom:calc(146px + env(safe-area-inset-bottom))}
.bet-panel .cart-submit-bar{position:absolute;bottom:0;left:0;right:0;padding:12px 16px max(12px,env(safe-area-inset-bottom));background:#f3f6f1;border-top:1px solid #dce4db;z-index:1}
.bet-panel .cart-submit-bar>a{min-height:36px}
.bet-panel-progress{position:relative;z-index:2}
.bet-panel-body .empty-state{padding:28px 16px}
.bet-panel-body .empty-state h2{font-size:1.125rem}
.bet-panel-body .empty-state p{font-size:.875rem}
.bet-panel-progress{margin:0;padding:12px 18px max(12px,env(safe-area-inset-bottom));background:#e5f2cf;font-size:.875rem;font-weight:650}
.bet-panel-message{padding:28px 8px;text-align:center}
.bet-panel-message p{font-size:.875rem}
.bet-panel-message .btn{margin:8px}
.bet-panel-open{overflow:hidden}
.market-extra{margin-bottom:14px}
.market-extra>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:10px 14px;border:1px solid #dce4db;border-radius:9px;background:#fff;font-size:.875rem;font-weight:700;cursor:pointer}
.market-extra>summary::after{content:'+';font-size:20px}
.market-extra[open]>summary::after{content:'−'}
.market-extra[open]>summary{margin-bottom:16px}
.capivara .mobile-navigation a>[data-cart-count][hidden],[data-cart-count][hidden],.bet-cart-launcher[hidden],.bet-panel-progress[hidden]{display:none}
@keyframes bet-panel-in{from{transform:translateY(100%)}to{transform:translateY(0)}}
@media(max-width:767px){.bet-panel{width:100%;height:92dvh;max-height:92dvh}.bet-cart-launcher{display:none}.cart-toolbar{padding-top:0}}
@media(max-width:360px){.cart-line{padding:12px;gap:12px 8px}.cart-stake-control{gap:4px}.capivara .cart-stake-control .form-control{width:90px}.cart-return strong{font-size:.8125rem}.bet-panel-body{padding-inline:12px}}
@media(prefers-reduced-motion:reduce){.bet-panel[open]{animation:none}}

/* Coupon theme stays scoped to the sheet; other customer pages remain unchanged. */
.bet-panel[data-coupon="true"]{--ink:#f3faf5;background:#09281f;color:#f3faf5}
.bet-panel[data-coupon="true"] .bet-panel-header{border-color:#284c3d}
.bet-panel[data-coupon="true"] .bet-panel-grip{background:#658777}
.bet-panel[data-coupon="true"] .bet-panel-header h2{font-size:1.0625rem}
.bet-panel[data-coupon="true"] .cart-icon-button{color:#d0e2d6}
.bet-panel[data-coupon="true"] .cart-icon-button:hover{background:#255542}
.bet-panel[data-coupon="true"] .cart-toolbar{padding-bottom:4px;font-size:.8125rem}
.bet-panel[data-coupon="true"] :is(.cart-toolbar strong,.cart-return strong,.cart-confirmed-stake strong,.cart-price){color:#f3faf5}
.bet-panel[data-coupon="true"] :is(.cart-toolbar a,.cart-section-heading a,.cart-submit-bar>a){color:#d2efb2}
.bet-panel[data-coupon="true"] .cart-section-heading{margin-bottom:12px;border-bottom:1px solid #284c3d}
.bet-panel[data-coupon="true"] .cart-section-heading>strong{padding:12px 0;border-bottom:3px solid #c6ee57;color:#c6ee57;font-size:.8125rem}
.bet-panel[data-coupon="true"] .cart-pill{display:none}
.bet-panel[data-coupon="true"] .cart-line{padding:14px;background:#123d31;border-color:#255542;border-radius:10px;gap:10px 14px}
.bet-panel[data-coupon="true"] .cart-line h2{font-size:.9375rem}
.bet-panel[data-coupon="true"] .cart-choice{font-size:.9375rem}
.bet-panel[data-coupon="true"] :is(.cart-selection small,.cart-stake-form label,.cart-confirmed-stake>span,.cart-return>span,.cart-totals dt,.cart-totals dt small,.cart-hint,.cart-rules p){color:#bcd2c4}
.capivara .bet-panel[data-coupon="true"] .cart-stake-control .form-control{background:#08291f;color:#f3faf5;border-color:#547c66}
.capivara .bet-panel[data-coupon="true"] .cart-stake-control .form-control:focus{border-color:#c6ee57;box-shadow:0 0 0 2px #c6ee5733}
.capivara .bet-panel[data-coupon="true"] .btn-outline-dark{background:transparent;color:#e1efe6;border-color:#547c66}
.bet-panel[data-coupon="true"] .cart-clear{background:transparent;border-color:#255542}
.bet-panel[data-coupon="true"] .cart-checkout{background:#123d31;border-color:#255542}
.bet-panel[data-coupon="true"] .cart-totals>div+div{padding-top:12px;border-top:1px solid #3e6250}
.bet-panel[data-coupon="true"] .cart-totals dd{font-size:1.0625rem;color:#f3faf5}
.bet-panel[data-coupon="true"] .cart-submit-bar{background:#09281f;border-color:#284c3d}
.bet-panel[data-coupon="true"] .cart-rules>summary{color:#c8dece}
.bet-panel[data-coupon="true"] .empty-state{background:#123d31;border-color:#255542}
.bet-panel[data-coupon="true"] .empty-state p{color:#bcd2c4}
.bet-panel[data-coupon="true"] .app-alert{color:#12312b}
.bet-panel[data-coupon="true"] .app-alert-error{color:#a23221}
.bet-panel[data-coupon="true"] .bet-panel-progress{color:#12312b}
