/* Cart and checkout artboards. Keep these rules off the shared course pages. */
body.ux-school .ux-commerce{background:var(--ux-panel);color:#fff;padding:calc(38 * var(--ux-u)) 0 calc(58 * var(--ux-u));min-height:calc(465 * var(--ux-u))}
body.ux-school .ux-commerce>.ux-shell{width:calc(850 * var(--ux-u))}
body.ux-school .ux-commerce-heading{margin:0 0 calc(38 * var(--ux-u))}
body.ux-school .ux-continue{display:inline-flex;gap:12px;align-items:center;font-weight:700;font-size:calc(15 * var(--ux-u));text-decoration:none;margin:0 0 calc(10 * var(--ux-u))}
body.ux-school .ux-continue>span{font-size:26px;line-height:1}
body.ux-school .ux-cart-title{display:flex;gap:calc(16 * var(--ux-u));align-items:baseline;flex-wrap:wrap}
body.ux-school .ux-commerce .ux-cart-title h1{display:flex;gap:calc(11 * var(--ux-u));align-items:center;color:#fff;font-size:calc(25 * var(--ux-u));line-height:1.2;margin:0;text-align:left}
body.ux-school .ux-commerce .ux-cart-title .icon{width:calc(24 * var(--ux-u));height:calc(24 * var(--ux-u))}
body.ux-school .ux-cart-count{font-size:calc(14 * var(--ux-u));font-weight:600}
body.ux-school .ux-commerce .cart-layout{grid-template-columns:minmax(0,558fr) minmax(0,268fr);gap:calc(28 * var(--ux-u));align-items:start}
body.ux-school .ux-commerce .cart-layout>div{min-width:0}
body.ux-school .ux-commerce .cart-panel{background:transparent;border:0;border-radius:0;padding:0}
body.ux-school .ux-commerce .cart-item{grid-template-columns:calc(100 * var(--ux-u)) minmax(0,1fr);gap:calc(18 * var(--ux-u));padding:calc(12 * var(--ux-u));background:var(--ux-purple);border:0;border-radius:calc(8 * var(--ux-u));margin:0 0 calc(17 * var(--ux-u));min-height:calc(126 * var(--ux-u))}
body.ux-school .ux-commerce .cart-item:last-child{margin-bottom:0}
body.ux-school .ux-commerce .cart-item>img{width:100%;height:calc(102 * var(--ux-u));border-radius:calc(8 * var(--ux-u));object-fit:cover}
body.ux-school .ux-commerce .cart-item>div{display:flex;flex-direction:column;min-width:0}
body.ux-school .ux-commerce .cart-item h3{font-size:calc(23 * var(--ux-u));line-height:1.2;margin:calc(4 * var(--ux-u)) 0 calc(6 * var(--ux-u));overflow-wrap:break-word}
body.ux-school .ux-commerce .cart-item-meta{font-size:calc(16 * var(--ux-u));line-height:1.3;color:#fff;font-weight:600;margin:0 0 calc(6 * var(--ux-u))}
body.ux-school .ux-commerce .cart-item-actions{margin-top:auto;align-items:flex-end;gap:6px;flex-wrap:wrap}
body.ux-school .ux-commerce .cart-item-price{display:flex;align-items:baseline;gap:calc(7 * var(--ux-u));flex-wrap:wrap;color:#fff}
body.ux-school .ux-commerce .cart-item-price del{font-size:calc(18 * var(--ux-u));font-weight:400}
body.ux-school .ux-commerce .cart-item-price strong{font-size:calc(23 * var(--ux-u));font-weight:700!important;line-height:1.2}
body.ux-school .ux-commerce .remove-item{margin-left:auto;margin-bottom:-8px;padding:8px 2px;min-height:44px;color:#fff;font-size:calc(16 * var(--ux-u));text-decoration:underline;font-weight:600}
body.ux-school .ux-commerce .order-summary{position:static;background:var(--ux-purple);border:0;border-radius:calc(8 * var(--ux-u));padding:calc(20 * var(--ux-u));color:#fff;min-width:0}
body.ux-school .ux-commerce .order-summary h2{font-size:calc(16 * var(--ux-u));line-height:1.3;margin:0 0 calc(17 * var(--ux-u))}
body.ux-school .ux-summary-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:calc(16 * var(--ux-u));line-height:1.35}
body.ux-school .ux-summary-row>span:last-child{text-align:right;overflow-wrap:break-word}
body.ux-school .ux-summary-discount{color:var(--ux-yellow)}
body.ux-school .ux-commerce .total-line{border:0;margin:calc(74 * var(--ux-u)) 0 calc(31 * var(--ux-u));padding:0;align-items:baseline;gap:12px;font-size:calc(16 * var(--ux-u))}
body.ux-school .ux-commerce .total-line strong{color:#fff;font-size:inherit;font-weight:700!important}
body.ux-school .ux-commerce .total-line [data-subtotal]{text-align:right}
/* The global CMS theme also styles link buttons with !important. Keep the approved commerce artboard local. */
body.ux-school .ux-commerce .order-summary .button{min-height:44px;padding:8px 12px;background:var(--ux-panel)!important;color:#fff;border-radius:4px!important;font-size:calc(14 * var(--ux-u));font-weight:600}
body.ux-school .ux-commerce .order-summary .button:disabled,body.ux-school .ux-commerce .order-summary .button[aria-disabled=true]{opacity:.65;cursor:not-allowed}
body.ux-school .ux-commerce .summary-note{color:#fff;font-size:12px;line-height:1.4;margin:12px 0 0;opacity:.9}
body.ux-school .ux-commerce .ux-package-discount{color:var(--ux-yellow);background:transparent;padding:0;text-align:left;opacity:1}
body.ux-school .ux-commerce .empty-cart{padding:30px 18px;background:var(--ux-purple);color:#fff;border-radius:8px}
body.ux-school .ux-commerce .empty-cart h3{font-size:23px;color:#fff}
body.ux-school .ux-commerce .empty-cart p,body.ux-school .ux-commerce .empty-cart a{color:#fff}
body.ux-school .ux-checkout .ux-cart-title h1{font-size:calc(36 * var(--ux-u))}
body.ux-school .ux-checkout .ux-commerce-heading{margin-bottom:calc(30 * var(--ux-u))}
body.ux-school .ux-checkout .cart-layout{grid-template-columns:minmax(0,519fr) minmax(0,268fr);gap:calc(35 * var(--ux-u))}
body.ux-school .ux-checkout-details h2{font-size:calc(23 * var(--ux-u));margin:0 0 calc(18 * var(--ux-u));line-height:1.25}
body.ux-school .ux-checkout-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(24 * var(--ux-u))}
body.ux-school .ux-checkout-fields label{display:block;color:#fff;font-size:calc(16 * var(--ux-u));line-height:1.3;margin:0 0 calc(10 * var(--ux-u))}
body.ux-school .ux-checkout-fields input{width:100%;max-width:100%;min-height:44px;padding:8px 14px;color:#fff;background:var(--ux-purple);border:1px solid transparent;border-radius:4px;font-size:16px;line-height:1.4}
body.ux-school .ux-checkout-fields input::placeholder{color:#e8def3;opacity:1}
body.ux-school .ux-checkout-fields input:focus-visible{outline:3px solid var(--ux-yellow);outline-offset:3px}
body.ux-school .ux-checkout-note{font-size:13px;line-height:1.45;max-width:480px;margin:20px 0 12px;opacity:.9}
body.ux-school .ux-back-cart{font-size:14px;color:#fff;text-decoration:underline}
body.ux-school .ux-checkout .ux-coupon{margin:24px 0 0;padding:20px 0 0;border-top:1px solid #ffffff40;min-width:0}
body.ux-school .ux-coupon>label{display:block;font-weight:700;font-size:16px;margin-bottom:10px}
body.ux-school .ux-coupon-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
body.ux-school .ux-coupon-controls input{box-sizing:border-box;min-width:0;width:100%;min-height:44px;border:1px solid #ffffff80;border-radius:4px;background:#fff;color:#2b163b;padding:8px 10px;font-size:16px;line-height:1.4}
body.ux-school .ux-coupon-controls input:focus-visible{outline:3px solid var(--ux-yellow);outline-offset:2px}
body.ux-school .ux-commerce .ux-coupon-status{color:var(--ux-yellow);opacity:1;overflow-wrap:anywhere}
body.ux-school .ux-coupon-remove{display:block;min-height:44px;padding:8px 0;border:0;background:transparent;color:#fff;font-size:14px;text-decoration:underline;cursor:pointer}
body.ux-school .ux-coupon-remove[hidden]{display:none}
body.ux-school .ux-coupon-remove:disabled{opacity:.65;cursor:not-allowed}
body.ux-school .ux-checkout .total-line{margin-top:24px}
@media(max-width:900px){
  body.ux-school .ux-commerce>.ux-shell{width:calc(100% - 48px)}
  body.ux-school .ux-commerce .cart-layout{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:20px}
  body.ux-school .ux-commerce .cart-item{grid-template-columns:80px minmax(0,1fr);gap:12px}
  body.ux-school .ux-commerce .cart-item h3{font-size:20px}
  body.ux-school .ux-commerce .cart-item-meta{font-size:14px}
  body.ux-school .ux-commerce .cart-item-price strong{font-size:20px}
  body.ux-school .ux-commerce .cart-item-price del{font-size:15px}
}
@media(max-width:760px){
  body.ux-school .ux-commerce{min-height:0;padding:30px 0 40px}
  body.ux-school .ux-commerce .cart-layout{grid-template-columns:1fr;gap:24px}
  body.ux-school .ux-commerce-heading{margin-bottom:25px}
  body.ux-school .ux-commerce .ux-cart-title h1{font-size:28px}
  body.ux-school .ux-commerce .ux-cart-count{font-size:14px}
  body.ux-school .ux-commerce .cart-item{grid-template-columns:90px minmax(0,1fr);padding:12px}
  body.ux-school .ux-commerce .cart-item>img{height:96px}
  body.ux-school .ux-commerce .cart-item h3{margin-top:0}
  body.ux-school .ux-commerce .order-summary{padding:22px}
  body.ux-school .ux-commerce .order-summary h2,body.ux-school .ux-summary-row,body.ux-school .ux-commerce .total-line{font-size:17px}
  body.ux-school .ux-commerce .total-line{margin:32px 0 24px}
  body.ux-school .ux-commerce .order-summary .button{font-size:16px}
  body.ux-school .ux-checkout-details h2{font-size:23px}
  body.ux-school .ux-checkout .ux-cart-title h1{font-size:34px}
  body.ux-school .ux-checkout-fields label{font-size:16px}
}
@media(max-width:520px){
  body.ux-school .ux-commerce>.ux-shell{width:calc(100% - 36px);max-width:calc(100% - 36px)}
  body.ux-school .ux-continue{font-size:16px}
  body.ux-school .ux-cart-title{gap:10px}
  body.ux-school .ux-commerce .cart-item{grid-template-columns:72px minmax(0,1fr);gap:12px}
  body.ux-school .ux-commerce .cart-item>img{height:82px}
  body.ux-school .ux-commerce .cart-item h3{font-size:19px}
  body.ux-school .ux-commerce .cart-item-meta{font-size:13px}
  body.ux-school .ux-commerce .cart-item-actions{align-items:baseline}
  body.ux-school .ux-commerce .cart-item-price{width:100%;gap:5px}
  body.ux-school .ux-commerce .cart-item-price strong{font-size:19px}
  body.ux-school .ux-commerce .remove-item{font-size:15px}
  body.ux-school .ux-checkout-fields{grid-template-columns:1fr;gap:20px}
}
