:root {
  color-scheme: dark;
  --bg: #050505;
  --panel: rgba(16, 8, 8, 0.94);
  --panel-soft: rgba(24, 10, 10, 0.92);
  --red: #b71920;
  --red-bright: #dc3037;
  --red-soft: rgba(183, 25, 32, 0.42);
  --muted: #a99d9d;
  --text: #f6eeee;
  --blue: #56a2ff;
  --green: #2ab884;
  font-family: Inter, Roboto, "Segoe UI", Arial, sans-serif;
  font-synthesis: none;
}

* { box-sizing: border-box; }
html { min-width: 320px; background: var(--bg); scroll-behavior: smooth; }
body { margin: 0; min-height: 100vh; color: var(--text); background: #050505; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 30;
  height: 57px;
  display: flex;
  align-items: center;
  padding: 0 24px;
  gap: 22px;
  background: rgba(0, 0, 0, 0.96);
  border-bottom: 1px solid var(--red);
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.6);
}
.brand { min-width: 215px; display: flex; align-items: center; gap: 9px; font-weight: 600; font-size: 14px; }
.brand > span:first-of-type { min-width: 0; line-height: 1.2; overflow-wrap: anywhere; }
.brand > img { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; }
.verified { width: 16px; height: 16px; display: inline-flex; flex: none; margin-left: -5px; }
.verified img { display: block; width: 100%; height: 100%; object-fit: contain; }
.search-form { position: relative; flex: 1; max-width: 405px; margin: 0 auto; }
.search-box { height: 38px; display: flex; align-items: center; gap: 10px; padding: 0 13px; border: 1px solid var(--red); border-radius: 12px; background: rgba(0, 0, 0, 0.8); }
.search-box:focus-within { box-shadow: 0 0 0 2px rgba(220, 48, 55, 0.22); }
.search-icon { width: 17px; height: 17px; color: #aaa; flex: none; }
.search-box input { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; color: var(--text); font-size: 14px; }
.search-box input::placeholder { color: #999; }
.search-submit { display: none; }
.search-suggestions { position: absolute; display: none; top: 44px; left: 0; right: 0; padding: 6px; border: 1px solid #4a1719; border-radius: 12px; background: #100909; box-shadow: 0 14px 30px #000; }
.search-suggestions.open { display: block; }
.search-suggestions a { display: block; padding: 9px 10px; border-radius: 8px; color: #eee; font-size: 13px; line-height: 1.4; overflow-wrap: anywhere; }
.search-suggestions a:hover { background: rgba(220, 48, 55, .16); }
.search-suggestions .suggestion-all { color: #ff777c; border-top: 1px solid #341315; margin-top: 4px; }
.header-actions { display: flex; align-items: center; gap: 15px; }
.header-link { min-height: 34px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 14px; border-radius: 8px; font-size: 13px; white-space: nowrap; }
.header-link.cart { background: #fff; color: #111; }
.header-link.login { background: #191919; color: #f8f8f8; }
.header-link:hover { filter: brightness(1.1); }
.cart-icon { width: 17px; height: 17px; }
.cart-count { min-width: 17px; height: 17px; padding: 0 4px; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; background: var(--red-bright); color: white; font-size: 10px; font-weight: 700; }

.home-surface {
  min-height: calc(100vh - 57px);
  background-color: #080505;
  background-image: linear-gradient(180deg, rgba(0,0,0,.32), rgba(0,0,0,.82) 48%, #050505 95%), var(--hero-image, url("assets/store-background-desktop.jpg"));
  background-size: cover;
  background-position: center top;
  background-attachment: fixed;
}
@media (max-width: 700px) {
  .home-surface {
    background-image: linear-gradient(180deg, rgba(0,0,0,.26), rgba(0,0,0,.78) 38%, #050505 92%), var(--hero-mobile-image, var(--hero-image, url("assets/store-background-mobile.jpg")));
    background-position: center top;
    background-size: cover;
    background-attachment: scroll;
  }
}
.page-width { width: min(1240px, calc(100% - 32px)); margin: 0 auto; }
.store-banner { display: flex; justify-content: center; margin: 0 auto 24px; }
.store-banner img { display: block; width: min(100%, 800px); height: auto; border: 1px solid rgba(211, 35, 44, .48); border-radius: 13px; object-fit: contain; box-shadow: 0 10px 26px rgba(0,0,0,.3); }
.store-content { min-height: 560px; padding: 30px 0 44px; }
.source-reviews { margin-top: 48px; padding-top: 28px; border-top: 1px solid rgba(183,25,32,.72); }
.source-reviews-heading { margin-bottom: 18px; }
.source-reviews-kicker { color: #ff777c; font-size: 10px; font-weight: 800; letter-spacing: 1.1px; }
.source-reviews-heading h2 { margin: 7px 0 6px; font-size: clamp(18px,2.5vw,24px); line-height: 1.3; font-weight: 600; }
.source-reviews-heading p { margin: 0; color: #a99d9d; font-size: 12px; line-height: 1.55; }
.source-review-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }
.source-review-card { min-width: 0; padding: 15px; border: 1px solid rgba(143,48,48,.48); border-radius: 13px; background: linear-gradient(145deg,rgba(22,10,10,.96),rgba(10,7,7,.98)); }
.source-review-heading { display: flex; align-items: center; gap: 10px; min-width: 0; }
.source-review-heading > img { width: 38px; height: 38px; flex: none; border: 1px solid #7f252a; border-radius: 50%; object-fit: cover; background: #211012; }
.source-review-heading > div { display: grid; gap: 3px; min-width: 0; }
.source-review-heading strong { overflow-wrap: anywhere; font-size: 13px; }
.source-review-heading span:not(.source-review-stars) { color: #978c8c; font-size: 10px; }
.source-review-stars { margin-left: auto; color: #ffbd39; font-size: 14px; white-space: nowrap; }
.source-review-item { margin: 12px 0 6px; color: #c7b8b8; font-size: 11px; line-height: 1.4; }
.source-review-comment { margin: 0; color: #eee4e4; font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; }
.category-nav { display: flex; flex-wrap: wrap; gap: 9px; margin: 0 0 30px; }
.category-nav a { padding: 8px 14px; border: 1px solid rgba(196, 30, 37, .48); border-radius: 999px; background: rgba(10, 8, 8, .7); color: #e7dddd; font-size: 13px; text-transform: lowercase; transition: border .16s, background .16s; }
.category-nav a:hover, .category-nav a.active { border-color: var(--red-bright); background: rgba(191, 29, 35, .22); }
.catalog-section { margin: 0 0 38px; scroll-margin-top: 78px; }
.section-title { display: flex; align-items: center; gap: 12px; margin: 0 0 16px; font-size: 20px; font-weight: 500; text-transform: lowercase; letter-spacing: .1px; }
.section-title::after { content: ""; flex: 1; height: 1px; background: linear-gradient(90deg, rgba(183,25,32,.75), transparent); }
.product-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(176px, 1fr)); gap: 14px; }
.product-card { position: relative; min-width: 0; overflow: hidden; border: 1px solid rgba(143, 48, 48, .53); border-radius: 17px; background: radial-gradient(120% 140% at 10% 0%, rgba(229,57,53,.15), transparent 55%), linear-gradient(135deg, rgba(22,10,10,.96), rgba(14,7,7,.98)); box-shadow: 0 5px 15px rgba(0,0,0,.28); cursor: pointer; touch-action: manipulation; transition: transform .17s, border-color .17s, box-shadow .17s; }
.product-card:hover { transform: translateY(-2px); border-color: rgba(220,48,55,.82); box-shadow: 0 9px 24px rgba(0,0,0,.48), 0 0 15px rgba(155,20,25,.14); }
.card-hitbox { position: absolute; inset: 0; z-index: 1; }
.product-thumb { position: relative; aspect-ratio: 16 / 9; overflow: hidden; border-bottom: 2px solid #741a1e; background: #170a0a; }
.product-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .3s; }
.product-card:hover .product-thumb img { transform: scale(1.04); }
.product-card.is-sold .product-thumb img,.product-panel.is-sold .detail-image { filter: brightness(.68) saturate(.72); }
.sold-stamp { position: absolute; top: 50%; left: 50%; z-index: 2; transform: translate(-50%,-50%) rotate(-6deg); padding: 9px 18px; border-block: 4px solid #fff; background: #ff565f; color: #fff; box-shadow: 0 4px 14px #0009; font-family: Impact,"Arial Narrow",sans-serif; font-size: clamp(13px,2vw,25px); font-weight: 900; letter-spacing: 1.5px; line-height: 1; text-align: center; white-space: nowrap; pointer-events: none; }
.product-info { padding: 9px 10px 10px; }
.product-name { min-height: 37px; display: block; color: #e5dede; font-size: 12px; line-height: 18px; text-transform: uppercase; overflow-wrap: anywhere; }
.price-row { display: flex; align-items: center; justify-content: space-between; gap: 7px; margin-top: 5px; }
.old-price { color: #978c8c; font-size: 11px; text-decoration: line-through; white-space: nowrap; }
.discount-pill { display: inline-flex; align-items: center; gap: 4px; flex: none; padding: 7px 9px; border-radius: 10px; background: linear-gradient(135deg, #d32e35, #ae171e); color: #fff; font-size: 11px; font-weight: 700; white-space: nowrap; }
.discount-pill::before { content: "⌄"; font-size: 13px; line-height: 8px; }
.current-price-line { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 6px; margin-top: 3px; }
.current-price { color: #fff; font-size: 22px; font-weight: 800; letter-spacing: -.6px; white-space: nowrap; }
.lightning { color: #58a1ff; font-size: 17px; font-weight: 700; }
.pix-caption { margin-top: -3px; color: #a69a9a; font-size: 10px; }
.delivery { display: flex; align-items: center; gap: 5px; margin-top: 5px; color: #63a2ff; font-size: 10px; }
.delivery-bolt { font-size: 14px; }
.card-actions { position: relative; z-index: 2; margin-top: 10px; }
.buy-button { width: 100%; min-height: 32px; border: 1px solid rgba(255,255,255,.14); border-radius: 11px; background: linear-gradient(135deg, #db3037, #ae171d); color: #fff; font-size: 12px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; box-shadow: inset 0 1px 0 rgba(255,255,255,.18); }
.buy-button:hover { filter: brightness(1.1); }
.buy-button:disabled, .detail-action:disabled { opacity: .5; cursor: not-allowed; filter: grayscale(.45); }
.no-results { display: none; padding: 24px; border: 1px solid #4a1719; border-radius: 14px; color: #b9aaaa; text-align: center; }
.no-results.visible { display: block; }

.site-footer { border-top: 1px solid #8f141b; background: #050505; }
.footer-inner { min-height: 150px; display: flex; align-items: flex-start; gap: 80px; padding: 31px 0 24px; }
.footer-brand { min-width: 280px; display: flex; gap: 12px; align-items: flex-start; }
.footer-brand img { width: 34px; height: 34px; border-radius: 50%; object-fit: cover; }
.footer-brand strong { display: block; margin: 3px 0 6px; font-size: 13px; font-weight: 500; }
.footer-brand p, .footer-policy a { margin: 0; color: #968b8b; font-size: 12px; }
.footer-policy h3 { margin: 0 0 8px; font-size: 13px; font-weight: 500; }
.footer-policy a:hover { color: #fff; }
.copyright { margin: 0; padding: 15px 16px 18px; border-top: 1px solid rgba(183,25,32,.75); color: #777; font-size: 11px; text-align: center; }
.powered { color: #6f6767; margin-left: 10px; }

.standard-surface { min-height: calc(100vh - 57px); background: radial-gradient(1000px 500px at 55% 0, rgba(108,15,20,.12), transparent 65%), #050505; }
.standard-content { width: min(1120px, calc(100% - 32px)); margin: 0 auto; padding: 26px 0 48px; }
.breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin: 0 0 24px; color: #8f8585; font-size: 12px; }
.breadcrumbs a:hover { color: #fff; }
.breadcrumbs .crumb-sep { color: #534a4a; }
.product-panel { padding: 31px; border: 1px solid var(--red); border-radius: 13px; background: rgba(0,0,0,.78); box-shadow: 0 0 20px rgba(100,0,0,.06); }
.product-top { display: grid; grid-template-columns: minmax(0, 1fr) 296px; gap: 28px; }
.product-main { display: grid; grid-template-columns: minmax(220px, 44%) minmax(0, 1fr); gap: 20px; align-items: start; }
.detail-image-wrap { position: relative; width: 100%; padding-top: 58px; }
.detail-image { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 8px; background: #140909; }
.detail-image-wrap .sold-stamp { font-size: clamp(20px,3vw,34px); padding: 12px 25px; }
.detail-gallery { display: flex; gap: 8px; margin-top: 9px; overflow-x: auto; padding: 1px 1px 5px; scrollbar-width: thin; }
.detail-gallery-thumb { width: 66px; height: 58px; flex: none; overflow: hidden; padding: 0; border: 1px solid #553033; border-radius: 7px; background: #0a0808; }
.detail-gallery-thumb.is-active,.detail-gallery-thumb:focus-visible { border-color: #ff6970; outline: 2px solid rgba(255,105,112,.22); outline-offset: 1px; }
.detail-gallery-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.detail-copy { padding-top: 0; }
.sold-line { margin-bottom: 8px; color: #8e8585; font-size: 11px; }
.detail-title { margin: 0; color: #f3eded; font-size: 19px; line-height: 1.28; font-weight: 500; }
.detail-rule { height: 1px; margin: 13px 0 14px; border: 0; background: var(--red); }
.detail-prices { display: flex; align-items: baseline; gap: 11px; }
.detail-old { color: #847b7b; font-size: 12px; text-decoration: line-through; }
.detail-discount { color: #25ac70; font-size: 16px; }
.detail-current { color: #fff; font-size: 23px; font-weight: 600; }
.detail-current small { font-size: 14px; vertical-align: super; }
.detail-delivery { display: inline-flex; align-items: center; gap: 6px; margin-top: 11px; padding: 5px 9px; border-radius: 6px; background: rgba(60,124,206,.13); color: #64a5ff; font-size: 12px; }
.buy-box, .payment-box { padding: 16px; border: 1px solid var(--red); border-radius: 11px; background: rgba(4,4,4,.74); }
.buy-box h2, .payment-box h2 { margin: 0 0 7px; font-size: 16px; font-weight: 500; }
.stock-price { margin: 4px 0; font-size: 26px; font-weight: 500; }
.stock-price small { font-size: 15px; vertical-align: super; }
.stock-caption { color: #898080; font-size: 13px; }
.quantity-control { height: 39px; display: grid; grid-template-columns: 38px 1fr 38px; margin: 11px 0 8px; border: 1px solid var(--red); border-radius: 11px; overflow: hidden; }
.quantity-control button { border: 0; background: #060606; color: #fff; font-size: 18px; }
.quantity-control button:hover:not(:disabled) { background: #301012; }
.quantity-control button:disabled { opacity: .5; cursor: default; }
.quantity-control input { width: 100%; border: 0; border-inline: 1px solid var(--red); outline: 0; background: #050505; color: #fff; text-align: center; }
.detail-action { width: 100%; min-height: 36px; margin-top: 7px; border: 0; border-radius: 10px; font-size: 14px; }
.detail-action.primary { background: #f5f5f5; color: #111; }
.detail-action.secondary { background: #222; color: #fff; }
.detail-action:hover { filter: brightness(1.13); }
.payment-box { margin-top: 14px; min-height: 112px; }
.payment-box p { margin: 7px 0 0; color: #8d8282; font-size: 12px; }
.pix-mark { margin-top: 8px; color: #48cfb3; font-size: 23px; }
.description-block { margin-top: 28px; padding-top: 26px; border-top: 1px solid var(--red); }
.description-block h2 { margin: 0 0 22px; font-size: 17px; font-weight: 500; }
.description-list { display: grid; gap: 15px; color: #d3caca; font-size: 13px; line-height: 1.5; }
.description-list p { margin: 0; white-space: pre-wrap; }
.similar-section { margin-top: 34px; padding-top: 26px; border-top: 1px solid var(--red); }
.similar-section .section-title { font-size: 18px; }

.cart-page-title { margin: 0 0 8px; font-size: 26px; font-weight: 500; }
.cart-intro { margin: 0 0 26px; color: #9d9393; font-size: 14px; }
.cart-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 20px; align-items: start; }
.cart-items, .summary-card, .empty-cart { border: 1px solid var(--red); border-radius: 12px; background: rgba(0,0,0,.78); }
.cart-items { padding: 16px; }
.cart-row { display: grid; grid-template-columns: 100px minmax(0,1fr) auto; gap: 15px; align-items: center; padding: 10px 0; border-bottom: 1px solid #371113; }
.cart-row:last-child { border-bottom: 0; }
.cart-row img { width: 100px; aspect-ratio: 16/9; border-radius: 7px; object-fit: cover; }
.cart-row h3 { min-width: 0; margin: 0 0 7px; font-size: 14px; font-weight: 500; overflow-wrap: anywhere; }
.cart-row p { margin: 0; color: #b1a6a6; font-size: 12px; }
.cart-row-tools { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; }
.cart-row-tools strong { font-size: 15px; white-space: nowrap; }
.remove-item { padding: 4px 0; border: 0; background: transparent; color: #df656b; font-size: 11px; }
.summary-card { padding: 18px; }
.summary-card h2 { margin: 0 0 16px; font-size: 17px; font-weight: 500; }
.summary-line { display: flex; justify-content: space-between; gap: 12px; margin: 11px 0; color: #b1a5a5; font-size: 13px; }
.summary-line.total { padding-top: 13px; border-top: 1px solid #421316; color: #fff; font-size: 16px; font-weight: 700; }
.checkout-button { width: 100%; min-height: 40px; margin-top: 10px; border: 0; border-radius: 9px; background: linear-gradient(135deg, #dc3037, #a9171e); color: #fff; font-weight: 700; }
.empty-cart { padding: 33px 20px; text-align: center; }
.empty-cart h2 { margin: 0 0 10px; font-size: 20px; font-weight: 500; }
.empty-cart p { margin: 0 0 18px; color: #9d9393; font-size: 14px; }
.discover-button { display: inline-flex; min-height: 38px; align-items: center; justify-content: center; padding: 0 17px; border-radius: 9px; background: #f4f4f4; color: #111; font-size: 13px; }

.login-wrap { min-height: 580px; display: grid; place-items: center; padding: 20px 0; }
.login-card { width: min(430px, 100%); padding: 29px; border: 1px solid var(--red); border-radius: 14px; background: rgba(10,5,5,.9); box-shadow: 0 15px 55px rgba(0,0,0,.44); }
.login-card h1 { margin: 0 0 8px; font-size: 24px; font-weight: 500; }
.login-card > p { margin: 0 0 20px; color: #9f9696; font-size: 14px; }
.auth-provider { width: 100%; min-height: 42px; display: flex; align-items: center; justify-content: center; gap: 10px; margin: 9px 0; border: 1px solid #373030; border-radius: 9px; background: #111; color: #eee; }
.auth-provider:hover { background: #1c1717; }
.google-auth-provider { min-height: 46px; border-color: #d7d7d7; background: #f7f7f7; color: #202124; font-size: 14px; font-weight: 600; text-decoration: none; }
.google-auth-provider:hover { border-color: #b9b9b9; background: #eee; }
.google-auth-provider:disabled { cursor: not-allowed; opacity: .68; }
.google-logo { width: 19px; height: 19px; flex: none; }
.google-auth-hint { margin: 0 0 8px !important; text-align: center; }
.google-auth-feedback { margin: -5px 0 12px; }
.or-line > span { flex: none; }
.google-mark { width: 18px; height: 18px; border-radius: 50%; background: conic-gradient(#4285f4 0 25%,#34a853 25% 48%,#fbbc05 48% 71%,#ea4335 71%); color: transparent; }
.discord-mark { width: 19px; height: 16px; display: inline-flex; justify-content: center; align-items: center; border-radius: 6px; background: #5865f2; color: #fff; font-size: 10px; font-weight: 800; }
.or-line { display: flex; align-items: center; gap: 12px; margin: 20px 0; color: #7f7575; font-size: 12px; }
.or-line::before,.or-line::after { content: ""; height: 1px; flex: 1; background: #342728; }
.login-card label { display: block; margin: 0 0 7px; color: #ded6d6; font-size: 13px; }
.login-card .form-hint, .form-hint { margin: 7px 0 12px; color: #938888; font-size: 12px; line-height: 1.5; }
.email-input { width: 100%; min-height: 42px; padding: 0 12px; border: 1px solid #493033; border-radius: 8px; outline: 0; background: #080808; color: #fff; }
.email-input:focus { border-color: var(--red-bright); }
.login-submit { width: 100%; min-height: 42px; margin-top: 12px; border: 0; border-radius: 8px; background: linear-gradient(135deg,#d93037,#a9171e); color: white; font-weight: 700; }
.login-note { min-height: 18px; margin-top: 13px; color: #ff9b9e; font-size: 12px; line-height: 1.45; }
.auth-switch { display: inline-flex; margin-top: 15px; padding: 0; border: 0; background: transparent; color: #d2baba; font-size: 13px; text-decoration: underline; text-underline-offset: 3px; }
.orders-wrap { min-height: 560px; padding-top: 34px; padding-bottom: 50px; }
.orders-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.orders-list { display: grid; gap: 14px; }
.order-card { padding: 17px; border: 1px solid var(--red); border-radius: 12px; background: rgba(0,0,0,.78); }
.order-status { display: inline-flex; padding: 6px 10px; border: 1px solid #764615; border-radius: 999px; color: #ffd083; background: rgba(121,74,18,.18); font-size: 12px; font-weight: 700; }
.order-status.status-paid { border-color: #246b50; color: #75e0b5; background: rgba(42,184,132,.12); }
.order-status.status-expired, .order-status.status-refunded, .order-status.status-payment_error { border-color: #87383a; color: #ff9b9e; background: rgba(220,48,55,.12); }
.payment-result > p { color: #c1b7b7; font-size: 13px; line-height: 1.5; }
.order-products { margin: 10px 0; padding-left: 18px; color: #bfb5b5; font-size: 12px; }
.pix-code-label { display: block; margin: 13px 0 6px; font-size: 12px; }
.pix-code { display: block; width: 100%; resize: vertical; padding: 10px; border: 1px solid #492023; border-radius: 8px; background: #080606; color: #eee; font-family: ui-monospace, Consolas, monospace; font-size: 11px; line-height: 1.5; overflow-wrap: anywhere; }
.payment-result .checkout-button { margin-top: 8px; }
.payment-confirmed { color: #75e0b5 !important; }
.post-payment-step { display: grid; gap: 10px; }
.post-payment-step h2 { margin: 2px 0 0; font-size: 21px; font-weight: 600; }
.protection-offer { display: grid; gap: 8px; margin-top: 16px; padding: 16px; border: 1px solid #385a49; border-radius: 11px; background: rgba(27,116,78,.1); }
.protection-offer h3 { margin: 0; font-size: 17px; }
.protection-offer > p { margin: 0; color: #c1b7b7; font-size: 13px; line-height: 1.55; }
.protection-offer .offer-kicker { color: #83d9ae; font-size: 10px; font-weight: 700; letter-spacing: .8px; }
.protection-disclosure { color: #9d9393 !important; font-size: 11px !important; }
.protection-price { color: #fff; font-size: 23px; font-weight: 700; }
.protection-offer .checkout-button { margin-top: 2px; }
#protection-checkout-form > p { margin: 0 0 12px; color: #c1b7b7; font-size: 13px; line-height: 1.55; }
#protection-checkout-form > p:first-child { color: #fff; font-size: 15px; }
#protection-checkout-form label { display: block; margin: 13px 0 7px; color: #ded6d6; font-size: 13px; }
#protection-checkout-form .form-hint { margin-top: 7px; }
.order-date { margin: 12px 0 0; color: #827878; font-size: 11px; }
.modal-close { position: absolute; top: 10px; right: 12px; width: 30px; height: 30px; border: 0; background: transparent; color: #ddd; font-size: 24px; }
.checkout-modal-card { position: relative; max-height: min(85vh, 760px); overflow: auto; }
.checkout-modal-card > p { margin: 0 0 16px; color: #b8adad; font-size: 13px; line-height: 1.5; }
.checkout-modal-card label { display: block; margin-bottom: 7px; color: #ded6d6; font-size: 13px; }
.checkout-modal-card .email-input { margin-bottom: 6px; }
.checkout-modal-card .login-submit:disabled { opacity: .55; cursor: wait; }

.policy-card { padding: 28px 30px; border: 1px solid rgba(151,28,34,.8); border-radius: 12px; background: rgba(0,0,0,.72); }
.policy-date { margin: 0 0 8px; color: #8a8181; font-size: 12px; }
.policy-card h1 { margin: 0 0 18px; font-size: 25px; font-weight: 500; }
.policy-card h2 { margin: 24px 0 9px; font-size: 17px; font-weight: 500; }
.policy-card p { margin: 0 0 13px; color: #c9c0c0; font-size: 13px; line-height: 1.75; }
.policy-card table { width: 100%; margin: 10px 0 20px; border-collapse: collapse; color: #c9c0c0; font-size: 12px; }
.policy-card th,.policy-card td { padding: 10px; border: 1px solid #4d171a; text-align: left; }
.policy-card th { color: #fff; background: rgba(115,14,18,.22); }

.toast-region { position: fixed; z-index: 60; right: 18px; bottom: 18px; display: grid; gap: 9px; }
.toast { max-width: min(390px, calc(100vw - 36px)); padding: 13px 16px; border: 1px solid #7c2025; border-left: 4px solid var(--red-bright); border-radius: 10px; background: #1d090a; color: #f9eeee; box-shadow: 0 10px 28px #0009; font-size: 13px; animation: toast-in .18s ease-out; }
@keyframes toast-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
.modal-backdrop { position: fixed; inset: 0; z-index: 50; display: grid; place-items: center; padding: 20px; background: rgba(0,0,0,.75); }
.modal-card { width: min(420px, 100%); padding: 25px; border: 1px solid var(--red); border-radius: 14px; background: #100707; box-shadow: 0 18px 55px #000; }
.modal-card h2 { margin: 0 0 10px; font-size: 19px; font-weight: 500; }
.modal-card p { margin: 0 0 18px; color: #b8adad; font-size: 13px; line-height: 1.55; }
.modal-card button { min-height: 36px; padding: 0 16px; border: 0; border-radius: 8px; background: #f5f5f5; color: #111; }

@media (max-width: 800px) {
  .site-header { height: auto; min-height: 58px; padding: 9px 13px; gap: 10px; flex-wrap: wrap; }
  .brand { min-width: auto; flex: 1; }
  .search-form { flex-basis: 100%; order: 3; max-width: none; }
  .header-actions { gap: 7px; }
  .header-link { padding: 0 10px; font-size: 12px; }
  .product-top { grid-template-columns: 1fr; }
  .buy-side { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
  .payment-box { margin-top: 0; }
  .detail-image-wrap { padding-top: 37px; }
  .cart-layout { grid-template-columns: 1fr; }
  .footer-inner { gap: 28px; }
  .footer-brand { min-width: 220px; }
}
@media (max-width: 560px) {
.store-banner { margin-bottom: 20px; }
.store-banner img { width: 100%; max-width: 800px; height: auto; border-radius: 9px; object-fit: contain; }
  .source-reviews { margin-top: 33px; padding-top: 22px; }
  .source-review-grid { grid-template-columns: minmax(0,1fr); gap: 9px; }
  .source-review-card { padding: 12px; }
  .page-width,.standard-content { width: min(100% - 20px, 1240px); }
  .store-content { padding-top: 18px; }
  .category-nav { gap: 7px; margin-bottom: 23px; }
  .category-nav a { padding: 7px 10px; font-size: 11px; }
  .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .product-info { padding: 7px; }
  .product-name { min-height: 34px; height: auto; font-size: 10px; line-height: 16px; }
  .current-price { font-size: 18px; }
  .discount-pill { padding: 6px; font-size: 9px; }
  .buy-button { min-height: 30px; font-size: 10px; }
  .section-title { font-size: 17px; }
  .product-panel { padding: 16px; }
  .product-main { grid-template-columns: 1fr; gap: 14px; }
  .detail-image-wrap { padding-top: 0; }
  .detail-title { font-size: 17px; }
  .buy-side { grid-template-columns: 1fr; }
  .payment-box { margin-top: 0; }
  .cart-row { grid-template-columns: 74px minmax(0,1fr); gap: 10px; }
  .cart-row img { width: 74px; }
  .cart-row-tools { grid-column: 2; flex-direction: row; align-items: center; justify-content: space-between; }
  .footer-inner { flex-direction: column; gap: 22px; padding: 24px 0; }
  .policy-card { padding: 20px 16px; }
}

/* Mobile storefront tuned from the full-page reference. */
.section-title::after { display: none; }
@media (max-width: 560px) {
  .site-header { height: auto; min-height: 56px; padding: 8px clamp(8px, 3vw, 12px); gap: clamp(5px, 2vw, 10px); flex-wrap: nowrap; }
  .brand { min-width: 0; flex: 1 1 0; gap: 6px; font-size: 12px; white-space: nowrap; overflow: hidden; }
  .brand > span:first-of-type { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .brand > img { width: 27px; height: 27px; flex: 0 0 27px; }
  .verified { width: 19px; height: 19px; flex: 0 0 19px; margin-left: -3px; }
  .search-form { position: relative; flex: 0 0 35px; width: 35px; height: 35px; max-width: none; margin: 0; order: 0; }
  .search-box { width: 35px; height: 35px; justify-content: center; gap: 0; padding: 0; border-radius: 50%; }
  .search-toggle { width: 33px; height: 33px; display: flex; align-items: center; justify-content: center; padding: 0; border: 0; background: transparent; color: #aaa; }
  .search-icon { width: 18px; height: 18px; }
  .search-box input { display: none; }
  .search-form.expanded { position: absolute; left: 50%; z-index: 40; width: min(calc(100vw - 24px), 250px); height: 38px; flex: 0 0 auto; transform: translateX(-50%); }
  .search-form.expanded .search-box { width: 100%; height: 38px; justify-content: flex-start; gap: 8px; padding: 0 9px; border-radius: 12px; background: #080808; box-shadow: 0 8px 24px #000b; }
  .search-form.expanded .search-toggle { flex: none; }
  .search-form.expanded .search-box input { display: block; }
  .header-actions { flex: none; gap: 6px; }
  .header-link.cart { position: relative; width: 36px; min-width: 36px; min-height: 35px; padding: 0; gap: 0; font-size: 0; }
  .header-link.cart .cart-icon { width: 18px; height: 18px; }
  .header-link.cart .cart-count { position: absolute; top: -5px; right: -5px; }
  .header-link.login { min-width: 66px; min-height: 35px; padding: 0 11px; font-size: 12px; }
  .page-width, .standard-content { width: min(100% - 32px, 1240px); }
  .store-content { padding-top: 34px; }
  .catalog-section { margin-bottom: 52px; }
  .section-title { margin-bottom: 24px; font-size: 13px; line-height: 16px; font-weight: 500; }
  .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 16px; }
  .product-card { border-radius: 16px; }
  .product-info { padding: 7px 8px 8px; }
  .product-name { min-height: 34px; height: auto; font-size: 11px; line-height: 15px; }
  .price-row { min-height: 28px; margin-top: 4px; }
  .old-price { font-size: 10px; }
  .discount-pill { padding: 6px 8px; border-radius: 9px; font-size: 10px; line-height: 14px; }
  .current-price-line { min-height: 32px; margin-top: 3px; }
  .current-price { font-size: 22px; }
  .lightning { font-size: 16px; }
  .pix-caption { margin-top: -4px; font-size: 8px; }
  .card-actions { margin-top: 7px; }
  .buy-button { min-height: 27px; font-size: 10px; letter-spacing: .8px; }
  .footer-inner { min-height: 132px; display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 8px; padding: 24px 0; }
  .footer-brand { min-width: 0; gap: 8px; }
  .footer-brand img { width: 30px; height: 30px; }
  .footer-policy { text-align: center; }
  .copyright { padding: 15px 10px 17px; font-size: 10px; }
}

.product-image-link { display: block; cursor: pointer; }
.product-image-link:focus-visible,.product-title-link:focus-visible { outline: 2px solid var(--red-bright); outline-offset: 2px; }
.product-title-link { position: relative; z-index: 2; color: inherit; text-decoration: none; cursor: pointer; }
.product-title-link:hover { color: #fff; }
.pix-icon { width: 19px; height: 19px; flex: none; object-fit: contain; vertical-align: middle; }
.pix-mark { display: inline-flex; align-items: center; gap: 8px; color: #45d29c; font-size: 19px; font-weight: 800; letter-spacing: .3px; }
.payment-secure-note,.checkout-trust,.checkout-terms { color: #9c9292; font-size: 11px; line-height: 1.55; }
.checkout-trust { display: flex; align-items: center; gap: 7px; margin: 13px 0 0; }
.checkout-trust .pix-icon { color: #42c995; }
.summary-line.offer-savings { color: #75d8a7; }
.checkout-button .pix-icon,.login-submit .pix-icon { width: 17px; height: 17px; margin: 0 5px -4px 0; }
.checkout-pix-heading,.pix-payment-tag { display: flex; align-items: center; gap: 8px; color: #70d8a8; font-size: 13px; font-weight: 700; }
.checkout-amount { display: grid; gap: 5px; margin: 17px 0; padding: 14px; border: 1px solid rgba(75,202,147,.26); border-radius: 10px; background: rgba(19,99,67,.12); }
.checkout-amount span { color: #b5aaaa; font-size: 12px; }
.checkout-amount strong { color: #fff; font-size: 25px; }
.checkout-amount small { color: #73d9a8; font-size: 11px; }
.pix-payment-tag { margin: 14px 0 8px; }
.order-price-breakdown { display: grid; gap: 7px; margin: 12px 0; color: #b8adad; font-size: 12px; }
.order-price-breakdown strong { padding-top: 8px; border-top: 1px solid #342627; color: #fff; font-size: 15px; }
.password-field { position: relative; }
.password-field .email-input { padding-right: 74px; }
.password-toggle { position: absolute; top: 50%; right: 8px; transform: translateY(-50%); border: 0; background: transparent; color: #bcb2b2; font-size: 11px; }
.remember-email { margin: 12px 0 2px; }

.exit-offer-backdrop { z-index: 80; background: rgba(0,0,0,.82); backdrop-filter: blur(4px); }
.exit-offer-card { position: relative; overflow: hidden; width: min(430px, 100%); padding: 30px 26px 24px; border-color: var(--red-bright); background: radial-gradient(550px 280px at 50% -18%, rgba(220,48,55,.35), transparent 65%), #100809; text-align: center; }
.exit-offer-card::before { content: ""; position: absolute; inset: 0 0 auto; height: 3px; background: linear-gradient(90deg, transparent, #ff555c, transparent); }
.offer-sparkle { margin-bottom: 8px; color: #ffca6a; font-size: 28px; }
.offer-kicker,.admin-eyebrow { color: #ff777c; font-size: 10px; font-weight: 800; letter-spacing: 1.6px; }
.exit-offer-card h2 { margin: 10px 0; font-size: 23px; line-height: 1.25; }
.exit-offer-card p { margin-bottom: 16px; }
.offer-price-line { display: flex; justify-content: space-between; align-items: center; margin: 15px 0; padding: 14px; border: 1px dashed rgba(255,255,255,.25); border-radius: 10px; background: rgba(0,0,0,.3); color: #ccc; font-size: 13px; }
.offer-price-line strong { color: #70d8a8; font-size: 21px; }
.exit-offer-card .login-submit { width: 100%; min-height: 46px; }
.exit-offer-card .login-submit { border: 1px solid rgba(255,255,255,.16); background: linear-gradient(135deg, #db3037, #ae171d); color: #fff; }
.exit-offer-skip { display: block; width: 100%; margin: 10px 0; padding: 8px; border: 0; background: transparent; color: #9d9191; font-size: 12px; }
.exit-offer-card .exit-offer-skip { background: transparent; color: #9d9191; }
.exit-offer-card > small { color: #756c6c; font-size: 10px; }

.admin-content { width: min(1160px, calc(100% - 32px)); margin: 0 auto; padding: 34px 0 60px; }
.admin-page-heading,.admin-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.admin-page-heading { margin-bottom: 25px; }
.admin-page-heading h1 { margin: 8px 0; font-size: 27px; }
.admin-page-heading p,.admin-section-heading p { margin: 0; color: #a89e9e; font-size: 13px; line-height: 1.6; }
.admin-panel-form { display: grid; gap: 18px; }
.admin-section { padding: 22px; border: 1px solid #3d2022; border-radius: 14px; background: rgba(12,8,8,.9); box-shadow: 0 8px 26px #0004; }
.admin-payment-gateway { margin-top: 18px; border-color: #234b40; }
.gateway-status { flex: 0 0 auto; padding: 7px 11px; border: 1px solid #574b21; border-radius: 999px; color: #f1c64a; background: #201b0d; font-size: 12px; }
.gateway-status.is-connected { border-color: #24694d; color: #53d39c; background: #0e2118; }
.gateway-status.needs-reconnect { border-color: #913b3b; color: #ff7777; background: #261313; }
.gateway-help { grid-column: 1 / -1; margin: 0; color: #aaa1a1; font-size: 12px; line-height: 1.6; }
.gateway-actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.gateway-actions .login-submit { width: auto; min-width: 220px; margin: 0; }
.gateway-actions .admin-secondary-button { min-height: 44px; }
.gateway-note { grid-column: 1 / -1; min-height: 20px; }
.admin-section-heading { margin-bottom: 18px; }
.admin-section-heading h2 { margin: 0 0 7px; font-size: 18px; }
.admin-fields-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
.admin-field { min-width: 0; display: grid; align-content: start; gap: 7px; color: #d7cece; font-size: 12px; }
.admin-field > span { color: #bfb5b5; }
.admin-field input,.admin-field select,.admin-field textarea,.admin-category > input { width: 100%; min-width: 0; padding: 10px 11px; border: 1px solid #493032; border-radius: 8px; outline: none; background: #090707; color: #f7eeee; font-size: 13px; }
.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus,.admin-category > input:focus { border-color: var(--red-bright); box-shadow: 0 0 0 2px rgba(220,48,55,.12); }
.admin-field input[type=color] { height: 40px; padding: 4px; }
.admin-field small { color: #827878; font-size: 10px; }
.admin-image-row { min-width: 0; display: flex; align-items: center; gap: 9px; }
.admin-image-row > input:not([type=file]) { flex: 1; }
.admin-image-preview { width: 58px; height: 42px; flex: none; border: 1px solid #503034; border-radius: 7px; background: #080606; object-fit: cover; }
.admin-upload { position: relative; overflow: hidden; flex: none; padding: 10px; border: 1px solid #623035; border-radius: 8px; color: #f1dada; background: #241012; font-size: 11px; cursor: pointer; }
.admin-upload input { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.admin-check { display: flex; align-items: center; gap: 9px; color: #ded5d5; font-size: 12px; cursor: pointer; }
.admin-check input { accent-color: var(--red-bright); width: 16px; height: 16px; }
.admin-feature-toggle { padding: 11px 13px; border: 1px solid #533034; border-radius: 9px; background: rgba(183,25,32,.1); }
.admin-category-list,.admin-product-list { display: grid; gap: 8px; }
.admin-category { display: grid; grid-template-columns: minmax(110px, .5fr) minmax(160px, 1.2fr) auto; align-items: center; gap: 12px; padding: 9px; border: 1px solid #2c1c1d; border-radius: 9px; background: #0b0808; }
.admin-category-id { overflow: hidden; color: #817676; font-size: 10px; text-overflow: ellipsis; }
.admin-product { overflow: hidden; border: 1px solid #332224; border-radius: 10px; background: #0a0707; }
.admin-product summary { display: flex; align-items: center; gap: 12px; padding: 10px 12px; cursor: pointer; list-style: none; }
.admin-product summary::-webkit-details-marker { display: none; }
.admin-product summary::after { content: "＋"; margin-left: auto; color: #ba777a; }
.admin-product[open] summary::after { content: "−"; }
.admin-product summary img { width: 58px; height: 37px; border-radius: 5px; object-fit: cover; }
.admin-product summary span { min-width: 0; flex: 1; color: #e9dfdf; font-size: 12px; line-height: 1.4; overflow-wrap: anywhere; }
.admin-product summary small { color: #aaa; font-size: 12px; white-space: nowrap; }
.admin-product > .admin-fields-grid { padding: 14px; border-top: 1px solid #2c1c1d; }
.admin-description-field { grid-column: 1 / -1; }
.admin-savebar { position: sticky; bottom: 0; z-index: 10; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 16px; border: 1px solid #462629; border-radius: 12px; background: rgba(7,5,5,.96); box-shadow: 0 -8px 24px #0008; }
.admin-savebar .login-submit { width: auto; min-width: 220px; }
.admin-savebar .login-note { margin: 0; }
.admin-secondary-button { min-height: 36px; padding: 0 13px; border: 1px solid #643135; border-radius: 8px; background: #241012; color: #f0dede; font-size: 11px; }
.admin-empty { color: #aaa; font-size: 13px; }

.fee-demo-admin-card { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 18px; padding: 20px 22px; border: 1px solid #4b3032; border-radius: 14px; background: linear-gradient(120deg, rgba(65,26,28,.45), rgba(12,8,8,.94)); }
.fee-demo-admin-card h2 { margin: 7px 0; font-size: 17px; }
.fee-demo-admin-card p { margin: 0; color: #a99e9e; font-size: 12px; line-height: 1.5; }
.fee-demo-admin-card .admin-secondary-button { display: inline-flex; flex: none; align-items: center; justify-content: center; text-decoration: none; }
.fee-demo-wrap { width: min(760px, calc(100% - 32px)); display: grid; align-content: start; gap: 16px; padding-top: 30px; }
.fee-demo-notice { position: sticky; top: 8px; z-index: 5; display: grid; gap: 4px; padding: 13px 15px; border: 2px solid #ffd166; border-radius: 10px; background: #241d0d; color: #fff4d2; box-shadow: 0 8px 22px #0009; text-align: center; }
.fee-demo-notice strong { font-size: 12px; letter-spacing: .6px; }
.fee-demo-notice span { color: #f3e7c5; font-size: 11px; line-height: 1.45; }
.fee-demo-card,.fee-demo-guidance { padding: clamp(20px, 5vw, 32px); border: 1px solid #493032; border-radius: 14px; background: rgba(12,8,8,.96); box-shadow: 0 12px 34px #0006; }
.fee-demo-card h1 { margin: 10px 0; font-size: clamp(22px, 5vw, 30px); line-height: 1.2; }
.fee-demo-card > p,.fee-demo-guidance p { color: #c5baba; font-size: 14px; line-height: 1.65; }
.fee-demo-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; margin: 22px 0 8px; }
.fee-demo-fields label,.fee-demo-amount { display: grid; gap: 7px; color: #ded6d6; font-size: 12px; }
.fee-demo-card .login-submit { min-height: 44px; }
.fee-demo-confirmed { border-color: #246b50; }
.fee-demo-confirmed .order-status { margin-bottom: 6px; }
.demo-danger-label { display: inline-flex; padding: 6px 9px; border: 1px solid #ff686e; border-radius: 999px; background: rgba(220,48,55,.15); color: #ff9b9e; font-size: 10px; font-weight: 800; letter-spacing: .7px; }
.demo-fee-quote { display: grid; gap: 10px; margin: 18px 0; padding: 16px; border: 1px dashed #bb343b; border-radius: 10px; background: rgba(143,20,27,.12); }
.demo-fee-quote > strong { color: #fff; line-height: 1.5; }
.demo-fee-quote > span { color: #cbbebe; font-size: 12px; }
.demo-fee-quote > span strong { color: #ff9b9e; font-size: 19px; }
.demo-product-summary { display: flex; align-items: center; gap: 13px; margin: 18px 0; padding: 12px; border: 1px solid #382527; border-radius: 10px; background: #090707; }
.demo-product-summary img { width: 82px; height: 62px; flex: none; border-radius: 7px; object-fit: cover; }
.demo-product-summary div { display: grid; gap: 5px; }
.demo-product-summary strong { color: #fff; font-size: 13px; }
.demo-product-summary span { color: #a99e9e; font-size: 12px; }
.demo-checkout-option { display: grid; gap: 8px; margin-top: 18px; padding: 14px; border: 1px solid #664c20; border-radius: 10px; background: rgba(255,209,102,.07); }
.demo-checkout-option > strong { color: #ffdc87; font-size: 12px; }
.demo-checkout-option p { margin: 0; color: #bfb5a3; font-size: 11px; line-height: 1.5; }
.fee-demo-amount { margin: 16px 0 0; }
.demo-disabled-pay,.demo-disabled-pay:disabled { border: 1px solid #614447; background: #342c2d; color: #c4b9b9; opacity: .72; cursor: not-allowed; }
.fee-demo-blocked { margin: 9px 0 0 !important; color: #ffd166 !important; font-size: 11px !important; }
.fee-demo-card .auth-switch { color: #f0b6b8; }
.fee-demo-guidance h2,.fee-demo-analysis h2 { margin: 0 0 9px; font-size: 17px; }
.fee-demo-guidance a { color: #ff9b9e; font-size: 12px; }
.fee-demo-analysis ul,.fee-demo-analysis ol { display: grid; gap: 10px; padding-left: 22px; color: #d1c6c6; font-size: 13px; line-height: 1.55; }
.fee-demo-analysis h2 { margin-top: 24px; }
.fee-demo-analysis > p { padding: 13px; border-left: 3px solid #ffd166; background: rgba(255,209,102,.08); }

@media (max-width: 700px) {
  .admin-content { width: min(100% - 20px, 1160px); padding-top: 22px; }
  .admin-section { padding: 16px; }
  .admin-fields-grid { grid-template-columns: 1fr; }
  .admin-description-field { grid-column: auto; }
  .admin-category { grid-template-columns: 1fr auto; }
  .admin-category-id { grid-column: 1 / -1; }
  .admin-page-heading,.admin-section-heading { align-items: flex-start; }
  .admin-section-heading { flex-direction: column; }
  .admin-savebar { align-items: stretch; flex-direction: column; }
  .admin-savebar .login-submit { width: 100%; min-width: 0; }
  .gateway-status { align-self: flex-start; }
  .gateway-actions { flex-direction: column; align-items: stretch; }
  .gateway-actions .login-submit,.gateway-actions .admin-secondary-button { width: 100%; min-width: 0; }
  .admin-image-row { flex-wrap: wrap; }
  .fee-demo-admin-card { align-items: stretch; flex-direction: column; padding: 16px; }
  .fee-demo-admin-card .admin-secondary-button { width: 100%; }
  .fee-demo-wrap { width: min(100% - 20px, 760px); padding-top: 18px; }
  .fee-demo-fields { grid-template-columns: 1fr; }
}

/* Responsive checkout and payment states */
.checkout-page .breadcrumbs { margin-bottom: 18px; }
.checkout-columns { display: grid; grid-template-columns: minmax(270px,.92fr) minmax(300px,1.2fr) minmax(245px,.82fr); align-items: start; gap: 16px; }
.checkout-panel { min-width: 0; overflow: hidden; border: 1px solid #29292d; border-radius: 11px; background: #0d0e10; }
.checkout-panel > h2,.checkout-summary > h2,.support-card > h2,.pix-help-card > h2 { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 52px; margin: 0; padding: 0 16px; border-bottom: 1px solid #29292d; font-size: 15px; font-weight: 500; }
.checkout-panel > h2 span,.checkout-summary > h2 span { color: #9b9999; font-size: 11px; font-weight: 400; }
.checkout-panel-body { padding: 16px; }
.payment-method-choice { display: flex; min-height: 58px; align-items: center; gap: 10px; margin-bottom: 17px; padding: 10px 12px; border: 1px solid #b79a00; border-radius: 10px; background: rgba(180,145,0,.09); }
.payment-method-choice > .pix-icon { width: 23px; height: 23px; }
.payment-method-choice > span:nth-child(2) { display: grid; gap: 3px; }
.payment-method-choice strong { font-size: 13px; font-weight: 500; }
.payment-method-choice small { color: #a69e8e; font-size: 11px; }
.method-selected { display: grid; width: 20px; height: 20px; place-items: center; margin-left: auto; border-radius: 50%; background: #dfbb00; color: #171717; font-size: 12px; }
#checkout-form > label { display: block; margin: 13px 0 7px; color: #ddd; font-size: 12px; }
#checkout-form .email-input { margin: 0; border-color: #36363a; background: #0a0b0c; }
#checkout-form .field-error { min-height: 0; margin: 4px 0 0; color: #ff777c; font-size: 11px; }
#checkout-form .login-submit { min-height: 44px; background: #f1f2f6; color: #111; }
#checkout-form .checkout-terms { margin: 10px 0 0; }
.checkout-products .checkout-panel-body { padding: 8px 16px; }
.checkout-product-row { display: grid; grid-template-columns: 78px minmax(0,1fr) auto; align-items: center; gap: 10px; min-width: 0; padding: 10px 0; border-bottom: 1px solid #29292d; }
.checkout-product-row:last-child { border-bottom: 0; }
.checkout-product-row img { width: 78px; aspect-ratio: 16/9; border-radius: 6px; object-fit: cover; background: #151515; }
.checkout-product-row > div { display: grid; gap: 4px; min-width: 0; }
.checkout-product-row strong { min-width: 0; color: #f4f1f1; font-size: 12px; font-weight: 500; line-height: 1.4; overflow-wrap: anywhere; }
.checkout-product-row small { color: #9d9999; font-size: 11px; }
.checkout-product-row > b { font-size: 13px; font-weight: 500; white-space: nowrap; }
.checkout-products .checkout-remove { justify-self: start; margin-top: 1px; font-size: 11px; }
.checkout-summary { position: sticky; top: 16px; padding: 0 15px 13px; border-color: #29292d; background: #0d0e10; }
.checkout-summary > h2 { margin: 0 -15px 8px; }
.checkout-summary .summary-line { margin: 13px 0; }
.checkout-summary .summary-line.total { border-color: #29292d; }
.checkout-back-link { display: inline-flex; margin: 12px 2px 0; color: #d2baba; font-size: 12px; text-decoration: underline; text-underline-offset: 3px; }
.pix-summary { display: inline-flex; align-items: center; gap: 5px; color: #eee; }
.pix-summary .pix-icon { width: 20px; height: 20px; }
.checkout-login-required { min-height: 65vh; display: grid; place-items: center; }
.checkout-login-required .empty-cart { width: min(480px,100%); }
.payment-page { padding-top: 23px; }
.checkout-progress { display: flex; justify-content: center; margin: 0 auto 34px; padding: 0; list-style: none; }
.checkout-progress li { position: relative; display: grid; flex: 0 1 235px; justify-items: center; gap: 8px; color: #8b8989; }
.checkout-progress li:not(:last-child)::after { position: absolute; z-index: 0; top: 10px; left: calc(50% + 14px); width: calc(100% - 28px); height: 2px; background: #343438; content: ""; }
.checkout-progress li.complete:not(:last-child)::after { background: #1cc88a; }
.checkout-progress li > span { position: relative; z-index: 1; display: grid; width: 21px; height: 21px; place-items: center; border-radius: 50%; background: #292a2d; color: #999; font-size: 11px; }
.checkout-progress li.active > span { outline: 4px solid rgba(236,185,16,.18); background: #efb60c; color: #171717; font-size: 0; }
.checkout-progress li.complete > span { background: #18c886; color: #071a13; font-weight: 800; }
.checkout-progress li small { font-size: 11px; }
.checkout-progress li.active small { color: #f2c313; font-weight: 700; }
.payment-layout { display: grid; grid-template-columns: minmax(0,1.38fr) minmax(290px,.82fr); align-items: start; gap: 16px; }
.order-main-stack { display: grid; gap: 14px; min-width: 0; }
.checkout-order-heading { display: flex; min-height: 41px; align-items: center; justify-content: space-between; padding: 0 16px; border-bottom: 1px solid #29292d; color: #aaa; font-size: 11px; }
.order-automation { color: #e2b80c; }
.checkout-order-detail > .checkout-product-row { margin: 0 16px; grid-template-columns: 88px minmax(0,1fr); }
.checkout-order-detail > .checkout-product-row img { width: 88px; }
.pix-payment-area { display: grid; justify-items: center; padding: 14px 16px 18px; border-top: 1px solid #25262a; }
.payment-status-note { display: grid; justify-items: center; gap: 5px; margin-bottom: 12px; text-align: center; }
.payment-status-note strong { color: #f1c10c; font-size: 14px; }
.payment-status-note span { color: #9b9999; font-size: 11px; line-height: 1.5; }
.payment-status-note.is-expired strong { color: #ff8587; }
.pix-qr-frame { position: relative; display: grid; width: min(280px,78vw); aspect-ratio: 1; place-items: center; margin: 8px auto 12px; padding: 14px; border-radius: 11px; background: #fff; }
.pix-qr { display: grid; width: 100%; height: 100%; place-items: center; }
.pix-qr svg { display: block; width: 100%; height: 100%; shape-rendering: crispEdges; }
.pix-qr-corner { position: absolute; width: 24px; height: 24px; border-color: #927000; border-style: solid; }
.pix-qr-corner.top-left { top: -8px; left: -8px; border-width: 2px 0 0 2px; }
.pix-qr-corner.top-right { top: -8px; right: -8px; border-width: 2px 2px 0 0; }
.pix-qr-corner.bottom-left { bottom: -8px; left: -8px; border-width: 0 0 2px 2px; }
.pix-qr-corner.bottom-right { right: -8px; bottom: -8px; border-width: 0 2px 2px 0; }
.pix-qr-error { color: #333; font-size: 12px; text-align: center; }
.pix-scan-hint { margin: 3px 0 14px; color: #aaa; font-size: 11px; text-align: center; }
.pix-payment-area .or-line { width: 100%; margin: 10px 0 2px; }
.pix-payment-area .or-line span { white-space: nowrap; }
.pix-payment-area .pix-code-label { width: 100%; }
.pix-payment-area .pix-code { min-height: 76px; resize: none; background: #090a0b; }
.pix-payment-area .checkout-button { min-height: 44px; margin-top: 12px; background: #f1f2f6; color: #111; }
.verify-payment-button { justify-content: center; width: 100%; min-height: 40px; margin-top: 11px; padding: 9px; border: 1px solid #303034; border-radius: 8px; background: #151619; color: #d6d2d2; text-align: center; text-decoration: none; }
.checkout-order-aside { display: grid; gap: 14px; min-width: 0; }
.checkout-order-aside .summary-card { border-color: #29292d; background: #0d0e10; }
.checkout-order-aside .summary-card > h2 { margin: -18px -18px 8px; padding: 0 16px; border-bottom: 1px solid #29292d; }
.checkout-order-aside .checkout-product-row { grid-template-columns: 70px minmax(0,1fr); }
.checkout-order-aside .checkout-product-row img { width: 70px; }
.order-metadata { display: grid; gap: 10px; margin-top: 9px; padding: 13px 0; border-top: 1px solid #29292d; border-bottom: 1px solid #29292d; }
.order-metadata > div { display: flex; justify-content: space-between; gap: 10px; min-width: 0; color: #a29d9d; font-size: 11px; }
.order-metadata strong { max-width: 68%; overflow: hidden; color: #eee; font-size: 11px; font-weight: 400; text-align: right; text-overflow: ellipsis; white-space: nowrap; }
.order-metadata .transaction-id { max-width: 68%; padding: 3px 7px; border: 1px solid #3b3b40; border-radius: 6px; }
.checkout-order-aside .summary-line.total { padding-top: 12px; border: 0; }
.pending-total { color: #f2bc12; font-size: 17px; }
.paid-total { color: #1dc88a; font-size: 17px; }
.pix-help-card { padding-bottom: 12px; }
.pix-help-card ol { display: grid; gap: 10px; margin: 14px 16px; padding-left: 18px; color: #aaa; font-size: 11px; line-height: 1.55; }
.pix-help-card li::marker { color: #d4ad0a; }
.pix-help-card li strong { color: #eee; }
.pix-help-card > p { margin: 0 16px; color: #888; font-size: 10px; line-height: 1.5; }
.paid-order-banner { display: flex; align-items: center; gap: 12px; max-width: 740px; margin: 0 auto 20px; padding: 14px 17px; border: 1px solid rgba(33,190,135,.38); border-radius: 10px; background: rgba(20,136,96,.1); }
.paid-check { display: grid; width: 30px; height: 30px; flex: none; place-items: center; border-radius: 50%; background: #19c886; color: #05150e; font-weight: 800; }
.paid-order-banner h1 { margin: 0 0 4px; color: #e8fff6; font-size: 16px; }
.paid-order-banner p { margin: 0; color: #91b8a8; font-size: 11px; }
.fulfillment-card { margin: 7px 15px 15px; padding: 14px; border: 1px solid #282a2c; border-radius: 10px; background: #101113; }
.fulfillment-card h2 { margin: 0 0 10px; font-size: 13px; font-weight: 500; }
.fulfillment-email,.fulfillment-safety { margin: 8px 0; color: #b4b0b0; font-size: 11px; line-height: 1.55; overflow-wrap: anywhere; }
.fulfillment-email strong { color: #fff; font-weight: 500; }
.fulfilled-item { margin-top: 12px; padding: 10px; border: 1px solid #282a2c; border-radius: 8px; }
.fulfilled-item > span { color: #aaa; font-size: 10px; }
.fulfillment-link { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; margin-top: 10px; padding: 9px 13px; border-radius: 7px; background: #19c886; color: #06150e; font-size: 12px; font-weight: 700; text-decoration: none; }
.fulfillment-link:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.fulfilled-item ul { display: grid; gap: 5px; margin: 8px 0 0; padding-left: 16px; color: #eee; font-size: 11px; line-height: 1.45; }
.fulfillment-safety { margin-bottom: 0; color: #86c4a8; }
.support-card > div { display: flex; align-items: center; gap: 11px; padding: 13px 15px; }
.support-card p { display: grid; gap: 4px; margin: 0; color: #ddd; font-size: 11px; }
.support-card a { color: #e8bf11; font-size: 11px; text-decoration: none; }
.support-icon { display: grid; width: 38px; height: 38px; flex: none; place-items: center; border-radius: 50%; background: #222326; color: #ddd; font-size: 19px; }
@media (max-width: 800px) {
  .checkout-columns { grid-template-columns: minmax(0,1fr) minmax(260px,.8fr); }
  .checkout-information,.checkout-products { grid-column: 1; }
  .checkout-summary { grid-column: 2; grid-row: 1 / span 2; }
  .payment-layout { grid-template-columns: minmax(0,1fr) minmax(260px,.8fr); }
}
@media (max-width: 560px) {
  .checkout-columns,.payment-layout { grid-template-columns: minmax(0,1fr); gap: 13px; }
  .checkout-information,.checkout-products,.checkout-summary { grid-column: auto; grid-row: auto; }
  .checkout-summary { position: static; }
  .checkout-panel > h2,.checkout-summary > h2,.support-card > h2,.pix-help-card > h2 { min-height: 48px; padding-right: 13px; padding-left: 13px; font-size: 14px; }
  .checkout-panel-body { padding: 13px; }
  .checkout-products .checkout-panel-body { padding: 7px 12px; }
  .checkout-product-row { grid-template-columns: 66px minmax(0,1fr) auto; gap: 8px; }
  .checkout-product-row img { width: 66px; }
  .checkout-order-detail > .checkout-product-row { margin: 0 12px; grid-template-columns: 74px minmax(0,1fr); }
  .checkout-order-detail > .checkout-product-row img { width: 74px; }
  .checkout-progress { margin-bottom: 23px; }
  .checkout-progress li { flex-basis: 33.333%; }
  .checkout-progress li small { font-size: 10px; }
  .payment-page { padding-top: 18px; }
  .paid-order-banner { margin-bottom: 14px; padding: 12px; }
  .paid-order-banner h1 { font-size: 15px; }
  .fulfillment-card { margin: 7px 11px 12px; padding: 12px; }
  .detail-title { overflow-wrap: anywhere; }
  .order-metadata > div { align-items: flex-start; }
  .order-metadata strong { min-width: 0; overflow: visible; text-overflow: clip; white-space: normal; overflow-wrap: anywhere; }
  .order-metadata .transaction-id { overflow-wrap: anywhere; }
}

@media (hover: none) {
  .product-card:hover { transform: none; }
  .product-card:hover .product-thumb img { transform: none; }
  .product-card, .product-thumb img { transition: none; }
}

