:root {
  --bg: #f5f5f2;
  --surface: #ffffff;
  --ink: #171717;
  --muted: #6b6b66;
  --line: #dfdfd9;
  --dark: #111111;
  --accent: #ffd629;
  --accent-soft: #fff4b8;
  --green: #168a52;
  --danger: #b33131;
  --radius: 18px;
  --shadow: 0 18px 50px rgba(0,0,0,.08);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--ink); background: var(--bg); }
body.no-scroll { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .45; }
.container { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.hidden { display: none !important; }
.muted { color: var(--muted); }
.eyebrow { display: inline-block; font-size: 12px; font-weight: 900; letter-spacing: .14em; color: var(--accent); }
.eyebrow.dark { color: #817000; }

.site-header, .admin-header { position: sticky; top: 0; z-index: 50; background: rgba(17,17,17,.97); color: white; border-bottom: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(12px); }
.header-inner, .admin-header-inner { min-height: 72px; display: flex; align-items: center; gap: 34px; }
.brand { display: inline-flex; align-items: center; gap: 8px; font-weight: 950; letter-spacing: -.03em; }
.brand-mark { display: inline-flex; align-items: center; justify-content: center; min-width: 38px; height: 38px; padding: 0 7px; background: var(--accent); color: #111; border-radius: 9px; transform: skew(-7deg); }
.brand-name { font-size: 21px; }
.main-nav { display: flex; gap: 24px; margin-left: 12px; font-size: 14px; color: #ddd; }
.main-nav a:hover { color: var(--accent); }
.cart-button { margin-left: auto; border: 1px solid rgba(255,255,255,.16); background: #202020; color: white; border-radius: 999px; padding: 10px 14px; display: inline-flex; align-items: center; gap: 8px; }
.cart-count { background: var(--accent); color: #111; min-width: 23px; height: 23px; border-radius: 999px; display: inline-grid; place-items: center; font-weight: 900; font-size: 12px; }

.hero { background: radial-gradient(circle at 72% 40%, #403816 0, #171717 28%, #0d0d0d 65%); color: white; overflow: hidden; }
.hero-grid { min-height: 475px; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 40px; padding: 58px 0; }
.hero h1 { font-size: clamp(44px, 6vw, 76px); line-height: .96; letter-spacing: -.055em; margin: 14px 0 20px; max-width: 650px; }
.hero h1 span { color: var(--accent); }
.hero-copy > p { max-width: 630px; color: #c9c9c9; font-size: 18px; line-height: 1.65; }
.hero-actions { display: flex; gap: 12px; margin-top: 28px; flex-wrap: wrap; }
.benefits { display: flex; gap: 22px; color: #bfbfbf; font-size: 13px; margin-top: 30px; flex-wrap: wrap; }
.hero-card { min-height: 360px; position: relative; display: grid; place-items: center; }
.card-glow { position: absolute; width: 300px; height: 300px; border-radius: 50%; background: var(--accent); filter: blur(90px); opacity: .22; }
.mini-card { position: absolute; width: 190px; height: 265px; border-radius: 18px; display: grid; place-items: center; font-weight: 950; border: 1px solid rgba(255,255,255,.2); box-shadow: 0 30px 80px rgba(0,0,0,.45); }
.mini-card span { font-size: 28px; letter-spacing: -.04em; }
.c1 { transform: translate(-100px, 20px) rotate(-14deg); background: linear-gradient(150deg,#393939,#171717 60%,#6f5b00); color: var(--accent); }
.c2 { z-index: 2; transform: translate(5px,-18px) rotate(1deg); background: linear-gradient(150deg,#ffdf3f,#bc9400 58%,#292104); color: #111; }
.c3 { transform: translate(110px,25px) rotate(15deg); background: linear-gradient(150deg,#2c2c2c,#111 58%,#827000); color: white; }

.btn { border: 0; border-radius: 11px; padding: 13px 18px; font-weight: 850; display: inline-flex; align-items: center; justify-content: center; gap: 8px; transition: .18s ease; }
.btn:hover { transform: translateY(-1px); }
.btn-primary { background: var(--accent); color: #111; }
.btn-dark { background: var(--dark); color: white; }
.btn-ghost { background: rgba(255,255,255,.08); color: white; border: 1px solid rgba(255,255,255,.15); }
.btn-light { background: white; color: var(--ink); border: 1px solid var(--line); }
.btn-small { padding: 10px 14px; font-size: 13px; }
.btn-whatsapp { width: 100%; background: #1fa463; color: white; margin-top: 12px; }
.btn-add { background: var(--dark); color: white; flex: 1; }
.text-button { border: 0; background: transparent; color: var(--ink); font-weight: 800; }
.text-button.danger { color: var(--danger); width: 100%; margin-top: 12px; }

.collections-section, .products-section, .steps-section { padding: 64px 0; }
.collections-section { background: #efefe9; }
.products-section { background: var(--bg); }
.section-head { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 26px; }
.section-head h2 { font-size: 32px; margin: 6px 0 0; letter-spacing: -.035em; }
.section-head.centered { justify-content: center; text-align: center; }
.collection-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.collection-card { position: relative; min-height: 215px; border: 1px solid #d9d9d2; background: white; border-radius: var(--radius); padding: 0; text-align: left; display: flex; flex-direction: column; overflow: hidden; transition: .2s ease; }
.collection-card:hover { transform: translateY(-3px); box-shadow: var(--shadow); }
.collection-card.selected { border-color: #b39700; box-shadow: 0 0 0 2px var(--accent) inset; }
.collection-cover { position: relative; height: 126px; background: linear-gradient(145deg,#171717,#2b260d); overflow: hidden; }
.collection-cover::after { content:''; position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.28),transparent 55%); pointer-events:none; }
.collection-cover img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .25s ease; }
.collection-card:hover .collection-cover img { transform:scale(1.035); }
.collection-fallback { width:100%; height:100%; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:0; background:radial-gradient(circle at 70% 35%,#5d5016 0,#201d12 30%,#121212 72%); color:white; }
.collection-fallback span { color:var(--accent) !important; font-size:34px !important; font-weight:950; letter-spacing:-.06em; margin:0 !important; }
.collection-fallback small { font-size:10px; font-weight:900; letter-spacing:.22em; color:#ddd; margin-left:.22em; }
.collection-index { position:absolute; left:12px; top:12px; z-index:3; background:rgba(17,17,17,.82); color:var(--accent); border:1px solid rgba(255,255,255,.14); border-radius:999px; padding:5px 8px; font-size:10px; font-weight:900; }
.collection-info { position:relative; flex:1; padding:15px 44px 15px 16px; display:flex; flex-direction:column; justify-content:center; }
.collection-info strong { font-size:17px; line-height:1.2; }
.collection-info span { color:var(--muted); font-size:12px; margin-top:5px; }
.collection-info b { position:absolute; right:16px; bottom:18px; font-size:20px; }

.products-head { align-items: center; }
.search-box { display: flex; align-items: center; gap: 8px; border: 1px solid var(--line); background: white; padding: 0 14px; border-radius: 12px; min-width: 290px; }
.search-box input { border: 0; outline: 0; background: transparent; width: 100%; padding: 13px 0; }
.filters { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)) auto; gap: 10px; align-items: end; margin-bottom: 26px; }
.filters label, .product-form label, .settings-grid label, .cep-field { display: flex; flex-direction: column; gap: 7px; font-size: 12px; font-weight: 800; color: #555; }
.filters select, .product-form input, .product-form select, .product-form textarea, .settings-grid input, .admin-search, .admin-search-row select, .cep-field input { width: 100%; border: 1px solid var(--line); border-radius: 10px; background: white; padding: 11px 12px; color: var(--ink); outline: none; }
.filters select:focus, .product-form input:focus, .product-form select:focus, .product-form textarea:focus, .settings-grid input:focus, .admin-search:focus, .cep-field input:focus { border-color: #b59b00; box-shadow: 0 0 0 3px rgba(255,214,41,.18); }
.product-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.product-card { background: white; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; transition: .2s ease; }
.product-card:hover { transform: translateY(-3px); box-shadow: var(--shadow); }
.product-image { min-height: 225px; background: #efefe9; display: grid; place-items: center; padding: 18px; position: relative; overflow: hidden; }
.product-image > img { width: 100%; height: 225px; object-fit: contain; }
.generated-art { width: 152px; height: 198px; border-radius: 14px; background: linear-gradient(145deg,#111 0 62%,#2a2405); color: white; position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; box-shadow: 0 22px 45px rgba(0,0,0,.2); border: 1px solid #3d3d3d; overflow: hidden; }
.generated-art::before { content:''; position:absolute; inset:-30px; background: conic-gradient(from 40deg, transparent 0 25%, rgba(255,214,41,.34), transparent 48% 70%, rgba(255,255,255,.08)); }
.generated-art strong { position: relative; z-index: 2; color: var(--accent); font-size: 36px; letter-spacing: -.05em; }
.generated-art small { position: relative; z-index: 2; text-align:center; max-width: 120px; color:#ddd; margin-top: 8px; }
.art-chip { position:absolute; left:10px; top:10px; z-index:2; background:var(--accent); color:#111; padding:4px 7px; border-radius:999px; font-size:9px; font-weight:900; }
.art-orb { position:absolute; width:105px; height:105px; border-radius:50%; border:12px solid rgba(255,214,41,.16); }
.soldout-badge { position: absolute; right: 14px; top: 14px; background: #272727; color: white; border-radius: 999px; padding: 6px 9px; font-size: 11px; font-weight: 900; }
.product-body { padding: 18px; }
.product-meta { display: flex; gap: 7px; flex-wrap: wrap; }
.product-meta span { font-size: 10px; font-weight: 850; background: #f1f1ec; color: #5e5e58; padding: 5px 7px; border-radius: 6px; }
.product-card h3 { font-size: 17px; line-height: 1.3; margin: 12px 0 7px; }
.product-desc { color: var(--muted); font-size: 13px; min-height: 34px; margin: 0 0 15px; }
.product-price-row { display: flex; align-items: end; justify-content: space-between; gap: 10px; margin-bottom: 14px; }
.product-price-row strong { font-size: 22px; letter-spacing: -.04em; }
.product-price-row span { color: var(--muted); font-size: 11px; }
.add-row { display: flex; gap: 9px; }
.qty-control { display: inline-flex; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; background: white; height: 42px; }
.qty-control button { width: 34px; border: 0; background: #f5f5f0; font-weight: 900; }
.qty-control input { width: 36px; border: 0; text-align: center; appearance: textfield; outline: 0; }
.qty-control input::-webkit-inner-spin-button { appearance: none; }
.qty-control.compact { height: 32px; }
.qty-control.compact button { width: 28px; }
.qty-control.compact span { display: grid; place-items: center; width: 28px; font-size: 12px; }
.empty-state { text-align:center; padding: 70px 20px; background:white; border:1px dashed #ccc; border-radius:var(--radius); }
.empty-icon { font-size:38px; }

.steps-section { background: white; }
.steps-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.steps-grid article { border: 1px solid var(--line); border-radius: var(--radius); padding: 24px; }
.step-number { display: grid; place-items:center; width:34px; height:34px; border-radius:9px; background:var(--accent); font-weight:950; }
.steps-grid h3 { margin: 18px 0 8px; }
.steps-grid p { color:var(--muted); line-height:1.5; font-size:14px; margin:0; }
.community-section { padding: 0 0 64px; background:white; }
.community-card { background:#111; color:white; border-radius:24px; padding:42px; display:flex; align-items:center; justify-content:space-between; gap:32px; }
.community-card h2 { font-size:38px; margin:7px 0 10px; }
.community-card p { max-width:700px; color:#bbb; line-height:1.6; }
.site-footer { background:#0d0d0d; color:#bdbdbd; padding:32px 0; }
.footer-inner { display:flex; justify-content:space-between; align-items:center; gap:30px; }
.footer-brand { color:white; }
.footer-inner p { margin:9px 0 0; font-size:13px; }
.footer-links { display:flex; gap:22px; font-size:13px; }

.overlay { position:fixed; inset:0; background:rgba(0,0,0,.46); z-index:80; }
.cart-drawer { position:fixed; top:0; right:0; width:min(460px,100%); height:100%; background:white; z-index:90; transform:translateX(102%); transition:.24s ease; box-shadow:-25px 0 70px rgba(0,0,0,.2); display:flex; flex-direction:column; }
.cart-drawer.open { transform:translateX(0); }
.cart-header { display:flex; justify-content:space-between; align-items:center; padding:22px; border-bottom:1px solid var(--line); }
.cart-header h2 { margin:4px 0 0; }
.icon-button { width:40px; height:40px; border:0; border-radius:10px; background:#eee; font-size:24px; }
.cart-items { padding:10px 22px; overflow:auto; flex:1; }
.cart-empty { display:flex; flex:1; align-items:center; justify-content:center; flex-direction:column; gap:8px; color:var(--muted); padding:40px; text-align:center; }
.cart-empty > div { font-size:40px; }
.cart-item { display:grid; grid-template-columns:72px 1fr; gap:12px; padding:14px 0; border-bottom:1px solid var(--line); }
.cart-thumb { height:72px; background:#efefe9; border-radius:10px; display:grid; place-items:center; overflow:hidden; }
.cart-thumb .generated-art { width:48px; height:62px; border-radius:5px; }
.cart-thumb .generated-art strong { font-size:12px; }
.cart-thumb .generated-art small, .cart-thumb .art-chip, .cart-thumb .art-orb { display:none; }
.cart-thumb img { width:100%; height:100%; object-fit:contain; }
.cart-item-info { min-width:0; }
.cart-item-info > strong { font-size:13px; display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cart-item-info > span { color:var(--muted); font-size:11px; }
.cart-item-bottom { display:grid; grid-template-columns:auto 1fr auto; gap:8px; align-items:center; margin-top:10px; }
.cart-item-bottom > strong { text-align:right; font-size:13px; }
.remove-button { border:0; background:transparent; color:var(--danger); font-size:18px; }
.cart-summary { border-top:1px solid var(--line); padding:18px 22px 22px; background:#fafaf7; }
.cep-field small { font-weight:600; }
.shipping-note { font-size:11px; color:var(--muted); margin:8px 0 16px; }
.summary-row { display:flex; justify-content:space-between; margin:8px 0; }
.summary-row.total { border-top:1px solid var(--line); padding-top:12px; font-size:17px; }
.toast { position:fixed; left:50%; bottom:24px; transform:translate(-50%,20px); background:#171717; color:white; padding:12px 16px; border-radius:10px; opacity:0; pointer-events:none; transition:.2s ease; z-index:120; box-shadow:var(--shadow); max-width:min(90vw,520px); text-align:center; }
.toast.show { opacity:1; transform:translate(-50%,0); }

/* Admin */
.admin-page { background:#f1f1ed; }
.admin-header-inner { color:white; }
.admin-title { font-weight:750; color:#cfcfcf; border-left:1px solid #444; padding-left:22px; }
.admin-header .btn { margin-left:auto; }
.admin-main { padding:34px 0 70px; }
.admin-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:34px; }
.admin-stats article { background:white; border:1px solid var(--line); border-radius:15px; padding:18px; }
.admin-stats span { display:block; color:var(--muted); font-size:12px; margin-bottom:8px; }
.admin-stats strong { font-size:27px; letter-spacing:-.04em; }
.admin-toolbar { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:18px; }
.admin-toolbar h1 { font-size:34px; margin:4px 0 0; }
.admin-toolbar p { margin:6px 0 0; }
.admin-panel, .settings-panel { background:white; border:1px solid var(--line); border-radius:18px; padding:18px; }
.admin-search-row { display:flex; gap:10px; margin-bottom:14px; }
.admin-search { flex:1; }
.admin-search-row select { width:170px; }
.table-wrap { overflow:auto; }
.admin-table { width:100%; border-collapse:collapse; font-size:13px; }
.admin-table th { text-align:left; color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:.06em; padding:12px 10px; border-bottom:1px solid var(--line); }
.admin-table td { padding:12px 10px; border-bottom:1px solid #ededeb; vertical-align:middle; }
.admin-product-cell { display:flex; align-items:center; gap:10px; min-width:250px; }
.admin-product-cell span { display:block; color:var(--muted); font-size:11px; margin-top:3px; }
.admin-thumb { width:44px; height:44px; border-radius:8px; background:#eee; display:grid; place-items:center; overflow:hidden; }
.admin-thumb .generated-art { width:32px; height:40px; border-radius:4px; }
.admin-thumb .generated-art strong { font-size:9px; }
.admin-thumb .generated-art small, .admin-thumb .art-chip, .admin-thumb .art-orb { display:none; }
.admin-thumb img { width:100%; height:100%; object-fit:contain; }
.table-actions { display:flex; gap:8px; justify-content:flex-end; white-space:nowrap; }
.table-actions button { border:0; background:transparent; font-weight:750; font-size:12px; }
.danger-link { color:var(--danger); }
.table-empty { text-align:center; color:var(--muted); padding:40px !important; }
.status-pill { display:inline-flex; border-radius:999px; padding:5px 8px; font-size:10px; font-weight:850; }
.active-status { background:#e4f6eb; color:#197046; }
.out-status { background:#fff0d3; color:#8a5c00; }
.hidden-status { background:#ededed; color:#666; }
.collection-settings-panel { margin-top:20px; }
.collection-image-rows { display:grid; gap:10px; margin-top:18px; }
.collection-image-row { display:grid; grid-template-columns:76px minmax(180px,1fr) auto auto; gap:14px; align-items:center; border:1px solid var(--line); border-radius:14px; padding:10px; background:#fafaf7; }
.collection-admin-preview { width:76px; height:58px; border-radius:10px; overflow:hidden; background:#ecece7; display:grid; place-items:center; }
.collection-admin-preview img { width:100%; height:100%; object-fit:cover; }
.collection-mini-fallback { width:100%; height:100%; background:linear-gradient(145deg,#111,#342d0d); color:white; display:grid; place-items:center; align-content:center; }
.collection-mini-fallback strong { color:var(--accent); font-size:19px; line-height:1; }
.collection-mini-fallback span { font-size:7px; letter-spacing:.18em; margin-top:3px; }
.collection-admin-info strong { display:block; font-size:14px; }
.collection-admin-info span { display:block; color:var(--muted); font-size:11px; margin-top:4px; }
.collection-upload { display:inline-flex; align-items:center; justify-content:center; white-space:nowrap; }
.collection-image-row .text-button.danger { width:auto; margin:0; padding:8px 5px; font-size:12px; }
.settings-panel { margin-top:20px; }
.settings-panel h2 { margin:4px 0 8px; }
.settings-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:20px 0 14px; }
.modal { position:fixed; inset:0; background:rgba(0,0,0,.55); z-index:100; display:grid; place-items:center; padding:20px; }
.modal-card { width:min(720px,100%); max-height:92vh; overflow:auto; background:white; border-radius:20px; padding:22px; box-shadow:0 25px 90px rgba(0,0,0,.28); }
.modal-head { display:flex; justify-content:space-between; align-items:start; }
.modal-head h2 { margin:4px 0 0; }
.product-form { margin-top:20px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.product-form .full { margin-bottom:12px; }
.product-form textarea { resize:vertical; }
.product-form small { color:var(--muted); font-weight:500; }
.image-preview { min-height:70px; border:1px dashed #cfcfc9; border-radius:12px; display:flex; align-items:center; gap:12px; padding:10px; color:var(--muted); font-size:12px; }
.image-preview img { width:70px; height:70px; object-fit:contain; background:#f2f2ee; border-radius:8px; }
.image-preview button { border:0; background:#eee; border-radius:8px; padding:8px; }
.modal-actions { display:flex; justify-content:flex-end; gap:10px; margin-top:18px; }

@media (max-width: 900px) {
  .main-nav { display:none; }
  .hero-grid { grid-template-columns:1fr; min-height:auto; padding:48px 0 28px; }
  .hero-card { min-height:300px; }
  .collection-cards { grid-template-columns:repeat(2,1fr); }
  .product-grid { grid-template-columns:repeat(2,1fr); }
  .filters { grid-template-columns:repeat(2,1fr); }
  .filters .btn { align-self:stretch; }
  .steps-grid { grid-template-columns:repeat(2,1fr); }
  .admin-stats { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 620px) {
  .container { width:min(100% - 24px,1180px); }
  .header-inner { min-height:64px; }
  .cart-label { display:none; }
  .hero h1 { font-size:48px; }
  .hero-card { min-height:245px; transform:scale(.82); margin:-20px 0; }
  .section-head, .products-head { align-items:stretch; flex-direction:column; }
  .search-box { min-width:0; width:100%; }
  .collection-cards, .product-grid, .steps-grid, .admin-stats { grid-template-columns:1fr; }
  .filters { grid-template-columns:1fr 1fr; }
  .add-row { align-items:stretch; }
  .community-card { flex-direction:column; align-items:flex-start; padding:28px; }
  .community-card h2 { font-size:31px; }
  .footer-inner { flex-direction:column; align-items:flex-start; }
  .footer-links { flex-wrap:wrap; }
  .admin-title { display:none; }
  .admin-toolbar { flex-direction:column; align-items:stretch; }
  .admin-search-row { flex-direction:column; }
  .admin-search-row select { width:100%; }
  .settings-grid, .form-grid { grid-template-columns:1fr; }
  .collection-image-row { grid-template-columns:64px 1fr; }
  .collection-admin-preview { width:64px; height:52px; }
  .collection-upload, .collection-image-row .text-button.danger { grid-column:2; justify-self:start; }
}


/* =========================================================
   TH ARENA TCG — VISUAL V3 (site público)
   Mantém o painel admin claro e altera apenas a loja.
   ========================================================= */
body:not(.admin-page) {
  background:#07090d;
  color:#f6f7f8;
}
body:not(.admin-page) .muted { color:#9298a3; }
body:not(.admin-page) .eyebrow.dark { color:#f6c817; }
body:not(.admin-page) .site-header {
  background:rgba(4,8,15,.96);
  border-bottom:1px solid rgba(246,200,23,.18);
  box-shadow:0 12px 35px rgba(0,0,0,.24);
}
body:not(.admin-page) .header-inner { min-height:76px; }
.brand-logo { display:inline-flex; align-items:center; min-width:0; }
.brand-logo img {
  display:block;
  width:230px;
  max-height:58px;
  object-fit:contain;
  object-position:left center;
}
.admin-brand-logo img { width:190px; max-height:48px; }
body:not(.admin-page) .main-nav {
  color:#eef0f3;
  font-weight:720;
  gap:28px;
}
body:not(.admin-page) .main-nav a { position:relative; padding:28px 0 25px; }
body:not(.admin-page) .main-nav a::after {
  content:'';
  position:absolute;
  left:50%; right:50%; bottom:18px;
  height:2px;
  background:linear-gradient(90deg,#f3bd00,#ffe46b);
  box-shadow:0 0 14px rgba(255,208,31,.75);
  transition:.2s ease;
}
body:not(.admin-page) .main-nav a:hover::after { left:0; right:0; }
body:not(.admin-page) .cart-button {
  background:linear-gradient(180deg,#151a22,#0b0f16);
  border-color:rgba(246,200,23,.24);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02);
}
body:not(.admin-page) .cart-button:hover { border-color:rgba(246,200,23,.58); }
body:not(.admin-page) .cart-count {
  background:#f6c817;
  box-shadow:0 0 20px rgba(246,200,23,.38);
}

body:not(.admin-page) .hero {
  position:relative;
  isolation:isolate;
  background:
    radial-gradient(circle at 78% 50%,rgba(245,192,0,.17),transparent 25%),
    radial-gradient(circle at 62% 110%,rgba(246,200,23,.12),transparent 26%),
    linear-gradient(120deg,#03070d 0%,#070b12 42%,#0d0d0a 70%,#020408 100%);
  border-bottom:1px solid rgba(246,200,23,.16);
}
body:not(.admin-page) .hero::before,
body:not(.admin-page) .hero::after {
  content:'';
  position:absolute;
  pointer-events:none;
  z-index:-1;
}
body:not(.admin-page) .hero::before {
  inset:0;
  opacity:.5;
  background:
    linear-gradient(115deg,transparent 8%,rgba(246,200,23,.10) 8.3%,transparent 8.6% 22%,rgba(246,200,23,.05) 22.2%,transparent 22.5%),
    linear-gradient(295deg,transparent 10%,rgba(246,200,23,.08) 10.2%,transparent 10.5% 38%,rgba(246,200,23,.05) 38.2%,transparent 38.5%);
}
body:not(.admin-page) .hero::after {
  right:-8%; top:6%; width:44%; height:90%;
  background:radial-gradient(ellipse at center,rgba(255,205,31,.18),transparent 67%);
  filter:blur(12px);
}
body:not(.admin-page) .hero-grid {
  min-height:520px;
  grid-template-columns:1fr 1fr;
  gap:28px;
  padding:64px 0 58px;
}
body:not(.admin-page) .hero h1 {
  font-size:clamp(46px,5.6vw,74px);
  text-transform:uppercase;
  font-style:italic;
  line-height:.98;
  max-width:690px;
  text-shadow:0 12px 34px rgba(0,0,0,.38);
}
body:not(.admin-page) .hero h1 span {
  background:linear-gradient(180deg,#ffe875 0%,#f6c817 45%,#cf9400 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  text-shadow:none;
}
body:not(.admin-page) .hero-copy > p { color:#d0d4db; }
body:not(.admin-page) .btn-primary {
  background:linear-gradient(180deg,#ffdf3f,#f1b800);
  box-shadow:0 8px 28px rgba(238,174,0,.24), inset 0 1px rgba(255,255,255,.55);
}
body:not(.admin-page) .btn-primary:hover { box-shadow:0 12px 32px rgba(238,174,0,.34), inset 0 1px rgba(255,255,255,.55); }
body:not(.admin-page) .btn-ghost {
  background:rgba(255,255,255,.035);
  border-color:rgba(246,200,23,.22);
}
body:not(.admin-page) .benefits { color:#c5cad2; }
body:not(.admin-page) .benefits span { position:relative; padding-left:2px; }

/* Banner cards: mais próximos de cards premium de TCG */
body:not(.admin-page) .hero-card {
  min-height:405px;
  perspective:1000px;
  overflow:visible;
}
body:not(.admin-page) .card-glow {
  width:360px; height:240px;
  background:#f6c817;
  filter:blur(105px);
  opacity:.20;
  transform:translateY(75px);
}
body:not(.admin-page) .arena-ring {
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(246,200,23,.38);
  box-shadow:0 0 28px rgba(246,200,23,.14), inset 0 0 28px rgba(246,200,23,.06);
  transform:rotateX(70deg);
}
body:not(.admin-page) .ring-one { width:480px; height:240px; bottom:10px; }
body:not(.admin-page) .ring-two { width:360px; height:180px; bottom:38px; opacity:.65; }
body:not(.admin-page) .stage-light {
  position:absolute;
  width:430px; height:42px;
  bottom:46px;
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(255,211,44,.65),rgba(255,211,44,.12) 46%,transparent 72%);
  filter:blur(10px);
  opacity:.72;
}
body:not(.admin-page) .mini-card {
  width:190px;
  height:276px;
  border-radius:19px;
  padding:8px;
  display:block;
  overflow:hidden;
  border:1px solid rgba(255,218,70,.44);
  box-shadow:0 35px 90px rgba(0,0,0,.58),0 0 26px rgba(246,200,23,.12);
  transition:transform .3s ease;
}
body:not(.admin-page) .mini-card::before {
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:
    linear-gradient(115deg,transparent 12%,rgba(255,255,255,.18) 30%,transparent 46%),
    repeating-linear-gradient(135deg,transparent 0 18px,rgba(255,214,41,.035) 18px 19px);
  pointer-events:none;
}
body:not(.admin-page) .card-frame {
  position:relative;
  height:100%;
  border-radius:13px;
  border:1px solid rgba(255,230,118,.24);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:space-between;
  padding:18px 12px 16px;
  overflow:hidden;
}
body:not(.admin-page) .card-frame::before {
  content:'';
  position:absolute;
  width:150px;height:150px;
  border:18px solid rgba(246,200,23,.10);
  border-radius:50%;
  top:58px;
}
body:not(.admin-page) .card-frame img {
  position:relative;
  z-index:2;
  width:126px;
  height:142px;
  object-fit:cover;
  object-position:left center;
  border-radius:14px;
  opacity:.98;
  box-shadow:0 10px 35px rgba(0,0,0,.22);
}
body:not(.admin-page) .card-kicker,
body:not(.admin-page) .card-label {
  position:relative;
  z-index:3;
  font-size:10px;
  font-weight:950;
  letter-spacing:.18em;
  text-transform:uppercase;
}
body:not(.admin-page) .card-label { color:#f6c817; }
body:not(.admin-page) .c1 {
  transform:translate(-112px,22px) rotate(-13deg);
  background:linear-gradient(145deg,#191b20 0%,#07090d 58%,#332900 100%);
}
body:not(.admin-page) .c2 {
  z-index:3;
  width:205px;
  height:292px;
  transform:translate(0,-22px) rotate(.8deg);
  background:linear-gradient(160deg,#ffe260 0%,#e9b70a 46%,#725000 100%);
  border-color:rgba(255,237,142,.78);
  box-shadow:0 38px 95px rgba(0,0,0,.62),0 0 40px rgba(246,200,23,.22);
}
body:not(.admin-page) .c2 .card-frame { border-color:rgba(24,20,5,.24); }
body:not(.admin-page) .c2 .card-frame img { opacity:0; }
body:not(.admin-page) .c2 .card-frame::after {
  content:'TH';
  position:absolute;
  z-index:3;
  top:92px;
  font-weight:1000;
  font-style:italic;
  font-size:68px;
  letter-spacing:-.12em;
  color:#0b0d11;
  text-shadow:0 2px rgba(255,255,255,.16);
}
body:not(.admin-page) .c2 .dark-label { color:#11151d; }
body:not(.admin-page) .c3 {
  transform:translate(115px,25px) rotate(13deg);
  background:linear-gradient(145deg,#17191e 0%,#06080c 58%,#463900 100%);
}
body:not(.admin-page) .hero-card:hover .c1 { transform:translate(-120px,16px) rotate(-15deg); }
body:not(.admin-page) .hero-card:hover .c2 { transform:translate(0,-28px) rotate(.2deg); }
body:not(.admin-page) .hero-card:hover .c3 { transform:translate(123px,20px) rotate(15deg); }

/* Coleções */
body:not(.admin-page) .collections-section {
  background:linear-gradient(180deg,#080b10,#0a0d12);
  border-bottom:1px solid rgba(255,255,255,.05);
}
body:not(.admin-page) .section-head h2 { color:#f7f8fa; }
body:not(.admin-page) .text-button { color:#f7f8fa; }
body:not(.admin-page) .collection-cards { gap:16px; }
body:not(.admin-page) .collection-card {
  min-height:225px;
  background:#101319;
  color:#f5f6f8;
  border-color:rgba(255,255,255,.09);
  box-shadow:0 16px 38px rgba(0,0,0,.18);
}
body:not(.admin-page) .collection-card:hover {
  border-color:rgba(246,200,23,.44);
  box-shadow:0 20px 50px rgba(0,0,0,.36),0 0 0 1px rgba(246,200,23,.08),0 0 30px rgba(246,200,23,.09);
}
body:not(.admin-page) .collection-card.selected {
  border-color:#f6c817;
  box-shadow:0 0 0 1px #f6c817 inset,0 0 28px rgba(246,200,23,.14);
}
body:not(.admin-page) .collection-cover { height:145px; }
body:not(.admin-page) .collection-cover::after {
  background:linear-gradient(to top,#101319 0%,rgba(16,19,25,.15) 58%,rgba(0,0,0,.08));
}
body:not(.admin-page) .collection-index {
  background:rgba(5,7,11,.82);
  color:#ffd84a;
  border-color:rgba(255,216,74,.28);
  backdrop-filter:blur(8px);
}
body:not(.admin-page) .collection-info strong { color:#fff; }
body:not(.admin-page) .collection-info span { color:#9298a3; }
body:not(.admin-page) .collection-info b { color:#f6c817; }

/* Produtos */
body:not(.admin-page) .products-section { background:#090c11; }
body:not(.admin-page) .search-box {
  background:#11151d;
  border-color:rgba(255,255,255,.09);
  color:#cfd3da;
}
body:not(.admin-page) .search-box:focus-within { border-color:rgba(246,200,23,.55); box-shadow:0 0 0 3px rgba(246,200,23,.08); }
body:not(.admin-page) .search-box input { color:#f5f6f8; }
body:not(.admin-page) .search-box input::placeholder { color:#727986; }
body:not(.admin-page) .filters {
  background:#0e1218;
  border:1px solid rgba(255,255,255,.07);
  border-radius:16px;
  padding:14px;
}
body:not(.admin-page) .filters label { color:#aab0bb; }
body:not(.admin-page) .filters select {
  background:#151a22;
  color:#f0f2f5;
  border-color:rgba(255,255,255,.09);
}
body:not(.admin-page) .filters select:focus { border-color:#f6c817; box-shadow:0 0 0 3px rgba(246,200,23,.10); }
body:not(.admin-page) .filters .btn-light {
  background:#151a22;
  color:#f6f7f8;
  border-color:rgba(255,255,255,.10);
}
body:not(.admin-page) .product-card {
  background:linear-gradient(180deg,#11151c,#0d1117);
  border-color:rgba(255,255,255,.075);
  box-shadow:0 14px 34px rgba(0,0,0,.18);
}
body:not(.admin-page) .product-card:hover {
  border-color:rgba(246,200,23,.36);
  box-shadow:0 24px 55px rgba(0,0,0,.36),0 0 24px rgba(246,200,23,.06);
}
body:not(.admin-page) .product-image {
  background:
    radial-gradient(circle at 50% 40%,rgba(246,200,23,.09),transparent 38%),
    linear-gradient(180deg,#141922,#0e1218);
  border-bottom:1px solid rgba(255,255,255,.05);
}
body:not(.admin-page) .product-meta span {
  background:rgba(246,200,23,.10);
  color:#f5cf3d;
  border:1px solid rgba(246,200,23,.14);
}
body:not(.admin-page) .product-card h3 { color:#fff; }
body:not(.admin-page) .product-desc { color:#9298a3; }
body:not(.admin-page) .product-price-row strong { color:#f7d33f; }
body:not(.admin-page) .product-price-row span { color:#9ba1ac; }
body:not(.admin-page) .qty-control {
  background:#141922;
  border-color:rgba(255,255,255,.09);
}
body:not(.admin-page) .qty-control button {
  background:#181e27;
  color:#f6f7f8;
}
body:not(.admin-page) .qty-control input { background:#11151d; color:#fff; }
body:not(.admin-page) .btn-add {
  background:linear-gradient(180deg,#f7ce27,#e3aa00);
  color:#0a0d11;
  box-shadow:0 6px 18px rgba(228,171,0,.13);
}
body:not(.admin-page) .soldout-badge { background:#242a34; border:1px solid rgba(255,255,255,.12); }
body:not(.admin-page) .empty-state { background:#0f131a; border-color:rgba(255,255,255,.11); }

/* Como comprar e comunidade */
body:not(.admin-page) .steps-section { background:#080b10; }
body:not(.admin-page) .steps-grid article {
  background:#0f131a;
  border-color:rgba(255,255,255,.08);
}
body:not(.admin-page) .steps-grid h3 { color:#fff; }
body:not(.admin-page) .steps-grid p { color:#9298a3; }
body:not(.admin-page) .step-number {
  background:linear-gradient(180deg,#ffe061,#e9b500);
  color:#080a0e;
  box-shadow:0 0 24px rgba(246,200,23,.14);
}
body:not(.admin-page) .community-section { background:#080b10; padding-bottom:72px; }
body:not(.admin-page) .community-card {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 85% 30%,rgba(246,200,23,.13),transparent 28%),
    linear-gradient(135deg,#11161e,#090c11);
  border:1px solid rgba(246,200,23,.16);
  box-shadow:0 24px 60px rgba(0,0,0,.25);
}
body:not(.admin-page) .community-card::after {
  content:'';
  position:absolute;
  right:-100px; top:-160px;
  width:350px; height:350px;
  border-radius:50%;
  border:1px solid rgba(246,200,23,.13);
}
body:not(.admin-page) .site-footer {
  background:#04070b;
  border-top:1px solid rgba(246,200,23,.12);
}
body:not(.admin-page) .footer-brand img { width:205px; max-height:54px; }
body:not(.admin-page) .footer-links a:hover { color:#f6c817; }

/* Carrinho em tema escuro */
body:not(.admin-page) .overlay { background:rgba(0,0,0,.68); backdrop-filter:blur(3px); }
body:not(.admin-page) .cart-drawer {
  background:#0c1016;
  color:#f4f6f8;
  box-shadow:-28px 0 80px rgba(0,0,0,.52);
  border-left:1px solid rgba(246,200,23,.12);
}
body:not(.admin-page) .cart-header { border-color:rgba(255,255,255,.08); }
body:not(.admin-page) .icon-button { background:#171c24; color:#fff; }
body:not(.admin-page) .cart-item { border-color:rgba(255,255,255,.07); }
body:not(.admin-page) .cart-thumb { background:#141922; }
body:not(.admin-page) .cart-item-info > span { color:#939aa5; }
body:not(.admin-page) .cart-summary {
  background:#0f141b;
  border-color:rgba(255,255,255,.08);
}
body:not(.admin-page) .cep-field { color:#b0b6c0; }
body:not(.admin-page) .cep-field input {
  background:#171c24;
  border-color:rgba(255,255,255,.10);
  color:#fff;
}
body:not(.admin-page) .shipping-note { color:#858c98; }
body:not(.admin-page) .summary-row.total { border-color:rgba(255,255,255,.08); }
body:not(.admin-page) .text-button.danger { color:#ff7373; }

@media (max-width: 900px) {
  .brand-logo img { width:190px; max-height:52px; }
  body:not(.admin-page) .hero-grid { grid-template-columns:1fr; min-height:auto; }
  body:not(.admin-page) .hero-card { min-height:360px; margin-top:-10px; }
  body:not(.admin-page) .ring-one { width:430px; }
  body:not(.admin-page) .ring-two { width:330px; }
}
@media (max-width:620px) {
  .brand-logo img { width:164px; max-height:46px; }
  body:not(.admin-page) .header-inner { gap:14px; }
  body:not(.admin-page) .hero { overflow:hidden; }
  body:not(.admin-page) .hero h1 { font-size:42px; }
  body:not(.admin-page) .hero-grid { padding-top:46px; }
  body:not(.admin-page) .hero-card { min-height:300px; transform:scale(.76); margin:-28px -44px -18px; }
  body:not(.admin-page) .collections-section,
  body:not(.admin-page) .products-section,
  body:not(.admin-page) .steps-section { padding:50px 0; }
  body:not(.admin-page) .collection-cover { height:160px; }
  body:not(.admin-page) .filters { padding:12px; }
}

/* =========================================================
   TH ARENA TCG — AJUSTES V4
   - cabeçalho com símbolo limpo
   - banner com texto aprovado
   - cards do banner sem palavras
   - áreas claras após o banner
   - cadastro simples de clientes
   ========================================================= */

/* Cabeçalho mais limpo */
body:not(.admin-page) .header-inner { min-height:72px; }
body:not(.admin-page) .brand-symbol-only img {
  width:58px;
  height:50px;
  max-height:none;
  object-fit:contain;
  filter:drop-shadow(0 0 12px rgba(246,200,23,.18));
}
.header-actions { margin-left:auto; display:flex; align-items:center; gap:10px; }
.account-button {
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.035);
  color:white;
  border-radius:999px;
  padding:10px 13px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  font-weight:750;
  font-size:13px;
}
.account-button:hover { border-color:rgba(246,200,23,.5); color:#ffe66a; }
.account-icon { font-size:14px; opacity:.85; }
body:not(.admin-page) .cart-button { margin-left:0; }

/* Banner: volta para a frase aprovada */
body:not(.admin-page) .hero h1 {
  font-size:clamp(52px,6vw,80px);
  text-transform:none;
  font-style:normal;
  line-height:.98;
  letter-spacing:-.055em;
  max-width:700px;
}
body:not(.admin-page) .hero h1 span { font-style:normal; }
body:not(.admin-page) .hero-copy > p { max-width:680px; }

/* Cards premium: somente símbolo e grafismos */
body:not(.admin-page) .mini-card {
  isolation:isolate;
  overflow:hidden;
  transition:transform .34s cubic-bezier(.2,.8,.2,1), box-shadow .34s ease, filter .34s ease;
}
body:not(.admin-page) .mini-card::after {
  content:'';
  position:absolute;
  inset:-40% -70%;
  z-index:5;
  pointer-events:none;
  background:linear-gradient(112deg,transparent 40%,rgba(255,255,255,.28) 48%,transparent 56%);
  transform:translateX(-65%) rotate(6deg);
  transition:transform .7s ease;
}
body:not(.admin-page) .hero-card:hover .mini-card::after { transform:translateX(65%) rotate(6deg); }

body:not(.admin-page) .card-frame {
  justify-content:center;
  padding:16px;
}
body:not(.admin-page) .card-frame::before {
  width:148px;
  height:148px;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  border-width:1px;
  border-color:rgba(255,220,77,.34);
  box-shadow:0 0 0 18px rgba(246,200,23,.045),0 0 0 42px rgba(246,200,23,.022);
}
body:not(.admin-page) .card-frame::after {
  content:'';
  position:absolute;
  inset:18px;
  border-radius:10px;
  opacity:.62;
  background:
    radial-gradient(circle at 15% 20%,rgba(255,222,84,.48) 0 1px,transparent 2px),
    radial-gradient(circle at 82% 28%,rgba(255,222,84,.35) 0 1px,transparent 2px),
    radial-gradient(circle at 72% 78%,rgba(255,222,84,.4) 0 1px,transparent 2px),
    linear-gradient(135deg,transparent 0 44%,rgba(255,214,41,.07) 44.5% 45%,transparent 45.5% 100%);
  background-size:auto,auto,auto,22px 22px;
}
body:not(.admin-page) .card-emblem {
  position:relative;
  z-index:4;
  width:145px;
  height:145px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:radial-gradient(circle,rgba(8,17,30,.85) 0 56%,rgba(8,17,30,.2) 57% 66%,transparent 67%);
  filter:drop-shadow(0 12px 28px rgba(0,0,0,.35));
}
body:not(.admin-page) .card-emblem img {
  width:118px;
  height:105px;
  object-fit:contain;
  border-radius:0;
  box-shadow:none;
}
body:not(.admin-page) .c1 {
  background:
    linear-gradient(35deg,transparent 0 42%,rgba(246,200,23,.10) 42.5% 43%,transparent 43.5% 100%),
    radial-gradient(circle at 80% 20%,rgba(246,200,23,.18),transparent 30%),
    linear-gradient(145deg,#151920 0%,#05080d 62%,#2e2500 100%);
}
body:not(.admin-page) .c2 {
  background:
    radial-gradient(circle at 50% 48%,rgba(255,255,255,.22),transparent 25%),
    linear-gradient(160deg,#ffe36b 0%,#e8b40b 48%,#765300 100%);
}
body:not(.admin-page) .c2 .card-frame { border-color:rgba(22,18,5,.22); }
body:not(.admin-page) .c2 .card-frame::before {
  border-color:rgba(13,15,19,.32);
  box-shadow:0 0 0 18px rgba(9,12,17,.055),0 0 0 42px rgba(9,12,17,.03);
}
body:not(.admin-page) .c2 .card-frame img { opacity:1; }
body:not(.admin-page) .c2 .card-frame::after {
  content:'';
  inset:18px;
  top:auto;
  font-size:0;
  background:
    linear-gradient(90deg,transparent 0 12%,rgba(16,18,22,.13) 12.4% 12.8%,transparent 13.2% 100%),
    linear-gradient(0deg,transparent 0 78%,rgba(255,255,255,.16) 78.5% 79%,transparent 79.5% 100%);
  background-size:24px 100%,100% 26px;
}
body:not(.admin-page) .c2 .center-emblem {
  background:radial-gradient(circle,#07101d 0 61%,#0b1728 62% 70%,rgba(8,17,30,.18) 71%);
  box-shadow:0 16px 38px rgba(50,34,0,.3),0 0 0 1px rgba(255,255,255,.12) inset;
}
body:not(.admin-page) .c3 {
  background:
    radial-gradient(circle at 20% 25%,rgba(246,200,23,.13),transparent 28%),
    repeating-linear-gradient(60deg,transparent 0 22px,rgba(246,200,23,.04) 22px 23px),
    linear-gradient(145deg,#161a22 0%,#05080c 60%,#3a2f02 100%);
}
body:not(.admin-page) .hero-card:hover .mini-card {
  filter:saturate(1.08) brightness(1.04);
  box-shadow:0 42px 100px rgba(0,0,0,.62),0 0 34px rgba(246,200,23,.18);
}

/* Clareia a loja depois do banner sem perder a identidade */
body:not(.admin-page) { background:#f4f4f0; color:#15171b; }
body:not(.admin-page) .collections-section {
  background:linear-gradient(180deg,#f2f1eb 0%,#f7f7f3 100%);
  border-bottom:1px solid #e4e2d8;
}
body:not(.admin-page) .products-section { background:#fafaf7; }
body:not(.admin-page) .steps-section { background:#f2f2ed; }
body:not(.admin-page) .collections-section .section-head h2,
body:not(.admin-page) .products-section .section-head h2,
body:not(.admin-page) .steps-section .section-head h2 { color:#16181c; }
body:not(.admin-page) .collections-section .text-button { color:#4c4530; }
body:not(.admin-page) .collections-section .eyebrow.dark,
body:not(.admin-page) .products-section .eyebrow.dark,
body:not(.admin-page) .steps-section .eyebrow.dark { color:#8a6f00; }
body:not(.admin-page) .collections-section .muted,
body:not(.admin-page) .products-section .muted,
body:not(.admin-page) .steps-section .muted { color:#6e706f; }

body:not(.admin-page) .collection-card {
  background:#fff;
  color:#17191d;
  border-color:#dfddd4;
  box-shadow:0 12px 32px rgba(20,20,16,.07);
}
body:not(.admin-page) .collection-card:hover {
  border-color:rgba(193,153,0,.55);
  box-shadow:0 18px 42px rgba(20,20,16,.11),0 0 0 1px rgba(246,200,23,.10);
}
body:not(.admin-page) .collection-card.selected { border-color:#d2a800; }
body:not(.admin-page) .collection-cover::after { background:linear-gradient(to top,rgba(0,0,0,.22),transparent 60%); }
body:not(.admin-page) .collection-info strong { color:#17191d; }
body:not(.admin-page) .collection-info span { color:#747671; }
body:not(.admin-page) .collection-info b { color:#9d7c00; }
.collection-fallback img { width:88px; height:78px; object-fit:contain; filter:drop-shadow(0 6px 14px rgba(0,0,0,.28)); }

body:not(.admin-page) .search-box {
  background:#fff;
  border-color:#deddd6;
  color:#4d5158;
}
body:not(.admin-page) .search-box input { color:#17191d; }
body:not(.admin-page) .search-box input::placeholder { color:#92948f; }
body:not(.admin-page) .filters {
  background:#fff;
  border-color:#e1dfd6;
  box-shadow:0 10px 28px rgba(20,20,16,.045);
}
body:not(.admin-page) .filters label { color:#62645f; }
body:not(.admin-page) .filters select {
  background:#fafaf7;
  color:#22252a;
  border-color:#dcdbd4;
}
body:not(.admin-page) .filters .btn-light {
  background:#f5f4ef;
  color:#22252a;
  border-color:#dcdbd4;
}
body:not(.admin-page) .product-card {
  background:#fff;
  border-color:#e0ded6;
  box-shadow:0 12px 32px rgba(20,20,16,.06);
}
body:not(.admin-page) .product-card:hover {
  border-color:rgba(197,156,0,.5);
  box-shadow:0 20px 46px rgba(20,20,16,.11),0 0 0 1px rgba(246,200,23,.08);
}
body:not(.admin-page) .product-image {
  background:radial-gradient(circle at 50% 38%,rgba(246,200,23,.11),transparent 38%),linear-gradient(180deg,#f7f6f1,#ecebe5);
  border-bottom:1px solid #eceae2;
}
body:not(.admin-page) .product-meta span { background:#fff7cf; color:#735d00; border-color:#f0dc7a; }
body:not(.admin-page) .product-card h3 { color:#17191d; }
body:not(.admin-page) .product-desc { color:#777974; }
body:not(.admin-page) .product-price-row strong { color:#1b1d22; }
body:not(.admin-page) .product-price-row span { color:#747671; }
body:not(.admin-page) .qty-control { background:#fff; border-color:#deddd5; }
body:not(.admin-page) .qty-control button { background:#f3f2ed; color:#1c1f24; }
body:not(.admin-page) .qty-control input { background:#fff; color:#17191d; }
body:not(.admin-page) .empty-state { background:#fff; border-color:#d6d4ca; color:#222; }
body:not(.admin-page) .steps-grid article { background:#fff; border-color:#dfddd4; }
body:not(.admin-page) .steps-grid h3 { color:#17191d; }
body:not(.admin-page) .steps-grid p { color:#737570; }

/* Cadastro de clientes */
.account-modal-card { width:min(680px,100%); }
.account-modal-card .muted { margin:8px 0 0; }
.account-note { font-size:11px; line-height:1.55; color:#777; background:#f6f5ef; border:1px solid #e5e2d7; border-radius:10px; padding:10px 12px; }
.admin-stats { grid-template-columns:repeat(5,1fr); }
.customers-panel { margin-bottom:30px; }
.admin-section-head { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:14px; }
.admin-section-head h2 { margin:4px 0 6px; }
.customer-month-count { font-size:12px; color:#756100; background:#fff5bd; border:1px solid #ead36c; border-radius:999px; padding:7px 10px; white-space:nowrap; }

@media (max-width: 900px) {
  .admin-stats { grid-template-columns:repeat(2,1fr); }
  body:not(.admin-page) .brand-symbol-only img { width:54px; height:46px; }
  .account-button #accountLabel { display:none; }
}
@media (max-width:620px) {
  body:not(.admin-page) .hero h1 { font-size:45px; }
  body:not(.admin-page) .hero-grid { padding-top:42px; }
  .header-actions { gap:6px; }
  .account-button { width:42px; height:42px; justify-content:center; padding:0; }
  body:not(.admin-page) .brand-symbol-only img { width:48px; height:42px; }
  .admin-section-head { align-items:flex-start; flex-direction:column; }
}

/* =========================================================
   TH ARENA TCG — AJUSTES V5
   Refinamento visual + acesso de membros aprovado pelo admin.
   ========================================================= */

/* Cabeçalho público: marca escrita, mais limpa que o símbolo isolado. */
.brand-text-mark {
  display:inline-flex;
  align-items:baseline;
  gap:7px;
  text-decoration:none;
  white-space:nowrap;
  font-weight:950;
  letter-spacing:-.045em;
  line-height:1;
}
.brand-text-mark .brand-th { color:#f6c817; font-size:26px; }
.brand-text-mark .brand-arena { color:#f5f6f8; font-size:26px; }
.brand-text-mark .brand-tcg {
  color:#f6c817;
  font-size:10px;
  letter-spacing:.16em;
  margin-left:1px;
  font-weight:900;
  transform:translateY(-2px);
}
.admin-text-mark .brand-th,
.admin-text-mark .brand-arena { font-size:23px; }
.admin-text-mark .brand-tcg { font-size:9px; }

/* Banner mais compacto; as três cartas e os efeitos aprovados são preservados. */
body:not(.admin-page) .hero-grid {
  min-height:430px;
  padding:34px 0 28px;
  gap:24px;
}
body:not(.admin-page) .hero h1 {
  font-size:clamp(44px,5vw,66px);
  line-height:.96;
  max-width:620px;
  margin:12px 0 16px;
}
body:not(.admin-page) .hero-copy > p {
  max-width:650px;
  font-size:16px;
  line-height:1.55;
  margin-bottom:0;
}
body:not(.admin-page) .hero-actions { margin-top:22px; }
body:not(.admin-page) .benefits { margin-top:20px; }
body:not(.admin-page) .hero-card { min-height:390px; }

/* Marca d'água suave nas áreas claras, usando a identidade da TH ARENA. */
body:not(.admin-page) .collections-section,
body:not(.admin-page) .products-section,
body:not(.admin-page) .steps-section {
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
body:not(.admin-page) .collections-section::before,
body:not(.admin-page) .products-section::before,
body:not(.admin-page) .steps-section::before {
  content:'';
  position:absolute;
  width:520px;
  height:460px;
  background:url('assets/logo-symbol-transparent.png') center / contain no-repeat;
  opacity:.025;
  pointer-events:none;
  z-index:-1;
  filter:grayscale(1);
}
body:not(.admin-page) .collections-section::before { right:-105px; top:22px; transform:rotate(-7deg); }
body:not(.admin-page) .products-section::before { left:-145px; top:170px; transform:rotate(8deg); }
body:not(.admin-page) .steps-section::before { right:-125px; top:10px; transform:rotate(-5deg); }

/* Comunidade: alinhamento central mais preciso. */
body:not(.admin-page) .community-card {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  padding:34px 40px;
  min-height:190px;
  gap:34px;
}
body:not(.admin-page) .community-card > div,
body:not(.admin-page) .community-card > button { position:relative; z-index:2; }
body:not(.admin-page) .community-card p { margin-bottom:0; max-width:760px; }
body:not(.admin-page) .community-card .btn { align-self:center; justify-self:end; white-space:nowrap; }

/* Aviso no carrinho sobre cadastro obrigatório. */
.member-checkout-note {
  margin:12px 0 10px;
  padding:10px 12px;
  border-radius:10px;
  background:#f6f3e6;
  border:1px solid #e7d88a;
  color:#62540e;
  font-size:11px;
  line-height:1.45;
}

/* Login/cadastro de membros. */
.account-modal-card { width:min(720px,100%); }
.account-tabs {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:6px;
  padding:5px;
  margin:20px 0 16px;
  border-radius:12px;
  background:#f1f0ea;
  border:1px solid #e0ded4;
}
.account-tab {
  border:0;
  border-radius:9px;
  background:transparent;
  color:#63645f;
  padding:10px 12px;
  font-weight:800;
  cursor:pointer;
}
.account-tab.active {
  background:#11151c;
  color:#ffd633;
  box-shadow:0 5px 16px rgba(0,0,0,.13);
}
.privacy-box {
  margin-bottom:14px;
  padding:13px 14px;
  border:1px solid #e3d47b;
  background:#fff9d9;
  border-radius:12px;
  color:#4e460f;
}
.privacy-box strong { display:block; margin-bottom:4px; font-size:13px; }
.privacy-box p { margin:0; font-size:11px; line-height:1.5; }
.account-status-card {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  margin:20px 0 12px;
  padding:18px;
  border-radius:14px;
  background:#f7f6f1;
  border:1px solid #e0ded4;
}
.account-status-card strong { display:block; font-size:18px; color:#17191d; }
.account-status-card small { display:block; color:#777; margin-top:4px; }
.account-status-label { display:block; font-size:9px; letter-spacing:.18em; color:#8a6f00; font-weight:900; margin-bottom:5px; }
.member-status {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:7px 10px;
  font-size:10px;
  font-weight:900;
  white-space:nowrap;
  border:1px solid transparent;
}
.member-status.pending { background:#fff4c7; color:#765e00; border-color:#ead06c; }
.member-status.approved { background:#e1f7e9; color:#167037; border-color:#a8ddbb; }
.member-status.blocked { background:#ffe6e3; color:#a0362d; border-color:#e7b2ac; }

/* Administração dos cadastros. */
.admin-stats { grid-template-columns:repeat(6,1fr); }
.pending-stat { border-color:#ead36c !important; background:#fffaf0 !important; }
.admin-privacy-note {
  display:inline-block;
  margin:6px 0 0;
  padding:6px 9px;
  border-radius:8px;
  background:#f5f4ef;
  border:1px solid #e1dfd7;
  color:#71726e;
  font-size:10px;
}
.customer-status-cell { display:flex; flex-direction:column; align-items:flex-start; gap:5px; }
.reset-request { color:#8a6400; font-size:9px; line-height:1.2; }
.customer-actions { min-width:190px; justify-content:flex-end; }
.table-actions .approve-link { color:#17763a; font-weight:850; }

@media (max-width:980px) {
  .admin-stats { grid-template-columns:repeat(3,1fr); }
  body:not(.admin-page) .hero-grid { min-height:auto; padding:40px 0 18px; }
  body:not(.admin-page) .hero-card { min-height:350px; }
  body:not(.admin-page) .community-card { grid-template-columns:1fr; text-align:left; }
  body:not(.admin-page) .community-card .btn { justify-self:start; }
}

@media (max-width:720px) {
  .brand-text-mark { gap:5px; }
  .brand-text-mark .brand-th,
  .brand-text-mark .brand-arena { font-size:21px; }
  .brand-text-mark .brand-tcg { font-size:8px; letter-spacing:.12em; }
  body:not(.admin-page) .hero-grid { padding:34px 0 8px; }
  body:not(.admin-page) .hero h1 { font-size:41px; max-width:520px; }
  body:not(.admin-page) .hero-card { min-height:290px; transform:scale(.8); margin:-26px -52px -12px; }
  .account-tabs { grid-template-columns:1fr; }
  .account-status-card { align-items:flex-start; flex-direction:column; }
  .admin-stats { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:520px) {
  .brand-text-mark .brand-th,
  .brand-text-mark .brand-arena { font-size:19px; }
  body:not(.admin-page) .hero h1 { font-size:37px; }
  body:not(.admin-page) .community-card { padding:28px 24px; }
}

/* =========================================================
   V5.1 — refinamentos solicitados
   - centralização visual da faixa Comunidade
   - marca-d'água visível e discreta nas áreas claras
   ========================================================= */

/* A marca-d'água precisa ficar acima do fundo da seção e abaixo do conteúdo. */
body:not(.admin-page) .collections-section,
body:not(.admin-page) .products-section,
body:not(.admin-page) .steps-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

body:not(.admin-page) .collections-section > .container,
body:not(.admin-page) .products-section > .container,
body:not(.admin-page) .steps-section > .container {
  position: relative;
  z-index: 2;
}

body:not(.admin-page) .collections-section::before,
body:not(.admin-page) .products-section::before,
body:not(.admin-page) .steps-section::before {
  content: '';
  position: absolute;
  display: block;
  width: 560px;
  height: 500px;
  background: url('assets/logo-symbol-transparent.png') center / contain no-repeat;
  pointer-events: none;
  z-index: 1;
  opacity: .045;
  filter: grayscale(.15) saturate(.75) contrast(.9);
}

body:not(.admin-page) .collections-section::before {
  right: -120px;
  top: 10px;
  transform: rotate(-7deg);
}

body:not(.admin-page) .products-section::before {
  left: -155px;
  top: 150px;
  transform: rotate(7deg);
  opacity: .038;
}

body:not(.admin-page) .steps-section::before {
  right: -135px;
  top: 0;
  transform: rotate(-5deg);
  opacity: .042;
}

/* Faixa Comunidade: espaço superior/inferior equilibrado e conteúdo centralizado. */
body:not(.admin-page) .community-section {
  background: #080b10;
  padding: 56px 0;
}

body:not(.admin-page) .community-card {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  min-height: 230px;
  padding: 40px 52px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 310px);
  align-items: center;
  gap: 54px;
}

body:not(.admin-page) .community-card > div {
  max-width: 820px;
  align-self: center;
}

body:not(.admin-page) .community-card h2 {
  margin: 8px 0 14px;
}

body:not(.admin-page) .community-card p {
  max-width: 820px;
  margin: 0;
}

body:not(.admin-page) .community-card .btn {
  justify-self: center;
  align-self: center;
  min-width: 245px;
}

@media (max-width: 980px) {
  body:not(.admin-page) .community-section { padding: 42px 0; }
  body:not(.admin-page) .community-card {
    grid-template-columns: 1fr;
    gap: 26px;
    min-height: 0;
    padding: 34px 36px;
  }
  body:not(.admin-page) .community-card .btn {
    justify-self: start;
    min-width: 0;
  }
  body:not(.admin-page) .collections-section::before,
  body:not(.admin-page) .products-section::before,
  body:not(.admin-page) .steps-section::before {
    width: 430px;
    height: 390px;
    opacity: .035;
  }
}

@media (max-width: 520px) {
  body:not(.admin-page) .community-section { padding: 30px 0; }
  body:not(.admin-page) .community-card { padding: 28px 24px; }
  body:not(.admin-page) .collections-section::before,
  body:not(.admin-page) .products-section::before,
  body:not(.admin-page) .steps-section::before {
    width: 330px;
    height: 300px;
    opacity: .03;
  }
}


/* =========================================================
   TH ARENA TCG — AJUSTES V5.2
   Correções relatadas: logo do cabeçalho, emblemas dos cards,
   centralização da comunidade e marca-d'água nas áreas claras.
   ========================================================= */

/* Logo horizontal escolhido pelo usuário, sem bloco de fundo. */
body:not(.admin-page) .brand-header-logo {
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  height:54px;
  text-decoration:none;
}
body:not(.admin-page) .brand-header-logo img {
  width:190px;
  height:auto;
  max-height:50px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 0 10px rgba(246,200,23,.08));
}

/* Emblema correto e completo dentro das três cartas. */
body:not(.admin-page) .card-emblem img {
  width:124px;
  height:112px;
  object-fit:contain;
  object-position:center;
  display:block;
  border-radius:0;
  box-shadow:none;
}

/* Marca-d'água: fica acima do fundo da seção e atrás do conteúdo. */
body:not(.admin-page) .collections-section::before,
body:not(.admin-page) .products-section::before,
body:not(.admin-page) .steps-section::before {
  z-index:0;
  opacity:.045;
  filter:grayscale(1) contrast(.9);
}
body:not(.admin-page) .collections-section > .container,
body:not(.admin-page) .products-section > .container,
body:not(.admin-page) .steps-section > .container {
  position:relative;
  z-index:1;
}

/* Comunidade centralizada verticalmente, sem sobra concentrada embaixo. */
body:not(.admin-page) .community-section {
  background:#080b10;
  padding:54px 0;
}
body:not(.admin-page) .community-card {
  min-height:220px;
  margin:0 auto;
  padding:38px 42px;
  align-items:center;
}
body:not(.admin-page) .community-card > div {
  align-self:center;
}
body:not(.admin-page) .community-card h2 {
  margin:8px 0 14px;
}
body:not(.admin-page) .community-card p {
  margin:0;
  line-height:1.55;
}
body:not(.admin-page) .community-card .btn {
  align-self:center;
}

@media (max-width:900px) {
  body:not(.admin-page) .brand-header-logo img { width:168px; max-height:46px; }
  body:not(.admin-page) .community-section { padding:42px 0; }
}
@media (max-width:620px) {
  body:not(.admin-page) .brand-header-logo { height:46px; }
  body:not(.admin-page) .brand-header-logo img { width:145px; max-height:42px; }
  body:not(.admin-page) .community-section { padding:34px 0; }
  body:not(.admin-page) .community-card { min-height:auto; padding:28px; }
}

/* =========================================================
   TH ARENA TCG — AJUSTES V5.3
   - wordmark vetorial no cabeçalho
   - cards do hero centralizados e refinados
   - símbolo sem círculo de fundo
   ========================================================= */

/* Wordmark vetorial: mantém nitidez em qualquer resolução. */
body:not(.admin-page) .brand-header-logo {
  height:56px;
  display:inline-flex;
  align-items:center;
  overflow:visible;
}
body:not(.admin-page) .brand-header-logo img {
  width:220px;
  height:auto;
  max-height:54px;
  object-fit:contain;
  display:block;
  image-rendering:auto;
  filter:drop-shadow(0 2px 10px rgba(246,200,23,.08));
}

/* Agrupamento do hero ancorado exatamente no centro da coluna direita. */
body:not(.admin-page) .hero-card {
  min-height:360px;
  position:relative;
  display:block;
  perspective:1200px;
  overflow:visible;
}
body:not(.admin-page) .hero-card .mini-card {
  left:50%;
  top:50%;
  transform-origin:center center;
}

/* Cartas: acabamento metálico, estrutura limpa e sem círculo preto no emblema. */
body:not(.admin-page) .mini-card {
  width:188px;
  height:272px;
  border-radius:20px;
  padding:8px;
  border:1px solid rgba(255,226,104,.42);
  box-shadow:
    0 32px 76px rgba(0,0,0,.52),
    inset 0 1px 0 rgba(255,255,255,.12),
    0 0 0 1px rgba(255,210,42,.035);
  backface-visibility:hidden;
  will-change:transform;
}
body:not(.admin-page) .mini-card::before {
  background:
    linear-gradient(118deg,transparent 10%,rgba(255,255,255,.15) 26%,transparent 41%),
    repeating-linear-gradient(135deg,transparent 0 20px,rgba(255,215,55,.03) 20px 21px),
    linear-gradient(180deg,rgba(255,255,255,.035),transparent 28%);
}
body:not(.admin-page) .card-frame {
  height:100%;
  border-radius:14px;
  border:1px solid rgba(255,231,123,.28);
  display:grid;
  place-items:center;
  padding:14px;
  overflow:hidden;
  position:relative;
}
body:not(.admin-page) .card-frame::before {
  content:'';
  position:absolute;
  width:166px;
  height:166px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:1px solid rgba(246,200,23,.26);
  box-shadow:
    0 0 0 18px rgba(246,200,23,.035),
    0 0 0 40px rgba(246,200,23,.018),
    0 0 34px rgba(246,200,23,.08);
}
body:not(.admin-page) .card-frame::after {
  content:'';
  position:absolute;
  inset:16px;
  border-radius:11px;
  pointer-events:none;
  background:
    linear-gradient(90deg,transparent 49.5%,rgba(255,220,70,.055) 50%,transparent 50.5%),
    linear-gradient(0deg,transparent 49.5%,rgba(255,220,70,.045) 50%,transparent 50.5%),
    radial-gradient(circle at 16% 18%,rgba(255,227,116,.45) 0 1.2px,transparent 2px),
    radial-gradient(circle at 83% 22%,rgba(255,227,116,.35) 0 1.2px,transparent 2px),
    radial-gradient(circle at 77% 80%,rgba(255,227,116,.35) 0 1.2px,transparent 2px);
  opacity:.78;
}
body:not(.admin-page) .card-emblem,
body:not(.admin-page) .c2 .center-emblem {
  width:148px;
  height:138px;
  border-radius:0;
  display:grid;
  place-items:center;
  background:none !important;
  box-shadow:none !important;
  filter:none;
  position:relative;
  z-index:4;
}
body:not(.admin-page) .card-emblem::before {
  content:'';
  position:absolute;
  width:130px;
  height:72px;
  left:50%;
  top:55%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(246,200,23,.18),rgba(246,200,23,.055) 44%,transparent 72%);
  filter:blur(7px);
  z-index:-1;
}
body:not(.admin-page) .card-emblem img {
  width:132px;
  height:auto;
  max-height:124px;
  object-fit:contain;
  object-position:center;
  display:block;
  border-radius:0;
  box-shadow:none;
  filter:drop-shadow(0 11px 16px rgba(0,0,0,.34)) drop-shadow(0 0 7px rgba(246,200,23,.12));
}
body:not(.admin-page) .c2 .card-emblem img {
  width:140px;
  max-height:132px;
  filter:drop-shadow(0 10px 15px rgba(67,44,0,.28)) drop-shadow(0 0 6px rgba(255,255,255,.14));
}

/* Simetria e centralização visual das três cartas. */
body:not(.admin-page) .c1 {
  transform:translate(-50%,-50%) translateX(-118px) translateY(18px) rotate(-13deg);
  background:
    radial-gradient(circle at 80% 18%,rgba(246,200,23,.15),transparent 28%),
    linear-gradient(32deg,transparent 0 45%,rgba(246,200,23,.075) 45.5% 46%,transparent 46.5%),
    linear-gradient(145deg,#171b23 0%,#06090e 64%,#342a02 100%);
}
body:not(.admin-page) .c2 {
  z-index:3;
  width:202px;
  height:290px;
  transform:translate(-50%,-50%) translateY(-14px) rotate(.35deg);
  background:
    linear-gradient(115deg,transparent 18%,rgba(255,255,255,.17) 34%,transparent 48%),
    radial-gradient(circle at 50% 35%,rgba(255,255,255,.13),transparent 25%),
    linear-gradient(160deg,#ffe466 0%,#e4b00a 48%,#795600 100%);
  border-color:rgba(255,239,151,.72);
  box-shadow:0 36px 88px rgba(0,0,0,.56),0 0 36px rgba(246,200,23,.18),inset 0 1px 0 rgba(255,255,255,.24);
}
body:not(.admin-page) .c2 .card-frame {
  border-color:rgba(44,32,0,.28);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
body:not(.admin-page) .c2 .card-frame::before {
  border-color:rgba(68,49,0,.24);
  box-shadow:0 0 0 18px rgba(67,46,0,.035),0 0 0 40px rgba(67,46,0,.018);
}
body:not(.admin-page) .c3 {
  transform:translate(-50%,-50%) translateX(118px) translateY(18px) rotate(13deg);
  background:
    radial-gradient(circle at 20% 18%,rgba(246,200,23,.14),transparent 28%),
    repeating-linear-gradient(60deg,transparent 0 23px,rgba(246,200,23,.035) 23px 24px),
    linear-gradient(145deg,#171b23 0%,#06090e 64%,#3b3003 100%);
}

body:not(.admin-page) .hero-card:hover .c1 {
  transform:translate(-50%,-50%) translateX(-126px) translateY(10px) rotate(-15deg);
}
body:not(.admin-page) .hero-card:hover .c2 {
  transform:translate(-50%,-50%) translateY(-24px) rotate(0deg);
}
body:not(.admin-page) .hero-card:hover .c3 {
  transform:translate(-50%,-50%) translateX(126px) translateY(10px) rotate(15deg);
}
body:not(.admin-page) .hero-card:hover .mini-card {
  filter:saturate(1.04) brightness(1.025);
}

body:not(.admin-page) .card-glow {
  left:50%;
  top:50%;
  transform:translate(-50%,-22%);
}
body:not(.admin-page) .ring-one,
body:not(.admin-page) .ring-two,
body:not(.admin-page) .stage-light {
  left:50%;
  transform:translateX(-50%) rotateX(70deg);
}
body:not(.admin-page) .stage-light {
  transform:translateX(-50%);
}

@media (max-width:900px) {
  body:not(.admin-page) .brand-header-logo img { width:190px; max-height:48px; }
}
@media (max-width:620px) {
  body:not(.admin-page) .brand-header-logo img { width:160px; max-height:44px; }
  body:not(.admin-page) .c1 { transform:translate(-50%,-50%) translateX(-108px) translateY(16px) rotate(-13deg); }
  body:not(.admin-page) .c3 { transform:translate(-50%,-50%) translateX(108px) translateY(16px) rotate(13deg); }
}

/* =========================================================
   TH ARENA TCG — AJUSTES V5.4
   - wordmark vetorial fiel ao logo enviado
   - cards restaurados ao visual anterior, com melhor centralização
   - marca-d'água realmente visível nas áreas claras
   ========================================================= */

/* Cabeçalho: usa a arte correta em vetor, sem perda de resolução. */
body:not(.admin-page) .brand-header-logo {
  height:54px;
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
}
body:not(.admin-page) .brand-header-logo img {
  width:218px;
  height:auto;
  max-height:52px;
  object-fit:contain;
  object-position:left center;
  display:block;
  filter:drop-shadow(0 2px 8px rgba(246,200,23,.05));
}

/* Cards do hero: volta ao acabamento da versão anterior, sem a bolha preta. */
body:not(.admin-page) .hero-card {
  min-height:365px;
  position:relative;
  display:block;
  perspective:1100px;
  overflow:visible;
}
body:not(.admin-page) .hero-card .mini-card {
  left:50%;
  top:50%;
  transform-origin:center center;
}
body:not(.admin-page) .mini-card {
  width:190px;
  height:275px;
  border-radius:20px;
  padding:8px;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(255,220,76,.42);
  box-shadow:0 34px 84px rgba(0,0,0,.54),0 0 28px rgba(246,200,23,.10);
  transition:transform .34s cubic-bezier(.2,.8,.2,1), box-shadow .34s ease, filter .34s ease;
}
body:not(.admin-page) .mini-card::before {
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    linear-gradient(116deg,transparent 8%,rgba(255,255,255,.17) 28%,transparent 43%),
    repeating-linear-gradient(135deg,transparent 0 21px,rgba(255,213,42,.035) 21px 22px);
}
body:not(.admin-page) .mini-card::after {
  content:'';
  position:absolute;
  inset:-42% -75%;
  z-index:5;
  pointer-events:none;
  background:linear-gradient(112deg,transparent 40%,rgba(255,255,255,.25) 48%,transparent 56%);
  transform:translateX(-66%) rotate(6deg);
  transition:transform .72s ease;
}
body:not(.admin-page) .hero-card:hover .mini-card::after {
  transform:translateX(66%) rotate(6deg);
}
body:not(.admin-page) .card-frame {
  position:relative;
  height:100%;
  border-radius:14px;
  border:1px solid rgba(255,230,118,.24);
  display:grid;
  place-items:center;
  padding:16px;
  overflow:hidden;
}
body:not(.admin-page) .card-frame::before {
  content:'';
  position:absolute;
  width:160px;
  height:160px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border:1px solid rgba(246,200,23,.28);
  border-radius:26px;
  rotate:45deg;
  box-shadow:0 0 0 20px rgba(246,200,23,.033),0 0 0 42px rgba(246,200,23,.015);
}
body:not(.admin-page) .card-frame::after {
  content:'';
  position:absolute;
  inset:18px;
  border-radius:10px;
  pointer-events:none;
  opacity:.70;
  background:
    radial-gradient(circle at 16% 18%,rgba(255,224,96,.48) 0 1.2px,transparent 2px),
    radial-gradient(circle at 83% 24%,rgba(255,224,96,.34) 0 1.2px,transparent 2px),
    radial-gradient(circle at 76% 81%,rgba(255,224,96,.37) 0 1.2px,transparent 2px),
    repeating-linear-gradient(135deg,transparent 0 24px,rgba(255,217,49,.045) 24px 25px);
}
body:not(.admin-page) .card-emblem,
body:not(.admin-page) .c2 .center-emblem {
  width:148px;
  height:138px;
  display:grid;
  place-items:center;
  position:relative;
  z-index:4;
  border-radius:0;
  background:none !important;
  box-shadow:none !important;
  filter:none;
}
body:not(.admin-page) .card-emblem::before {
  content:'';
  position:absolute;
  width:150px;
  height:78px;
  left:50%;
  top:54%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(246,200,23,.15),rgba(246,200,23,.04) 50%,transparent 72%);
  filter:blur(8px);
  z-index:-1;
}
body:not(.admin-page) .card-emblem img {
  width:128px;
  height:auto;
  max-height:120px;
  object-fit:contain;
  object-position:center;
  display:block;
  border-radius:0;
  box-shadow:none;
  filter:drop-shadow(0 11px 16px rgba(0,0,0,.32)) drop-shadow(0 0 8px rgba(246,200,23,.10));
}
body:not(.admin-page) .c1 {
  transform:translate(-50%,-50%) translateX(-118px) translateY(18px) rotate(-12deg);
  background:
    radial-gradient(circle at 82% 18%,rgba(246,200,23,.15),transparent 29%),
    linear-gradient(145deg,#171b22 0%,#070a10 62%,#2d2503 100%);
}
body:not(.admin-page) .c2 {
  z-index:3;
  width:202px;
  height:292px;
  transform:translate(-50%,-50%) translateY(-14px) rotate(.25deg);
  background:
    linear-gradient(116deg,transparent 14%,rgba(255,255,255,.18) 31%,transparent 47%),
    radial-gradient(circle at 50% 37%,rgba(255,255,255,.15),transparent 26%),
    linear-gradient(160deg,#ffe568 0%,#e7b10a 49%,#785500 100%);
  border-color:rgba(255,239,151,.72);
  box-shadow:0 38px 94px rgba(0,0,0,.60),0 0 38px rgba(246,200,23,.18);
}
body:not(.admin-page) .c2 .card-frame {
  border-color:rgba(42,31,0,.28);
}
body:not(.admin-page) .c2 .card-frame::before {
  border-color:rgba(62,45,0,.28);
  box-shadow:0 0 0 20px rgba(69,49,0,.035),0 0 0 42px rgba(69,49,0,.018);
}
body:not(.admin-page) .c2 .card-emblem::before { display:none; }
body:not(.admin-page) .c2 .card-emblem img {
  width:136px;
  max-height:128px;
  filter:brightness(.12) saturate(.4) drop-shadow(0 8px 12px rgba(73,49,0,.22));
}
body:not(.admin-page) .c3 {
  transform:translate(-50%,-50%) translateX(118px) translateY(18px) rotate(12deg);
  background:
    radial-gradient(circle at 18% 20%,rgba(246,200,23,.14),transparent 28%),
    linear-gradient(145deg,#171b22 0%,#070a10 62%,#352c03 100%);
}
body:not(.admin-page) .hero-card:hover .c1 {
  transform:translate(-50%,-50%) translateX(-126px) translateY(10px) rotate(-14deg);
}
body:not(.admin-page) .hero-card:hover .c2 {
  transform:translate(-50%,-50%) translateY(-24px) rotate(0deg);
}
body:not(.admin-page) .hero-card:hover .c3 {
  transform:translate(-50%,-50%) translateX(126px) translateY(10px) rotate(14deg);
}
body:not(.admin-page) .hero-card:hover .mini-card {
  filter:saturate(1.05) brightness(1.025);
  box-shadow:0 42px 102px rgba(0,0,0,.62),0 0 36px rgba(246,200,23,.17);
}
body:not(.admin-page) .card-glow {
  left:50%; top:50%; transform:translate(-50%,-22%);
}
body:not(.admin-page) .ring-one,
body:not(.admin-page) .ring-two,
body:not(.admin-page) .stage-light {
  left:50%;
}
body:not(.admin-page) .ring-one,
body:not(.admin-page) .ring-two { transform:translateX(-50%) rotateX(70deg); }
body:not(.admin-page) .stage-light { transform:translateX(-50%); }

/* Marca-d'água forte o suficiente para ser percebida, mas ainda discreta. */
body:not(.admin-page) .collections-section,
body:not(.admin-page) .products-section,
body:not(.admin-page) .steps-section {
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
body:not(.admin-page) .collections-section > .container,
body:not(.admin-page) .products-section > .container,
body:not(.admin-page) .steps-section > .container {
  position:relative;
  z-index:2;
}
body:not(.admin-page) .collections-section::before,
body:not(.admin-page) .products-section::before,
body:not(.admin-page) .steps-section::before {
  content:'';
  position:absolute;
  display:block;
  width:590px;
  height:520px;
  pointer-events:none;
  z-index:1;
  opacity:.075;
  background:#b49a32;
  -webkit-mask:url('assets/logo-symbol-transparent.png') center / contain no-repeat;
  mask:url('assets/logo-symbol-transparent.png') center / contain no-repeat;
  filter:none;
}
body:not(.admin-page) .collections-section::before {
  right:-120px;
  top:-18px;
  transform:rotate(-7deg);
}
body:not(.admin-page) .products-section::before {
  left:-155px;
  top:130px;
  transform:rotate(8deg);
  opacity:.06;
}
body:not(.admin-page) .steps-section::before {
  right:-135px;
  top:-24px;
  transform:rotate(-6deg);
  opacity:.065;
}

@media (max-width:900px) {
  body:not(.admin-page) .brand-header-logo img { width:190px; max-height:48px; }
  body:not(.admin-page) .hero-card { min-height:345px; }
}
@media (max-width:620px) {
  body:not(.admin-page) .brand-header-logo img { width:160px; max-height:44px; }
  body:not(.admin-page) .hero-card { min-height:290px; }
  body:not(.admin-page) .c1 { transform:translate(-50%,-50%) translateX(-105px) translateY(15px) rotate(-12deg); }
  body:not(.admin-page) .c3 { transform:translate(-50%,-50%) translateX(105px) translateY(15px) rotate(12deg); }
  body:not(.admin-page) .collections-section::before,
  body:not(.admin-page) .products-section::before,
  body:not(.admin-page) .steps-section::before {
    width:360px;
    height:320px;
    opacity:.055;
  }
}

/* =========================================================
   TH ARENA TCG — AJUSTES V5.5
   Correções visuais validadas: wordmark HQ, cards limpos e
   marca-d'água real nas áreas claras.
   ========================================================= */

/* 1) Cabeçalho: usa a arte EXATA fornecida pelo usuário,
      processada em alta resolução e com transparência. */
body:not(.admin-page) .brand-header-logo {
  height:54px;
  width:224px;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  overflow:visible;
}
body:not(.admin-page) .brand-header-logo img {
  width:218px;
  height:auto;
  max-height:52px;
  object-fit:contain;
  object-position:left center;
  image-rendering:auto;
  filter:none;
}

/* 2) Hero: composição das três cartas reconstruída de forma limpa.
      Sem losangos/linhas que cruzavam a carta ou o símbolo. */
body:not(.admin-page) .hero-card {
  min-height:350px;
  position:relative;
  display:block;
  perspective:1200px;
  overflow:visible;
}
body:not(.admin-page) .hero-card .mini-card {
  left:50%;
  top:50%;
  transform-origin:50% 60%;
  width:184px;
  height:260px;
  padding:7px;
  border-radius:20px;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(255,220,76,.38);
  box-shadow:0 28px 72px rgba(0,0,0,.52), 0 0 24px rgba(246,200,23,.09);
  transition:transform .34s cubic-bezier(.2,.8,.2,1), box-shadow .34s ease, filter .34s ease;
}
body:not(.admin-page) .mini-card::before {
  content:'';
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  border-radius:inherit;
  background:
    linear-gradient(118deg, transparent 10%, rgba(255,255,255,.12) 29%, transparent 43%),
    radial-gradient(circle at 50% 115%, rgba(246,200,23,.10), transparent 45%);
}
body:not(.admin-page) .mini-card::after {
  content:'';
  position:absolute;
  inset:-45% -80%;
  z-index:5;
  pointer-events:none;
  background:linear-gradient(112deg,transparent 40%,rgba(255,255,255,.20) 49%,transparent 58%);
  transform:translateX(-68%) rotate(5deg);
  transition:transform .72s ease;
}
body:not(.admin-page) .hero-card:hover .mini-card::after {
  transform:translateX(68%) rotate(5deg);
}
body:not(.admin-page) .card-frame {
  position:relative;
  z-index:2;
  height:100%;
  border-radius:14px;
  border:1px solid rgba(255,230,118,.22);
  display:grid;
  place-items:center;
  padding:18px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 48%, rgba(246,200,23,.08), transparent 42%),
    linear-gradient(155deg, rgba(255,255,255,.02), rgba(255,255,255,0));
}
body:not(.admin-page) .card-frame::before {
  content:'';
  display:block;
  position:absolute;
  inset:14px;
  width:auto;
  height:auto;
  left:14px;
  top:14px;
  transform:none;
  rotate:0deg;
  border-radius:10px;
  border:1px solid rgba(246,200,23,.08);
  box-shadow:none;
  background:none;
  pointer-events:none;
}
body:not(.admin-page) .card-frame::after {
  content:'';
  position:absolute;
  inset:0;
  opacity:.45;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 18%, rgba(255,225,105,.42) 0 1px, transparent 1.8px),
    radial-gradient(circle at 82% 23%, rgba(255,225,105,.30) 0 1px, transparent 1.8px),
    radial-gradient(circle at 76% 82%, rgba(255,225,105,.30) 0 1px, transparent 1.8px);
}
body:not(.admin-page) .card-emblem,
body:not(.admin-page) .c2 .center-emblem {
  width:132px;
  height:132px;
  display:grid;
  place-items:center;
  position:relative;
  z-index:4;
  border-radius:0;
  background:none !important;
  box-shadow:none !important;
  filter:none;
}
body:not(.admin-page) .card-emblem::before { display:none !important; }
body:not(.admin-page) .card-emblem img {
  width:120px;
  height:auto;
  max-height:118px;
  object-fit:contain;
  object-position:center;
  display:block;
  border-radius:0;
  box-shadow:none;
  filter:drop-shadow(0 10px 14px rgba(0,0,0,.30)) drop-shadow(0 0 7px rgba(246,200,23,.10));
}
body:not(.admin-page) .c1 {
  z-index:1;
  transform:translate(-50%,-50%) translateX(-116px) translateY(16px) rotate(-12deg);
  background:
    radial-gradient(circle at 80% 15%, rgba(246,200,23,.13), transparent 30%),
    linear-gradient(145deg,#171b22 0%,#080b11 62%,#2a2304 100%);
}
body:not(.admin-page) .c2 {
  z-index:3;
  width:196px;
  height:276px;
  transform:translate(-50%,-50%) translateY(-10px) rotate(0deg);
  background:
    linear-gradient(118deg, transparent 12%, rgba(255,255,255,.17) 31%, transparent 46%),
    radial-gradient(circle at 50% 20%, rgba(255,255,255,.13), transparent 27%),
    linear-gradient(160deg,#ffe56a 0%,#e8b20b 52%,#866000 100%);
  border-color:rgba(255,240,158,.72);
  box-shadow:0 34px 84px rgba(0,0,0,.60),0 0 34px rgba(246,200,23,.17);
}
body:not(.admin-page) .c2 .card-frame {
  border-color:rgba(59,43,0,.20);
  background:
    radial-gradient(circle at 50% 48%, rgba(255,255,255,.10), transparent 44%),
    linear-gradient(155deg, rgba(255,255,255,.05), rgba(74,50,0,.04));
}
body:not(.admin-page) .c2 .card-frame::before {
  border-color:rgba(60,43,0,.12);
}
body:not(.admin-page) .c2 .card-emblem img {
  content:url('assets/logo-symbol-dark.png');
  width:128px;
  max-height:126px;
  filter:drop-shadow(0 8px 12px rgba(82,56,0,.18));
}
body:not(.admin-page) .c3 {
  z-index:1;
  transform:translate(-50%,-50%) translateX(116px) translateY(16px) rotate(12deg);
  background:
    radial-gradient(circle at 20% 16%, rgba(246,200,23,.13), transparent 30%),
    linear-gradient(145deg,#171b22 0%,#080b11 62%,#302803 100%);
}
body:not(.admin-page) .hero-card:hover .c1 {
  transform:translate(-50%,-50%) translateX(-124px) translateY(8px) rotate(-14deg);
}
body:not(.admin-page) .hero-card:hover .c2 {
  transform:translate(-50%,-50%) translateY(-20px) rotate(0deg);
}
body:not(.admin-page) .hero-card:hover .c3 {
  transform:translate(-50%,-50%) translateX(124px) translateY(8px) rotate(14deg);
}
body:not(.admin-page) .hero-card:hover .mini-card {
  filter:saturate(1.04) brightness(1.02);
  box-shadow:0 38px 92px rgba(0,0,0,.62),0 0 32px rgba(246,200,23,.15);
}
body:not(.admin-page) .card-glow,
body:not(.admin-page) .ring-one,
body:not(.admin-page) .ring-two,
body:not(.admin-page) .stage-light { left:50%; }
body:not(.admin-page) .card-glow { top:50%; transform:translate(-50%,-20%); }
body:not(.admin-page) .ring-one,
body:not(.admin-page) .ring-two { transform:translateX(-50%) rotateX(70deg); }
body:not(.admin-page) .stage-light { transform:translateX(-50%); }

/* 3) Marca-d'água: usa uma imagem PNG real, e não CSS mask.
      Assim aparece em Chromium/Edge/Chrome de forma consistente. */
body:not(.admin-page) .collections-section,
body:not(.admin-page) .products-section,
body:not(.admin-page) .steps-section {
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
body:not(.admin-page) .collections-section > .container,
body:not(.admin-page) .products-section > .container,
body:not(.admin-page) .steps-section > .container {
  position:relative;
  z-index:2;
}
body:not(.admin-page) .collections-section::before,
body:not(.admin-page) .products-section::before,
body:not(.admin-page) .steps-section::before {
  content:'';
  position:absolute;
  display:block;
  width:520px;
  height:405px;
  pointer-events:none;
  z-index:1;
  opacity:.12;
  background-color:transparent !important;
  background-image:url('assets/logo-symbol-watermark.png') !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:contain !important;
  -webkit-mask:none !important;
  mask:none !important;
  filter:none !important;
}
body:not(.admin-page) .collections-section::before {
  right:-105px;
  top:18px;
  transform:rotate(-7deg);
}
body:not(.admin-page) .products-section::before {
  left:-115px;
  top:145px;
  transform:rotate(7deg);
  opacity:.10;
}
body:not(.admin-page) .steps-section::before {
  right:-95px;
  top:-15px;
  transform:rotate(-6deg);
  opacity:.105;
}

@media (max-width:900px) {
  body:not(.admin-page) .brand-header-logo { width:194px; height:49px; }
  body:not(.admin-page) .brand-header-logo img { width:190px; max-height:48px; }
  body:not(.admin-page) .hero-card { min-height:335px; }
}
@media (max-width:620px) {
  body:not(.admin-page) .brand-header-logo { width:163px; height:44px; }
  body:not(.admin-page) .brand-header-logo img { width:160px; max-height:43px; }
  body:not(.admin-page) .hero-card { min-height:288px; }
  body:not(.admin-page) .c1 { transform:translate(-50%,-50%) translateX(-102px) translateY(14px) rotate(-12deg); }
  body:not(.admin-page) .c3 { transform:translate(-50%,-50%) translateX(102px) translateY(14px) rotate(12deg); }
  body:not(.admin-page) .collections-section::before,
  body:not(.admin-page) .products-section::before,
  body:not(.admin-page) .steps-section::before {
    width:330px;
    height:260px;
    opacity:.085;
  }
}

/* =========================================================
   V5.5 FINAL — correção estrutural dos 3 pontos persistentes
   ========================================================= */

/* Cabeçalho: usa a arte ORIGINAL fornecida, sem redesenho/tracing. */
body:not(.admin-page) .site-header {
  background:#040d1a;
}
body:not(.admin-page) .brand-header-logo {
  width:224px;
  height:64px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:flex-start;
}
body:not(.admin-page) .brand-header-logo img {
  width:222px;
  height:auto;
  max-height:64px;
  display:block;
  object-fit:contain;
  object-position:left center;
  image-rendering:auto;
  filter:none;
}

/* Watermark real: elementos IMG no HTML, não pseudo-elemento/mask. */
body:not(.admin-page) .collections-section::before,
body:not(.admin-page) .products-section::before,
body:not(.admin-page) .steps-section::before {
  display:none !important;
  content:none !important;
}
body:not(.admin-page) .section-watermark {
  position:absolute;
  display:block;
  width:520px;
  height:auto;
  pointer-events:none;
  user-select:none;
  z-index:1;
  opacity:.105;
  mix-blend-mode:multiply;
}
body:not(.admin-page) .collections-section > .container,
body:not(.admin-page) .products-section > .container,
body:not(.admin-page) .steps-section > .container {
  position:relative;
  z-index:2;
}
body:not(.admin-page) .watermark-collections {
  right:-105px;
  top:18px;
  transform:rotate(-7deg);
}
body:not(.admin-page) .watermark-products {
  left:-115px;
  top:150px;
  transform:rotate(7deg);
  opacity:.09;
}
body:not(.admin-page) .watermark-steps {
  right:-95px;
  top:-18px;
  transform:rotate(-6deg);
  opacity:.095;
}

/* Cards: acabamento mais limpo, sem linhas quebradas/diagonais indevidas. */
body:not(.admin-page) .hero-card {
  min-height:346px;
}
body:not(.admin-page) .hero-card .mini-card {
  width:184px;
  height:258px;
  border-radius:19px;
  padding:7px;
  border:1px solid rgba(255,220,76,.34);
}
body:not(.admin-page) .card-frame {
  border-radius:13px;
  border:1px solid rgba(255,230,118,.18);
  background:radial-gradient(circle at 50% 48%,rgba(246,200,23,.07),transparent 44%);
}
body:not(.admin-page) .card-frame::before {
  inset:13px;
  border-radius:9px;
  border:1px solid rgba(246,200,23,.07);
  background:none;
  box-shadow:none;
}
body:not(.admin-page) .card-frame::after {
  background:
    radial-gradient(circle at 18% 18%,rgba(255,225,105,.40) 0 1px,transparent 1.7px),
    radial-gradient(circle at 82% 23%,rgba(255,225,105,.28) 0 1px,transparent 1.7px),
    radial-gradient(circle at 76% 82%,rgba(255,225,105,.28) 0 1px,transparent 1.7px);
  opacity:.38;
}
body:not(.admin-page) .card-emblem,
body:not(.admin-page) .c2 .center-emblem {
  width:128px;
  height:128px;
}
body:not(.admin-page) .card-emblem img {
  width:116px;
  max-height:116px;
}
body:not(.admin-page) .c1 {
  transform:translate(-50%,-50%) translateX(-114px) translateY(15px) rotate(-11deg);
}
body:not(.admin-page) .c2 {
  width:194px;
  height:274px;
  transform:translate(-50%,-50%) translateY(-9px);
}
body:not(.admin-page) .c2 .card-emblem img {
  width:124px;
  max-height:124px;
}
body:not(.admin-page) .c3 {
  transform:translate(-50%,-50%) translateX(114px) translateY(15px) rotate(11deg);
}
body:not(.admin-page) .hero-card:hover .c1 {
  transform:translate(-50%,-50%) translateX(-122px) translateY(8px) rotate(-13deg);
}
body:not(.admin-page) .hero-card:hover .c2 {
  transform:translate(-50%,-50%) translateY(-19px);
}
body:not(.admin-page) .hero-card:hover .c3 {
  transform:translate(-50%,-50%) translateX(122px) translateY(8px) rotate(13deg);
}

@media (max-width:900px) {
  body:not(.admin-page) .brand-header-logo { width:196px; height:57px; }
  body:not(.admin-page) .brand-header-logo img { width:194px; max-height:57px; }
  body:not(.admin-page) .section-watermark { width:420px; opacity:.08; }
}
@media (max-width:620px) {
  body:not(.admin-page) .brand-header-logo { width:166px; height:49px; }
  body:not(.admin-page) .brand-header-logo img { width:164px; max-height:49px; }
  body:not(.admin-page) .section-watermark { width:300px; opacity:.07; }
}

/* ============================== */
/* v5.6 final visual corrections  */
/* ============================== */
body:not(.admin-page) .site-header{background:#07101b;}
body:not(.admin-page) .brand-header-logo{
  width:252px !important;
  height:64px !important;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  overflow:visible;
}
body:not(.admin-page) .brand-header-logo img{
  width:252px !important;
  max-width:252px !important;
  height:auto !important;
  max-height:64px !important;
  display:block;
  object-fit:contain;
  object-position:left center;
  image-rendering:auto;
  filter:none !important;
}
@media (max-width: 900px){
  body:not(.admin-page) .brand-header-logo{width:214px !important;height:54px !important;}
  body:not(.admin-page) .brand-header-logo img{width:214px !important;max-width:214px !important;max-height:54px !important;}
}
@media (max-width: 620px){
  body:not(.admin-page) .brand-header-logo{width:178px !important;height:46px !important;}
  body:not(.admin-page) .brand-header-logo img{width:178px !important;max-width:178px !important;max-height:46px !important;}
}

/* Visible watermark in clear sections */
body:not(.admin-page) .collections-section,
body:not(.admin-page) .products-section,
body:not(.admin-page) .steps-section{
  position:relative;
  overflow:hidden;
}
body:not(.admin-page) .section-watermark{
  position:absolute !important;
  display:block !important;
  width:min(78vw, 900px) !important;
  height:auto !important;
  pointer-events:none;
  user-select:none;
  z-index:0 !important;
  opacity:.12 !important;
  mix-blend-mode:multiply;
  filter:saturate(.35) brightness(1.05);
}
body:not(.admin-page) .collections-section > .container,
body:not(.admin-page) .products-section > .container,
body:not(.admin-page) .steps-section > .container{
  position:relative;
  z-index:1 !important;
}
body:not(.admin-page) .watermark-collections{
  left:58% !important;
  top:52% !important;
  right:auto !important;
  transform:translate(-50%,-50%) rotate(-9deg) !important;
}
body:not(.admin-page) .watermark-products{
  left:45% !important;
  top:52% !important;
  right:auto !important;
  transform:translate(-50%,-50%) rotate(8deg) !important;
}
body:not(.admin-page) .watermark-steps{
  left:60% !important;
  top:50% !important;
  right:auto !important;
  transform:translate(-50%,-50%) rotate(-8deg) !important;
}
@media (max-width:900px){
  body:not(.admin-page) .section-watermark{width:min(110vw, 720px) !important; opacity:.10 !important;}
}
@media (max-width:620px){
  body:not(.admin-page) .section-watermark{width:min(130vw, 520px) !important; opacity:.09 !important;}
}

/* New cleaner hero-card design */
body:not(.admin-page) .hero-card{
  min-height:340px !important;
  position:relative;
  overflow:visible;
}
body:not(.admin-page) .hero-card .mini-card,
body:not(.admin-page) .hero-card .card-frame,
body:not(.admin-page) .hero-card .card-emblem{
  box-sizing:border-box;
}
body:not(.admin-page) .hero-card .mini-card{
  width:188px !important;
  height:264px !important;
  border:none !important;
  border-radius:24px !important;
  padding:0 !important;
  overflow:hidden;
  box-shadow:0 24px 56px rgba(0,0,0,.38), 0 2px 10px rgba(0,0,0,.22) !important;
}
body:not(.admin-page) .hero-card .mini-card::before,
body:not(.admin-page) .hero-card .mini-card::after,
body:not(.admin-page) .hero-card .card-frame::before,
body:not(.admin-page) .hero-card .card-frame::after,
body:not(.admin-page) .hero-card .card-emblem::before{
  content:"";
}
body:not(.admin-page) .hero-card .card-frame{
  position:absolute;
  inset:0;
  border-radius:24px !important;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 20%, rgba(255,216,100,.10), transparent 28%),
    linear-gradient(156deg, #111b2a 0%, #0a111b 54%, #172234 100%) !important;
  border:1px solid rgba(243,202,73,.42) !important;
}
body:not(.admin-page) .hero-card .card-frame::before{
  position:absolute;
  inset:10px;
  border-radius:17px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0));
}
body:not(.admin-page) .hero-card .card-frame::after{
  position:absolute;
  inset:-8% auto auto -18%;
  width:70%;
  height:58%;
  transform:rotate(22deg);
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.16), rgba(255,255,255,0));
  opacity:.42;
}
body:not(.admin-page) .hero-card .card-emblem{
  position:absolute !important;
  inset:0 !important;
  width:auto !important;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:none !important;
  border:none !important;
  box-shadow:none !important;
}
body:not(.admin-page) .hero-card .card-emblem img{
  width:126px !important;
  max-width:none !important;
  max-height:none !important;
  height:auto !important;
  display:block;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.28));
}
body:not(.admin-page) .hero-card .c1,
body:not(.admin-page) .hero-card .c3{
  background:none !important;
}
body:not(.admin-page) .hero-card .c2{
  width:214px !important;
  height:298px !important;
}
body:not(.admin-page) .hero-card .c2 .card-frame{
  background:
    radial-gradient(circle at 30% 18%, rgba(255,255,255,.34), transparent 34%),
    linear-gradient(160deg, #ffe27d 0%, #f1c43b 56%, #cb9813 100%) !important;
  border:1px solid rgba(255,240,186,.76) !important;
}
body:not(.admin-page) .hero-card .c2 .card-frame::before{
  border-color:rgba(102,72,0,.18);
  background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.02));
}
body:not(.admin-page) .hero-card .c2 .card-emblem img{
  width:136px !important;
  filter:brightness(0) saturate(100%) drop-shadow(0 8px 14px rgba(0,0,0,.18));
}
body:not(.admin-page) .hero-card .c1{
  transform:translate(-50%,-50%) translateX(-128px) translateY(18px) rotate(-13deg) !important;
  z-index:1;
}
body:not(.admin-page) .hero-card .c2{
  transform:translate(-50%,-50%) translateY(-2px) rotate(0deg) !important;
  z-index:3;
}
body:not(.admin-page) .hero-card .c3{
  transform:translate(-50%,-50%) translateX(128px) translateY(18px) rotate(13deg) !important;
  z-index:2;
}
body:not(.admin-page) .hero-card:hover .c1{
  transform:translate(-50%,-50%) translateX(-140px) translateY(12px) rotate(-15deg) !important;
}
body:not(.admin-page) .hero-card:hover .c2{
  transform:translate(-50%,-50%) translateY(-16px) rotate(0deg) !important;
}
body:not(.admin-page) .hero-card:hover .c3{
  transform:translate(-50%,-50%) translateX(140px) translateY(12px) rotate(15deg) !important;
}
body:not(.admin-page) .hero-card .arena-ring{
  opacity:.72 !important;
  border-color:rgba(243,196,43,.40) !important;
}
body:not(.admin-page) .hero-card .stage-light{
  width:420px !important;
  height:110px !important;
  opacity:.85 !important;
}
@media (max-width:900px){
  body:not(.admin-page) .hero-card{min-height:300px !important;}
  body:not(.admin-page) .hero-card .mini-card{width:162px !important;height:230px !important;}
  body:not(.admin-page) .hero-card .c2{width:184px !important;height:258px !important;}
  body:not(.admin-page) .hero-card .card-emblem img{width:108px !important;}
  body:not(.admin-page) .hero-card .c2 .card-emblem img{width:120px !important;}
  body:not(.admin-page) .hero-card .c1{transform:translate(-50%,-50%) translateX(-108px) translateY(16px) rotate(-13deg) !important;}
  body:not(.admin-page) .hero-card .c3{transform:translate(-50%,-50%) translateX(108px) translateY(16px) rotate(13deg) !important;}
  body:not(.admin-page) .hero-card:hover .c1{transform:translate(-50%,-50%) translateX(-116px) translateY(10px) rotate(-14deg) !important;}
  body:not(.admin-page) .hero-card:hover .c3{transform:translate(-50%,-50%) translateX(116px) translateY(10px) rotate(14deg) !important;}
}
@media (max-width:620px){
  body:not(.admin-page) .hero-card{min-height:260px !important; transform:scale(.9); margin:-6px -18px 0 !important;}
  body:not(.admin-page) .hero-card .mini-card{width:142px !important;height:204px !important;}
  body:not(.admin-page) .hero-card .c2{width:162px !important;height:232px !important;}
  body:not(.admin-page) .hero-card .card-emblem img{width:92px !important;}
  body:not(.admin-page) .hero-card .c2 .card-emblem img{width:104px !important;}
  body:not(.admin-page) .hero-card .c1{transform:translate(-50%,-50%) translateX(-92px) translateY(14px) rotate(-12deg) !important;}
  body:not(.admin-page) .hero-card .c3{transform:translate(-50%,-50%) translateX(92px) translateY(14px) rotate(12deg) !important;}
  body:not(.admin-page) .hero-card:hover .c1{transform:translate(-50%,-50%) translateX(-98px) translateY(10px) rotate(-13deg) !important;}
  body:not(.admin-page) .hero-card:hover .c3{transform:translate(-50%,-50%) translateX(98px) translateY(10px) rotate(13deg) !important;}
}

/* v5.6b - text-based crisp header logo */
body:not(.admin-page) .brand-header-logo.brand-wordmark{
  width:auto !important;
  height:auto !important;
  min-width:250px;
  text-decoration:none;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:2px;
  line-height:1;
}
body:not(.admin-page) .brand-header-logo.brand-wordmark img{display:none !important;}
body:not(.admin-page) .brand-line{
  display:flex;
  align-items:flex-end;
  gap:14px;
  font-family: Arial, Helvetica, sans-serif;
  font-style:italic;
  font-weight:900;
  letter-spacing:-0.06em;
}
body:not(.admin-page) .brand-th{font-size:3.15rem;color:#f2c52c;}
body:not(.admin-page) .brand-arena{font-size:3.12rem;color:#f4f6f8;}
body:not(.admin-page) .brand-sub{
  margin-left:38px;
  display:flex;
  align-items:center;
  gap:14px;
}
body:not(.admin-page) .brand-rule{
  display:block;
  width:82px;
  height:4px;
  border-radius:999px;
  background:#f2c52c;
}
body:not(.admin-page) .brand-tcg{
  font-family: Arial, Helvetica, sans-serif;
  font-style:italic;
  font-weight:900;
  font-size:1.4rem;
  letter-spacing:.48rem;
  color:#f2c52c;
  transform:translateY(-1px);
}
@media (max-width:900px){
  body:not(.admin-page) .brand-header-logo.brand-wordmark{min-width:212px;}
  body:not(.admin-page) .brand-line{gap:10px;}
  body:not(.admin-page) .brand-th,
  body:not(.admin-page) .brand-arena{font-size:2.65rem;}
  body:not(.admin-page) .brand-sub{margin-left:30px; gap:10px;}
  body:not(.admin-page) .brand-rule{width:64px; height:3px;}
  body:not(.admin-page) .brand-tcg{font-size:1.12rem; letter-spacing:.34rem;}
}
@media (max-width:620px){
  body:not(.admin-page) .brand-header-logo.brand-wordmark{min-width:180px;}
  body:not(.admin-page) .brand-line{gap:8px;}
  body:not(.admin-page) .brand-th,
  body:not(.admin-page) .brand-arena{font-size:2.15rem;}
  body:not(.admin-page) .brand-sub{margin-left:22px; gap:8px;}
  body:not(.admin-page) .brand-rule{width:48px; height:3px;}
  body:not(.admin-page) .brand-tcg{font-size:.96rem; letter-spacing:.25rem;}
}

/* stronger watermark visibility */
body:not(.admin-page) .section-watermark{
  width:min(90vw, 1080px) !important;
  opacity:.16 !important;
}
body:not(.admin-page) .watermark-collections{left:62% !important; top:52% !important;}
body:not(.admin-page) .watermark-products{left:42% !important; top:55% !important;}
body:not(.admin-page) .watermark-steps{left:60% !important; top:52% !important;}
@media (max-width:900px){
  body:not(.admin-page) .section-watermark{width:min(128vw, 860px) !important; opacity:.13 !important;}
}
@media (max-width:620px){
  body:not(.admin-page) .section-watermark{width:min(145vw, 620px) !important; opacity:.12 !important;}
}

/* =========================================================
   v5.7 — cartas geométricas aprovadas no banner
   ========================================================= */
body:not(.admin-page) .hero-card {
  min-height: 340px !important;
  position: relative;
  display: grid;
  place-items: center;
  overflow: visible;
}
body:not(.admin-page) .hero-cards-art {
  position: relative;
  z-index: 4;
  display: block;
  width: min(100%, 650px);
  max-width: 650px;
  height: auto;
  object-fit: contain;
  object-position: center;
  transform: translateY(0) scale(1);
  transform-origin: center center;
  transition: transform .38s cubic-bezier(.2,.8,.2,1), filter .38s ease;
  filter: drop-shadow(0 24px 30px rgba(0,0,0,.30));
  -webkit-mask-image: radial-gradient(ellipse 92% 86% at 50% 50%, #000 70%, rgba(0,0,0,.9) 82%, transparent 100%);
  mask-image: radial-gradient(ellipse 92% 86% at 50% 50%, #000 70%, rgba(0,0,0,.9) 82%, transparent 100%);
}
body:not(.admin-page) .hero-card:hover .hero-cards-art {
  transform: translateY(-8px) scale(1.025);
  filter: drop-shadow(0 30px 36px rgba(0,0,0,.36)) brightness(1.03);
}
body:not(.admin-page) .hero-card .card-glow {
  z-index: 1;
  width: 360px !important;
  height: 270px !important;
  opacity: .24 !important;
}
body:not(.admin-page) .hero-card .arena-ring {
  z-index: 2;
  opacity: .58 !important;
}
body:not(.admin-page) .hero-card .stage-light {
  z-index: 3;
  width: 470px !important;
  opacity: .72 !important;
}
@media (max-width: 900px) {
  body:not(.admin-page) .hero-card { min-height: 310px !important; }
  body:not(.admin-page) .hero-cards-art { width: min(100%, 590px); max-width: 590px; }
}
@media (max-width: 620px) {
  body:not(.admin-page) .hero-card { min-height: 255px !important; transform: none !important; margin: 0 !important; }
  body:not(.admin-page) .hero-cards-art { width: min(112%, 520px); max-width: 520px; }
  body:not(.admin-page) .hero-card:hover .hero-cards-art { transform: translateY(-4px) scale(1.01); }
}

/* =========================================================
   v5.8 — refinamento visual final do banner/cabeçalho
   ========================================================= */

/* Cabeçalho mais compacto e equilibrado */
body:not(.admin-page) .header-inner {
  min-height: 78px !important;
  gap: 28px !important;
}
body:not(.admin-page) .brand-header-logo.brand-wordmark {
  min-width: 215px !important;
  transform: scale(.86);
  transform-origin: left center;
  margin-right: -18px;
}
body:not(.admin-page) .brand-th,
body:not(.admin-page) .brand-arena {
  font-size: 2.72rem !important;
}
body:not(.admin-page) .brand-sub {
  margin-left: 31px !important;
  gap: 10px !important;
}
body:not(.admin-page) .brand-rule {
  width: 68px !important;
  height: 3px !important;
}
body:not(.admin-page) .brand-tcg {
  font-size: 1.12rem !important;
  letter-spacing: .36rem !important;
}
body:not(.admin-page) .main-nav {
  margin-left: 2px !important;
  gap: 34px !important;
}
body:not(.admin-page) .main-nav a {
  padding: 27px 0 24px !important;
}
body:not(.admin-page) .header-actions {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 10px;
}
body:not(.admin-page) .account-button,
body:not(.admin-page) .cart-button {
  min-height: 44px;
  padding: 9px 15px !important;
  gap: 9px !important;
  background: rgba(14,22,34,.88) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
}
body:not(.admin-page) .cart-button {
  border-color: rgba(242,197,44,.30) !important;
}
body:not(.admin-page) .header-icon {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: none;
}
body:not(.admin-page) .account-button .header-icon { color:#f2c52c; }
body:not(.admin-page) .cart-button .header-icon { color:#f2c52c; }
body:not(.admin-page) .cart-count {
  background:#f2c52c !important;
  color:#111 !important;
}

/* Banner: cartas separadas, transparentes e integradas ao fundo */
body:not(.admin-page) .hero-card {
  min-height: 330px !important;
  position: relative;
  display: grid;
  place-items: center;
  overflow: visible !important;
}
body:not(.admin-page) .hero-cards-art { display:none !important; }
body:not(.admin-page) .hero-card-stack {
  position:absolute;
  left:50%;
  top:50%;
  width: 540px;
  height: 320px;
  transform: translate(-50%,-50%);
  z-index:4;
  pointer-events:none;
}
body:not(.admin-page) .hero-card-piece {
  position:absolute;
  left:50%;
  top:50%;
  display:block;
  height:auto;
  transform-origin:center center;
  filter: drop-shadow(0 22px 24px rgba(0,0,0,.38));
  transition: transform .36s cubic-bezier(.2,.8,.2,1), filter .36s ease;
  will-change: transform;
}
body:not(.admin-page) .hero-card-left {
  width: 232px;
  z-index:1;
  transform: translate(-50%,-50%) translate(-135px, 8px) rotate(-2deg);
}
body:not(.admin-page) .hero-card-center {
  width: 236px;
  z-index:3;
  transform: translate(-50%,-50%) translate(0,-2px);
}
body:not(.admin-page) .hero-card-right {
  width: 232px;
  z-index:2;
  transform: translate(-50%,-50%) translate(135px, 8px) rotate(2deg);
}
body:not(.admin-page) .hero-card:hover .hero-card-left {
  transform: translate(-50%,-50%) translate(-148px, 4px) rotate(-3.5deg);
}
body:not(.admin-page) .hero-card:hover .hero-card-center {
  transform: translate(-50%,-50%) translate(0,-14px) scale(1.025);
}
body:not(.admin-page) .hero-card:hover .hero-card-right {
  transform: translate(-50%,-50%) translate(148px, 4px) rotate(3.5deg);
}
body:not(.admin-page) .hero-card:hover .hero-card-piece {
  filter: drop-shadow(0 28px 30px rgba(0,0,0,.42)) brightness(1.02);
}
body:not(.admin-page) .hero-card .card-glow {
  width: 390px !important;
  height: 250px !important;
  opacity: .30 !important;
  filter: blur(16px);
}
body:not(.admin-page) .hero-card .stage-light {
  width: 430px !important;
  height: 92px !important;
  opacity: .74 !important;
}
body:not(.admin-page) .hero-card .arena-ring {
  opacity: .54 !important;
}

/* Marca-d'água: reconhecível sem dominar o catálogo */
body:not(.admin-page) .section-watermark {
  width: 760px !important;
  max-width: none !important;
  opacity: .070 !important;
  mix-blend-mode: multiply !important;
  filter: grayscale(1) contrast(.85) !important;
  z-index:0 !important;
}
body:not(.admin-page) .watermark-collections {
  left:auto !important;
  right:-160px !important;
  top: 72px !important;
  transform: rotate(-8deg) !important;
}
body:not(.admin-page) .watermark-products {
  left:-210px !important;
  right:auto !important;
  top: 170px !important;
  transform: rotate(8deg) !important;
  opacity:.060 !important;
}
body:not(.admin-page) .watermark-steps {
  left:auto !important;
  right:-180px !important;
  top:-50px !important;
  transform: rotate(-7deg) !important;
  opacity:.055 !important;
}

@media (max-width: 1100px) {
  body:not(.admin-page) .hero-card-stack { width:470px; height:300px; }
  body:not(.admin-page) .hero-card-left,
  body:not(.admin-page) .hero-card-right { width:205px; }
  body:not(.admin-page) .hero-card-center { width:211px; }
  body:not(.admin-page) .hero-card-left { transform:translate(-50%,-50%) translate(-117px,8px) rotate(-2deg); }
  body:not(.admin-page) .hero-card-right { transform:translate(-50%,-50%) translate(117px,8px) rotate(2deg); }
}
@media (max-width: 900px) {
  body:not(.admin-page) .brand-header-logo.brand-wordmark { transform:scale(.78); margin-right:-38px; }
  body:not(.admin-page) .hero-card { min-height:300px !important; }
  body:not(.admin-page) .hero-card-stack { transform:translate(-50%,-50%) scale(.88); }
  body:not(.admin-page) .section-watermark { width:620px !important; opacity:.06 !important; }
}
@media (max-width: 620px) {
  body:not(.admin-page) .header-inner { min-height:66px !important; }
  body:not(.admin-page) .brand-header-logo.brand-wordmark { transform:scale(.68); margin-right:-72px; transform-origin:left center; }
  body:not(.admin-page) .hero-card { min-height:250px !important; }
  body:not(.admin-page) .hero-card-stack { width:420px; height:270px; transform:translate(-50%,-50%) scale(.72); }
  body:not(.admin-page) .section-watermark { width:500px !important; opacity:.05 !important; }
}

/* =========================================================
   TH ARENA v5.9 — acabamento das cartas, marca e watermark
   ========================================================= */

/* 1) Cartas: manter o desenho aprovado, com bordas limpas */
body:not(.admin-page) .hero-card-piece {
  filter: drop-shadow(0 22px 25px rgba(0,0,0,.36)) !important;
  backface-visibility: hidden;
}
body:not(.admin-page) .hero-card-left,
body:not(.admin-page) .hero-card-right {
  width: 224px !important;
}
body:not(.admin-page) .hero-card-center {
  width: 232px !important;
}
body:not(.admin-page) .hero-card-left {
  transform: translate(-50%,-50%) translate(-132px,8px) rotate(-2.2deg) !important;
}
body:not(.admin-page) .hero-card-center {
  transform: translate(-50%,-50%) translate(0,-2px) !important;
}
body:not(.admin-page) .hero-card-right {
  transform: translate(-50%,-50%) translate(132px,8px) rotate(2.2deg) !important;
}
body:not(.admin-page) .hero-card:hover .hero-card-left {
  transform: translate(-50%,-50%) translate(-144px,4px) rotate(-3.4deg) !important;
}
body:not(.admin-page) .hero-card:hover .hero-card-center {
  transform: translate(-50%,-50%) translate(0,-14px) scale(1.02) !important;
}
body:not(.admin-page) .hero-card:hover .hero-card-right {
  transform: translate(-50%,-50%) translate(144px,4px) rotate(3.4deg) !important;
}

/* 2) Header e footer usam a MESMA assinatura visual */
body:not(.admin-page) .site-header,
body:not(.admin-page) .site-footer {
  background:#07101b !important;
}
body:not(.admin-page) .site-footer {
  border-top:1px solid rgba(242,197,44,.28) !important;
}
body:not(.admin-page) .footer-brand-block {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
}
body:not(.admin-page) .footer-wordmark {
  transform:scale(.72) !important;
  transform-origin:left center !important;
  margin:0 -58px -8px 0 !important;
  min-width:215px !important;
}
body:not(.admin-page) .footer-wordmark .brand-th,
body:not(.admin-page) .footer-wordmark .brand-arena {
  font-size:2.72rem !important;
}
body:not(.admin-page) .footer-wordmark .brand-sub {
  margin-left:31px !important;
  gap:10px !important;
}
body:not(.admin-page) .footer-wordmark .brand-rule {
  width:68px !important;
  height:3px !important;
}
body:not(.admin-page) .footer-wordmark .brand-tcg {
  font-size:1.12rem !important;
  letter-spacing:.36rem !important;
}
body:not(.admin-page) .footer-brand-block > p {
  margin-top:0 !important;
}

/* 3) Marca d'água maior e realmente integrada às áreas claras */
body:not(.admin-page) .collections-section,
body:not(.admin-page) .products-section,
body:not(.admin-page) .steps-section {
  position:relative !important;
  overflow:hidden !important;
}
body:not(.admin-page) .section-watermark {
  width: 940px !important;
  max-width:none !important;
  height:auto !important;
  opacity:.085 !important;
  mix-blend-mode:multiply !important;
  filter:grayscale(1) contrast(.92) !important;
  pointer-events:none !important;
  z-index:0 !important;
}
body:not(.admin-page) .collections-section > .container,
body:not(.admin-page) .products-section > .container,
body:not(.admin-page) .steps-section > .container {
  position:relative !important;
  z-index:1 !important;
}
body:not(.admin-page) .watermark-collections {
  left:auto !important;
  right:-180px !important;
  top:50% !important;
  transform:translateY(-50%) rotate(-7deg) !important;
}
body:not(.admin-page) .watermark-products {
  left:-220px !important;
  right:auto !important;
  top:52% !important;
  transform:translateY(-50%) rotate(7deg) !important;
  opacity:.075 !important;
}
body:not(.admin-page) .watermark-steps {
  left:auto !important;
  right:-150px !important;
  top:50% !important;
  transform:translateY(-50%) rotate(-6deg) !important;
  opacity:.072 !important;
}

@media (max-width:1100px) {
  body:not(.admin-page) .hero-card-left,
  body:not(.admin-page) .hero-card-right { width:198px !important; }
  body:not(.admin-page) .hero-card-center { width:206px !important; }
  body:not(.admin-page) .hero-card-left { transform:translate(-50%,-50%) translate(-115px,8px) rotate(-2deg) !important; }
  body:not(.admin-page) .hero-card-right { transform:translate(-50%,-50%) translate(115px,8px) rotate(2deg) !important; }
  body:not(.admin-page) .section-watermark { width:760px !important; opacity:.075 !important; }
}
@media (max-width:900px) {
  body:not(.admin-page) .footer-wordmark { transform:scale(.66) !important; margin-right:-72px !important; }
  body:not(.admin-page) .section-watermark { width:680px !important; opacity:.068 !important; }
}
@media (max-width:620px) {
  body:not(.admin-page) .footer-wordmark { transform:scale(.58) !important; margin-right:-90px !important; }
  body:not(.admin-page) .section-watermark { width:540px !important; opacity:.060 !important; }
}

/* v5.9b — footer wordmark sem escala transformada, mantendo proporções exatas */
body:not(.admin-page) .footer-wordmark {
  transform:none !important;
  margin:0 !important;
  min-width:0 !important;
  width:auto !important;
}
body:not(.admin-page) .footer-wordmark .brand-line { gap:10px !important; }
body:not(.admin-page) .footer-wordmark .brand-th,
body:not(.admin-page) .footer-wordmark .brand-arena { font-size:2rem !important; }
body:not(.admin-page) .footer-wordmark .brand-sub { margin-left:23px !important; gap:8px !important; }
body:not(.admin-page) .footer-wordmark .brand-rule { width:50px !important; height:3px !important; }
body:not(.admin-page) .footer-wordmark .brand-tcg { font-size:.82rem !important; letter-spacing:.27rem !important; }
@media (max-width:900px) {
  body:not(.admin-page) .footer-wordmark { transform:none !important; margin:0 !important; }
}
@media (max-width:620px) {
  body:not(.admin-page) .footer-wordmark { transform:none !important; margin:0 !important; }
  body:not(.admin-page) .footer-wordmark .brand-th,
  body:not(.admin-page) .footer-wordmark .brand-arena { font-size:1.72rem !important; }
  body:not(.admin-page) .footer-wordmark .brand-rule { width:42px !important; }
  body:not(.admin-page) .footer-wordmark .brand-tcg { font-size:.74rem !important; letter-spacing:.22rem !important; }
}

/* =========================================================
   v6.0 — wordmark original + correção de quantidade carrinho
   ========================================================= */
body:not(.admin-page) .brand-header-logo.brand-original {
  width: 245px !important;
  min-width: 245px !important;
  height: 70px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow: visible !important;
  transform: none !important;
  margin: 0 !important;
}
body:not(.admin-page) .brand-header-logo.brand-original img {
  display: block !important;
  width: 245px !important;
  max-width: 245px !important;
  height: auto !important;
  max-height: 70px !important;
  object-fit: contain !important;
  object-position: left center !important;
  image-rendering: auto !important;
  filter: none !important;
}
body:not(.admin-page) .footer-wordmark.brand-original {
  width: 230px !important;
  min-width: 230px !important;
  height: 72px !important;
  transform: none !important;
  margin: 0 !important;
}
body:not(.admin-page) .footer-wordmark.brand-original img {
  width: 230px !important;
  max-width: 230px !important;
  max-height: 72px !important;
}

/* Valor da quantidade no carrinho: contraste explícito e consistente */
body:not(.admin-page) .cart-item .qty-control.compact .cart-qty-value {
  display: grid !important;
  place-items: center !important;
  width: 34px !important;
  min-width: 34px !important;
  height: 100% !important;
  background: #ffffff !important;
  color: #17191d !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  -webkit-text-fill-color: #17191d !important;
}
body:not(.admin-page) .cart-item .qty-control.compact {
  background: #ffffff !important;
  border-color: #d9d8d2 !important;
}
body:not(.admin-page) .cart-item .qty-control.compact button {
  color: #17191d !important;
  background: #f4f3ee !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}

@media (max-width: 900px) {
  body:not(.admin-page) .brand-header-logo.brand-original {
    width: 210px !important;
    min-width: 210px !important;
    height: 60px !important;
  }
  body:not(.admin-page) .brand-header-logo.brand-original img {
    width: 210px !important;
    max-width: 210px !important;
    max-height: 60px !important;
  }
}
@media (max-width: 620px) {
  body:not(.admin-page) .brand-header-logo.brand-original {
    width: 178px !important;
    min-width: 178px !important;
    height: 52px !important;
  }
  body:not(.admin-page) .brand-header-logo.brand-original img {
    width: 178px !important;
    max-width: 178px !important;
    max-height: 52px !important;
  }
  body:not(.admin-page) .footer-wordmark.brand-original,
  body:not(.admin-page) .footer-wordmark.brand-original img {
    width: 200px !important;
    max-width: 200px !important;
  }
}

/* =========================================================
   v6.1 — refinamento do carrinho e centralização do cabeçalho
   ========================================================= */
body:not(.admin-page) .cart-item .qty-control.compact .cart-qty-value {
  font-weight: 400 !important;
  font-size: 13px !important;
  letter-spacing: 0 !important;
}

body:not(.admin-page) .header-inner {
  min-height: 78px !important;
  align-items: center !important;
}
body:not(.admin-page) .brand-header-logo.brand-original {
  height: 78px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}
body:not(.admin-page) .brand-header-logo.brand-original img {
  width: 245px !important;
  max-width: 245px !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: left center !important;
  transform: translateY(2px) !important;
}
body:not(.admin-page) .main-nav {
  align-self: stretch !important;
  display: flex !important;
  align-items: center !important;
}
body:not(.admin-page) .main-nav a {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body:not(.admin-page) .header-actions {
  align-self: center !important;
}

@media (max-width:900px) {
  body:not(.admin-page) .brand-header-logo.brand-original { height: 68px !important; }
  body:not(.admin-page) .brand-header-logo.brand-original img { width: 210px !important; max-width:210px !important; }
}
@media (max-width:620px) {
  body:not(.admin-page) .brand-header-logo.brand-original { height: 60px !important; }
  body:not(.admin-page) .brand-header-logo.brand-original img { width: 178px !important; max-width:178px !important; }
}

/* =========================================================
   v6.2 — carrinho mais leve + cabeçalho do admin alinhado
   ========================================================= */
body:not(.admin-page) .cart-header {
  padding: 20px 22px !important;
  min-height: 70px;
  align-items: center !important;
}
body:not(.admin-page) .cart-title-block {
  display:flex;
  align-items:center;
  min-height:40px;
}
body:not(.admin-page) .cart-title-block h2 {
  margin:0 !important;
  font-size:22px !important;
  line-height:1.1 !important;
  font-weight:650 !important;
  letter-spacing:-.02em !important;
}

/* Controles de quantidade mais leves visualmente */
body:not(.admin-page) .cart-item .qty-control.compact button {
  font-weight:400 !important;
  font-size:17px !important;
  line-height:1 !important;
}
body:not(.admin-page) .cart-item .qty-control.compact .cart-qty-value {
  font-weight:400 !important;
  font-size:13px !important;
}

/* Cabeçalho administrativo usando o mesmo wordmark oficial */
.admin-page .admin-header {
  background:#07101b !important;
  border-bottom:1px solid rgba(242,197,44,.22) !important;
}
.admin-page .admin-header-inner {
  min-height:78px !important;
  align-items:center !important;
  gap:26px !important;
}
.admin-page .admin-brand-original {
  width:220px;
  min-width:220px;
  height:64px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  text-decoration:none;
  overflow:visible;
}
.admin-page .admin-brand-original img {
  display:block;
  width:220px;
  max-width:220px;
  height:auto;
  max-height:64px;
  object-fit:contain;
  object-position:left center;
  transform:translateY(1px);
}
.admin-page .admin-title {
  display:flex;
  align-items:center;
  min-height:34px;
  font-weight:650;
  color:#d6d9df;
  border-left:1px solid rgba(255,255,255,.22);
  padding-left:24px;
  line-height:1.2;
}
.admin-page .admin-header .btn {
  align-self:center;
}
@media (max-width:900px) {
  .admin-page .admin-header-inner { min-height:70px !important; gap:18px !important; }
  .admin-page .admin-brand-original { width:190px; min-width:190px; height:56px; }
  .admin-page .admin-brand-original img { width:190px; max-width:190px; max-height:56px; }
  .admin-page .admin-title { padding-left:18px; }
}
@media (max-width:620px) {
  .admin-page .admin-header-inner { min-height:64px !important; gap:10px !important; }
  .admin-page .admin-brand-original { width:158px; min-width:158px; height:50px; }
  .admin-page .admin-brand-original img { width:158px; max-width:158px; max-height:50px; }
  .admin-page .admin-title { display:none; }
  .admin-page .admin-header .btn { padding:8px 10px; font-size:11px; }
}

/* Produção v1 — autenticação administrativa */
.admin-header-actions{display:flex;gap:10px;align-items:center}
.admin-auth-gate{min-height:calc(100vh - 110px);display:flex;align-items:center;justify-content:center;padding:48px 20px;background:#f5f4ef}
.admin-login-card{width:min(100%,460px);background:#fff;border:1px solid #dedbd0;border-radius:24px;padding:30px;box-shadow:0 18px 60px rgba(7,16,27,.10)}
.admin-login-card h1{margin:8px 0 8px;font-size:1.8rem}
.admin-login-card .btn{width:100%;margin-top:6px}


/* PRODUÇÃO v1.1 — edição segura da própria conta */
.account-edit-section {
  margin-top:16px;
  padding:16px;
  border:1px solid #e0ded4;
  background:#fbfaf6;
  border-radius:14px;
}
.account-edit-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:12px; }
.account-edit-head strong { display:block; color:#17191d; font-size:14px; }
.account-edit-head small { display:block; margin-top:3px; color:#74746f; font-size:10px; line-height:1.45; }
.compact-actions { margin-top:12px; }
.account-security-section {
  margin-top:10px;
  border:1px solid #e1dfd7;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}
.account-security-section summary {
  cursor:pointer;
  list-style:none;
  padding:13px 15px;
  color:#22252a;
  font-size:12px;
  font-weight:800;
  background:#f8f7f2;
}
.account-security-section summary::-webkit-details-marker { display:none; }
.account-security-section summary::after { content:'+'; float:right; color:#8a6f00; font-size:16px; font-weight:500; }
.account-security-section[open] summary::after { content:'−'; }
.security-form { padding:14px 15px 15px; }
.account-footer-actions { margin-top:16px; padding-top:14px; border-top:1px solid #ece9df; }
#loggedCustomerEmail { word-break:break-all; }
@media (max-width:520px) {
  .account-edit-section { padding:13px; }
  .account-footer-actions { flex-direction:column-reverse; }
  .account-footer-actions .btn { width:100%; }
}
