/* Motivrahmen: card-scoped paint. Page and gaps keep their chosen color.
   Desktop AND mobile use shared fixed coordinates, never local card covers.
   Mobile keeps size and offsets on the stable large viewport, so retracting
   browser chrome cannot change the image crop through cover/percentages.
   Never paint the page, neutral forms or payment areas.
   Apple WebKit uses clipped decorative fixed layers instead of its unsupported
   fixed backgrounds. No page overlay, scroll handler or card-image mutation. */
body.ccg-design-app #primary{
    --ccg-game-image:none;--ccg-game-position:50% 50%;--ccg-game-size:cover;--ccg-game-strength:.65;
    background-image:none;
}
/* Frame light is intentionally independent of action/selection feedback.
   A static, broader halo: no animation, filter or scroll work. */
body:is(.ccg-design-app,.challenger-commerce-neutral){
    --ccg-motif-paint:native;
    --ccg-motif-attachment:fixed;
    --ccg-frame-glow:0 0 0 1px color-mix(in srgb,var(--challenger-personal-accent,var(--challenger-accent)) 55%,transparent),0 0 14px 2px color-mix(in srgb,var(--challenger-personal-accent,var(--challenger-accent)) 48%,transparent),0 0 30px color-mix(in srgb,var(--challenger-personal-accent,var(--challenger-accent)) 28%,transparent),0 6px 24px color-mix(in srgb,var(--challenger-personal-accent,var(--challenger-accent)) 16%,transparent);
}

/* One raw motif per real product. Text has small opaque surfaces instead of
   a picture-wide veil. Address, totals and hosted payment remain neutral. */
body.challenger-commerce-neutral #primary :is(
    ul.products>li.product[class*="ccg-commerce-game-"],
    .woocommerce-cart-form tr.cart_item[class*="ccg-commerce-game-"],
    #order_review tr.cart_item[class*="ccg-commerce-game-"],
    .challenger-product-overview:has(.ccg-product-game-banner[class*="ccg-commerce-game-"])
){
    --ccg-motif-frame:1;
    background-color:var(--ccg-commerce-surface)!important;
    background-image:var(--ccg-motif-background,var(--ccg-game-image,none))!important;
    background-attachment:var(--ccg-motif-attachment,fixed)!important;
    background-position:var(--ccg-game-position,50% 50%)!important;
    background-size:var(--ccg-game-size,cover)!important;
    background-repeat:no-repeat!important;background-blend-mode:normal!important;
    background-clip:padding-box!important;
    border-color:var(--challenger-personal-accent,var(--challenger-accent))!important;
    box-shadow:var(--ccg-frame-glow)!important;
}
/* Explicit viewport coordinates also cover native cart/checkout item rows.
   This mirrors the generated App/product-frame rule. No page overlay and no
   scroll work. Older browsers/assets keep shared fixed, not per-card scroll. */
@supports(width:1lvw) and (height:1lvh){
    @media(max-width:900px),(hover:none) and (pointer:coarse){
        body.challenger-commerce-neutral #primary :is(
            ul.products>li.product[class*="ccg-commerce-game-"],
            .woocommerce-cart-form tr.cart_item[class*="ccg-commerce-game-"],
            #order_review tr.cart_item[class*="ccg-commerce-game-"],
            .challenger-product-overview:has(.ccg-product-game-banner[class*="ccg-commerce-game-"])
        ){
            background-position:var(--ccg-game-stable-position,var(--ccg-game-position,50% 50%))!important;
            background-size:var(--ccg-game-stable-size,var(--ccg-game-size,cover))!important;
        }
    }
}
body.challenger-commerce-neutral #primary ul.products>li.product[class*="ccg-commerce-game-"]{
    border-top:3px solid var(--ccg-game-color)!important;
    overflow:clip;border-radius:var(--challenger-radius,14px)!important;
}
body.challenger-commerce-neutral #primary ul.products>li.product[class*="ccg-commerce-game-"] :is(.woocommerce-loop-product__title,.price,.shop-card-tax-custom){
    box-sizing:border-box;min-width:0;max-width:100%;
    background:var(--ccg-commerce-surface)!important;color:var(--ccg-commerce-ink)!important;
    border:1px solid var(--challenger-border);border-radius:9px;padding:8px 12px!important;
    line-height:1.4!important;white-space:normal;overflow-wrap:anywhere;
}
body.challenger-commerce-neutral #primary :is(ul.products>li.product,.challenger-product-overview) img{border-radius:10px!important}
body.challenger-commerce-neutral #primary .challenger-product-overview :is(.product_title,.price,.woocommerce-product-details__short-description){background:var(--ccg-commerce-surface);color:var(--ccg-commerce-ink);border:1px solid var(--challenger-border);border-radius:10px;padding:8px 12px;overflow-wrap:anywhere}
body.challenger-commerce-neutral #primary .ccg-item-title{box-sizing:border-box;display:inline-block;max-width:100%;padding:7px 10px;border:1px solid var(--challenger-border);border-radius:9px;background:var(--ccg-commerce-surface)!important;color:var(--ccg-commerce-ink)!important;line-height:1.4;white-space:normal;overflow-wrap:anywhere}
body.challenger-commerce-neutral #primary .ccg-item-title>a{color:inherit!important;-webkit-text-fill-color:currentColor!important}
body.challenger-commerce-neutral #primary tr.cart_item[class*="ccg-commerce-game-"] :is(.amount,.product-quantity,dl.variation){background:var(--ccg-commerce-surface)!important;color:var(--ccg-commerce-ink)!important;border-radius:7px;padding:3px 6px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
body.challenger-commerce-neutral #primary tr.cart_item[class*="ccg-commerce-game-"] dl.variation{width:fit-content;max-width:100%}
/* The item description is its own readable block, outside the title.
   Native variation labels must use this surface's ink, not page-muted text. */
body.challenger-commerce-neutral #primary tr.cart_item[class*="ccg-commerce-game-"] .wc-gzd-item-desc{
    box-sizing:border-box;max-width:100%;margin:8px 0;padding:8px 10px;
    background:var(--ccg-commerce-surface)!important;color:var(--ccg-commerce-ink)!important;
    border:1px solid var(--challenger-border);border-radius:9px;line-height:1.45;
}
body.challenger-commerce-neutral #primary tr.cart_item[class*="ccg-commerce-game-"] :is(.wc-gzd-item-desc,dl.variation) :is(p,dt,dd){
    color:var(--ccg-commerce-ink)!important;-webkit-text-fill-color:currentColor!important;opacity:1!important;
}
body.challenger-commerce-neutral #primary tr.cart_item[class*="ccg-commerce-game-"] .amount :is(bdi,.woocommerce-Price-currencySymbol){color:inherit!important;-webkit-text-fill-color:currentColor!important}
body.challenger-commerce-neutral #primary tr.cart_item[class*="ccg-commerce-game-"] .wc-gzd-item-desc p{margin:0!important}
/* The native thumbnail wrapper now contains named title/quantity elements,
   not anonymous text. Use a compact three-part grid without splitting the
   title into pill fragments. This is NOT the three-column order-pay table. */
body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table{table-layout:fixed!important;width:100%!important}
body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table :is(th:first-child,td.product-name){width:72%!important;max-width:none!important}
body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table :is(th:last-child,td.product-total){width:28%!important;max-width:none!important}
body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table .wc-gzd-cart-item-name-wrapper{display:grid!important;grid-template-columns:44px minmax(0,1fr) max-content;gap:6px;align-items:start;width:100%!important;min-width:0!important;line-height:1.45!important}
body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table .wc-gzd-cart-item-thumbnail{display:block!important;float:none!important;width:44px!important;max-width:100%!important;margin:0!important}
body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table .wc-gzd-cart-item-thumbnail img{display:block!important;float:none!important;width:100%!important;height:auto!important;margin:0!important;border-radius:10px!important}
body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table .product-name .ccg-item-title{display:block!important;min-width:0;width:auto!important;padding:4px 6px!important;line-height:1.4!important}
body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table .product-name .product-quantity{display:inline-block!important;width:auto!important;margin:0!important;white-space:nowrap!important}
body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table .product-total{padding-inline:6px!important}
body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table thead th:last-child{font-size:.75rem!important;white-space:nowrap!important;word-break:normal!important;padding-inline:4px!important}
body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table .product-total .amount{font-size:.8125rem;padding-inline:4px}
body.challenger-commerce-neutral #primary tr.cart_item[class*="ccg-commerce-game-"]{transform:none!important}
/* A compact label, not another picture band or oversized inner card. */
body.challenger-commerce-neutral #primary .ccg-game-mark{
    box-sizing:border-box;display:inline-flex!important;align-items:center;
    min-height:0!important;width:auto!important;max-width:100%;padding:4px 9px!important;margin:6px 0!important;
    background:var(--challenger-surface-alt)!important;color:var(--challenger-on-surface-alt,var(--challenger-text))!important;
    -webkit-text-fill-color:currentColor!important;
    border:1px solid var(--challenger-border)!important;border-left:3px solid var(--ccg-game-color,var(--challenger-border))!important;
    border-radius:999px!important;line-height:1.3!important;font-size:11px!important;
}
body.challenger-commerce-neutral #primary .ccg-game-mark>span{color:inherit!important;-webkit-text-fill-color:currentColor!important;font-weight:750}
body.challenger-commerce-neutral #primary :is(.woocommerce-cart-form,#order_review) table.shop_table:has(tr.cart_item[class*="ccg-commerce-game-"]){border-collapse:separate!important;border-spacing:0 8px!important}
body.challenger-commerce-neutral #primary :is(.woocommerce-cart-form,#order_review) tr.cart_item[class*="ccg-commerce-game-"]{border-radius:12px!important;clip-path:inset(0 round 12px);border-left:3px solid var(--ccg-game-color)!important}
body.challenger-commerce-neutral #primary :is(.woocommerce-cart-form,#order_review) tr.cart_item[class*="ccg-commerce-game-"]>td{background:transparent!important}
body.challenger-commerce-neutral #primary #order_review tr.cart_item[class*="ccg-commerce-game-"] .product-name{border-left:3px solid var(--ccg-game-color)!important;padding-left:10px!important}
body.challenger-commerce-neutral #primary :is(.woocommerce-cart-form,#order_review) .product-name dl.variation{display:block!important;width:100%;margin-top:6px!important}
body.challenger-commerce-neutral #primary :is(.woocommerce-cart-form,#order_review) dl.variation dt.variation-Game{display:none!important}
body.challenger-commerce-neutral #primary :is(.woocommerce-cart-form,#order_review) dl.variation dd.variation-Game{float:none!important;width:auto!important;margin:0!important}
body.challenger-commerce-neutral #primary :is(.woocommerce-cart-form,#order_review) dl.variation .ccg-game-mark{margin:2px 0!important}
@media(max-width:768px){
    body.challenger-commerce-neutral #primary .woocommerce-cart-form table.shop_table tr.cart_item[class*="ccg-commerce-game-"]{padding:12px!important;margin:0 0 10px!important;border:1px solid var(--challenger-personal-accent,var(--challenger-accent))!important;border-left:3px solid var(--ccg-game-color)!important}
    body.challenger-commerce-neutral #primary .woocommerce-cart-form tr.cart_item[class*="ccg-commerce-game-"] .product-name{border-left:0!important;padding-left:0!important}
    body.challenger-commerce-neutral #primary .woocommerce-cart-form tr.cart_item[class*="ccg-commerce-game-"] td[data-title]::before{padding:3px 6px;border-radius:6px;background:var(--ccg-commerce-surface)!important;color:var(--ccg-commerce-ink)!important;-webkit-text-fill-color:currentColor!important}
}
@media(max-width:480px){
    /* Preserve native table/header geometry and accessibility. A positioned
       thead can change fixed table column allocation in Chromium. */
    body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table thead th{font-size:.6875rem!important;white-space:normal!important;hyphens:auto;overflow-wrap:anywhere;word-break:normal!important;padding-inline:2px!important}
    body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table thead th:first-child{width:65%!important}
    body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table thead th:last-child{width:35%!important;font-size:.6875rem!important;white-space:normal!important;padding-inline:2px!important}
    body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table td.product-name{width:65%!important}
    body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table td.product-total{width:35%!important;padding-inline:2px!important}
    body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table .product-total .amount{display:inline-block;font-size:.75rem;white-space:nowrap!important}
    body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table .wc-gzd-cart-item-name-wrapper{grid-template-columns:40px minmax(0,1fr);gap:4px 7px}
    body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table .wc-gzd-cart-item-thumbnail{grid-row:1/span 2;width:40px!important}
    body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table .product-name .ccg-item-title{grid-column:2;font-size:.8125rem;word-break:normal!important}
    body.challenger-commerce-neutral.challenger-classic-checkout #primary #order_review table.woocommerce-checkout-review-order-table .product-name .product-quantity{grid-column:2;justify-self:start}
}
/* The grouped plane is generated once for the explicit outer roles. Old
   Collections image layers remain stored but cannot paint a second motif.
   Crucially, do not suppress ::before: it is now the grouped content plane. */
body.ccg-design-app #primary :is(.chc-hero,.chc-friends,.chc-friends-compact,.chc-game-collection)>:is(.chc-background-layer,.chc-folder-background){display:none!important}
body.ccg-design-app #primary :is(.has-collection-background,.has-friends-background)::after{background-image:none!important}

/* Compatibility containers are NOT a second large white card around the
   real game/profile cards. No fields, headings, links or forms are moved. */
body.ccg-design-app #primary .chc-folder-hub:has(.chc-game-collection),
body.ccg-design-app.woocommerce-account #primary .challenger-content-card:has(.challenger-profile-dashboard),
body.ccg-design-app.woocommerce-account #primary .woocommerce-MyAccount-content:has(.challenger-profile-dashboard){background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;padding:0!important}
body.ccg-design-app.woocommerce-account #primary .woocommerce-MyAccount-content:not(:has(.challenger-profile-dashboard)){background:transparent!important;background-image:none!important;color:var(--challenger-on-surface,var(--challenger-text))!important;min-width:0}
body.ccg-design-app.woocommerce-account #primary .challenger-profile-section-head h2{color:var(--challenger-on-page,var(--challenger-text))!important;-webkit-text-fill-color:currentColor!important}
body.ccg-design-app.woocommerce-account #primary .challenger-profile-card :is(h2,p),
body.ccg-design-app.woocommerce-account #primary .challenger-profile-card>span{color:var(--challenger-on-surface,var(--challenger-text))!important;-webkit-text-fill-color:currentColor!important;opacity:1!important}

/* Continuous readable header/body, no miniature title pills. Native heading
   alignment remains authoritative; only the two explicitly centered headings
   need full-width boxes to avoid the former fit-content regression. */
body.ccg-design-app #primary :is(.challenger-next-releases-dashboard,.cps-league-board)>h2{width:100%!important;max-width:100%;text-align:center!important}
body.ccg-design-app #primary :is(.chc-game-collection-copy h3,.chc-game-collection-footer,.chc-hero-copy>h1,.chc-hero-copy>p,.chc-friends h1,.challenger-profile-head h1,.challenger-profile-head p,.challenger-profile-kicker){
    max-width:100%;background:none!important;border:0!important;padding:0!important;
    color:var(--challenger-on-surface,var(--challenger-text))!important;-webkit-text-fill-color:currentColor!important;overflow-wrap:anywhere;
}
body.ccg-design-app #primary :is(.cps-history-head,.cps-history-head h2,.cps-history-head .cps-muted,.cps-history .cps-event){color:var(--challenger-on-surface,var(--challenger-text))!important;-webkit-text-fill-color:currentColor!important;opacity:1!important}
body.ccg-design-app #primary .cps-history-head{gap:12px;flex-wrap:wrap;margin-bottom:16px}
body.ccg-design-app #primary .cps-history .cps-event{padding-block:12px;border-bottom:1px solid var(--challenger-border)}
body.ccg-design-app #primary :is(.chs-settings-card-copy,.chs-command-action-copy,.chs-settings-panel-copy,.chc-friends-heading,.chc-friend-catalog-heading,.chc-hero-copy){min-width:0;overflow-wrap:anywhere}

/* Game modules use their existing surface-aware tokens. Explicit nested
   boundaries retain their own ink, especially mixed white/grey/dark palettes. */
body.ccg-design-app #primary .chs-front-admin :is(.cet-icon-setting,.cet-settings-card .cet-form-grid,.cet-import-report-counts>span){
    --cet-text:var(--challenger-on-inner-surface);--cet-muted:var(--challenger-muted-on-inner-surface);
    --challenger-text:var(--challenger-on-inner-surface);--challenger-muted:var(--challenger-muted-on-inner-surface);
    color:var(--challenger-on-inner-surface)!important;background:var(--challenger-inner-surface)!important;
}
body.ccg-design-app #primary .chs-front-admin .cet-icon-setting :is(label,legend,small,p){color:var(--cet-text)!important;-webkit-text-fill-color:currentColor!important;opacity:1!important}
body.ccg-design-app #primary .cet-month-head :is(h2,h3,span){color:var(--challenger-on-surface-alt,var(--challenger-text))!important;-webkit-text-fill-color:currentColor!important;opacity:1!important}

/* Titles lead the card; long names wrap without overlapping its frame.
   Surface-aware ink is retained for every game and light/dark palette. */
body.challenger-commerce-neutral #primary ul.products>li.product .woocommerce-loop-product__title{
    font-size:clamp(1.16rem,1.05rem + .35vw,1.4rem)!important;
    font-weight:850!important;line-height:1.25!important;
    letter-spacing:-.012em;padding-block:12px!important;
    margin-block:0 12px!important;min-width:0;max-width:100%;
    white-space:normal;overflow-wrap:anywhere;
}

/* Commerce uses the same grouped plane, not title/price/notice fragments.
   These rules do not touch checkout fields, hosted payment or order logic. */
body.challenger-commerce-neutral #primary :is(ul.products>li.product[class*="ccg-commerce-game-"],.challenger-product-overview) :is(.woocommerce-loop-product__title,.price,.shop-card-tax-custom,.product_title,.woocommerce-product-details__short-description){background:none!important;border:0!important;padding-inline:0!important}
body.challenger-commerce-neutral #primary tr.cart_item[class*="ccg-commerce-game-"] :is(.ccg-item-title,.amount,.product-quantity,dl.variation,.wc-gzd-item-desc){background:none!important;border:0!important}
body.challenger-commerce-neutral #primary #order_review tr.cart_item[class*="ccg-commerce-game-"]>td{
    background:var(--ccg-commerce-surface)!important;background-clip:padding-box!important;
    border-block:8px solid transparent!important;color:var(--ccg-commerce-ink)!important;
}
body.challenger-commerce-neutral #primary #order_review tr.cart_item[class*="ccg-commerce-game-"]>td:first-child{border-left:8px solid transparent!important}
body.challenger-commerce-neutral #primary #order_review tr.cart_item[class*="ccg-commerce-game-"]>td:last-child{border-right:8px solid transparent!important}
body.challenger-commerce-neutral #primary #order_review tr.cart_item[class*="ccg-commerce-game-"] .product-name{border-left-color:transparent!important}
@media(max-width:768px){
    /* Mobile cart is an existing grid, not a table row. Its single plane
       continues under the gaps; no additional table-like pseudo cell. */
    body.challenger-commerce-neutral #primary .woocommerce-cart-form table.shop_table tr.cart_item[class*="ccg-commerce-game-"]{position:relative;isolation:isolate;padding:20px!important}
    body.challenger-commerce-neutral #primary .woocommerce-cart-form table.shop_table tr.cart_item[class*="ccg-commerce-game-"]::after{content:"";position:absolute;inset:8px;z-index:-1;pointer-events:none;background:var(--ccg-commerce-surface);border-radius:8px}
    body.challenger-commerce-neutral #primary .woocommerce-cart-form table.shop_table tr.cart_item[class*="ccg-commerce-game-"]>td{background:transparent!important;border:0!important}
}
/* The classic cart is ALREADY a grid on desktop, too (Suite's wp_head
   stylesheet). One content plane must span the complete card at every width,
   not separate table-cell strips. Keep native cells, forms and item identity. */
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tbody tr.cart_item{
    display:grid!important;grid-template-columns:84px minmax(0,1fr) 76px 106px!important;
    grid-template-areas:"thumb name name remove" "thumb price quantity subtotal"!important;
    gap:14px!important;align-items:start!important;position:relative!important;isolation:isolate;
    padding:28px!important;margin:0 0 18px!important;min-width:0!important;
    border:1px solid var(--challenger-personal-accent,var(--challenger-accent))!important;
    border-radius:var(--challenger-radius,16px)!important;clip-path:none!important;overflow:visible!important;
    box-shadow:var(--ccg-frame-glow)!important;
}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tbody tr.cart_item::after{
    content:""!important;display:block!important;position:absolute!important;inset:12px!important;
    z-index:-1!important;pointer-events:none!important;width:auto!important;height:auto!important;
    margin:0!important;opacity:1!important;background:var(--ccg-commerce-surface)!important;
    border:1px solid var(--challenger-border)!important;border-radius:max(6px,calc(var(--challenger-radius,16px) - 4px))!important;
}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tbody tr.cart_item>td{
    display:block!important;width:auto!important;max-width:none!important;min-width:0!important;
    padding:0!important;margin:0!important;background:transparent!important;border:0!important;
    text-align:left!important;color:var(--ccg-commerce-ink)!important;-webkit-text-fill-color:currentColor!important;
}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item td.product-thumbnail{
    grid-area:thumb!important;min-width:0!important;align-self:start;justify-self:center;
}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item td.product-thumbnail a{
    display:flex!important;align-items:center!important;justify-content:center!important;width:84px!important;height:104px!important;margin:0!important;
}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item td.product-thumbnail img{
    width:auto!important;height:auto!important;max-width:84px!important;max-height:104px!important;
    margin:0!important;object-fit:contain!important;border-radius:8px!important;
}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item td.product-name{grid-area:name!important;line-height:1.45!important}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item .ccg-item-title{
    display:block!important;padding:0!important;margin:0 0 10px!important;font-size:1rem!important;font-weight:750!important;
}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item .wc-gzd-item-desc{
    padding:0!important;margin:0 0 8px!important;font-size:.8125rem!important;line-height:1.45!important;
}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item td.product-price{grid-area:price!important}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item td.product-quantity{grid-area:quantity!important}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item td.product-subtotal{grid-area:subtotal!important}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item td.product-remove{
    grid-area:remove!important;position:static!important;justify-self:end;width:34px!important;height:34px!important;
}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item td[data-title]:not(.product-name)::before{
    content:attr(data-title)!important;display:block!important;float:none!important;
    width:auto!important;background:none!important;padding:0!important;margin:0 0 6px!important;
    color:var(--ccg-commerce-muted)!important;font-size:.75rem!important;line-height:1.2!important;
}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item td.product-name::before{content:none!important;display:none!important}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item :is(.product-price,.product-subtotal) .amount{
    display:inline-block;padding:0!important;white-space:nowrap!important;
}
body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item dl.variation{padding:0!important}
@media(max-width:1100px){
    body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce:has(>.woocommerce-cart-form){grid-template-columns:minmax(0,1fr)!important}
}
@media(max-width:600px){
    body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tbody tr.cart_item{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        grid-template-areas:"thumb remove" "name name" "price subtotal" "quantity quantity"!important;
        padding:20px!important;gap:12px!important;
    }
    body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tbody tr.cart_item::after{inset:8px!important}
    body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table tr.cart_item td.product-thumbnail{justify-self:start}
    body.challenger-commerce-neutral.challenger-classic-cart #primary .woocommerce-cart-form table.shop_table td.actions{flex-wrap:wrap;min-width:0}
}
@media print,(forced-colors:active){
    body.challenger-commerce-neutral #primary :is(ul.products>li.product[class*="ccg-commerce-game-"],.woocommerce-cart-form tr.cart_item[class*="ccg-commerce-game-"],#order_review tr.cart_item[class*="ccg-commerce-game-"],.challenger-product-overview){background-image:none!important;box-shadow:none!important;border-color:currentColor!important}
    body.challenger-commerce-neutral #primary .ccg-game-mark{border-color:currentColor!important}
    body.challenger-commerce-neutral #primary :is(.woocommerce-cart-form,#order_review) tr.cart_item[class*="ccg-commerce-game-"] .product-name{border-color:currentColor!important}
}

/* Known navigation/filter pills: inactive is the configured Hinweistext ink,
   selected has ordinary ink and a quiet accent tint, not a solid accent fill.
   No disabled-state reinterpretation, H/W/O quantity controls or status pills. */
body:is(.challenger-theme-dark,.challenger-theme-light,.challenger-theme-auto):not(.wp-admin) #primary :is(
    .clm-tab,.clm-game-button,.cps-game-button,.cps-hof-game-button,.cet-game-filter,
    .challenger-shop-game-pill,.chs-allocation-view-pill,
    .chs-front-tabs>a,.chs-stats-subtabs>a,.cet-admin-view-nav>a,
    .chc-game-tabs>a,.chc-scope-tabs>a,.chc-artwork-tabs>a,.chc-folder-navigation>a,.chc-folder-tabs>a,.chc-pagination .page-numbers
):not(:disabled,[disabled],[aria-disabled="true"],.is-disabled,.disabled):not([inert],[inert] *){
    display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1.3!important;
    background:var(--challenger-surface-alt)!important;border-color:var(--challenger-border)!important;
    color:var(--challenger-muted-on-surface-alt,var(--challenger-muted))!important;
    -webkit-text-fill-color:currentColor!important;box-shadow:none!important;opacity:1!important;
}
body:is(.challenger-theme-dark,.challenger-theme-light,.challenger-theme-auto):not(.wp-admin) #primary :is(
    .clm-tab,.clm-game-button,.cps-game-button,.cps-hof-game-button,.cet-game-filter,
    .challenger-shop-game-pill,.chs-allocation-view-pill,
    .chs-front-tabs>a,.chs-stats-subtabs>a,.cet-admin-view-nav>a,
    .chc-game-tabs>a,.chc-scope-tabs>a,.chc-artwork-tabs>a,.chc-folder-navigation>a,.chc-folder-tabs>a,.chc-pagination .page-numbers
):is(.is-active,.current,.is-current,[aria-current="page"],[aria-current="true"],[aria-pressed="true"],[aria-selected="true"]):not(:disabled,[disabled],[aria-disabled="true"],.is-disabled,.disabled):not([inert],[inert] *){
    background:color-mix(in srgb,var(--challenger-accent) 8%,var(--challenger-surface-alt))!important;
    border-color:color-mix(in srgb,var(--challenger-accent) 45%,var(--challenger-border))!important;
    color:var(--challenger-on-surface-alt,var(--challenger-text))!important;
    -webkit-text-fill-color:currentColor!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--challenger-accent) 12%,transparent)!important;
}

/* Non-destructive actions stay calm while pressed as well as hovered. Legal
   notices, semantic danger actions, H/W/O colors and hosted payment excluded. */
body:is(.challenger-theme-dark,.challenger-theme-light,.challenger-theme-auto):not(.wp-admin) #primary :is(
    .chc-button,.chs-btn,.chs-small-button,.chs-primary,.cet-primary,.cet-secondary,
    .clm-pay-button,.clm-register-button,.clm-edit-decks-button,
    a.button,button.button,input.button
):not(.is-danger,.cet-danger,.chs-danger,.clm-danger,.is-warning,.is-critical,:disabled,[disabled],[aria-disabled="true"],.is-disabled,.disabled):not(:where(.woocommerce-message,.woocommerce-info,.woocommerce-error,[role="alert"],.chc-notice,.cet-notice,.clm-warning,.cal-notice) *){
    background:var(--challenger-surface-alt)!important;border-color:var(--challenger-border)!important;
    color:var(--challenger-on-surface-alt,var(--challenger-text))!important;
    -webkit-text-fill-color:currentColor!important;box-shadow:none!important;
}
@media(hover:hover) and (pointer:fine){
    body:is(.challenger-theme-dark,.challenger-theme-light,.challenger-theme-auto):not(.wp-admin) #primary :is(
        .chc-button,.chs-btn,.chs-small-button,.chs-primary,.cet-primary,.cet-secondary,
        .clm-pay-button,.clm-register-button,.clm-edit-decks-button,a.button,button.button,input.button
    ):not(.is-danger,.cet-danger,.chs-danger,.clm-danger,.is-warning,.is-critical,:disabled,[disabled],[aria-disabled="true"],.is-disabled,.disabled):not(:where(.woocommerce-message,.woocommerce-info,.woocommerce-error,[role="alert"],.chc-notice,.cet-notice,.clm-warning,.cal-notice) *):hover{
        background:color-mix(in srgb,var(--challenger-accent) 4%,var(--challenger-surface-alt))!important;
        border-color:color-mix(in srgb,var(--challenger-accent) 35%,var(--challenger-border))!important;
    }
}
body:is(.challenger-theme-dark,.challenger-theme-light,.challenger-theme-auto):not(.wp-admin) #primary :is(
    .chc-button,.chs-btn,.chs-small-button,.chs-primary,.cet-primary,.cet-secondary,
    .clm-pay-button,.clm-register-button,.clm-edit-decks-button,a.button,button.button,input.button
):not(.is-danger,.cet-danger,.chs-danger,.clm-danger,.is-warning,.is-critical,:disabled,[disabled],[aria-disabled="true"],.is-disabled,.disabled):not(:where(.woocommerce-message,.woocommerce-info,.woocommerce-error,[role="alert"],.chc-notice,.cet-notice,.clm-warning,.cal-notice) *):active{
    background:color-mix(in srgb,var(--challenger-accent) 8%,var(--challenger-surface-alt))!important;
    border-color:color-mix(in srgb,var(--challenger-accent) 45%,var(--challenger-border))!important;
}
/* Header pills sit on the navigation plane, not the card plane. */
body:is(.challenger-theme-dark,.challenger-theme-light,.challenger-theme-auto):not(.wp-admin) .challenger-site-header .challenger-primary-nav a:not([aria-current="page"]){
    color:var(--challenger-muted-on-nav,var(--challenger-muted))!important;-webkit-text-fill-color:currentColor!important;
}
body:is(.challenger-theme-dark,.challenger-theme-light,.challenger-theme-auto):not(.wp-admin) .challenger-site-header .challenger-primary-nav a:is(:hover,:focus-visible,[aria-current="page"]){
    box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--challenger-accent) 40%,var(--challenger-border))!important;
}
@media(forced-colors:active){
    body:is(.ccg-design-app,.challenger-commerce-neutral){--ccg-frame-glow:none}
    body.challenger-commerce-neutral #primary :is(a.button,button.button,input.button,.challenger-shop-game-pill):focus-visible{outline-color:Highlight!important}
}

/* Apple WebKit deliberately ignores fixed background attachments. Clip ONLY
   this decorative wrapper, not the frame (which must retain its halo/focus).
   Clip-path does not rebase the fixed child: no transform, filter or paint
   containment is placed on its ancestry. Native engines keep native paint. */
@supports(-webkit-touch-callout:none){
    body:is(.ccg-design-app,.challenger-commerce-neutral){--ccg-motif-paint:apple}
}
body:is(.ccg-design-app,.challenger-commerce-neutral) #primary .ccg-motif-ready{
    --ccg-motif-background:none;
}
body:is(.ccg-design-app,.challenger-commerce-neutral) #primary .ccg-motif-clip{
    all:initial!important;display:block!important;position:absolute!important;
    inset:0!important;width:auto!important;height:auto!important;z-index:-2!important;
    border-radius:inherit!important;clip-path:inset(0 round var(--challenger-radius,16px))!important;
    pointer-events:none!important;transform:none!important;filter:none!important;
    contain:none!important;will-change:auto!important;isolation:auto!important;
}
body:is(.ccg-design-app,.challenger-commerce-neutral) #primary .ccg-motif-fixed-image{
    all:initial!important;display:none!important;position:fixed!important;
    inset:0!important;width:100vw!important;height:100vh!important;
    pointer-events:none!important;transform:none!important;filter:none!important;
    contain:none!important;will-change:auto!important;
    background-image:var(--ccg-game-image,none)!important;
    background-size:var(--ccg-game-size,cover)!important;
    background-position:var(--ccg-game-position,50% 50%)!important;
    background-repeat:no-repeat!important;
}
body:is(.ccg-design-app,.challenger-commerce-neutral) #primary .ccg-motif-visible .ccg-motif-fixed-image{display:block!important}
@supports(width:1lvw) and (height:1lvh){
    body:is(.ccg-design-app,.challenger-commerce-neutral) #primary .ccg-motif-fixed-image{
        width:100lvw!important;height:100lvh!important;
        background-size:var(--ccg-game-stable-size,var(--ccg-game-size,cover))!important;
        background-position:var(--ccg-game-stable-position,var(--ccg-game-position,50% 50%))!important;
    }
}
body:is(.ccg-design-app,.challenger-commerce-neutral) #primary tr.ccg-motif-table-layer{position:relative!important;isolation:isolate}
body:is(.ccg-design-app,.challenger-commerce-neutral) #primary tr.ccg-motif-table-layer>td{position:static!important}
body:is(.ccg-design-app,.challenger-commerce-neutral) #primary tr.ccg-motif-table-layer .ccg-motif-clip{clip-path:inset(0 round 12px)!important}
@media print,(forced-colors:active){
    body:is(.ccg-design-app,.challenger-commerce-neutral) #primary .ccg-motif-clip{display:none!important}
}
